aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/linux.yml
blob: 43a5634a5c7eae869ba01f3d65c7465eaaae10aa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
name: linux
on:
  push:
    paths-ignore: ["docs/**", "**.adoc", "**.md"]
  pull_request:
    paths-ignore: ["docs/**", "**.adoc", "**.md"]
jobs:
  build:
    strategy:
      matrix:
        tls:
          - engine: mbed
            pkg: libmbedtls-dev
            dir: build.mbed
          - engine: wolf
            pkg: libwolfssl-dev
            dir: build.wolf
        pollq:
          - poller: auto
          - poller: epoll
          - poller: select
          - poller: poll
    name: build
    runs-on: [ubuntu-24.04]
    steps:
      - name: Check out code
        uses: actions/checkout@v4

      - name: Install ninja
        run: sudo apt-get install ninja-build

      - name: Install TLS engine
        run: sudo apt-get install ${{ matrix.tls.pkg }}

      - name: Configure
        run: mkdir ${{ matrix.tls.dir }} && cd ${{ matrix.tls.dir }} && cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug -D NNG_ENABLE_TLS=ON -DNNG_POLLQ_POLLER=${{ matrix.pollq.poller }} -DNNG_TLS_ENGINE=${{ matrix.tls.engine }} ..

      - name: Build
        run: cd ${{ matrix.tls.dir }} && ninja

      - name: Test
        run: cd ${{ matrix.tls.dir }} && ctest --output-on-failure