blob: 15841e623d84f5d40b242b81c9c90ee26e562eca [file] [log] [blame]
Davide Pesavento30ed6282021-07-25 20:05:06 -04001name: CI
2on:
3 push:
Davide Pesavento01cea502021-07-31 19:25:42 -04004 paths-ignore:
5 - 'docs/**'
6 - '*.md'
7 - '.mailmap'
Davide Pesavento30ed6282021-07-25 20:05:06 -04008 workflow_dispatch:
9
Davide Pesavento01cea502021-07-31 19:25:42 -040010permissions:
11 contents: read
12
Davide Pesavento30ed6282021-07-25 20:05: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 Pesavento30ed6282021-07-25 20:05:06 -040025 - compiler: clang++-6.0
26 os: ubuntu-18.04
27 runs-on: ${{ matrix.os }}
28 env:
29 CXX: ${{ matrix.compiler }}
Davide Pesavento30ed6282021-07-25 20:05: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 Pesavento541a8222022-03-01 15:08:42 -050036 uses: actions/checkout@v3
Davide Pesavento30ed6282021-07-25 20:05: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 Pesavento83f8d162021-09-26 21:58:36 -040047 include:
48 - xcode: '12.5'
49 os: macos-11
Davide Pesavento765abc92021-12-27 00:44:04 -050050 - xcode: '13.2'
Davide Pesavento83f8d162021-09-26 21:58:36 -040051 os: macos-11
Davide Pesavento30ed6282021-07-25 20:05:06 -040052 runs-on: ${{ matrix.os }}
Davide Pesavento30ed6282021-07-25 20:05: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 Pesavento541a8222022-03-01 15:08:42 -050059 uses: actions/checkout@v3
Davide Pesavento30ed6282021-07-25 20:05:06 -040060 - name: Build and test
61 run: ./.jenkins