-
Notifications
You must be signed in to change notification settings - Fork 871
Run CI against Xcode 12 beta #936
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,33 +1,30 @@ | ||
| #!/bin/bash | ||
| set -e | ||
|
|
||
| XCODE_VERSION=$(/usr/libexec/PlistBuddy -c "Print :DTXcode" "$(xcode-select -p)/../Info.plist") | ||
|
|
||
| CARTHAGE_DYNAMIC_FRAMEWORKS=(Result) | ||
| CARTHAGE_STATIC_FRAMEWORKS=(SwiftyJSON swift-nonempty) | ||
|
|
||
| carthage bootstrap $CARTHAGE_DYNAMIC_FRAMEWORKS --cache-builds | ||
|
|
||
| # Prepare xcconfig for static bootstrapping | ||
| STATIC_CONFIG=$(mktemp -d)/static.xcconfig | ||
| echo "MACH_O_TYPE = staticlib" > $STATIC_CONFIG | ||
| XCODE_XCCONFIG_FILE="$PWD/carthage_dynamic.xcconfig" \ | ||
| carthage bootstrap $CARTHAGE_DYNAMIC_FRAMEWORKS --cache-builds | ||
|
|
||
| XCODE_XCCONFIG_FILE=$STATIC_CONFIG \ | ||
| XCODE_XCCONFIG_FILE="$PWD/carthage_static.xcconfig" \ | ||
| carthage bootstrap $CARTHAGE_STATIC_FRAMEWORKS --cache-builds | ||
|
|
||
| XCODE_VERSION=$(/usr/libexec/PlistBuddy -c "Print :DTXcode" "$(xcode-select -p)/../Info.plist") | ||
|
|
||
| echo " | ||
| ⚙️ Building iOS app" | ||
| xcodebuild -quiet -workspace Workspace.xcworkspace -scheme "App_iOS Test" -configuration "Test Debug" CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO CODE_SIGN_ENTITLEMENTS="" CODE_SIGNING_ALLOWED="NO" | ||
| xcodebuild -quiet -workspace Workspace.xcworkspace -scheme "App_iOS Test" -configuration "Test Debug" -xcconfig fixtures.xcconfig | ||
| echo "✅ Successfully built iOS app" | ||
|
|
||
| if [[ "$XCODE_VERSION" == 12* ]]; then | ||
| echo " | ||
| ⚙️ Building iOS app (Xcode 12+)" | ||
| xcodebuild -quiet -project ProjectXcode12.xcodeproj -scheme "App_iOS_With_Clip Test" -configuration "Test Debug" CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO CODE_SIGN_ENTITLEMENTS="" CODE_SIGNING_ALLOWED="NO" | ||
| xcodebuild -quiet -project ProjectXcode12.xcodeproj -scheme "App_iOS_With_Clip Test" -configuration "Test Debug" -xcconfig fixtures.xcconfig | ||
| echo "✅ Successfully built iOS app (Xcode 12+)" | ||
| fi | ||
|
|
||
| echo " | ||
| ⚙️ Building macOS app" | ||
| xcodebuild -quiet -workspace Workspace.xcworkspace -scheme "App_macOS" -configuration "Test Debug" CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO CODE_SIGN_ENTITLEMENTS="" CODE_SIGNING_ALLOWED="NO" | ||
| xcodebuild -quiet -workspace Workspace.xcworkspace -scheme "App_macOS" -configuration "Test Debug" -xcconfig fixtures.xcconfig | ||
| echo "✅ Successfully built macOS app" |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1 @@ | ||
| #include "xcode12_workaround.xcconfig" |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,2 @@ | ||
| #include "xcode12_workaround.xcconfig" | ||
| MACH_O_TYPE = staticlib |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,7 @@ | ||
| #include "xcode12_workaround.xcconfig" | ||
|
|
||
| // Common settings for fixtures | ||
| CODE_SIGN_IDENTITY = | ||
| CODE_SIGNING_REQUIRED = NO | ||
| CODE_SIGN_ENTITLEMENTS = | ||
| CODE_SIGNING_ALLOWED = NO | ||
|
Owner
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Anything not related to Xcode 12, can we put in the actual spec? I'd like to have that as buildable as possible without custom xcodebuild args
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @yonaskolb These were already explicit overrides in the script that built the fixtures. It made the command line a lot shorter to extract them to this xcconfig. They shouldn't go in the spec because they're only needed for CI builds (which does not have certs/profiles available to do code signing)
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This was able to replace: with: and apply the xcode 12 overrides all in one shot
Owner
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Right you are, apologies. My glance was too quick 😀 |
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,9 @@ | ||
| // | ||
| // See https://github.com/Carthage/Carthage/issues/3019 | ||
| // | ||
| // Skips building ARM slices for simulators until Carthage can support it | ||
| // | ||
|
|
||
| EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_simulator__NATIVE_ARCH_64_BIT_x86_64=arm64 arm64e armv7 armv7s armv6 armv8 | ||
| EXCLUDED_ARCHS_1200=$(inherited) $(EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_$(EFFECTIVE_PLATFORM_SUFFIX)__NATIVE_ARCH_64_BIT_$(NATIVE_ARCH_64_BIT)) | ||
| EXCLUDED_ARCHS=$(inherited) $(EXCLUDED_ARCHS_$(XCODE_VERSION_MAJOR)) | ||
|
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This will only set |
||
Uh oh!
There was an error while loading. Please reload this page.