-
Notifications
You must be signed in to change notification settings - Fork 18
45 lines (36 loc) · 1.03 KB
/
unix-build.yml
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
43
44
# Various unix builds
name: unix CI
on: [push, pull_request]
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest]
defaults:
run:
shell: bash {0}
steps:
- name: Checkout
uses: actions/checkout@v4
# MacOS. We validate compilation of x86_64 and arm64, but only
# test arm64. This will also be using clang by default
- name: macOS specific
if: runner.os == 'macOS'
run: |
brew install autoconf automake libtool
autoreconf -i
./configure CFLAGS="-g -O3 -Wall -Werror -arch arm64 -arch x86_64"
# A slower build and test with address and undefined behaviour sanitizers
- name: Ubuntu-latest using gcc with sanitizers
if: runner.os == 'Linux'
run: |
autoreconf -i
./configure CC="gcc -fsanitize=address,undefined"
- name: Compile
run: |
make -j6
- name: Check
run: |
make check || (cat tests/test-suite.log; false)