diff --git a/.github/workflows/cpp-packaging.yml b/.github/workflows/cpp-packaging.yml index 45e1228657..822278125f 100644 --- a/.github/workflows/cpp-packaging.yml +++ b/.github/workflows/cpp-packaging.yml @@ -32,9 +32,9 @@ env: demumbleVer: "1.1.0" # Use SHA256 for hashing files. hashCommand: "sha256sum" - # Xcode version 12.2 is the version we build the SDK with. + # Xcode version 12.4 is the version we build the SDK with. # Our MacOS runners will use the version in /Applications/Xcode_${xcodeVersion}.app - xcodeVersion: "12.2" + xcodeVersion: "12.4" # LLVM version with ARM MachO support has no version number yet. llvmVer: "5f187f0afaad33013ba03454c4749d99b1362534" GITHUB_TOKEN: ${{ github.token }} diff --git a/.github/workflows/desktop.yml b/.github/workflows/desktop.yml index 291ab1cac2..6502d5c0db 100644 --- a/.github/workflows/desktop.yml +++ b/.github/workflows/desktop.yml @@ -74,9 +74,13 @@ jobs: architecture: "x86" # Xcode excludes -- allow only one on osx and linux - os: ubuntu-latest - xcode_version: "12.4" + xcode_version: "11.7" - os: windows-latest - xcode_version: "12.4" + xcode_version: "11.7" + - os: ubuntu-latest + xcode_version: "12.5.1" + - os: windows-latest + xcode_version: "12.5.1" # arm64 is only for macos - os: ubuntu-latest architecture: "arm64" diff --git a/.github/workflows/integration_tests.yml b/.github/workflows/integration_tests.yml index 3b784b7599..494159b070 100644 --- a/.github/workflows/integration_tests.yml +++ b/.github/workflows/integration_tests.yml @@ -62,6 +62,7 @@ jobs: apis: ${{ steps.matrix_config.outputs.apis }} mobile_test_on: ${{ steps.matrix_config.outputs.mobile_test_on }} android_device: ${{ steps.matrix_config.outputs.android_device }} + xcode_version: ${{ steps.matrix_config.outputs.xcode_version }} ios_device: ${{ steps.matrix_config.outputs.ios_device }} tvos_device: ${{ steps.matrix_config.outputs.tvos_device }} steps: @@ -182,6 +183,7 @@ jobs: mobile_test_on=$( python scripts/gha/print_matrix_configuration.py -c -w integration_tests -k mobile_test_on -o "${{github.event.inputs.mobile_test_on}}") echo "::set-output name=mobile_test_on::${mobile_test_on}" echo "::set-output name=android_device::$( python scripts/gha/print_matrix_configuration.py -w integration_tests ${TEST_MATRIX_PARAM} -k android_device -t ${mobile_test_on} )" + echo "::set-output name=xcode_version::$( python scripts/gha/print_matrix_configuration.py -w integration_tests ${TEST_MATRIX_PARAM} -k xcode_version)" echo "::set-output name=ios_device::$( python scripts/gha/print_matrix_configuration.py -w integration_tests ${TEST_MATRIX_PARAM} -k ios_device -t ${mobile_test_on} )" echo "::set-output name=tvos_device::$( python scripts/gha/print_matrix_configuration.py -w integration_tests ${TEST_MATRIX_PARAM} -k tvos_device -t ${mobile_test_on} )" - name: Update PR label and comment @@ -208,6 +210,9 @@ jobs: os: ${{ fromJson(needs.check_and_prepare.outputs.matrix_os) }} ssl_variant: ${{ fromJson(needs.check_and_prepare.outputs.matrix_ssl) }} steps: + - name: setup Xcode version (macos) + if: runner.os == 'macOS' + run: sudo xcode-select -s /Applications/Xcode_${{ fromJson(needs.check_and_prepare.outputs.xcode_version)[0] }}.app/Contents/Developer - uses: actions/checkout@v2 with: ref: ${{needs.check_and_prepare.outputs.github_ref}} @@ -387,6 +392,9 @@ jobs: matrix: os: ${{ fromJson(needs.check_and_prepare.outputs.matrix_os) }} steps: + - name: setup Xcode version (macos) + if: runner.os == 'macOS' + run: sudo xcode-select -s /Applications/Xcode_${{ fromJson(needs.check_and_prepare.outputs.xcode_version)[0] }}.app/Contents/Developer - uses: actions/checkout@v2 with: ref: ${{needs.check_and_prepare.outputs.github_ref}} @@ -508,6 +516,9 @@ jobs: strategy: fail-fast: false steps: + - name: setup Xcode version (macos) + if: runner.os == 'macOS' + run: sudo xcode-select -s /Applications/Xcode_${{ fromJson(needs.check_and_prepare.outputs.xcode_version)[0] }}.app/Contents/Developer - uses: actions/checkout@v2 with: ref: ${{needs.check_and_prepare.outputs.github_ref}} @@ -619,6 +630,9 @@ jobs: strategy: fail-fast: false steps: + - name: setup Xcode version (macos) + if: runner.os == 'macOS' + run: sudo xcode-select -s /Applications/Xcode_${{ fromJson(needs.check_and_prepare.outputs.xcode_version)[0] }}.app/Contents/Developer - uses: actions/checkout@v2 with: ref: ${{needs.check_and_prepare.outputs.github_ref}} @@ -726,6 +740,9 @@ jobs: os: ${{ fromJson(needs.check_and_prepare.outputs.matrix_os) }} ssl_variant: ${{ fromJson(needs.check_and_prepare.outputs.matrix_ssl) }} steps: + - name: setup Xcode version (macos) + if: runner.os == 'macOS' + run: sudo xcode-select -s /Applications/Xcode_${{ fromJson(needs.check_and_prepare.outputs.xcode_version)[0] }}.app/Contents/Developer - uses: actions/checkout@v2 with: ref: ${{needs.check_and_prepare.outputs.github_ref}} @@ -802,6 +819,9 @@ jobs: build_os: ${{ fromJson(needs.check_and_prepare.outputs.matrix_os) }} android_device: ${{ fromJson(needs.check_and_prepare.outputs.android_device) }} steps: + - name: setup Xcode version (macos) + if: runner.os == 'macOS' + run: sudo xcode-select -s /Applications/Xcode_${{ fromJson(needs.check_and_prepare.outputs.xcode_version)[0] }}.app/Contents/Developer - uses: actions/checkout@v2 with: ref: ${{needs.check_and_prepare.outputs.github_ref}} @@ -897,6 +917,9 @@ jobs: matrix: ios_device: ${{ fromJson(needs.check_and_prepare.outputs.ios_device) }} steps: + - name: setup Xcode version (macos) + if: runner.os == 'macOS' + run: sudo xcode-select -s /Applications/Xcode_${{ fromJson(needs.check_and_prepare.outputs.xcode_version)[0] }}.app/Contents/Developer - uses: actions/checkout@v2 with: ref: ${{needs.check_and_prepare.outputs.github_ref}} @@ -993,6 +1016,9 @@ jobs: matrix: tvos_device: ${{ fromJson(needs.check_and_prepare.outputs.tvos_device) }} steps: + - name: setup Xcode version (macos) + if: runner.os == 'macOS' + run: sudo xcode-select -s /Applications/Xcode_${{ fromJson(needs.check_and_prepare.outputs.xcode_version)[0] }}.app/Contents/Developer - uses: actions/checkout@v2 with: ref: ${{needs.check_and_prepare.outputs.github_ref}} diff --git a/release_build_files/readme.md b/release_build_files/readme.md index 6f173209ad..4d18da0262 100644 --- a/release_build_files/readme.md +++ b/release_build_files/readme.md @@ -371,7 +371,7 @@ Firebase Installations (stub) | firebase_installations.framework Firebase Cloud Messaging (stub) | firebase_messaging.framework | | firebase.framework -The provided libraries have been tested using Xcode 12.2. When building C++ +The provided libraries have been tested using Xcode 12.4. When building C++ desktop apps on OS X, you will need to link the `gssapi_krb5` and `pthread` system libraries, as well as the `CoreFoundation`, `Foundation`, `GSS`, and `Security` OS X system frameworks (consult your compiler documentation for more @@ -580,6 +580,8 @@ code. ([#745](https://github.com/firebase/firebase-cpp-sdk/pull/745)) - Messaging (Android): Fixed crash during initialization. ([#760](https://github.com/firebase/firebase-cpp-sdk/pull/760)) + - General (iOS): iOS SDKs are now built using Xcode 12.4. + - General (Desktop): macOS SDKs are now built using Xcode 12.4. ### 8.7.0 diff --git a/scripts/gha/print_matrix_configuration.py b/scripts/gha/print_matrix_configuration.py index f99c49579a..ce3d4cec2d 100644 --- a/scripts/gha/print_matrix_configuration.py +++ b/scripts/gha/print_matrix_configuration.py @@ -76,12 +76,12 @@ "build_type": ["Release", "Debug"], "architecture": ["x64", "x86", "arm64"], "msvc_runtime": ["static","dynamic"], - "xcode_version": ["12.2"], + "xcode_version": ["12.4"], "python_version": ["3.7"], EXPANDED_KEY: { "os": ["ubuntu-latest", "macos-latest", "windows-latest"], - "xcode_version": ["11.7", "12.2", "12.5"], + "xcode_version": ["11.7", "12.4", "12.5.1"], } } }, @@ -112,7 +112,7 @@ "msvc_runtime": ["dynamic"], "cpp_compiler_windows": ["VisualStudio2019"], "cpp_compiler_linux": ["clang-11.0"], - "xcode_version": ["12"], + "xcode_version": ["12.4"], # only the first one is used "ndk_version": ["r22b"], "platform_version": ["28"], "build_tools_version": ["28.0.3"], @@ -138,10 +138,10 @@ "ios": { "matrix": { - "xcode_version": ["12"], + "xcode_version": ["12.4"], EXPANDED_KEY: { - "xcode_version": ["12", "12.4"] + "xcode_version": ["12.4", "12.5.1"] } } }, @@ -173,7 +173,7 @@ "simulator_min": {"type": "virtual", "name":"iPhone 6", "version":"11.4"}, "simulator_target": {"type": "virtual", "name":"iPhone 8", "version":"12.0"}, "simulator_latest": {"type": "virtual", "name":"iPhone 11", "version":"14.4"}, - "tvos_simulator": {"type": "virtual", "name":"Apple TV", "version":"14.0"}, + "tvos_simulator": {"type": "virtual", "name":"Apple TV", "version":"14.3"}, }