Skip to content

Refactor blocks caching #149

Refactor blocks caching

Refactor blocks caching #149

Workflow file for this run

name: Build
on:
push:
branches:
- master
pull_request:
jobs:
build:
strategy:
matrix:
platform: [ubuntu-latest, windows-latest, macos-13]
compiler: [msvc, gcc, llvm]
exclude:
- platform: windows-latest
compiler: gcc
- platform: windows-latest
compiler: llvm
- platform: ubuntu-latest
compiler: msvc
# llvm doesn't work with libstd++ until P2493R0 is done
- platform: ubuntu-latest
compiler: llvm
- platform: macos-13
compiler: msvc
- platform: macos-13
compiler: gcc
runs-on: ${{matrix.platform}}
steps:
- uses: actions/checkout@v2
with:
submodules: "true"
- uses: lukka/get-cmake@latest
- name: Run vcpkg
uses: lukka/run-vcpkg@v10
- name: Set gcc
run: |
echo "CC=gcc-13" >> $GITHUB_ENV
echo "CXX=g++-13" >> $GITHUB_ENV
shell: bash
if: matrix.platform == 'ubuntu-latest' && matrix.compiler == 'gcc'
- name: Set llvm (Ubuntu)
run: |
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh 17
sudo apt install libc++-17-dev
echo "CC=clang-17" >> $GITHUB_ENV
echo "CXX=clang++-17" >> $GITHUB_ENV
shell: bash
if: matrix.platform == 'ubuntu-latest' && matrix.compiler == 'llvm'
- name: Set llvm (MacOS)
run: |
brew update
# Temporary fix, see https://github.com/actions/setup-python/issues/577
rm /usr/local/bin/2to3 || true
rm /usr/local/bin/idle3 || true
rm /usr/local/bin/pydoc3 || true
rm /usr/local/bin/python3 || true
rm /usr/local/bin/python3-config || true
brew install llvm
echo "CC=/usr/local/opt/llvm/bin/clang" >> $GITHUB_ENV
echo "CXX=/usr/local/opt/llvm/bin/clang++" >> $GITHUB_ENV
echo "LDFLAGS=-L/usr/local/opt/llvm/lib" >> $GITHUB_ENV
echo "CXXFLAGS=-isystem /usr/local/opt/llvm/include" >> $GITHUB_ENV
shell: bash
if: matrix.platform == 'macos-13'
- name: Run cmake
uses: lukka/run-cmake@v10
with:
configurePreset: "default"
buildPreset: "release"