Match CI with bx. (#120)

This commit is contained in:
Branimir Karadžić
2026-05-03 18:18:30 -07:00
committed by GitHub
parent 0477714903
commit 0014aa0f14
2 changed files with 60 additions and 22 deletions

View File

@@ -14,10 +14,8 @@ jobs:
fail-fast: true
matrix:
include: [
{ config: Debug, platform: Win32, bindir: 'win32_vs2022' },
{ config: Debug, platform: x64, bindir: 'win64_vs2022' },
{ config: Release, platform: Win32, bindir: 'win32_vs2022' },
{ config: Release, platform: x64, bindir: 'win64_vs2022' },
{ config: Debug, platform: x64, bindir: 'win64_vs2022', genie-action: 'vs2022', solution-ext: 'sln' },
{ config: Release, platform: x64, bindir: 'win64_vs2022', genie-action: 'vs2022', solution-ext: 'sln' },
]
name: msvc-${{ matrix.config }}-${{ matrix.platform }}
runs-on: windows-latest
@@ -38,13 +36,12 @@ jobs:
shell: cmd
run: |
cd bimg
..\bx\tools\bin\windows\genie.exe --with-tools --with-shared-lib vs2022
msbuild ".build/projects/vs2022/bimg.sln" /m /v:minimal /p:Configuration=${{ matrix.config }} /p:Platform=${{ matrix.platform }}
..\bx\tools\bin\windows\genie.exe --with-tools --with-shared-lib ${{ matrix.genie-action }}
msbuild ".build/projects/${{ matrix.genie-action }}/bimg.${{ matrix.solution-ext }}" /m /v:minimal /p:Configuration=${{ matrix.config }} /p:Platform=${{ matrix.platform }}
- name: Check
shell: cmd
run: |
cd bimg
dir /s ".build\${{ matrix.bindir }}\bin"
".build\${{ matrix.bindir }}\bin\texturec${{ matrix.config }}.exe" --version
mingw:
strategy:
@@ -83,7 +80,6 @@ jobs:
shell: cmd
run: |
cd bimg
dir /s ".build\${{ matrix.bindir }}\bin"
".build\${{ matrix.bindir }}\bin\texturecRelease.exe" --version
linux:
strategy:
@@ -116,18 +112,19 @@ jobs:
- name: Check
run: |
cd bimg
ls -lash ".build/${{ matrix.bindir }}/bin"
".build/${{ matrix.bindir }}/bin/texturec${{ matrix.binsuffix }}" --version
osx:
strategy:
fail-fast: true
matrix:
include: [
{ config: debug, binsuffix: Debug },
{ config: release, binsuffix: Release },
{ runs-on: macos-13, arch: osx-x64, bindir: osx-x64, config: debug, binsuffix: Debug },
{ runs-on: macos-13, arch: osx-x64, bindir: osx-x64, config: release, binsuffix: Release },
{ runs-on: macos-14, arch: osx-arm64, bindir: osx-arm64, config: debug, binsuffix: Debug },
{ runs-on: macos-14, arch: osx-arm64, bindir: osx-arm64, config: release, binsuffix: Release },
]
name: osx-arm64-${{ matrix.config }}
runs-on: macos-14
name: osx-${{ matrix.arch }}-${{ matrix.config }}
runs-on: ${{ matrix.runs-on }}
steps:
- name: Checkout bx
uses: actions/checkout@v6
@@ -142,20 +139,20 @@ jobs:
- name: Build
run: |
cd bimg
make -j$(sysctl -n hw.physicalcpu) osx-arm64-${{ matrix.config }}
make -j$(sysctl -n hw.physicalcpu) ${{ matrix.arch }}-${{ matrix.config }}
- name: Check
run: |
cd bimg
ls -lash ".build/osx-arm64/bin"
".build/osx-arm64/bin/texturec${{ matrix.binsuffix }}" --version
".build/${{ matrix.bindir }}/bin/texturec${{ matrix.binsuffix }}" --version
android:
strategy:
fail-fast: true
matrix:
include: [
{ platform: arm64 },
{ project: android-arm, bindir: android-arm },
{ project: android-arm64, bindir: android-arm64 },
]
name: android-${{ matrix.platform }}
name: ${{ matrix.project }}
runs-on: ubuntu-24.04
steps:
- name: Checkout bx
@@ -172,7 +169,6 @@ jobs:
id: setup-ndk
with:
ndk-version: r27c
add-to-path: false
- name: Build
env:
ANDROID_NDK_ROOT: ${{ steps.setup-ndk.outputs.ndk-path }}
@@ -180,8 +176,32 @@ jobs:
ANDROID_NDK_ARM64: ${{ steps.setup-ndk.outputs.ndk-path }}
run: |
cd bimg
make -j$(nproc) android-${{ matrix.platform }}
- name: Check
make -j$(nproc) ${{ matrix.project }}-release
emscripten:
strategy:
fail-fast: true
matrix:
include: [
{ config: debug, binsuffix: Debug },
{ config: release, binsuffix: Release },
]
name: wasm-${{ matrix.config }}
runs-on: ubuntu-24.04
steps:
- name: Checkout bx
uses: actions/checkout@v6
with:
repository: bkaradzic/bx
path: bx
- name: Checkout bimg
uses: actions/checkout@v6
with:
repository: bkaradzic/bimg
path: bimg
- uses: mymindstorm/setup-emsdk@v14
with:
version: 5.0.2
- name: Build
run: |
cd bimg
ls -lash ".build/android-${{ matrix.platform }}/bin"
make -j$(nproc) wasm-${{ matrix.config }} EMSCRIPTEN=$EMSDK/upstream/emscripten

View File

@@ -41,12 +41,22 @@ projgen: ## Generate project files for all configurations.
$(GENIE) --with-tools --with-shared-lib --gcc=linux-gcc gmake
$(GENIE) --with-tools --with-shared-lib --gcc=linux-clang gmake
$(GENIE) --with-tools --with-shared-lib --gcc=osx-arm64 gmake
$(GENIE) --with-tools --with-shared-lib --gcc=osx-x64 gmake
$(GENIE) --with-tools --with-shared-lib --xcode=osx xcode9
$(GENIE) --with-tools --with-shared-lib --xcode=ios xcode9
$(GENIE) --with-shared-lib --gcc=android-arm gmake
$(GENIE) --with-shared-lib --gcc=android-arm64 gmake
$(GENIE) --gcc=ios-arm64 gmake
$(GENIE) --gcc=rpi gmake
.build/projects/gmake-android-arm:
$(GENIE) --gcc=android-arm --with-shared-lib gmake
android-arm-debug: .build/projects/gmake-android-arm ## Build - Android ARM Debug
$(MAKE) -R -C .build/projects/gmake-android-arm config=debug
android-arm-release: .build/projects/gmake-android-arm ## Build - Android ARM Release
$(MAKE) -R -C .build/projects/gmake-android-arm config=release
android-arm: android-arm-debug android-arm-release ## Build - Android ARM Debug and Release
.build/projects/gmake-android-arm64:
$(GENIE) --gcc=android-arm64 --with-shared-lib gmake
android-arm64-debug: .build/projects/gmake-android-arm64 ## Build - Android ARM64 Debug
@@ -123,6 +133,14 @@ osx-arm64-release: .build/projects/gmake-osx-arm64 ## Build - macOS ARM Release
$(MAKE) -C .build/projects/gmake-osx-arm64 config=release
osx-arm64: osx-arm64-debug osx-arm64-release ## Build - macOS ARM Debug and Release
.build/projects/gmake-osx-x64:
$(GENIE) --with-tools --with-shared-lib --gcc=osx-x64 gmake
osx-x64-debug: .build/projects/gmake-osx-x64 ## Build - macOS x64 Debug
$(MAKE) -C .build/projects/gmake-osx-x64 config=debug
osx-x64-release: .build/projects/gmake-osx-x64 ## Build - macOS x64 Release
$(MAKE) -C .build/projects/gmake-osx-x64 config=release
osx-x64: osx-x64-debug osx-x64-release ## Build - macOS x64 Debug and Release
.build/projects/gmake-ios-arm64:
$(GENIE) --gcc=ios-arm64 gmake
ios-arm64-debug: .build/projects/gmake-ios-arm64 ## Build - iOS ARM64 Debug