From 49a9bda9925b4df5b87db912d84c10c418912bb8 Mon Sep 17 00:00:00 2001 From: Liam Nichols Date: Thu, 27 Jul 2023 03:03:31 +0200 Subject: [PATCH] Update CI Workflows to also test Xcode 14.3.1 (#1378) * Update Xcode 13.0 to 13.4.1, add job for Xcode 14.3.1 * Set DEVELOPER_DIR env to simplify changing Xcode version * Update Carthage workarounds for Xcode 14 --- .github/workflows/ci.yml | 22 +++++++++---------- .../TestProject/carthage_dynamic.xcconfig | 7 +++++- .../TestProject/carthage_static.xcconfig | 8 ++++++- Tests/Fixtures/TestProject/fixtures.xcconfig | 2 +- ... => xcode12_13_and_14_workaround.xcconfig} | 1 + 5 files changed, 26 insertions(+), 14 deletions(-) rename Tests/Fixtures/TestProject/{xcode12_and_13_workaround.xcconfig => xcode12_13_and_14_workaround.xcconfig} (80%) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 39508bc5..9894a16b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,22 +4,22 @@ on: pull_request: {} jobs: run: - runs-on: macos-11 + runs-on: ${{ matrix.macos }} name: Xcode ${{ matrix.xcode }} strategy: matrix: - xcode: ["12.5.1", "13.0"] + xcode: ["12.5.1", "13.4.1", "14.3.1"] + include: + - xcode: "12.5.1" + macos: macos-11 + - xcode: "13.4.1" + macos: macos-12 + - xcode: "14.3.1" + macos: macos-13 + env: + DEVELOPER_DIR: /Applications/Xcode_${{ matrix.xcode }}.app/Contents/Developer steps: - uses: actions/checkout@master - - name: Set Xcode - run: | - echo "Available Xcode versions:" - ls /Applications | grep Xcode - echo "Choosing Xcode_${{ matrix.xcode }}.app" - sudo xcode-select -s /Applications/Xcode_${{ matrix.xcode }}.app - xcodebuild -version - swift --version - swift package --version - name: Resolve run: swift package resolve - name: Build diff --git a/Tests/Fixtures/TestProject/carthage_dynamic.xcconfig b/Tests/Fixtures/TestProject/carthage_dynamic.xcconfig index fc72c48c..c21ace60 100644 --- a/Tests/Fixtures/TestProject/carthage_dynamic.xcconfig +++ b/Tests/Fixtures/TestProject/carthage_dynamic.xcconfig @@ -1 +1,6 @@ -#include "xcode12_and_13_workaround.xcconfig" +#include "xcode12_13_and_14_workaround.xcconfig" + +IPHONEOS_DEPLOYMENT_TARGET=14.0 +MACOSX_DEPLOYMENT_TARGET=10.15 +TVOS_DEPLOYMENT_TARGET=14.0 +WATCHOS_DEPLOYMENT_TARGET=7.0 diff --git a/Tests/Fixtures/TestProject/carthage_static.xcconfig b/Tests/Fixtures/TestProject/carthage_static.xcconfig index f1b875b9..86bcfeba 100644 --- a/Tests/Fixtures/TestProject/carthage_static.xcconfig +++ b/Tests/Fixtures/TestProject/carthage_static.xcconfig @@ -1,2 +1,8 @@ -#include "xcode12_and_13_workaround.xcconfig" +#include "xcode12_13_and_14_workaround.xcconfig" + MACH_O_TYPE = staticlib + +IPHONEOS_DEPLOYMENT_TARGET=14.0 +MACOSX_DEPLOYMENT_TARGET=10.15 +TVOS_DEPLOYMENT_TARGET=14.0 +WATCHOS_DEPLOYMENT_TARGET=7.0 diff --git a/Tests/Fixtures/TestProject/fixtures.xcconfig b/Tests/Fixtures/TestProject/fixtures.xcconfig index 8f9d84d4..c272c840 100644 --- a/Tests/Fixtures/TestProject/fixtures.xcconfig +++ b/Tests/Fixtures/TestProject/fixtures.xcconfig @@ -1,4 +1,4 @@ -#include "xcode12_and_13_workaround.xcconfig" +#include "xcode12_13_and_14_workaround.xcconfig" // Common settings for fixtures CODE_SIGN_IDENTITY = diff --git a/Tests/Fixtures/TestProject/xcode12_and_13_workaround.xcconfig b/Tests/Fixtures/TestProject/xcode12_13_and_14_workaround.xcconfig similarity index 80% rename from Tests/Fixtures/TestProject/xcode12_and_13_workaround.xcconfig rename to Tests/Fixtures/TestProject/xcode12_13_and_14_workaround.xcconfig index d8999004..1622037a 100644 --- a/Tests/Fixtures/TestProject/xcode12_and_13_workaround.xcconfig +++ b/Tests/Fixtures/TestProject/xcode12_13_and_14_workaround.xcconfig @@ -7,4 +7,5 @@ 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_1300=$(inherited) $(EXCLUDED_ARCHS__EFFECTIVE_PLATFORM_SUFFIX_$(EFFECTIVE_PLATFORM_SUFFIX)__NATIVE_ARCH_64_BIT_$(NATIVE_ARCH_64_BIT)) +EXCLUDED_ARCHS_1400=$(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))