@@ -17,55 +17,79 @@ jobs:
17
17
matrix :
18
18
include :
19
19
- name : Default
20
+ os : ubuntu-latest
21
+ # Check default shm decision logic for Linux:
22
+ config-output : APR_USE_SHMEM_MMAP_SHM APR_USE_SHMEM_MMAP_ANON
23
+ # Check various defaults for Linux
24
+ config-private : >-
25
+ HAVE_EPOLL HAVE_C_VARARRAYS HAVE_CALLOC HAVE_EXPAT_H HAVE_FLOCK HAVE_FORK
26
+ HAVE_GAI_ADDRCONFIG HAVE_GAI_STRERROR GETSERVBYNAME_R_GLIBC2
27
+ - name : Default (arm64)
28
+ os : ubuntu-22.04-arm
20
29
# Check default shm decision logic for Linux:
21
30
config-output : APR_USE_SHMEM_MMAP_SHM APR_USE_SHMEM_MMAP_ANON
22
31
- name : Static
32
+ os : ubuntu-latest
23
33
config : --enable-static
24
34
- name : Maintainer-mode
35
+ os : ubuntu-latest
25
36
config : --enable-maintainer-mode
26
37
- name : Named SHM - SysV, Maintainer-mode
38
+ os : ubuntu-latest
27
39
config : --enable-maintainer-mode --enable-sysv-shm
28
40
config-output : APR_USE_SHMEM_SHMGET
29
41
- name : Named SHM - Classic mmap, Maintainer-mode
42
+ os : ubuntu-latest
30
43
config : --enable-maintainer-mode ac_cv_func_shm_open=no ac_cv_func_shmget=no
31
44
config-output : APR_USE_SHMEM_MMAP_TMP
32
45
- name : Pool-debug
46
+ os : ubuntu-latest
33
47
config : --enable-pool-debug
34
48
- name : Pool-debug, maintainer-mode
49
+ os : ubuntu-latest
35
50
config : --enable-pool-debug --enable-maintainer-mode
36
51
- name : Thread-debug, maintainer-mode
52
+ os : ubuntu-latest
37
53
config : --enable-thread-debug --enable-maintainer-mode
38
54
- name : Maintainer-mode, no IPv6
55
+ os : ubuntu-latest
39
56
config : --enable-maintainer-mode --disable-ipv6
40
57
- name : Maintainer-mode, -Werror
58
+ os : ubuntu-latest
41
59
notest-cflags : -Werror
42
60
config : --enable-maintainer-mode
43
61
- name : With crypto
62
+ os : ubuntu-latest
44
63
config : --with-crypto=yes --with-openssl=yes
45
64
config-output : APU_HAVE_CRYPTO APU_HAVE_OPENSSL
46
65
- name : ASan
66
+ os : ubuntu-latest
47
67
# w/o ODBC since DSO unload leaks memory and fails the tests
48
68
notest-cflags : -fsanitize=address -fno-sanitize-recover=address -fno-omit-frame-pointer -Werror -O2
49
69
config : --with-odbc=no
50
70
- name : ASan, pool-debug
71
+ os : ubuntu-latest
51
72
# w/o ODBC since DSO unload leaks memory and fails the tests
52
73
notest-cflags : -fsanitize=address -fno-sanitize-recover=address -fno-omit-frame-pointer -Werror -O2
53
74
config : --enable-pool-debug --with-odbc=no
54
75
- name : UBsan
76
+ os : ubuntu-latest
55
77
notest-cflags : -fsanitize=undefined -fno-sanitize-recover=undefined -fno-omit-frame-pointer -Werror -O2
56
78
- name : LMDB
79
+ os : ubuntu-latest
57
80
packages : liblmdb-dev
58
81
notest-cflags : -Werror
59
82
config : --enable-maintainer-mode --with-lmdb --with-dbm=lmdb
60
83
config-output : APU_HAVE_LMDB
61
84
- name : Berkeley DB v5.3
85
+ os : ubuntu-latest
62
86
packages : libdb5.3-dev
63
87
notest-cflags : -Werror
64
88
config : --enable-maintainer-mode --with-berkeley-db --with-dbm=db5
65
89
config-output : APU_HAVE_DB
66
90
fail-fast : false
67
91
68
- runs-on : ubuntu-latest
92
+ runs-on : ${{ matrix.os }}
69
93
env :
70
94
NOTEST_CFLAGS : ${{ matrix.notest-cflags }}
71
95
name : ${{ matrix.name }}
@@ -81,8 +105,11 @@ jobs:
81
105
- name : configure
82
106
run : ./configure --prefix=/tmp/apr ${{ matrix.config }}
83
107
- if : ${{ matrix.config-output != '' }}
84
- name : check for expected configure output ${{ matrix.config-output }}
108
+ name : check for expected apr.h definitions ${{ matrix.config-output }}
85
109
run : for var in ${{ matrix.config-output }}; do grep "^#define *${var} *1" include/apr.h; done
110
+ - if : ${{ matrix.config-private != '' }}
111
+ name : check for expected apr_private.h definitions ${{ matrix.config-private }}
112
+ run : for var in ${{ matrix.config-private }}; do grep "^#define *${var} *1" include/arch/unix/apr_private.h; done
86
113
- name : make
87
114
run : make $MARGS
88
115
- name : install
0 commit comments