[CI] [macOS] Build for both arm64 and x86_64

Creates a universal build, to catch discrepancies on different
architectures
This commit is contained in:
A Thousand Ships 2024-04-24 11:45:11 +02:00
parent a4fbe4c01f
commit 24ad73b13f
No known key found for this signature in database
GPG key ID: 2033189A662F8BD7

View file

@ -14,7 +14,7 @@ concurrency:
jobs:
build-macos:
runs-on: "macos-12"
runs-on: "macos-latest"
name: ${{ matrix.name }}
strategy:
fail-fast: false
@ -24,7 +24,7 @@ jobs:
cache-name: macos-editor
target: editor
tests: true
bin: "./bin/godot.macos.editor.x86_64"
bin: "./bin/godot.macos.editor.universal"
- name: Template (target=template_release)
cache-name: macos-template
@ -50,16 +50,26 @@ jobs:
run: |
sh misc/scripts/install_vulkan_sdk_macos.sh
- name: Compilation
- name: Compilation (x86_64)
uses: ./.github/actions/godot-build
with:
sconsflags: ${{ env.SCONSFLAGS }}
sconsflags: ${{ env.SCONSFLAGS }} arch=x86_64
platform: macos
target: ${{ matrix.target }}
tests: ${{ matrix.tests }}
- name: Compilation (arm64)
uses: ./.github/actions/godot-build
with:
sconsflags: ${{ env.SCONSFLAGS }} arch=arm64
platform: macos
target: ${{ matrix.target }}
tests: ${{ matrix.tests }}
- name: Prepare artifact
run: |
lipo -create ./bin/godot.macos.${{ matrix.target }}.x86_64 ./bin/godot.macos.${{ matrix.target }}.arm64 -output ./bin/godot.macos.${{ matrix.target }}.universal
rm ./bin/godot.macos.${{ matrix.target }}.x86_64 ./bin/godot.macos.${{ matrix.target }}.arm64
strip bin/godot.*
chmod +x bin/godot.*