1---
2# vi: ts=2 sw=2 et:
3# SPDX-License-Identifier: LGPL-2.1-or-later
4#
5name: Build test
6on:
7  pull_request:
8    paths:
9      - '**/meson.build'
10      - '.github/workflows/**'
11      - 'meson_options.txt'
12      - 'src/**'
13      - 'test/fuzz/**'
14
15permissions:
16  contents: read
17
18jobs:
19  build:
20    runs-on: ubuntu-20.04
21    concurrency:
22      group: ${{ github.workflow }}-${{ toJSON(matrix.env) }}-${{ github.ref }}
23      cancel-in-progress: true
24    strategy:
25      fail-fast: false
26      matrix:
27        env:
28          - { COMPILER: "gcc",   COMPILER_VERSION: "10", LINKER: "bfd",  CRYPTOLIB: "gcrypt"  }
29          - { COMPILER: "gcc",   COMPILER_VERSION: "11", LINKER: "gold", CRYPTOLIB: "openssl" }
30          - { COMPILER: "clang", COMPILER_VERSION: "12", LINKER: "gold", CRYPTOLIB: "gcrypt"  }
31          - { COMPILER: "clang", COMPILER_VERSION: "13", LINKER: "lld",  CRYPTOLIB: "openssl" }
32          - { COMPILER: "clang", COMPILER_VERSION: "14", LINKER: "bfd",  CRYPTOLIB: "auto"    }
33    env: ${{ matrix.env }}
34    steps:
35      - name: Repository checkout
36        uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
37      - name: ${{ format('Build check ({0}-{1}-{2}-{3})', env.COMPILER, env.COMPILER_VERSION, env.LINKER, env.CRYPTOLIB) }}
38        run: sudo -E .github/workflows/build_test.sh
39