blob: 15841e623d84f5d40b242b81c9c90ee26e562eca [file] [log] [blame]
Davide Pesavento8f0028d2021-07-27 20:01:06 -04001name: CI
2on:
3 push:
Davide Pesavento13dae352021-08-13 15:40:54 -04004 paths-ignore:
5 - 'docs/**'
6 - '*.md'
7 - '.mailmap'
Davide Pesavento8f0028d2021-07-27 20:01:06 -04008 workflow_dispatch:
9
Davide Pesavento13dae352021-08-13 15:40:54 -040010permissions:
11 contents: read
12
Davide Pesavento8f0028d2021-07-27 20:01:06 -040013jobs:
14 linux:
15 name: ${{ matrix.compiler }} on ${{ matrix.os }}
16 strategy:
17 fail-fast: false
18 matrix:
19 compiler: [g++-8, g++-9, g++-10, g++-11,
20 clang++-7, clang++-8, clang++-9, clang++-10, clang++-11, clang++-12]
21 os: [ubuntu-20.04]
22 include:
23 - compiler: g++-7
24 os: ubuntu-18.04
Davide Pesavento8f0028d2021-07-27 20:01:06 -040025 - compiler: clang++-6.0
26 os: ubuntu-18.04
27 runs-on: ${{ matrix.os }}
28 env:
29 CXX: ${{ matrix.compiler }}
Davide Pesavento8f0028d2021-07-27 20:01:06 -040030 steps:
31 - name: Install C++ compiler
32 run: |
33 sudo apt-get -qy install ${CXX/clang++/clang}
34 ${CXX} --version
35 - name: Checkout
Davide Pesaventoc52cd5e2022-03-05 20:40:54 -050036 uses: actions/checkout@v3
Davide Pesavento8f0028d2021-07-27 20:01:06 -040037 - name: Build and test
38 run: ./.jenkins
39
40 macos:
41 name: Xcode ${{ matrix.xcode }} on ${{ matrix.os }}
42 strategy:
43 fail-fast: false
44 matrix:
45 xcode: ['11.3', '11.7', '12.4']
46 os: [macos-10.15]
Davide Pesaventof28a0612021-09-29 23:13:32 -040047 include:
48 - xcode: '12.5'
49 os: macos-11
Davide Pesavento07da3fe2021-12-29 19:14:42 -050050 - xcode: '13.2'
Davide Pesaventof28a0612021-09-29 23:13:32 -040051 os: macos-11
Davide Pesavento8f0028d2021-07-27 20:01:06 -040052 runs-on: ${{ matrix.os }}
Davide Pesavento8f0028d2021-07-27 20:01:06 -040053 steps:
54 - name: Set up Xcode
55 uses: maxim-lobanov/setup-xcode@v1
56 with:
57 xcode-version: ${{ matrix.xcode }}
58 - name: Checkout
Davide Pesaventoc52cd5e2022-03-05 20:40:54 -050059 uses: actions/checkout@v3
Davide Pesavento8f0028d2021-07-27 20:01:06 -040060 - name: Build and test
61 run: ./.jenkins