| Index: ios/third_party/ochamcrest/BUILD.gn
|
| diff --git a/ios/third_party/ochamcrest/BUILD.gn b/ios/third_party/ochamcrest/BUILD.gn
|
| index 47f613594b040c2969f3280b041421c18abac4b2..402942789aa5e2ad7edc9d6b8fa6d814fc85059a 100644
|
| --- a/ios/third_party/ochamcrest/BUILD.gn
|
| +++ b/ios/third_party/ochamcrest/BUILD.gn
|
| @@ -2,20 +2,11 @@
|
| # Use of this source code is governed by a BSD-style license that can be
|
| # found in the LICENSE file.
|
|
|
| -# OCHamcrest sources contains import rules using relative file names
|
| -# ("HCAssertThat.h") and other using paths in an installed framework
|
| -# (<OCHamcrest/HCMatcher.h>). In order to build, copy all the sources
|
| -# to <(SHARED_INTERMEDIATE_DIR)/ios/third_party/ochmacrest/OCHamcrest
|
| -# so that both type of import work (another option considered was to
|
| -# build forwarding headers but this required duplicating the list of
|
| -# files in GN build and was ruled out).
|
| -#
|
| -# To avoid ODR violation, direct import of ios/third_party/ochamcrest
|
| -# is forbidden in ios/DEPS and code should instead use import as if
|
| -# OCHamcrest was in a framework (i.e. #import <OCHamcrest/OCHamcrest.h>).
|
| -copy("ochamcrest_copy_files") {
|
| +import("//build/config/ios/rules.gni")
|
| +
|
| +ios_framework_bundle("ochamcrest") {
|
| testonly = true
|
| - visibility = [ ":ochamcrest" ]
|
| + output_name = "OCHamcrest"
|
| sources = [
|
| "src/Source/Core/HCAssertThat.h",
|
| "src/Source/Core/HCAssertThat.m",
|
| @@ -170,27 +161,72 @@ copy("ochamcrest_copy_files") {
|
| "src/Source/Library/Text/HCSubstringMatcher.m",
|
| "src/Source/OCHamcrest.h",
|
| ]
|
| - outputs = [
|
| - "$root_gen_dir/ios/third_party/ochamcrest/OCHamcrest/{{source_file_part}}",
|
| + public_headers = [
|
| + "src/Source/Core/HCAssertThat.h",
|
| + "src/Source/Core/HCBaseDescription.h",
|
| + "src/Source/Core/HCBaseMatcher.h",
|
| + "src/Source/Core/HCDescription.h",
|
| + "src/Source/Core/HCDiagnosingMatcher.h",
|
| + "src/Source/Core/HCMatcher.h",
|
| + "src/Source/Core/HCSelfDescribing.h",
|
| + "src/Source/Core/HCStringDescription.h",
|
| + "src/Source/Core/Helpers/HCCollect.h",
|
| + "src/Source/Core/Helpers/HCInvocationMatcher.h",
|
| + "src/Source/Core/Helpers/HCRequireNonNilObject.h",
|
| + "src/Source/Core/Helpers/HCWrapInMatcher.h",
|
| + "src/Source/Core/Helpers/TestFailureReporters/HCTestFailure.h",
|
| + "src/Source/Core/Helpers/TestFailureReporters/HCTestFailureReporter.h",
|
| + "src/Source/Core/Helpers/TestFailureReporters/HCTestFailureReporterChain.h",
|
| + "src/Source/Library/Collection/HCEvery.h",
|
| + "src/Source/Library/Collection/HCHasCount.h",
|
| + "src/Source/Library/Collection/HCIsCollectionContaining.h",
|
| + "src/Source/Library/Collection/HCIsCollectionContainingInAnyOrder.h",
|
| + "src/Source/Library/Collection/HCIsCollectionContainingInOrder.h",
|
| + "src/Source/Library/Collection/HCIsCollectionContainingInRelativeOrder.h",
|
| + "src/Source/Library/Collection/HCIsCollectionOnlyContaining.h",
|
| + "src/Source/Library/Collection/HCIsDictionaryContaining.h",
|
| + "src/Source/Library/Collection/HCIsDictionaryContainingEntries.h",
|
| + "src/Source/Library/Collection/HCIsDictionaryContainingKey.h",
|
| + "src/Source/Library/Collection/HCIsDictionaryContainingValue.h",
|
| + "src/Source/Library/Collection/HCIsEmptyCollection.h",
|
| + "src/Source/Library/Collection/HCIsIn.h",
|
| + "src/Source/Library/Decorator/HCDescribedAs.h",
|
| + "src/Source/Library/Decorator/HCIs.h",
|
| + "src/Source/Library/Logical/HCAllOf.h",
|
| + "src/Source/Library/Logical/HCAnyOf.h",
|
| + "src/Source/Library/Logical/HCIsAnything.h",
|
| + "src/Source/Library/Logical/HCIsNot.h",
|
| + "src/Source/Library/Number/HCIsCloseTo.h",
|
| + "src/Source/Library/Number/HCIsEqualToNumber.h",
|
| + "src/Source/Library/Number/HCIsTrueFalse.h",
|
| + "src/Source/Library/Number/HCNumberAssert.h",
|
| + "src/Source/Library/Number/HCOrderingComparison.h",
|
| + "src/Source/Library/Object/HCArgumentCaptor.h",
|
| + "src/Source/Library/Object/HCClassMatcher.h",
|
| + "src/Source/Library/Object/HCConformsToProtocol.h",
|
| + "src/Source/Library/Object/HCHasDescription.h",
|
| + "src/Source/Library/Object/HCHasProperty.h",
|
| + "src/Source/Library/Object/HCIsEqual.h",
|
| + "src/Source/Library/Object/HCIsInstanceOf.h",
|
| + "src/Source/Library/Object/HCIsNil.h",
|
| + "src/Source/Library/Object/HCIsSame.h",
|
| + "src/Source/Library/Object/HCIsTypeOf.h",
|
| + "src/Source/Library/Object/HCThrowsException.h",
|
| + "src/Source/Library/Text/HCIsEqualIgnoringCase.h",
|
| + "src/Source/Library/Text/HCIsEqualIgnoringWhiteSpace.h",
|
| + "src/Source/Library/Text/HCStringContains.h",
|
| + "src/Source/Library/Text/HCStringContainsInOrder.h",
|
| + "src/Source/Library/Text/HCStringEndsWith.h",
|
| + "src/Source/Library/Text/HCStringStartsWith.h",
|
| + "src/Source/Library/Text/HCSubstringMatcher.h",
|
| + "src/Source/OCHamcrest.h",
|
| ]
|
| -}
|
| -
|
| -config("config") {
|
| - visibility = [ ":ochamcrest" ]
|
| - libs = [ "XCTest.framework" ]
|
| - include_dirs = [ "$root_gen_dir/ios/third_party/ochamcrest" ]
|
| -}
|
|
|
| -source_set("ochamcrest") {
|
| - testonly = true
|
| - configs += [
|
| - ":config",
|
| - "//build/config/compiler:enable_arc",
|
| - "//build/config/compiler:no_chromium_code",
|
| + libs = [
|
| + "Foundation.framework",
|
| + "UIKit.framework",
|
| ]
|
| - public_configs = [ ":config" ]
|
| - public_deps = [
|
| - ":ochamcrest_copy_files",
|
| - ]
|
| - sources = get_target_outputs(":ochamcrest_copy_files")
|
| +
|
| + configs += [ "//build/config/compiler:enable_arc" ]
|
| + configs -= [ "//build/config/gcc:symbol_visibility_hidden" ]
|
| }
|
|
|