blob: a6f27ac56da0a31ca938f968941f8f9149b8238e [file] [log] [blame]
Laurence Lundblade8147f812024-02-22 12:09:03 -07001name: CI
2
3on: [push, pull_request]
4
5# Fan out for the two compilers
6# Fan out disabling on feature at a time -- too slow to do the full combo fan out
7jobs:
8 main:
9 strategy:
10 fail-fast: false
11 matrix:
12 c-compiler: [gcc, clang]
13
14 config:
15 - os-image: ubuntu-latest
16 container: ubuntu:22.04
17
18 - os-image: ubuntu-latest
19 container: ubuntu:22.04
Laurence Lundbladeec290b82024-06-10 11:10:54 -070020 dis-xxx: '-DQCBOR_DISABLE_NON_INTEGER_LABELS'
21
22 - os-image: ubuntu-latest
23 container: ubuntu:22.04
Laurence Lundblade8147f812024-02-22 12:09:03 -070024 dis-xxx: '-DQCBOR_DISABLE_TAGS'
25
26 - os-image: ubuntu-latest
27 container: ubuntu:22.04
28 dis-xxx: '-DUSEFULBUF_DISABLE_ALL_FLOAT'
29
30 - os-image: ubuntu-latest
31 container: ubuntu:22.04
32 dis-xxx: '-DQCBOR_DISABLE_FLOAT_HW_USE'
33
34 - os-image: ubuntu-latest
35 container: ubuntu:22.04
36 dis-xxx: '-DQCBOR_DISABLE_PREFERRED_FLOAT'
37
38 - os-image: ubuntu-latest
39 container: ubuntu:22.04
40 dis-xxx: '-DQCBOR_CONFIG_DISABLE_EXP_AND_MANTISSA'
41
42 - os-image: ubuntu-latest
43 container: ubuntu:22.04
44 dis-xxx: '-DQCBOR_DISABLE_ENCODE_USAGE_GUARDS'
45
46 - os-image: ubuntu-latest
47 container: ubuntu:22.04
48 dis-xxx: '-DQCBOR_DISABLE_INDEFINITE_LENGTH_STRINGS'
49
50 - os-image: ubuntu-latest
51 container: ubuntu:22.04
52 dis-xxx: '-DQCBOR_DISABLE_INDEFINITE_LENGTH_ARRAYS'
53
Laurence Lundblade8147f812024-02-22 12:09:03 -070054
55 name: ${{ matrix.config.dis-xxx }} • ${{ matrix.c-compiler }} • ${{ matrix.config.container }}
56
57 runs-on: ${{ matrix.config.os-image }}
58 container: ${{ matrix.config.container }}
59
60 steps:
61 - uses: actions/checkout@v3
62
63 - name: Install build tools
64 run: |
65 set -ex
66 export DEBIAN_FRONTEND=noninteractive
67 apt-get update
68 apt-get install -y build-essential cmake ${{ matrix.c-compiler }}
69 echo "CC=${{ matrix.c-compiler }}" >> $GITHUB_ENV
70
71
72 - name: Build QCBOR
73 run: |
74 set -ex
75 make warn CMD_LINE=${{ matrix.config.dis-xxx }}
76
77 - name: Run tests
78 run: ./qcbortest