Index: ios/third_party/ochamcrest/ochamcrest.gyp |
diff --git a/ios/third_party/ochamcrest/ochamcrest.gyp b/ios/third_party/ochamcrest/ochamcrest.gyp |
new file mode 100644 |
index 0000000000000000000000000000000000000000..993cee66d150345312998f152a0b3f7957874233 |
--- /dev/null |
+++ b/ios/third_party/ochamcrest/ochamcrest.gyp |
@@ -0,0 +1,238 @@ |
+# Copyright 2016 The Chromium Authors. All rights reserved. |
+# Use of this source code is governed by a BSD-style license that can be |
+# found in the LICENSE file. |
+ |
+{ |
+ 'chromium_sources': 0, |
+ 'variables': { |
+ 'ochamcrest_copy_dir': '<(SHARED_INTERMEDIATE_DIR)/ios/third_party/ochamcrest', |
+ 'ochamcrest_sources': [ |
+ 'src/Source/Core/HCAssertThat.h', |
+ 'src/Source/Core/HCAssertThat.m', |
+ 'src/Source/Core/HCBaseDescription.h', |
+ 'src/Source/Core/HCBaseDescription.m', |
+ 'src/Source/Core/HCBaseMatcher.h', |
+ 'src/Source/Core/HCBaseMatcher.m', |
+ 'src/Source/Core/HCDescription.h', |
+ 'src/Source/Core/HCDiagnosingMatcher.h', |
+ 'src/Source/Core/HCDiagnosingMatcher.m', |
+ 'src/Source/Core/HCMatcher.h', |
+ 'src/Source/Core/HCSelfDescribing.h', |
+ 'src/Source/Core/HCStringDescription.h', |
+ 'src/Source/Core/HCStringDescription.m', |
+ 'src/Source/Core/Helpers/HCCollect.h', |
+ 'src/Source/Core/Helpers/HCCollect.m', |
+ 'src/Source/Core/Helpers/HCInvocationMatcher.h', |
+ 'src/Source/Core/Helpers/HCInvocationMatcher.m', |
+ 'src/Source/Core/Helpers/HCRequireNonNilObject.h', |
+ 'src/Source/Core/Helpers/HCRequireNonNilObject.m', |
+ 'src/Source/Core/Helpers/HCWrapInMatcher.h', |
+ 'src/Source/Core/Helpers/HCWrapInMatcher.m', |
+ 'src/Source/Core/Helpers/NSInvocation+OCHamcrest.h', |
+ 'src/Source/Core/Helpers/NSInvocation+OCHamcrest.m', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCBoolReturnGetter.h', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCBoolReturnGetter.m', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCCharReturnGetter.h', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCCharReturnGetter.m', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCDoubleReturnGetter.h', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCDoubleReturnGetter.m', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCFloatReturnGetter.h', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCFloatReturnGetter.m', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCIntReturnGetter.h', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCIntReturnGetter.m', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCLongLongReturnGetter.h', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCLongLongReturnGetter.m', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCLongReturnGetter.h', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCLongReturnGetter.m', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCObjectReturnGetter.h', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCObjectReturnGetter.m', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCReturnTypeHandlerChain.h', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCReturnTypeHandlerChain.m', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCReturnValueGetter.h', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCReturnValueGetter.m', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCShortReturnGetter.h', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCShortReturnGetter.m', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCUnsignedCharReturnGetter.h', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCUnsignedCharReturnGetter.m', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCUnsignedIntReturnGetter.h', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCUnsignedIntReturnGetter.m', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCUnsignedLongLongReturnGetter.h', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCUnsignedLongLongReturnGetter.m', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCUnsignedLongReturnGetter.h', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCUnsignedLongReturnGetter.m', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCUnsignedShortReturnGetter.h', |
+ 'src/Source/Core/Helpers/ReturnValueGetters/HCUnsignedShortReturnGetter.m', |
+ 'src/Source/Core/Helpers/TestFailureReporters/HCGenericTestFailureReporter.h', |
+ 'src/Source/Core/Helpers/TestFailureReporters/HCGenericTestFailureReporter.m', |
+ 'src/Source/Core/Helpers/TestFailureReporters/HCSenTestFailureReporter.h', |
+ 'src/Source/Core/Helpers/TestFailureReporters/HCSenTestFailureReporter.m', |
+ 'src/Source/Core/Helpers/TestFailureReporters/HCTestFailure.h', |
+ 'src/Source/Core/Helpers/TestFailureReporters/HCTestFailure.m', |
+ 'src/Source/Core/Helpers/TestFailureReporters/HCTestFailureReporter.h', |
+ 'src/Source/Core/Helpers/TestFailureReporters/HCTestFailureReporter.m', |
+ 'src/Source/Core/Helpers/TestFailureReporters/HCTestFailureReporterChain.h', |
+ 'src/Source/Core/Helpers/TestFailureReporters/HCTestFailureReporterChain.m', |
+ 'src/Source/Core/Helpers/TestFailureReporters/HCXCTestFailureReporter.h', |
+ 'src/Source/Core/Helpers/TestFailureReporters/HCXCTestFailureReporter.m', |
+ 'src/Source/Library/Collection/HCEvery.h', |
+ 'src/Source/Library/Collection/HCEvery.m', |
+ 'src/Source/Library/Collection/HCHasCount.h', |
+ 'src/Source/Library/Collection/HCHasCount.m', |
+ 'src/Source/Library/Collection/HCIsCollectionContaining.h', |
+ 'src/Source/Library/Collection/HCIsCollectionContaining.m', |
+ 'src/Source/Library/Collection/HCIsCollectionContainingInAnyOrder.h', |
+ 'src/Source/Library/Collection/HCIsCollectionContainingInAnyOrder.m', |
+ 'src/Source/Library/Collection/HCIsCollectionContainingInOrder.h', |
+ 'src/Source/Library/Collection/HCIsCollectionContainingInOrder.m', |
+ 'src/Source/Library/Collection/HCIsCollectionContainingInRelativeOrder.h', |
+ 'src/Source/Library/Collection/HCIsCollectionContainingInRelativeOrder.m', |
+ 'src/Source/Library/Collection/HCIsCollectionOnlyContaining.h', |
+ 'src/Source/Library/Collection/HCIsCollectionOnlyContaining.m', |
+ 'src/Source/Library/Collection/HCIsDictionaryContaining.h', |
+ 'src/Source/Library/Collection/HCIsDictionaryContaining.m', |
+ 'src/Source/Library/Collection/HCIsDictionaryContainingEntries.h', |
+ 'src/Source/Library/Collection/HCIsDictionaryContainingEntries.m', |
+ 'src/Source/Library/Collection/HCIsDictionaryContainingKey.h', |
+ 'src/Source/Library/Collection/HCIsDictionaryContainingKey.m', |
+ 'src/Source/Library/Collection/HCIsDictionaryContainingValue.h', |
+ 'src/Source/Library/Collection/HCIsDictionaryContainingValue.m', |
+ 'src/Source/Library/Collection/HCIsEmptyCollection.h', |
+ 'src/Source/Library/Collection/HCIsEmptyCollection.m', |
+ 'src/Source/Library/Collection/HCIsIn.h', |
+ 'src/Source/Library/Collection/HCIsIn.m', |
+ 'src/Source/Library/Decorator/HCDescribedAs.h', |
+ 'src/Source/Library/Decorator/HCDescribedAs.m', |
+ 'src/Source/Library/Decorator/HCIs.h', |
+ 'src/Source/Library/Decorator/HCIs.m', |
+ 'src/Source/Library/Logical/HCAllOf.h', |
+ 'src/Source/Library/Logical/HCAllOf.m', |
+ 'src/Source/Library/Logical/HCAnyOf.h', |
+ 'src/Source/Library/Logical/HCAnyOf.m', |
+ 'src/Source/Library/Logical/HCIsAnything.h', |
+ 'src/Source/Library/Logical/HCIsAnything.m', |
+ 'src/Source/Library/Logical/HCIsNot.h', |
+ 'src/Source/Library/Logical/HCIsNot.m', |
+ 'src/Source/Library/Number/HCIsCloseTo.h', |
+ 'src/Source/Library/Number/HCIsCloseTo.m', |
+ 'src/Source/Library/Number/HCIsEqualToNumber.h', |
+ 'src/Source/Library/Number/HCIsEqualToNumber.m', |
+ 'src/Source/Library/Number/HCIsTrueFalse.h', |
+ 'src/Source/Library/Number/HCIsTrueFalse.m', |
+ 'src/Source/Library/Number/HCNumberAssert.h', |
+ 'src/Source/Library/Number/HCNumberAssert.m', |
+ 'src/Source/Library/Number/HCOrderingComparison.h', |
+ 'src/Source/Library/Number/HCOrderingComparison.m', |
+ 'src/Source/Library/Object/HCArgumentCaptor.h', |
+ 'src/Source/Library/Object/HCArgumentCaptor.m', |
+ 'src/Source/Library/Object/HCClassMatcher.h', |
+ 'src/Source/Library/Object/HCClassMatcher.m', |
+ 'src/Source/Library/Object/HCConformsToProtocol.h', |
+ 'src/Source/Library/Object/HCConformsToProtocol.m', |
+ 'src/Source/Library/Object/HCHasDescription.h', |
+ 'src/Source/Library/Object/HCHasDescription.m', |
+ 'src/Source/Library/Object/HCHasProperty.h', |
+ 'src/Source/Library/Object/HCHasProperty.m', |
+ 'src/Source/Library/Object/HCIsEqual.h', |
+ 'src/Source/Library/Object/HCIsEqual.m', |
+ 'src/Source/Library/Object/HCIsInstanceOf.h', |
+ 'src/Source/Library/Object/HCIsInstanceOf.m', |
+ 'src/Source/Library/Object/HCIsNil.h', |
+ 'src/Source/Library/Object/HCIsNil.m', |
+ 'src/Source/Library/Object/HCIsSame.h', |
+ 'src/Source/Library/Object/HCIsSame.m', |
+ 'src/Source/Library/Object/HCIsTypeOf.h', |
+ 'src/Source/Library/Object/HCIsTypeOf.m', |
+ 'src/Source/Library/Object/HCThrowsException.h', |
+ 'src/Source/Library/Object/HCThrowsException.m', |
+ 'src/Source/Library/Text/HCIsEqualIgnoringCase.h', |
+ 'src/Source/Library/Text/HCIsEqualIgnoringCase.m', |
+ 'src/Source/Library/Text/HCIsEqualIgnoringWhiteSpace.h', |
+ 'src/Source/Library/Text/HCIsEqualIgnoringWhiteSpace.m', |
+ 'src/Source/Library/Text/HCStringContains.h', |
+ 'src/Source/Library/Text/HCStringContains.m', |
+ 'src/Source/Library/Text/HCStringContainsInOrder.h', |
+ 'src/Source/Library/Text/HCStringContainsInOrder.m', |
+ 'src/Source/Library/Text/HCStringEndsWith.h', |
+ 'src/Source/Library/Text/HCStringEndsWith.m', |
+ 'src/Source/Library/Text/HCStringStartsWith.h', |
+ 'src/Source/Library/Text/HCStringStartsWith.m', |
+ 'src/Source/Library/Text/HCSubstringMatcher.h', |
+ 'src/Source/Library/Text/HCSubstringMatcher.m', |
+ 'src/Source/OCHamcrest.h', |
+ ], |
+ }, |
+ 'targets': [ |
+ # 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>). |
+ { |
+ 'target_name': 'ochamcrest_copy_sources', |
+ 'hard_dependency': 1, |
+ 'type': 'none', |
+ 'actions': [ |
+ { |
+ 'action_name': 'copy_ochamcrest_sources', |
+ 'inputs': [ |
+ '../../chrome/tools/build/ios_copy_files.py', |
+ '<@(ochamcrest_sources)', |
+ ], |
+ 'outputs': [ |
+ '<!@pymod_do_main(ios_copy_files -o ' |
+ '--dest-dir <(ochamcrest_copy_dir)/OCHamcrest ' |
+ '<(ochamcrest_sources))', |
+ ], |
+ 'action': [ |
+ 'python', |
+ '../../chrome/tools/build/ios_copy_files.py', |
+ '--dest-dir', |
+ '<(ochamcrest_copy_dir)/OCHamcrest/', |
+ '<@(ochamcrest_sources)', |
+ ], |
+ 'message': 'Copying OCHamcrest sources files', |
+ }, |
+ ], |
+ }, |
+ { |
+ 'target_name': 'ochamcrest', |
+ 'type': 'static_library', |
+ 'sources': [ |
+ '<!@pymod_do_main(ios_copy_files -o ' |
+ '--dest-dir <(ochamcrest_copy_dir)/OCHamcrest ' |
+ '<(ochamcrest_sources))', |
+ ], |
+ 'include_dirs': [ |
+ '<(ochamcrest_copy_dir)', |
+ ], |
+ 'xcode_settings': { |
+ 'CLANG_ENABLE_OBJC_ARC': 'YES', |
+ # TODO(crbug.com/589097): remove this once OCHamcrest source has been |
+ # fixed by removing the semicolon in HCGenericTestFailureReporter.m. |
+ 'WARNING_CFLAGS': [ '-Wno-semicolon-before-method-body' ] |
+ }, |
+ 'link_settings': { |
+ 'libraries': [ |
+ 'XCTest.framework', |
+ ], |
+ }, |
+ 'dependencies': [ |
+ 'ochamcrest_copy_sources', |
+ ], |
+ 'export_dependent_settings': [ |
+ 'ochamcrest_copy_sources', |
+ ], |
+ 'direct_dependent_settings': { |
+ 'include_dirs': [ |
+ '<(ochamcrest_copy_dir)', |
+ ], |
+ }, |
+ }, |
+ ], |
+} |