yasm/.github/workflows/build.yml
2026-07-21 00:27:26 -05:00

64 lines
1.6 KiB
YAML

name: Build
on: [push, pull_request]
jobs:
build-host:
env:
MACOSX_DEPLOYMENT_TARGET: 10.14
strategy:
fail-fast: false
matrix:
include:
- name: macOS
os: macos-latest
artifact: true
autotools: true
cmake: true
- name: Ubuntu
os: ubuntu-latest
artifact: true
autotools: true
cmake: true
- name: MSVC
os: windows-latest
cmake: true
name: "Build - ${{ matrix.name }}"
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v6
- name: Install autotools
if: ${{ matrix.autotools }}
run: |
if [ "$RUNNER_OS" == "macOS" ]; then
brew update
brew install automake autoconf
fi
- name: Autogen (autotools)
if: ${{ matrix.autotools }}
run: ./autogen.sh
- name: Build (autotools)
if: ${{ matrix.autotools }}
run: make
- name: Check (autotools)
if: ${{ matrix.autotools }}
run: make check
- name: Dist (autotools)
id: make-dist
if: ${{ matrix.autotools }}
run: make dist
- name: Configure (CMake)
if: ${{ matrix.cmake }}
run: cmake -S . -B build
- name: Build (CMake)
if: ${{ matrix.cmake }}
run: cmake --build build
- uses: actions/upload-artifact@v7
if: ${{ matrix.artifact && always() && steps.make-dist.outcome == 'success' }}
with:
name: ${{ matrix.name }}
path: yasm-*.tar.gz