mirror of
https://github.com/spice2x/spice2x.github.io.git
synced 2026-09-22 22:38:16 +03:00
Yess yessss let's continue supporting the worst compiler toolchain 😈 Fell out of the changes in #905 CI changes were claude because I cannot be arsed with yaml. Can explain the individual code fixes if ya want any more context. --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
62 lines
1.8 KiB
YAML
62 lines
1.8 KiB
YAML
on: [push, pull_request]
|
|
name: Continuous Integration
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
fw-ci:
|
|
name: Build
|
|
runs-on: ubuntu-latest
|
|
defaults:
|
|
run:
|
|
working-directory: ./src/spice2x
|
|
steps:
|
|
- uses: actions/checkout@v5
|
|
- name: Set ccache environment variables
|
|
run: |
|
|
echo "CCACHE_DIR=${{ github.workspace }}/src/spice2x/.ccache" >> $GITHUB_ENV
|
|
- name: Install ccache
|
|
uses: hendrikmuhs/ccache-action@v1.2.23
|
|
- name: Calculate commit SHA
|
|
id: vars
|
|
run: |
|
|
calculatedSha=$(git rev-parse --short ${{ github.sha }})
|
|
echo "COMMIT_SHORT_SHA=$calculatedSha" >> $GITHUB_ENV
|
|
- name: Compile
|
|
run: ./build_docker.sh
|
|
- uses: actions/upload-artifact@v6
|
|
with:
|
|
name: spice2x-ci-${{ env.COMMIT_SHORT_SHA }}
|
|
path: src/spice2x/bin
|
|
if-no-files-found: error
|
|
|
|
msvc-ci:
|
|
name: Build (MSVC ${{ matrix.arch }}-bit)
|
|
# windows-latest ships Visual Studio 2026; pin to the VS 2022 image, which is
|
|
# the toolset spice2x is actually developed against
|
|
runs-on: windows-2022
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
- arch: 32
|
|
platform: Win32
|
|
target: spicetools_spice spicetools_cfg
|
|
- arch: 64
|
|
platform: x64
|
|
target: spicetools_spice64
|
|
defaults:
|
|
run:
|
|
working-directory: ./src/spice2x
|
|
steps:
|
|
- uses: actions/checkout@v5
|
|
- name: Configure
|
|
run: >
|
|
cmake -S . -B cmake-build-msvc-${{ matrix.arch }}
|
|
-A ${{ matrix.platform }}
|
|
- name: Compile
|
|
run: >
|
|
cmake --build cmake-build-msvc-${{ matrix.arch }}
|
|
--config Release --target ${{ matrix.target }}
|