Skip to content

Commit

Permalink
[Imp] build: CI: GitHub: macOS: Use a big matrix build with explicit …
Browse files Browse the repository at this point in the history
…host system, Xcode version, architecture, and deployment target.

git-svn-id: https://source.openmpt.org/svn/openmpt/trunk/OpenMPT@20260 56274372-70c3-4bfc-bfc3-4c3a0b034d27
  • Loading branch information
manxorist committed Mar 7, 2024
1 parent a26a94a commit 3b0ae22
Show file tree
Hide file tree
Showing 4 changed files with 57 additions and 87 deletions.
31 changes: 0 additions & 31 deletions .github/workflows/macOS-12-Makefile.yml

This file was deleted.

29 changes: 0 additions & 29 deletions .github/workflows/macOS-13-Makefile.yml

This file was deleted.

27 changes: 0 additions & 27 deletions .github/workflows/macOS-14-Makefile.yml

This file was deleted.

57 changes: 57 additions & 0 deletions .github/workflows/macOS-Makefile.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@

name: macOS Makefile

on:
push:
branches: [ macos-action-test ]
pull_request:
branches: [ macos-action-test ]

jobs:
build:
strategy:
matrix:
include:
- { host: macos-14, compiler: 15.2, arch: '' , target: '' , deps: true, check: true }
- { host: macos-14, compiler: 15.2, arch: arm64 , target: '' , deps: false, check: true }
- { host: macos-14, compiler: 15.2, arch: x64_64, target: '' , deps: false, check: true }
- { host: macos-14, compiler: 15.2, arch: arm64 , target: 14 , deps: false, check: true }
- { host: macos-14, compiler: 15.2, arch: x64_64, target: 14 , deps: false, check: true }
- { host: macos-14, compiler: 15.2, arch: arm64 , target: 13 , deps: false, check: true }
- { host: macos-14, compiler: 15.2, arch: x64_64, target: 13 , deps: false, check: true }
- { host: macos-14, compiler: 15.2, arch: arm64 , target: 12 , deps: false, check: true }
- { host: macos-14, compiler: 15.2, arch: x64_64, target: 12 , deps: false, check: true }
- { host: macos-14, compiler: 15.2, arch: arm64 , target: 11 , deps: false, check: true }
- { host: macos-14, compiler: 15.2, arch: x64_64, target: 11 , deps: false, check: true }
- { host: macos-14, compiler: 15.2, arch: x64_64, target: 10.15, deps: false, check: true }
- { host: macos-14, compiler: 15.2, arch: x64_64, target: 10.14, deps: false, check: true }
- { host: macos-14, compiler: 15.2, arch: i386 , target: 10.14, deps: false, check: false }
- { host: macos-14, compiler: 15.2, arch: x64_64, target: 10.13, deps: false, check: true }
- { host: macos-14, compiler: 15.2, arch: i386 , target: 10.13, deps: false, check: false }
- { host: macos-13, compiler: 15.2, arch: x64_64, target: 10.13, deps: false, check: true }
- { host: macos-13, compiler: 15.2, arch: i386 , target: 10.13, deps: false, check: false }
- { host: macos-12, compiler: 14.2, arch: x64_64, target: 10.13, deps: false, check: true }
- { host: macos-12, compiler: 14.2, arch: i386 , target: 10.13, deps: false, check: false }
concurrency:
group: ${{github.ref}}-${{github.workflow}}-${{matrix.host}}-${{matrix.compiler}}-${{matrix.arch}}-${{matrix.target}}
cancel-in-progress: true
runs-on: ${{matrix.host}}
steps:
- uses: actions/checkout@v4
- name: fixup GitHub Homebrew node breakage
if: ${{ matrix.host == 'macos-12' }}
run: brew unlink node@18 && brew unlink node && brew link --overwrite node
- name: fixup GitHub Homebrew python breakage
if: ${{ matrix.host == 'macos-12' || matrix.host == 'macos-13' }}
run: brew unlink python@3.11 && brew unlink python@3.12 && brew link --overwrite python@3.11 && brew link --overwrite python@3.12
- name: install dependencies
run: brew update && brew upgrade && brew install p7zip help2man doxygen autoconf-archive mpg123 libogg libvorbis portaudio flac libsndfile sdl2
- name: selecting Xcode version
run: sudo xcode-select --switch /Applications/Xcode_${{matrix.compiler}}.app
- name: setup parallel make
run: echo "MAKEFLAGS=-j$(sysctl -n hw.ncpu)" >> $GITHUB_ENV
- name: make
run: make ${{ matrix.arch == '' && '' || join('ARCH=',matrix.arch) }} ${{ matrix.target == '' && '' || join('MACOSX_VERSION_MIN=',matrix.target) }} STRICT=1 ${{ matrix.deps && 'FORCE_DEPS=1' || 'LOCAL_ZLIB=1 LOCAL_MPG123=1 LOCAL_OGG=1 LOCAL_VORBIS=1 NO_PORTAUDIO=1 NO_PORTAUDIOCPP=1 NO_PULSEAUDIO=1 NO_SDL2=1 NO_FLAC=1 NO_SNDFILE=1' }}
- name: make check
if: ${{ matrix.check }}
run: make ${{ matrix.arch == '' && '' || join('ARCH=',matrix.arch) }} ${{ matrix.target == '' && '' || join('MACOSX_VERSION_MIN=',matrix.target) }} STRICT=1 ${{ matrix.deps && 'FORCE_DEPS=1' || 'LOCAL_ZLIB=1 LOCAL_MPG123=1 LOCAL_OGG=1 LOCAL_VORBIS=1 NO_PORTAUDIO=1 NO_PORTAUDIOCPP=1 NO_PULSEAUDIO=1 NO_SDL2=1 NO_FLAC=1 NO_SNDFILE=1' }} check

0 comments on commit 3b0ae22

Please sign in to comment.