Skip to content

Commit

Permalink
Update BananaLib build script to output archives in the gitignored bu…
Browse files Browse the repository at this point in the history
…ild/DerivedData directory
  • Loading branch information
johntmcintosh committed Oct 9, 2020
1 parent 7829521 commit 1dbae66
Show file tree
Hide file tree
Showing 135 changed files with 66 additions and 1,322 deletions.
27 changes: 14 additions & 13 deletions examples/Vendored-XCFramework12-Example/BananaLib/build.sh
Expand Up @@ -10,32 +10,33 @@ set -eou pipefail
rm -rf build/*

settings="SKIP_INSTALL=NO BUILD_LIBRARY_FOR_DISTRIBUTION=YES"
archiveDir="build/DerivedData/"

echo "Building xcframework slices"

DSYM_FOLDER=build/BananaLib.dSYMs
DSYM_FOLDER="build/BananaLib.dSYMs"

xcodebuild clean archive -project BananaLib.xcodeproj -scheme "BananaLib" -sdk iphoneos -archivePath "build/iOS" $settings
xcodebuild clean archive -project BananaLib.xcodeproj -scheme "BananaLib" -sdk iphonesimulator -archivePath "build/iOS-Simulator" $settings
xcodebuild clean archive -project BananaLib.xcodeproj -scheme "BananaLib" -destination 'platform=macOS,arch=x86_64,variant=Mac Catalyst' -archivePath "build/iOS-Catalyst" $settings
xcodebuild clean archive -project BananaLib.xcodeproj -scheme "BananaLib" -sdk watchos -archivePath "build/watchOS" $settings
xcodebuild clean archive -project BananaLib.xcodeproj -scheme "BananaLib" -sdk watchsimulator -archivePath "build/watchOS-Simulator" $settings
xcodebuild clean archive -project BananaLib.xcodeproj -scheme "BananaLib" -sdk appletvos -archivePath "build/tvOS" $settings
xcodebuild clean archive -project BananaLib.xcodeproj -scheme "BananaLib" -sdk appletvsimulator -archivePath "build/tvOS-Simulator" $settings
xcodebuild clean archive -project BananaLib.xcodeproj -scheme "BananaLib" -sdk macosx -archivePath "build/macOS" $settings
xcodebuild clean archive -project BananaLib.xcodeproj -scheme "BananaLib" -sdk iphoneos -archivePath "${archiveDir}/iOS" $settings
xcodebuild clean archive -project BananaLib.xcodeproj -scheme "BananaLib" -sdk iphonesimulator -archivePath "${archiveDir}/iOS-Simulator" $settings
xcodebuild clean archive -project BananaLib.xcodeproj -scheme "BananaLib" -destination 'platform=macOS,arch=x86_64,variant=Mac Catalyst' -archivePath "${archiveDir}/iOS-Catalyst" $settings
xcodebuild clean archive -project BananaLib.xcodeproj -scheme "BananaLib" -sdk watchos -archivePath "${archiveDir}/watchOS" $settings
xcodebuild clean archive -project BananaLib.xcodeproj -scheme "BananaLib" -sdk watchsimulator -archivePath "${archiveDir}/watchOS-Simulator" $settings
xcodebuild clean archive -project BananaLib.xcodeproj -scheme "BananaLib" -sdk appletvos -archivePath "${archiveDir}/tvOS" $settings
xcodebuild clean archive -project BananaLib.xcodeproj -scheme "BananaLib" -sdk appletvsimulator -archivePath "${archiveDir}/tvOS-Simulator" $settings
xcodebuild clean archive -project BananaLib.xcodeproj -scheme "BananaLib" -sdk macosx -archivePath "${archiveDir}/macOS" $settings

archives=(iOS iOS-Simulator iOS-Catalyst watchOS watchOS-Simulator tvOS tvOS-Simulator macOS)

args=""
for archive in "${archives[@]}"; do
args="$args -framework build/${archive}.xcarchive/Products/Library/Frameworks/BananaLib.framework"
args="$args -framework ${archiveDir}/${archive}.xcarchive/Products/Library/Frameworks/BananaLib.framework"
done

echo "Copying bitcode symbol maps..."
for archive in "${archives[@]}"; do
symbolmap_src="build/${archive}.xcarchive/BCSymbolMaps"
symbolmap_src="${archiveDir}/${archive}.xcarchive/BCSymbolMaps"
if [[ -d "$symbolmap_src" ]]; then
rsync -av "${symbolmap_src}/" "build/${archive}.xcarchive/Products/Library/Frameworks/BananaLib.framework/BCSymbolMaps"
rsync -av "${symbolmap_src}/" "${archiveDir}/${archive}.xcarchive/Products/Library/Frameworks/BananaLib.framework/BCSymbolMaps"
else
echo "No bitcode symbol maps in archive ${archive}"
fi
Expand All @@ -48,7 +49,7 @@ xcodebuild -create-xcframework $args -output build/BananaLib.xcframework
echo "Gathering dSYMs to $DSYM_FOLDER..."
mkdir $DSYM_FOLDER
for archive in "${archives[@]}"; do
dsym_src="build/${archive}.xcarchive/dSYMs/BananaLib.framework.dSYM"
dsym_src="${archiveDir}/${archive}.xcarchive/dSYMs/BananaLib.framework.dSYM"
if [[ -d "$dsym_src" ]]; then
rsync -av "${dsym_src}/" "${DSYM_FOLDER}/${archive}.dSYM"
else
Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Expand Up @@ -6,111 +6,108 @@
<array>
<dict>
<key>LibraryIdentifier</key>
<string>tvos-arm64_x86_64-simulator</string>
<string>watchos-i386-simulator</string>
<key>LibraryPath</key>
<string>BananaLib.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>arm64</string>
<string>x86_64</string>
<string>i386</string>
</array>
<key>SupportedPlatform</key>
<string>tvos</string>
<string>watchos</string>
<key>SupportedPlatformVariant</key>
<string>simulator</string>
</dict>
<dict>
<key>LibraryIdentifier</key>
<string>macos-x86_64</string>
<string>ios-x86_64-maccatalyst</string>
<key>LibraryPath</key>
<string>BananaLib.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>x86_64</string>
</array>
<key>SupportedPlatform</key>
<string>macos</string>
<string>ios</string>
<key>SupportedPlatformVariant</key>
<string>maccatalyst</string>
</dict>
<dict>
<key>LibraryIdentifier</key>
<string>tvos-arm64</string>
<string>watchos-armv7k_arm64_32</string>
<key>LibraryPath</key>
<string>BananaLib.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>arm64</string>
<string>armv7k</string>
<string>arm64_32</string>
</array>
<key>SupportedPlatform</key>
<string>tvos</string>
<string>watchos</string>
</dict>
<dict>
<key>LibraryIdentifier</key>
<string>watchos-arm64_x86_64-simulator</string>
<string>ios-arm64</string>
<key>LibraryPath</key>
<string>BananaLib.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>arm64</string>
<string>x86_64</string>
</array>
<key>SupportedPlatform</key>
<string>watchos</string>
<key>SupportedPlatformVariant</key>
<string>simulator</string>
<string>ios</string>
</dict>
<dict>
<key>LibraryIdentifier</key>
<string>ios-arm64_x86_64-simulator</string>
<string>tvos-x86_64-simulator</string>
<key>LibraryPath</key>
<string>BananaLib.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>arm64</string>
<string>x86_64</string>
</array>
<key>SupportedPlatform</key>
<string>ios</string>
<string>tvos</string>
<key>SupportedPlatformVariant</key>
<string>simulator</string>
</dict>
<dict>
<key>LibraryIdentifier</key>
<string>watchos-arm64_32_armv7k</string>
<string>ios-x86_64-simulator</string>
<key>LibraryPath</key>
<string>BananaLib.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>arm64_32</string>
<string>armv7k</string>
<string>x86_64</string>
</array>
<key>SupportedPlatform</key>
<string>watchos</string>
<string>ios</string>
<key>SupportedPlatformVariant</key>
<string>simulator</string>
</dict>
<dict>
<key>LibraryIdentifier</key>
<string>ios-x86_64-maccatalyst</string>
<string>macos-x86_64</string>
<key>LibraryPath</key>
<string>BananaLib.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>x86_64</string>
</array>
<key>SupportedPlatform</key>
<string>ios</string>
<key>SupportedPlatformVariant</key>
<string>maccatalyst</string>
<string>macos</string>
</dict>
<dict>
<key>LibraryIdentifier</key>
<string>ios-arm64</string>
<string>tvos-arm64</string>
<key>LibraryPath</key>
<string>BananaLib.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>arm64</string>
</array>
<key>SupportedPlatform</key>
<string>ios</string>
<string>tvos</string>
</dict>
</array>
<key>CFBundlePackageType</key>
Expand Down
@@ -1,12 +1,11 @@
BCSymbolMap Version: 2.0
Apple clang version 12.0.0 (clang-1200.0.32.2)
/Applications/Xcode-12.0.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS14.0.sdk
iPhoneOS14.0.sdk
Apple clang version 11.0.3 (clang-1103.0.32.62)
/Users/jtm/Library/Developer/Xcode/DerivedData/BananaLib-goieoziljschjhfxqahxldwqessj/Build/Intermediates.noindex/ArchiveIntermediates/BananaLib/IntermediateBuildFilesPath/BananaLib.build/Release-iphoneos/BananaLib.build/DerivedSources/BananaLib_vers.c
/Users/jtm/development/CocoaPodsOrg/CocoaPods/examples/Vendored-XCFramework12-Example/BananaLib
-[Banana peel]
__OBJC_METACLASS_RO_$_Banana
__OBJC_$_INSTANCE_METHODS_Banana
__OBJC_CLASS_RO_$_Banana
_OBJC_LABEL_CLASS_$
/Users/jtm/development/CocoaPodsOrg/CocoaPods/examples/Vendored-XCFramework12-Example/BananaLib/BananaLib/Banana.m
BananaLib/Banana.m
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

This file was deleted.

Binary file not shown.
Expand Up @@ -27,21 +27,19 @@
<key>DTCompiler</key>
<string>com.apple.compilers.llvm.clang.1_0</string>
<key>DTPlatformBuild</key>
<string>12A7209</string>
<key>DTPlatformName</key>
<string>macosx</string>
<string>11E801a</string>
<key>DTPlatformVersion</key>
<string>10.15.6</string>
<string>GM</string>
<key>DTSDKBuild</key>
<string>19G68</string>
<key>DTSDKName</key>
<string>macosx10.15</string>
<key>DTXcode</key>
<string>1200</string>
<string>1170</string>
<key>DTXcodeBuild</key>
<string>12A7209</string>
<string>11E801a</string>
<key>LSMinimumSystemVersion</key>
<string>10.15.6</string>
<string>10.15</string>
<key>UIDeviceFamily</key>
<array>
<integer>2</integer>
Expand Down
Binary file not shown.
Binary file not shown.
Expand Up @@ -14,7 +14,7 @@
</data>
<key>Info.plist</key>
<data>
rXctFjY9Oyn12mbroWRkHJPAerk=
NEyzaML3QBTsAfp+fek+0ESlMo0=
</data>
<key>Modules/module.modulemap</key>
<data>
Expand Down
Binary file not shown.

0 comments on commit 1dbae66

Please sign in to comment.