From bfc65068aef9b7923ba813b7583403263158eea1 Mon Sep 17 00:00:00 2001 From: Dimitris Koutsogiorgas Date: Fri, 14 Jan 2022 13:03:01 -0800 Subject: [PATCH] Fix setting `LD_RUNTIME_SEARCH_PATHS` for aggregate targets that include dynamic xcframeworks. --- CHANGELOG.md | 4 + lib/cocoapods/sandbox/file_accessor.rb | 11 +- lib/cocoapods/target/build_settings.rb | 2 +- .../CoconutLib.xcframework/Info.plist | 106 +++++++++++++ .../CoconutLib.framework/CoconutLib | Bin 0 -> 164416 bytes .../CoconutLib.framework/Headers/Coconut.h | 6 + .../CoconutLib.framework/Headers/CoconutLib.h | 19 +++ .../CoconutLib.framework/Info.plist | Bin 0 -> 712 bytes .../Modules/module.modulemap | 6 + .../CoconutLib.framework/CoconutLib | Bin 0 -> 60160 bytes .../CoconutLib.framework/Headers/Coconut.h | 6 + .../CoconutLib.framework/Headers/CoconutLib.h | 19 +++ .../CoconutLib.framework/Info.plist | Bin 0 -> 739 bytes .../Modules/module.modulemap | 6 + .../_CodeSignature/CodeResources | 147 ++++++++++++++++++ .../CoconutLib.framework/CoconutLib | 1 + .../macos-x86_64/CoconutLib.framework/Headers | 1 + .../CoconutLib.framework/Resources | 1 + .../Versions/A/CoconutLib | Bin 0 -> 31264 bytes .../Versions/A/Headers/Coconut.h | 6 + .../Versions/A/Headers/CoconutLib_macOS.h | 19 +++ .../Versions/A/Resources/Info.plist | 46 ++++++ .../Versions/A/_CodeSignature/CodeResources | 142 +++++++++++++++++ .../CoconutLib.framework/Versions/Current | 1 + .../CoconutLib.framework/CoconutLib | Bin 0 -> 82496 bytes .../CoconutLib.framework/Headers/Coconut.h | 6 + .../CoconutLib.framework/Headers/CoconutLib.h | 19 +++ .../CoconutLib.framework/Info.plist | Bin 0 -> 703 bytes .../Modules/module.modulemap | 6 + .../CoconutLib.framework/CoconutLib | Bin 0 -> 31264 bytes .../CoconutLib.framework/Headers/Coconut.h | 6 + .../CoconutLib.framework/Headers/CoconutLib.h | 19 +++ .../CoconutLib.framework/Info.plist | Bin 0 -> 730 bytes .../Modules/module.modulemap | 6 + .../_CodeSignature/CodeResources | 135 ++++++++++++++++ .../CoconutLib.framework/CoconutLib | Bin 0 -> 197136 bytes .../CoconutLib.framework/Headers/Coconut.h | 6 + .../CoconutLib.framework/Headers/CoconutLib.h | 19 +++ .../CoconutLib.framework/Info.plist | Bin 0 -> 689 bytes .../Modules/module.modulemap | 6 + .../CoconutLib.framework/CoconutLib | Bin 0 -> 31216 bytes .../CoconutLib.framework/Headers/Coconut.h | 6 + .../CoconutLib.framework/Headers/CoconutLib.h | 19 +++ .../CoconutLib.framework/Info.plist | Bin 0 -> 712 bytes .../Modules/module.modulemap | 6 + .../_CodeSignature/CodeResources | 135 ++++++++++++++++ .../xcframeworks/xcframework-spec.podspec | 12 ++ .../aggregate_target_settings_spec.rb | 18 +++ 48 files changed, 971 insertions(+), 2 deletions(-) create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/Info.plist create mode 100755 spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-armv7_arm64/CoconutLib.framework/CoconutLib create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-armv7_arm64/CoconutLib.framework/Headers/Coconut.h create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-armv7_arm64/CoconutLib.framework/Headers/CoconutLib.h create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-armv7_arm64/CoconutLib.framework/Info.plist create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-armv7_arm64/CoconutLib.framework/Modules/module.modulemap create mode 100755 spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-i386_x86_64-simulator/CoconutLib.framework/CoconutLib create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-i386_x86_64-simulator/CoconutLib.framework/Headers/Coconut.h create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-i386_x86_64-simulator/CoconutLib.framework/Headers/CoconutLib.h create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-i386_x86_64-simulator/CoconutLib.framework/Info.plist create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-i386_x86_64-simulator/CoconutLib.framework/Modules/module.modulemap create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-i386_x86_64-simulator/CoconutLib.framework/_CodeSignature/CodeResources create mode 120000 spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/CoconutLib create mode 120000 spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Headers create mode 120000 spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Resources create mode 100755 spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/A/CoconutLib create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/A/Headers/Coconut.h create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/A/Headers/CoconutLib_macOS.h create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/A/Resources/Info.plist create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/A/_CodeSignature/CodeResources create mode 120000 spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/Current create mode 100755 spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-arm64/CoconutLib.framework/CoconutLib create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-arm64/CoconutLib.framework/Headers/Coconut.h create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-arm64/CoconutLib.framework/Headers/CoconutLib.h create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-arm64/CoconutLib.framework/Info.plist create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-arm64/CoconutLib.framework/Modules/module.modulemap create mode 100755 spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-x86_64-simulator/CoconutLib.framework/CoconutLib create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-x86_64-simulator/CoconutLib.framework/Headers/Coconut.h create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-x86_64-simulator/CoconutLib.framework/Headers/CoconutLib.h create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-x86_64-simulator/CoconutLib.framework/Info.plist create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-x86_64-simulator/CoconutLib.framework/Modules/module.modulemap create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-x86_64-simulator/CoconutLib.framework/_CodeSignature/CodeResources create mode 100755 spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-armv7k_arm64_32/CoconutLib.framework/CoconutLib create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-armv7k_arm64_32/CoconutLib.framework/Headers/Coconut.h create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-armv7k_arm64_32/CoconutLib.framework/Headers/CoconutLib.h create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-armv7k_arm64_32/CoconutLib.framework/Info.plist create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-armv7k_arm64_32/CoconutLib.framework/Modules/module.modulemap create mode 100755 spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/CoconutLib create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/Headers/Coconut.h create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/Headers/CoconutLib.h create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/Info.plist create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/Modules/module.modulemap create mode 100644 spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/_CodeSignature/CodeResources create mode 100644 spec/fixtures/xcframeworks/xcframework-spec.podspec diff --git a/CHANGELOG.md b/CHANGELOG.md index 2282332819..e8c4863d69 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,10 @@ To install release candidates run `[sudo] gem install cocoapods --pre` [Dimitris Koutsogiorgas](https://github.com/dnkoutso) [#10950](https://github.com/CocoaPods/CocoaPods/pull/10950) +* Fix setting `LD_RUNTIME_SEARCH_PATHS` for aggregate targets that include dynamic xcframeworks. + [Dimitris Koutsogiorgas](https://github.com/dnkoutso) + [#11158](https://github.com/CocoaPods/CocoaPods/pull/11158) + ##### Bug Fixes * None. diff --git a/lib/cocoapods/sandbox/file_accessor.rb b/lib/cocoapods/sandbox/file_accessor.rb index 74e06b42ba..10d1bc4b73 100644 --- a/lib/cocoapods/sandbox/file_accessor.rb +++ b/lib/cocoapods/sandbox/file_accessor.rb @@ -179,7 +179,7 @@ def vendored_dynamic_frameworks end end - # @return [Array] The paths of the dynamic xcframework bundles + # @return [Array] The paths of the static xcframework bundles # that come shipped with the Pod. # def vendored_static_xcframeworks @@ -188,6 +188,15 @@ def vendored_static_xcframeworks end end + # @return [Array] The paths of the dynamic xcframework bundles + # that come shipped with the Pod. + # + def vendored_dynamic_xcframeworks + vendored_xcframeworks.select do |path| + Xcode::XCFramework.new(spec.name, path).build_type == BuildType.dynamic_framework + end + end + # @return [Array] The paths of the static (fake) framework # bundles that come shipped with the Pod. # diff --git a/lib/cocoapods/target/build_settings.rb b/lib/cocoapods/target/build_settings.rb index cf046fbce2..88519eb563 100644 --- a/lib/cocoapods/target/build_settings.rb +++ b/lib/cocoapods/target/build_settings.rb @@ -1288,7 +1288,7 @@ def other_swift_flags_without_swift? define_build_settings_method :any_vendored_dynamic_artifacts?, :memoized => true do pod_targets.any? do |pt| pt.file_accessors.any? do |fa| - !fa.vendored_dynamic_artifacts.empty? + !fa.vendored_dynamic_artifacts.empty? || !fa.vendored_dynamic_xcframeworks.empty? end end end diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/Info.plist b/spec/fixtures/coconut-lib/CoconutLib.xcframework/Info.plist new file mode 100644 index 0000000000..41c34915e6 --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/Info.plist @@ -0,0 +1,106 @@ + + + + + AvailableLibraries + + + LibraryIdentifier + tvos-x86_64-simulator + LibraryPath + CoconutLib.framework + SupportedArchitectures + + x86_64 + + SupportedPlatform + tvos + SupportedPlatformVariant + simulator + + + LibraryIdentifier + tvos-arm64 + LibraryPath + CoconutLib.framework + SupportedArchitectures + + arm64 + + SupportedPlatform + tvos + + + LibraryIdentifier + macos-x86_64 + LibraryPath + CoconutLib.framework + SupportedArchitectures + + x86_64 + + SupportedPlatform + macos + + + LibraryIdentifier + ios-armv7_arm64 + LibraryPath + CoconutLib.framework + SupportedArchitectures + + armv7 + arm64 + + SupportedPlatform + ios + + + LibraryIdentifier + watchos-i386-simulator + LibraryPath + CoconutLib.framework + SupportedArchitectures + + i386 + + SupportedPlatform + watchos + SupportedPlatformVariant + simulator + + + LibraryIdentifier + watchos-armv7k_arm64_32 + LibraryPath + CoconutLib.framework + SupportedArchitectures + + armv7k + arm64_32 + + SupportedPlatform + watchos + + + LibraryIdentifier + ios-i386_x86_64-simulator + LibraryPath + CoconutLib.framework + SupportedArchitectures + + i386 + x86_64 + + SupportedPlatform + ios + SupportedPlatformVariant + simulator + + + CFBundlePackageType + XFWK + XCFrameworkFormatVersion + 1.0 + + diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-armv7_arm64/CoconutLib.framework/CoconutLib b/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-armv7_arm64/CoconutLib.framework/CoconutLib new file mode 100755 index 0000000000000000000000000000000000000000..9ff87bf7b02f1e0bf9e6583f05e3b6f43d032c4b GIT binary patch literal 164416 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 + +/** Coconuts are cool */ +@interface CoconutObj : NSObject +@end diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-armv7_arm64/CoconutLib.framework/Headers/CoconutLib.h b/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-armv7_arm64/CoconutLib.framework/Headers/CoconutLib.h new file mode 100644 index 0000000000..aa6a6afefc --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-armv7_arm64/CoconutLib.framework/Headers/CoconutLib.h @@ -0,0 +1,19 @@ +// +// CoconutLib.h +// CoconutLib +// +// Created by Eric Amorde on 10/20/19. +// Copyright © 2019 CocoaPods. All rights reserved. +// + +#import + +//! Project version number for CoconutLib. +FOUNDATION_EXPORT double CoconutLibVersionNumber; + +//! Project version string for CoconutLib. +FOUNDATION_EXPORT const unsigned char CoconutLibVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-armv7_arm64/CoconutLib.framework/Info.plist b/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-armv7_arm64/CoconutLib.framework/Info.plist new file mode 100644 index 0000000000000000000000000000000000000000..f8e26ea774d77e4d6c15be64ac66b1f5a8878190 GIT binary patch literal 712 zcmYjO%Wl&^6rDS~3KTMJ3VlFJD9^C4JgL-zx*?5;2qiScCJ9v(%dscP2-{=%Q4#n7 zc6SKIWK&o(%x6ZQX+tk&S5j6T2tQ1cYUp#fe^`t>FP52AvyHGPd?(OJCQT-x zeMKt?$K&>>vy7sp*73xhDV}sQHzlTdRoNZ8pDJ2>9T}U7)-r{~+DT2;N2=WAPUP&V zNx1W*5^s{5tZX>k9yaKm;-*}vGk3ovOyNf1L*CWNlJNVI854#ltU#Jd>ZT-X)BZ8MJ{ah@ltgHTr-)qp#=>%)%PvVH+Mm2RH=q z5?;X@cn=@p6MTVh@Ev}_FZd0A;U8YcIh@B5-o|(FeO$#gTu0-BVN%hpq$UMx{{iXv B+4TSb literal 0 HcmV?d00001 diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-armv7_arm64/CoconutLib.framework/Modules/module.modulemap b/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-armv7_arm64/CoconutLib.framework/Modules/module.modulemap new file mode 100644 index 0000000000..935662f517 --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-armv7_arm64/CoconutLib.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module CoconutLib { + umbrella header "CoconutLib.h" + + export * + module * { export * } +} diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-i386_x86_64-simulator/CoconutLib.framework/CoconutLib b/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-i386_x86_64-simulator/CoconutLib.framework/CoconutLib new file mode 100755 index 0000000000000000000000000000000000000000..e8d92a2eed232582af60254a88b0f49c08cc2dae GIT binary patch literal 60160 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 literal 0 HcmV?d00001 diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-i386_x86_64-simulator/CoconutLib.framework/Headers/Coconut.h b/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-i386_x86_64-simulator/CoconutLib.framework/Headers/Coconut.h new file mode 100644 index 0000000000..4e98be6d36 --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-i386_x86_64-simulator/CoconutLib.framework/Headers/Coconut.h @@ -0,0 +1,6 @@ + +#import + +/** Coconuts are cool */ +@interface CoconutObj : NSObject +@end diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-i386_x86_64-simulator/CoconutLib.framework/Headers/CoconutLib.h b/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-i386_x86_64-simulator/CoconutLib.framework/Headers/CoconutLib.h new file mode 100644 index 0000000000..aa6a6afefc --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-i386_x86_64-simulator/CoconutLib.framework/Headers/CoconutLib.h @@ -0,0 +1,19 @@ +// +// CoconutLib.h +// CoconutLib +// +// Created by Eric Amorde on 10/20/19. +// Copyright © 2019 CocoaPods. All rights reserved. +// + +#import + +//! Project version number for CoconutLib. +FOUNDATION_EXPORT double CoconutLibVersionNumber; + +//! Project version string for CoconutLib. +FOUNDATION_EXPORT const unsigned char CoconutLibVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-i386_x86_64-simulator/CoconutLib.framework/Info.plist b/spec/fixtures/coconut-lib/CoconutLib.xcframework/ios-i386_x86_64-simulator/CoconutLib.framework/Info.plist new file mode 100644 index 0000000000000000000000000000000000000000..db46baf3d78ac1593a3497b2e660702b341a047b GIT binary patch literal 739 zcmZ9I%Wl&^6o!3fL)ronCCWI6Wj*Tp49;MnelPrpb!m7CLic$=hMS zPQyr^_EPtO?a3RmXew;3d3 + + + + files + + Headers/Coconut.h + + Ik11Bk3/ssS7b9IAbABo7fXHDXc= + + Headers/CoconutLib.h + + 0GEcr1CRa4n6sQrt4PgsVtiwLLE= + + Info.plist + + c5aFO22e3IHeNuvxzSP+4Vp6J4o= + + Modules/module.modulemap + + XBUmhbp5sPDDR0vApgYJ0zALOWI= + + + files2 + + Headers/Coconut.h + + hash + + Ik11Bk3/ssS7b9IAbABo7fXHDXc= + + hash2 + + Y0JMEPdjeR1ijdoNxhnkdG+dC3aGaoV/tktWLk58Tv4= + + + Headers/CoconutLib.h + + hash + + 0GEcr1CRa4n6sQrt4PgsVtiwLLE= + + hash2 + + i0yhQAstAqNBZIj9gqe5XY1GWc6nOWk8ENgA8uHl2DE= + + + Modules/module.modulemap + + hash + + XBUmhbp5sPDDR0vApgYJ0zALOWI= + + hash2 + + mhxBFlNwG/ASIqNY6yYtxs7CuysII4NrdaoGkHwJLCA= + + + + rules + + ^.* + + ^.*\.lproj/ + + optional + + weight + 1000 + + ^.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Base\.lproj/ + + weight + 1010 + + ^version.plist$ + + + rules2 + + .*\.dSYM($|/) + + weight + 11 + + ^(.*/)?\.DS_Store$ + + omit + + weight + 2000 + + ^.* + + ^.*\.lproj/ + + optional + + weight + 1000 + + ^.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Base\.lproj/ + + weight + 1010 + + ^Info\.plist$ + + omit + + weight + 20 + + ^PkgInfo$ + + omit + + weight + 20 + + ^embedded\.provisionprofile$ + + weight + 20 + + ^version\.plist$ + + weight + 20 + + + + diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/CoconutLib b/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/CoconutLib new file mode 120000 index 0000000000..0d8e9f19f6 --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/CoconutLib @@ -0,0 +1 @@ +Versions/Current/CoconutLib \ No newline at end of file diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Headers b/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Headers new file mode 120000 index 0000000000..a177d2a6b9 --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Headers @@ -0,0 +1 @@ +Versions/Current/Headers \ No newline at end of file diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Resources b/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Resources new file mode 120000 index 0000000000..953ee36f3b --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Resources @@ -0,0 +1 @@ +Versions/Current/Resources \ No newline at end of file diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/A/CoconutLib b/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/A/CoconutLib new file mode 100755 index 0000000000000000000000000000000000000000..697f35bee2c62a763adf8d7049a786d39775690a GIT binary patch literal 31264 zcmeI3e{54#6vuBn7|R%J>To#36=Y@;X=Nj_NDM7yV;lS3L4;uLUc0x^v9<@nVz+(GiyOvZMx0@4_}i=@iI80YQPkG7kxi4Rs- z+9z#F!GwssqH&(k`xBOK*%R}9ke?nCTBglrupu>q^JuUq#6!JWJRZ^d^vw0y^JmLR zwr%Hd+KTKs4@D#K^a3;UjmY&?$#`MU$jG6Zg4-1m&e!_deca#N6tL*oyr$^|FCk)m zB1GM1Z#bTqE?*ACnvEve%x#z2%Y5NJty>RAx}ur+a^$+~e8SFTrRJNsPi4d{gxGBkDI#<}iRHHlU4dI}>%b?r($*8f- zvr#wVVFKgvDdRHXV#bEdOVUFD`3k7-kYj2WBY!_R#94}KkC83TIJTUzGt`UcNehYE z#QklH>c1I%0R@Tclzn0BDH&b0@tqx4mzQ4N|5gS0TqNe+^K%&^5xU8K26Ns|dI5>u z@<{0*5xLC!Fn2e-Og-T61P0;>z0X6W49ytu)Y!D*o|;+4kjb9WAqPJ?EfJkLQdcN6DXOLVVMXWlK(OU(D`{dy>w(1N`> zH&5T~R`y|CN5q$rYR30QwNBlzV$&No1Mj0p!R?AX*K%o#a~5qOi5U0N0bE)qJZK;Q z0w4eaAOHd&00RFR0`gNrbFhbb%kC|2X=`5B=4*U7{o%poB42&Azg_VyTTbt`WgA;< zYbRW`M(+*NDl`xP0T2KI5C8!X009sH0T2KI5CDPy5rG}F7xDX&5Vd9gUapQ!r4Nxa zM~XWBZ}X^gr_^1R*Z%!>${2Fi%DCyq;RgW_009sH0T2KI5C8!X009sHfm?~dZHrjz z;`uRethUYHN*ll3%bVBK`?ytg<;hP}rnq!S-UqgmL^9GfUc*yYSg@#Y(? z`vxx@FXEM_s&{?(>)KZaT&bob`rKsyzM1vI@3l4c41M%j@u6kEonQHOk^lPcq9ZTA z@a{{ljx9%DJ$C2b;SI+d^R}-j`Q5jE;n9xA_pJVOXYQKK3r=UZ7_q|#o-e+3Xz-2k z?*hf2%ssH;>W>FUM+dJBe*bZ-u&6RvHlF*zen| z1y7c?z4Yf_Je99CWa(R;dPYBAntf(}Vb6kZ%a+z@@l9W^+Hkt?T*sWHb=z{^{Ji^~ z>$UlL! + +/** Coconuts are cool */ +@interface CoconutObj : NSObject +@end diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/A/Headers/CoconutLib_macOS.h b/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/A/Headers/CoconutLib_macOS.h new file mode 100644 index 0000000000..6172537a9a --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/A/Headers/CoconutLib_macOS.h @@ -0,0 +1,19 @@ +// +// CoconutLib_macOS.h +// CoconutLib-macOS +// +// Created by Eric Amorde on 10/20/19. +// Copyright © 2019 CocoaPods. All rights reserved. +// + +#import + +//! Project version number for CoconutLib_macOS. +FOUNDATION_EXPORT double CoconutLib_macOSVersionNumber; + +//! Project version string for CoconutLib_macOS. +FOUNDATION_EXPORT const unsigned char CoconutLib_macOSVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/A/Resources/Info.plist b/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/A/Resources/Info.plist new file mode 100644 index 0000000000..5d28880c58 --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,46 @@ + + + + + BuildMachineOSBuild + 19A602 + CFBundleDevelopmentRegion + en + CFBundleExecutable + CoconutLib + CFBundleIdentifier + org.cocoapods.CoconutLib + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + CoconutLib + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSupportedPlatforms + + MacOSX + + CFBundleVersion + 1 + DTCompiler + com.apple.compilers.llvm.clang.1_0 + DTPlatformBuild + 11A1027 + DTPlatformVersion + GM + DTSDKBuild + 19A547 + DTSDKName + macosx10.15 + DTXcode + 1110 + DTXcodeBuild + 11A1027 + LSMinimumSystemVersion + 10.15 + NSHumanReadableCopyright + Copyright © 2019 CocoaPods. All rights reserved. + + diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/A/_CodeSignature/CodeResources b/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/A/_CodeSignature/CodeResources new file mode 100644 index 0000000000..31087d3302 --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/A/_CodeSignature/CodeResources @@ -0,0 +1,142 @@ + + + + + files + + Resources/Info.plist + + JblfkGI+5GcoQC90rCKdn04lQCY= + + + files2 + + Headers/Coconut.h + + hash2 + + Y0JMEPdjeR1ijdoNxhnkdG+dC3aGaoV/tktWLk58Tv4= + + + Headers/CoconutLib_macOS.h + + hash2 + + 4oDk2AXU1LYVJFiEq3nK+OFNwYJ/dW/pZQBXLonHUmY= + + + Resources/Info.plist + + hash2 + + F6uXja+WIGBcrJmxFougVbNNDH40H/tBSx2sYHGHP8Y= + + + + rules + + ^Resources/ + + ^Resources/.*\.lproj/ + + optional + + weight + 1000 + + ^Resources/.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Resources/Base\.lproj/ + + weight + 1010 + + ^version.plist$ + + + rules2 + + .*\.dSYM($|/) + + weight + 11 + + ^(.*/)?\.DS_Store$ + + omit + + weight + 2000 + + ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/ + + nested + + weight + 10 + + ^.* + + ^Info\.plist$ + + omit + + weight + 20 + + ^PkgInfo$ + + omit + + weight + 20 + + ^Resources/ + + weight + 20 + + ^Resources/.*\.lproj/ + + optional + + weight + 1000 + + ^Resources/.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Resources/Base\.lproj/ + + weight + 1010 + + ^[^/]+$ + + nested + + weight + 10 + + ^embedded\.provisionprofile$ + + weight + 20 + + ^version\.plist$ + + weight + 20 + + + + diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/Current b/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/Current new file mode 120000 index 0000000000..8c7e5a667f --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/macos-x86_64/CoconutLib.framework/Versions/Current @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-arm64/CoconutLib.framework/CoconutLib b/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-arm64/CoconutLib.framework/CoconutLib new file mode 100755 index 0000000000000000000000000000000000000000..6381cb224dd8bff1c0adafdc6f1f02c165d37076 GIT binary patch literal 82496 zcmeI53v^RO`oM3RvHU0
  • ^FJPv;|$y|Lp$H`TxH; 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 j!e(fz>nl34&0x{U)l*mK$S?XzRE$bnq}CW + +/** Coconuts are cool */ +@interface CoconutObj : NSObject +@end diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-arm64/CoconutLib.framework/Headers/CoconutLib.h b/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-arm64/CoconutLib.framework/Headers/CoconutLib.h new file mode 100644 index 0000000000..aa6a6afefc --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-arm64/CoconutLib.framework/Headers/CoconutLib.h @@ -0,0 +1,19 @@ +// +// CoconutLib.h +// CoconutLib +// +// Created by Eric Amorde on 10/20/19. +// Copyright © 2019 CocoaPods. All rights reserved. +// + +#import + +//! Project version number for CoconutLib. +FOUNDATION_EXPORT double CoconutLibVersionNumber; + +//! Project version string for CoconutLib. +FOUNDATION_EXPORT const unsigned char CoconutLibVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-arm64/CoconutLib.framework/Info.plist b/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-arm64/CoconutLib.framework/Info.plist new file mode 100644 index 0000000000000000000000000000000000000000..72716d9de370667b9b6e8fba522db24880d7e332 GIT binary patch literal 703 zcmYjNOK;Oa5Z-Zl6ez@P3T*=|ZFmdG^0sQL3JEEViIj$rQk#TSCDz8?q$}25%a4e_ zAK=Ch;M6M@gv1ev|G<$095^6O91wS$#3tR#%=cQ&Oxxou2vzmFJPXpqiIb;JPo6n@ zZtDDnj66M)oxONzZhm1dclpZF)#a7^^0n(X@;6O6yB#rZSBZ7VTw2qI$dng~rR~VI zIn`*7a^X4D4fkl53D=ZoQtiPDYDFPwb9#&{+p(2(81+qgF?E*Rj?kDD#(CoR>(me8 z?jThk5hwm3o5EdUJttji^u3tPrL2A^{4h!Cq0ijzaWV3|Sf=(aCt*kUPGHKJG?|3< zHKQmTkMY4|8O=zo!;M>GJep>DOpNooRvEgRni01HV?#5ZTEeCWNlnftSDDM4$f@Z` zxb>tQUy@n0L>$KZb-Y#BP*?Y;yI&NRaHH@cYn$@C@Vkl?6T}mCpo}GbLs5-VwNcTr zq8=?a3!cZRQLpKbu_@;*;V5Ll#M#k;fx>yuQ7lf}u7XXqjyHGK*SDHOSJ)GQf!7rE z*?%}d2F6%zU|hiJ>gLfcc>+zMHB?3vy+m)&d-Mr?LBC-Nmf#NDgB@rAg8*K^Yj_Lq t-~)Vw&+rw#!4LQezu*u2m2%RGbXQWP`%+P=NL4g^5{xRkoz$dAwSSIK*+c*U literal 0 HcmV?d00001 diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-arm64/CoconutLib.framework/Modules/module.modulemap b/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-arm64/CoconutLib.framework/Modules/module.modulemap new file mode 100644 index 0000000000..935662f517 --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-arm64/CoconutLib.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module CoconutLib { + umbrella header "CoconutLib.h" + + export * + module * { export * } +} diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-x86_64-simulator/CoconutLib.framework/CoconutLib b/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-x86_64-simulator/CoconutLib.framework/CoconutLib new file mode 100755 index 0000000000000000000000000000000000000000..827479965ab0a52736eb95e0e1b59f7bd4fba882 GIT binary patch literal 31264 zcmeI3e{54#6vuBnz=dBM3K@z@K`=w06&7R>4J~D3n`2`?G-ya3uie||=-Q@z#V#5h zh$xAPHSrHa00|}-<3F0rWZ@qtkO&EhFk?s*$qf8K;;#ja%8cMS@7+sZUzy^c;`b(J z_ndRjJ@4MneQnmh(=Wzsrl37 zBxS1{UZu!h)1t{lrm#SFzG1n(S{cvwBv%fn$=oiJXxjQvXGjaTwshF^6t4+-=EcJ6 z;}GXQ&`UoVT_p?GmukO6Pg#ZLN5oy)^$i=gj-*oT@1a&kq_oBbqh!NZin@Q!XrC6vf4p zdY6$diQ%<8Ov0Ql%X3^JZ9Z3S50LP9kbsYFU=JDyfB*=900@8p2!OyHLqL8?XpQuW zVD&>wHnq2IXb)|Cyzt?{=ObTJUAWWXTfSoIO#owSl{(~88vXBBP@#bU2!H?xfB*=9 z00@8p2!H?xfB*>GK?HWvUidi`i?g|(mpjL9r4NvkpYgFc+rQ1@oO?^%XM5H2+grwv zvq8p9G!8!qfB*=900@8p2!H?xfB*=900{h_2+Ud_+7`}D1yc>};Wpa%-9fE&T~k;K zH-|bpv_)D=2UQsuQB$;~hdp^YxUsG?R1z?7@`h}lJO$eI`9@#L?AM}tbekat^9c1Us+nsDjw8 zR^#xc%0xay^M*ps^W^&G3MxJxllA;uH_NuF?|+PK`ay)Mi)fX$`o1AfHdSofrOBkf z;<69A?2m2RDt9K;YFf$e%b6HX-}*3)6>*$X+tl9v6{Ld^}mJ&|7$RQViQ|!prn6c4w*QGH;$k&Xqx**D94J z^Pd`5IomCn?(s*dU|vrpyE6U)RMB_k!f0;)xyuzd!uz{D=c{jwF8ZKxeqX-jLt|z(_r~O=Lm#!b^bUOb`F-y#|9xcjk*e^uJ*Qsp-cfCyAN}s|nzcW_ z(EI1n*G9fR^h7*=rFPcf)%u=`W5?P$2dlRH_MHD{F6UXcVbzusn@=CuS6=?rzSGC& zU;6dxix)pj&9176RF6+Rzqe|2_^qu6zdUnx<$0F>pe`)cRUjjAz zo6C$XFYh)+7Ed|(_Uzty-&QYe)HBb1v*zg&v(Ijwv9xjf)WfHG9=z62G5yeJ_crgY z<81_#?m-*a_=Rb#yT5mnh|qxm2!H?xfB*=900@8p2!H?xfB*=900@8p2!H?xfB*=9 z00@8p2!H?xfB*=900@8p2!H?xfB*=900@8p2!H?xfB*=900@8p2!H?xfB*=900@8p Y2!H?xfB*=900@8p2!H?x{6`7=1x<{9 literal 0 HcmV?d00001 diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-x86_64-simulator/CoconutLib.framework/Headers/Coconut.h b/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-x86_64-simulator/CoconutLib.framework/Headers/Coconut.h new file mode 100644 index 0000000000..4e98be6d36 --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-x86_64-simulator/CoconutLib.framework/Headers/Coconut.h @@ -0,0 +1,6 @@ + +#import + +/** Coconuts are cool */ +@interface CoconutObj : NSObject +@end diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-x86_64-simulator/CoconutLib.framework/Headers/CoconutLib.h b/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-x86_64-simulator/CoconutLib.framework/Headers/CoconutLib.h new file mode 100644 index 0000000000..aa6a6afefc --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-x86_64-simulator/CoconutLib.framework/Headers/CoconutLib.h @@ -0,0 +1,19 @@ +// +// CoconutLib.h +// CoconutLib +// +// Created by Eric Amorde on 10/20/19. +// Copyright © 2019 CocoaPods. All rights reserved. +// + +#import + +//! Project version number for CoconutLib. +FOUNDATION_EXPORT double CoconutLibVersionNumber; + +//! Project version string for CoconutLib. +FOUNDATION_EXPORT const unsigned char CoconutLibVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-x86_64-simulator/CoconutLib.framework/Info.plist b/spec/fixtures/coconut-lib/CoconutLib.xcframework/tvos-x86_64-simulator/CoconutLib.framework/Info.plist new file mode 100644 index 0000000000000000000000000000000000000000..37c7b4c344f7f9a2d8552238adcca2bb5dc9c956 GIT binary patch literal 730 zcmZ8dOK;Oa5Z-Zl6ewid1p0uMlJY)S-d1f@Ar47Qq_l*V+9b59VmbCESy+25+o=fr z0dD*NPQ7wLNF0&)4;(qbfdk^iA3%srVk;GUnVIh~J2TCIvnbZI?>Gm_*ol*;PLH2C zdv4zH zGCN4wN46(BWYcoTcAnd9YW4z&&ZVf)5n-G-jW}d}`#9MR0!dSMhud*WgkEIfOzKQb z`?^^YUch*NvW#w~(!s`!Q9Ybyas-V0hQ2jW@9CyY`@*_zK6Qjk50aRi4_BGbyso!x zB<9AGio7IqXxa7{@72ggVNF}!rT%_NIKuD74_VW~Ga_uOjs)yLxRE-dj5Sp=%hmdp zK~(K%-om&L1e}^RL;fOH7U5%J;k+X})$S9r$#Bz1<^0f79d7$=l~`JhtZ%NaZpa1$ zU3?g&4NS74Y8KA@kN07d5TexyDG+UW{pc1RL*r-#RS-ol(Hrz0eL`Q*Z-bw-oiWh03YEqe1&iD1Af9U_yd2HCFQPiUnwekN<(QW9W;0f3?sUo#3U%s F{sCpi + + + + files + + Headers/Coconut.h + + Ik11Bk3/ssS7b9IAbABo7fXHDXc= + + Headers/CoconutLib.h + + 0GEcr1CRa4n6sQrt4PgsVtiwLLE= + + Info.plist + + 1GCNyKF8UizATYtIAIZpzjqUzOE= + + Modules/module.modulemap + + XBUmhbp5sPDDR0vApgYJ0zALOWI= + + + files2 + + Headers/Coconut.h + + hash2 + + Y0JMEPdjeR1ijdoNxhnkdG+dC3aGaoV/tktWLk58Tv4= + + + Headers/CoconutLib.h + + hash2 + + i0yhQAstAqNBZIj9gqe5XY1GWc6nOWk8ENgA8uHl2DE= + + + Modules/module.modulemap + + hash2 + + mhxBFlNwG/ASIqNY6yYtxs7CuysII4NrdaoGkHwJLCA= + + + + rules + + ^.* + + ^.*\.lproj/ + + optional + + weight + 1000 + + ^.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Base\.lproj/ + + weight + 1010 + + ^version.plist$ + + + rules2 + + .*\.dSYM($|/) + + weight + 11 + + ^(.*/)?\.DS_Store$ + + omit + + weight + 2000 + + ^.* + + ^.*\.lproj/ + + optional + + weight + 1000 + + ^.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Base\.lproj/ + + weight + 1010 + + ^Info\.plist$ + + omit + + weight + 20 + + ^PkgInfo$ + + omit + + weight + 20 + + ^embedded\.provisionprofile$ + + weight + 20 + + ^version\.plist$ + + weight + 20 + + + + diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-armv7k_arm64_32/CoconutLib.framework/CoconutLib b/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-armv7k_arm64_32/CoconutLib.framework/CoconutLib new file mode 100755 index 0000000000000000000000000000000000000000..f2cf115f74e62eab951686f224cbcbd9942da13d GIT binary patch literal 197136 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 QywY4%uC_Q|V}N7%KNsVqi2wiq literal 0 HcmV?d00001 diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-armv7k_arm64_32/CoconutLib.framework/Headers/Coconut.h b/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-armv7k_arm64_32/CoconutLib.framework/Headers/Coconut.h new file mode 100644 index 0000000000..4e98be6d36 --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-armv7k_arm64_32/CoconutLib.framework/Headers/Coconut.h @@ -0,0 +1,6 @@ + +#import + +/** Coconuts are cool */ +@interface CoconutObj : NSObject +@end diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-armv7k_arm64_32/CoconutLib.framework/Headers/CoconutLib.h b/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-armv7k_arm64_32/CoconutLib.framework/Headers/CoconutLib.h new file mode 100644 index 0000000000..aa6a6afefc --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-armv7k_arm64_32/CoconutLib.framework/Headers/CoconutLib.h @@ -0,0 +1,19 @@ +// +// CoconutLib.h +// CoconutLib +// +// Created by Eric Amorde on 10/20/19. +// Copyright © 2019 CocoaPods. All rights reserved. +// + +#import + +//! Project version number for CoconutLib. +FOUNDATION_EXPORT double CoconutLibVersionNumber; + +//! Project version string for CoconutLib. +FOUNDATION_EXPORT const unsigned char CoconutLibVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-armv7k_arm64_32/CoconutLib.framework/Info.plist b/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-armv7k_arm64_32/CoconutLib.framework/Info.plist new file mode 100644 index 0000000000000000000000000000000000000000..ab9dd3a8782fe89965e53b7be690a1b4caf5a79e GIT binary patch literal 689 zcmYjN%Wl&^6rF1d6ez@P3QY=qP#zT<%MKzDVu8|_NTH-Dv56t7VomIcGh*zq{3rx| zfE^#es#`V)i6s*Mz>)g6lz8=F^)n_Jhe7jKwiekZ2PZenXlJ<`%9l_?f$^_|$W z8Bxh0Vcd6#7qy8)xo3(?nfBl%vEm5#897Ea?8Hh3lmw=@mN^^VfUDGsk~|JZ9TJ4e z?;un6u$y$qXXQS&o@0mTBR^qRGgce&AWD;36j0AOF2=r}$i&`fI2!Q44NWnZCDTw> z)oa}KDH~6gQ}xU`*|;~Wr_(IXh*@4!cPH*=s-AquMnlz~THGcFDW>NWo7AIj?6$Nt z+8ob!*(>UK~B5eN!y(z>%zkz&^J_X(nl9N!II4V^>oo z`Do2BaAXZz+GE8Ow=C{T*!LMplGF7D;G9_r(|!G;vFq(PZv}jD1kgd0y6MZ_!VhkpD@} zbI(2Z+_&GoZPNC1boRGDR|+9=Nb^YVBQ0DZ#LL2Aw~?Jo4=G!!jx++&D0)^P9aLj;&Qn$Y}C$YBxPNV?{L+@8uK1ja7R)qr)u;& z$g!prkl`kMkW}~c(^=!V0o)b*Xy~sdfeg^VzUrwo`T1BP~o8R zNvZ0-QSw+C`*1J4{2#Ts{5^@J(&-{H zYC!FARhx7YuIhLyMrRp`$1KdUP9b>AO6!#T*m3# z_)JQTI-euUL!{j9AizHzVh;oaKmY_l00ck)1V8`;{wD&)r5g#_1$qZI!ph;w#&J*W7Za_J^H%#XaYP0RkWZ0w4eaAOHd&00JNY0w4eaAaJJ< z=%o!68p?ZH_}Oa-?ex|3Hcx(00JNY0w4eaAOHd&00JNY z0w4ea{~dvQHi@Rqj;`Xa;%09XO?$6fHXNw+N^hOV@0Z2W=cnufC6p9RYJ0|LtFLPD zENV}W|7D0RLxFnwzS7y1?2(~Bs9g~sXM|1C{{-yW^n}M1H9_gbVv{zd*eC4%q#B8} ziJiVwXHZeao*Xf{B<(TeHD{U9Be5qpz{O-S7v~_n&;rapvqkCG>M&k2B+YU%5NgeQHJRyB{|DI?`W!U395z zW^DK11K!)ODBG^R*{+^w+#4CaSwH$(<*~`q%=E>{P$vKL-IKd~Cs&>r{xtH*;cGXF zYPJl|HlG_T$vqvs+v3qeRb=^RP=??T|2+KHR20@bz)*o>mTk+|L>KxBZEgDR4 literal 0 HcmV?d00001 diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/Headers/Coconut.h b/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/Headers/Coconut.h new file mode 100644 index 0000000000..4e98be6d36 --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/Headers/Coconut.h @@ -0,0 +1,6 @@ + +#import + +/** Coconuts are cool */ +@interface CoconutObj : NSObject +@end diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/Headers/CoconutLib.h b/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/Headers/CoconutLib.h new file mode 100644 index 0000000000..aa6a6afefc --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/Headers/CoconutLib.h @@ -0,0 +1,19 @@ +// +// CoconutLib.h +// CoconutLib +// +// Created by Eric Amorde on 10/20/19. +// Copyright © 2019 CocoaPods. All rights reserved. +// + +#import + +//! Project version number for CoconutLib. +FOUNDATION_EXPORT double CoconutLibVersionNumber; + +//! Project version string for CoconutLib. +FOUNDATION_EXPORT const unsigned char CoconutLibVersionString[]; + +// In this header, you should import all the public headers of your framework using statements like #import + + diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/Info.plist b/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/Info.plist new file mode 100644 index 0000000000000000000000000000000000000000..39305c0beb1c52fa482eaace8d3971b7cd3a5ed4 GIT binary patch literal 712 zcmY*VyKmD#7{AXHC{W0yDYPl{L4hI`%Pwjv#MH(_3Z)NXla#26b+IqWiL=l0qY(H9 z*!TmOy0Rc7MkM|RMg|xd5ECn6;*!`(x#hd>_xN7zfU_vpwC{KZlv5L@&zzk+cmBfE z#Y;JypDxT?zA`&koSnaVZE#?9g_8yB_`#@!v_^q5cg%wcBZV!5)F_%5dg zJ)&F$9`)lI?K0upcsk=Ayr51JlQyR(z^W^ytixz%14p>@FpcT?@DB5tmw0<-YHmHL z%1bhbR*1)VzpmfgENN>s>Nm^65q=UsVr?7GiLk3W5+H$aBXvxfB~`O3JB@8qSGD7X zR)fS&&y*eHx*~k6+jzwho=Sp%Q(0iNWu$U`)=Q<<^MN_a%r?&d z4-8uAx~?^JeN)%gHjY>E1e!#5Q58}261_q1(I@l;{e~%6ggbB_9zqKkMDPk;!&`U< rAK)W=hOh7qe!x%o1%KeLvZSmk>q=GGRqDzC8a@R^5#3H>8kFWgEw0|` literal 0 HcmV?d00001 diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/Modules/module.modulemap b/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/Modules/module.modulemap new file mode 100644 index 0000000000..935662f517 --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/Modules/module.modulemap @@ -0,0 +1,6 @@ +framework module CoconutLib { + umbrella header "CoconutLib.h" + + export * + module * { export * } +} diff --git a/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/_CodeSignature/CodeResources b/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/_CodeSignature/CodeResources new file mode 100644 index 0000000000..e7e694e198 --- /dev/null +++ b/spec/fixtures/coconut-lib/CoconutLib.xcframework/watchos-i386-simulator/CoconutLib.framework/_CodeSignature/CodeResources @@ -0,0 +1,135 @@ + + + + + files + + Headers/Coconut.h + + Ik11Bk3/ssS7b9IAbABo7fXHDXc= + + Headers/CoconutLib.h + + 0GEcr1CRa4n6sQrt4PgsVtiwLLE= + + Info.plist + + 1iBV+4QrCAe7qFqRKwA1ttpVeIw= + + Modules/module.modulemap + + XBUmhbp5sPDDR0vApgYJ0zALOWI= + + + files2 + + Headers/Coconut.h + + hash2 + + Y0JMEPdjeR1ijdoNxhnkdG+dC3aGaoV/tktWLk58Tv4= + + + Headers/CoconutLib.h + + hash2 + + i0yhQAstAqNBZIj9gqe5XY1GWc6nOWk8ENgA8uHl2DE= + + + Modules/module.modulemap + + hash2 + + mhxBFlNwG/ASIqNY6yYtxs7CuysII4NrdaoGkHwJLCA= + + + + rules + + ^.* + + ^.*\.lproj/ + + optional + + weight + 1000 + + ^.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Base\.lproj/ + + weight + 1010 + + ^version.plist$ + + + rules2 + + .*\.dSYM($|/) + + weight + 11 + + ^(.*/)?\.DS_Store$ + + omit + + weight + 2000 + + ^.* + + ^.*\.lproj/ + + optional + + weight + 1000 + + ^.*\.lproj/locversion.plist$ + + omit + + weight + 1100 + + ^Base\.lproj/ + + weight + 1010 + + ^Info\.plist$ + + omit + + weight + 20 + + ^PkgInfo$ + + omit + + weight + 20 + + ^embedded\.provisionprofile$ + + weight + 20 + + ^version\.plist$ + + weight + 20 + + + + diff --git a/spec/fixtures/xcframeworks/xcframework-spec.podspec b/spec/fixtures/xcframeworks/xcframework-spec.podspec new file mode 100644 index 0000000000..883a19686e --- /dev/null +++ b/spec/fixtures/xcframeworks/xcframework-spec.podspec @@ -0,0 +1,12 @@ +Pod::Spec.new do |s| + s.name = 'xcframework-spec' + s.version = '1.0' + s.author = { 'xcframework-spec' => 'xcframework-spec@xcframework-spec.com' } + s.summary = 'Use this podspec for tests to point to different xcframeworks for testing' + s.description = 'Use this podspec for tests to point to different xcframeworks for testing' + s.homepage = 'http://xcframework-spec.com' + s.source = { :git => 'http://xcframework-spec-corp.local/xcframework-spec-lib.git', :tag => 'v1.0' } + s.license = 'MIT' + + s.platform = :ios, '8.0' +end diff --git a/spec/unit/target/build_settings/aggregate_target_settings_spec.rb b/spec/unit/target/build_settings/aggregate_target_settings_spec.rb index d0f3467de7..b8ceb45a90 100644 --- a/spec/unit/target/build_settings/aggregate_target_settings_spec.rb +++ b/spec/unit/target/build_settings/aggregate_target_settings_spec.rb @@ -342,6 +342,24 @@ def specs end end + describe 'with a vendored dynamic xcframework pod' do + before do + coconut_pod_target = @pod_targets.first + coconut_pod_target.stubs(:build_type).returns(BuildType.static_library) + end + + def specs + spec = fixture_spec('xcframeworks/xcframework-spec.podspec') + spec.vendored_frameworks = 'DynamicFramework/CoconutLib.xcframework' + [spec] + end + + it 'includes default runpath search path list when linking vendored dynamic xcframework' do + @target.stubs(:build_type => BuildType.dynamic_framework) + @generator.generate.to_hash['LD_RUNPATH_SEARCH_PATHS'].should == "$(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'" + end + end + describe 'with a scoped pod target' do def specs [