@@ -5,122 +5,77 @@ on: [ push, pull_request ]
55jobs :
66 linux :
77 runs-on : ubuntu-latest
8+ timeout-minutes : 30
89 strategy :
910 fail-fast : false
1011 matrix :
11- name : [Ubuntu-20, Ubuntu-22, Ubuntu-24, Debian-10, Debian-11, Debian-12, Debian-Testing, Debian-Experimental, Fedora-38, Fedora-39, Fedora-40]
12+ image :
13+ - " ubuntu:22.04" # gcc 12.2.0, clang 15.0.7, cmake 3.24.2
14+ - " ubuntu:24.04" # gcc 14.2.0, clang 18.1.3, cmake 3.28.3
15+ - " debian:bookworm" # gcc 12.2.0, clang 15.0.6, cmake 3.25.1
16+ - " debian:trixie" # gcc 14.2.0, clang 19.1.7, cmake 3.31.6
17+ - " debian:testing"
18+ - " debian:experimental"
19+ - " fedora:40"
20+ - " fedora:41"
21+ - " fedora:42"
22+ - " fedora:43"
1223 build_type : [Dev]
1324 cpp_compiler : [g++]
14- cpp_version : [c++11 ]
25+ cpp_version : [c++17 ]
1526 include :
16- - name : Ubuntu-20
17- # Uses gcc 9.3.0, clang 10.0.0, cmake 3.16.3
18- image : " ubuntu:20.04"
19- ubuntu : 20
20- - name : Ubuntu-22
21- # Uses gcc 12.2.0, clang 15.0.7, cmake 3.24.2
22- image : " ubuntu:22.04"
23- ubuntu : 22
24- CXXFLAGS : -Wno-stringop-overread
25- - name : Ubuntu-24
26- image : " ubuntu:24.04"
27- ubuntu : 24
28- CXXFLAGS : -Wno-stringop-overread
29- - name : Debian-10
30- # Uses gcc 8.3.0, clang 7.0.1, cmake 3.13.4
31- image : " debian:buster"
32- - name : Debian-11
33- # Uses gcc 10.2.1, clang 11.0.1, cmake 3.18.4
34- image : " debian:bullseye"
35- - name : Debian-11
36- image : " debian:bullseye"
37- cpp_version : c++17
38- - name : Debian-11
39- image : " debian:bullseye"
27+ - image : " ubuntu:22.04"
28+ CXXFLAGS : -Wno-stringop-overread -Wno-array-bounds
29+ - image : " ubuntu:24.04"
30+ CXXFLAGS : -Wno-stringop-overread -Wno-array-bounds
31+ - image : " debian:bookworm"
4032 cpp_version : c++20
41- - name : Debian-11
42- image : " debian:bullseye"
33+ - image : " debian:bookworm"
4334 c_compiler : clang
4435 cpp_compiler : clang++
45- - name : Debian-11
46- image : " debian:bullseye"
47- c_compiler : clang
48- cpp_compiler : clang++
49- cpp_version : c++17
50- - name : Debian-11
51- image : " debian:bullseye"
36+ - image : " debian:bookworm"
5237 c_compiler : clang
5338 cpp_compiler : clang++
5439 cpp_version : c++20
55- - name : Debian-11
56- image : " debian:bullseye"
40+ - image : " debian:bookworm"
5741 build_type : RelWithDebInfo
58- - name : Debian-11
59- image : " debian:bullseye"
60- c_compiler : clang
61- cpp_compiler : clang++
62- CXXFLAGS : -fsanitize=address,undefined,integer -fno-sanitize-recover=all -fno-omit-frame-pointer
63- LDFLAGS : -fsanitize=address,undefined,integer
64- - name : Debian-12
65- # Uses gcc 12.2.0, clang 15.0.6, cmake 3.25.1
66- image : " debian:bookworm"
67- CXXFLAGS : -Wno-stringop-overread
68- - name : Debian-12
69- image : " debian:bookworm"
70- cpp_version : c++17
71- CXXFLAGS : -Wno-stringop-overread
72- - name : Debian-12
73- image : " debian:bookworm"
42+ - image : " debian:trixie"
43+ CXXFLAGS : -Wno-stringop-overread -Wno-array-bounds
44+ - image : " debian:trixie"
7445 cpp_version : c++20
75- CXXFLAGS : -Wno-stringop-overread
76- - name : Debian-12
77- image : " debian:bookworm"
46+ CXXFLAGS : -Wno-stringop-overread -Wno-array-bounds
47+ - image : " debian:trixie"
7848 c_compiler : clang
7949 cpp_compiler : clang++
80- - name : Debian-12
81- image : " debian:bookworm"
82- c_compiler : clang
83- cpp_compiler : clang++
84- cpp_version : c++17
85- - name : Debian-12
86- image : " debian:bookworm"
50+ - image : " debian:trixie"
8751 c_compiler : clang
8852 cpp_compiler : clang++
8953 cpp_version : c++20
90- - name : Debian-12
91- image : " debian:bookworm"
54+ - image : " debian:trixie"
9255 build_type : RelWithDebInfo
93- CXXFLAGS : -Wno-stringop-overread
94- - name : Debian-12
95- image : " debian:bookworm"
96- c_compiler : clang
97- cpp_compiler : clang++
98- CXXFLAGS : -fsanitize=address,undefined,integer -fno-sanitize-recover=all -fno-omit-frame-pointer
99- LDFLAGS : -fsanitize=address,undefined,integer
100- - name : Debian-Testing
101- image : " debian:testing"
102- CXXFLAGS : -Wno-stringop-overread
103- - name : Debian-Testing
104- image : " debian:testing"
56+ CXXFLAGS : -Wno-stringop-overread -Wno-array-bounds
57+ - image : " debian:testing"
58+ CXXFLAGS : -Wno-stringop-overread -Wno-array-bounds -Wno-maybe-uninitialized
59+ - image : " debian:testing"
10560 c_compiler : clang
10661 cpp_compiler : clang++
107- - name : Debian-Experimental
108- image : " debian:experimental"
109- CXXFLAGS : -Wno-stringop-overread
110- - name : Debian-Experimental
111- image : " debian:experimental"
62+ - image : " debian:experimental"
63+ CXXFLAGS : -Wno-stringop-overread -Wno-array-bounds -Wno-maybe-uninitialized
64+ - image : " debian:experimental"
11265 c_compiler : clang
11366 cpp_compiler : clang++
114- - name : Fedora-38
115- # Uses gcc 13.0.1, clang 16.0.5, cmake 3.26.4
116- image : " fedora:38"
117- CXXFLAGS : -Wno-stringop-overread
118- - name : Fedora-39
119- image : " fedora:39"
120- CXXFLAGS : -Wno-stringop-overread
121- - name : Fedora-40
122- image : " fedora:40"
123- CXXFLAGS : -Wno-stringop-overread
67+ - image : " fedora:40"
68+ CMAKE_OPTS : -DRUN_TESTS_WITH_BINARY_COMPARE=OFF
69+ CXXFLAGS : -Wno-stringop-overread -Wno-array-bounds
70+ - image : " fedora:41"
71+ CMAKE_OPTS : -DRUN_TESTS_WITH_BINARY_COMPARE=OFF
72+ CXXFLAGS : -Wno-stringop-overread -Wno-array-bounds
73+ - image : " fedora:42"
74+ CMAKE_OPTS : -DRUN_TESTS_WITH_BINARY_COMPARE=OFF
75+ CXXFLAGS : -Wno-stringop-overread -Wno-array-bounds -Wno-maybe-uninitialized
76+ - image : " fedora:43"
77+ CMAKE_OPTS : -DRUN_TESTS_WITH_BINARY_COMPARE=OFF
78+ CXXFLAGS : -Wno-stringop-overread -Wno-array-bounds -Wno-maybe-uninitialized
12479 container :
12580 image : ${{ matrix.image }}
12681 env :
@@ -153,26 +108,22 @@ jobs:
153108 libproj-dev \
154109 make \
155110 zlib1g-dev
156- - name : Install compiler
157- shell : bash
158- if : matrix.cpp_compiler == 'clang++-14'
159- run : apt-get install -yq clang-14
160111 - name : Prepare container (dnf)
161112 shell : bash
162113 if : startsWith(matrix.image, 'fedora:')
163114 run : |
164115 dnf install --quiet --assumeyes \
165- boost-devel \
166- bzip2-devel \
167- cmake \
168- expat-devel \
169- gcc-c++ \
170- gdal-devel \
171- git \
172- lz4-devel \
173- make \
174- proj-devel \
175- zlib-devel
116+ boost-devel \
117+ bzip2-devel \
118+ cmake \
119+ expat-devel \
120+ gcc-c++ \
121+ gdal-devel \
122+ git \
123+ lz4-devel \
124+ make \
125+ proj-devel \
126+ zlib-devel
176127 - uses : actions/checkout@v4
177128 - uses : ./.github/actions/install-from-git
178129 - uses : ./.github/actions/cmake
@@ -181,6 +132,7 @@ jobs:
181132
182133 ubuntu-latest :
183134 runs-on : ubuntu-24.04
135+ timeout-minutes : 30
184136 env :
185137 CC : clang-18
186138 CXX : clang++-18
@@ -195,21 +147,21 @@ jobs:
195147 - uses : ./.github/actions/build-sub
196148
197149 macos :
150+ runs-on : ${{ matrix.os }}
151+ timeout-minutes : 30
198152 strategy :
199153 fail-fast : false
200154 matrix :
201155 os :
202- - " macos-14"
203- - " macos-15"
156+ - macos-14
157+ - macos-15
204158 build_type : [Dev]
205159 include :
206- - os : " macos-14 "
160+ - os : macos-15
207161 build_type : Release
208- runs-on : ${{ matrix.os }}
209162 env :
210163 CC : clang
211164 CXX : clang++
212- CXXFLAGS : -std=c++14
213165 BUILD_TYPE : ${{ matrix.build_type }}
214166 steps :
215167 - uses : actions/checkout@v4
0 commit comments