Merge from master #668
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: 'MacOS-CI' | |
on: | |
push: | |
pull_request: | |
# Allows you to run this workflow manually from the Actions tab | |
workflow_dispatch: | |
jobs: | |
build: | |
name: Build | |
runs-on: ${{ matrix.os }} | |
continue-on-error: true | |
defaults: | |
run: | |
shell: bash | |
strategy: | |
fail-fast: false | |
matrix: | |
os: | |
#- macos-11 | |
- macos-12 | |
compiler: | |
- clang | |
- gcc | |
homebrew-gl: | |
- true | |
# - false | |
homebrew-al: | |
- true | |
- false | |
steps: | |
# The following dependencies are already present within macos-* images: | |
# - clang (llvm) | |
# - cmake | |
# - expat | |
# - gcc | |
# - git | |
# - jpeg | |
# - libpng | |
# - libvorbis | |
# - python | |
- name: Install dependencies using homebrew | |
run: brew install boost-python3 gtk+3 gtkglext sdl | |
# The following Apple-provided libraries are deprecated: | |
# * OpenGL as of macOS 10.14 | |
# * GLUT as of macOS 10.9 | |
- name: Optionally install homebrewed OpenGL and GLUT | |
if: ${{ matrix.homebrew-gl }} | |
run: | | |
brew install mesa mesa-glu freeglut | |
ln -s /usr/local/include/GL /usr/local/include/OpenGL | |
ln -s /usr/local/include/GL /usr/local/include/GLUT | |
# ln -s /usr/local/lib/libGL.dylib /usr/local/lib/libOpenGL.dylib | |
# find /usr/local/lib/ -iname '*gl*.dylib' | |
# The Apple-provided OpenAL is deprecated as of macOS 10.15 | |
- name: Optionally install homebrewed OpenAL | |
if: ${{ matrix.homebrew-al }} | |
run: brew install openal-soft | |
- name: Check out repository | |
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 #v4.1.1 | |
with: | |
fetch-depth: 2 | |
submodules: false | |
# Ensure PRs are built against the PR Head as opposed to the merge commit | |
- name: Conditionally relocate to PR HEAD | |
if: github.event.pull_request | |
run: git checkout HEAD^2 | |
- name: Build it | |
env: | |
MY_OS_NAME: macos | |
COMPILER: ${{ matrix.compiler }} | |
FLAGS: -DCMAKE_FIND_FRAMEWORK=LAST | |
OPENALDIR: "/usr/local/opt/openal-soft" | |
run: script/cibuild $FLAGS | |
- name: Test | |
working-directory: ${{github.workspace}}/build | |
env: | |
GTEST_OUTPUT: xml | |
GTEST_COLOR: 1 | |
run: ctest -V | |
- name: Upload test results | |
uses: actions/upload-artifact@a8a3f3ad30e3422c9c7b888a15615d19a852ae32 #v3.1.3 | |
if: failure() | |
with: | |
name: test_results_xml | |
path: ${{github.workspace}}/build/test-results/**/*.xml |