5757
5858 cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_CONAN=ON -DENABLE_NODE_BINDINGS=ON ..
5959 cmake --build . --config Release
60-
60+
6161 # TODO: MSVC goes out of memory when building our tests
6262 # - name: Run tests
6363 # shell: bash
@@ -170,28 +170,25 @@ jobs:
170170 strategy :
171171 matrix :
172172 include :
173- - name : gcc-13-debug-cov
173+ - name : clang-20-release
174174 continue-on-error : false
175175 node : 22
176176 runs-on : ubuntu-24.04
177- BUILD_TYPE : Debug
178- CCOMPILER : gcc-13
179- CUCUMBER_TIMEOUT : 20000
180- CXXCOMPILER : g++-13
181- ENABLE_COVERAGE : ON
177+ BUILD_TYPE : Release
178+ CCOMPILER : clang-20
179+ CXXCOMPILER : clang++-20
180+ CUCUMBER_TIMEOUT : 60000
181+ ENABLE_LTO : OFF
182182
183- - name : clang-18-debug-asan-ubsan
183+ - name : clang-19-release
184184 continue-on-error : false
185185 node : 22
186186 runs-on : ubuntu-24.04
187- BUILD_TYPE : Debug
188- CCOMPILER : clang-18
189- CUCUMBER_TIMEOUT : 20000
190- CXXCOMPILER : clang++-18
191- ENABLE_SANITIZER : ON
192- TARGET_ARCH : x86_64-asan-ubsan
193- OSRM_CONNECTION_RETRIES : 10
194- OSRM_CONNECTION_EXP_BACKOFF_COEF : 1.5
187+ BUILD_TYPE : Release
188+ CCOMPILER : clang-19
189+ CXXCOMPILER : clang++-19
190+ CUCUMBER_TIMEOUT : 60000
191+ ENABLE_LTO : OFF
195192
196193 - name : clang-18-release
197194 continue-on-error : false
@@ -225,6 +222,19 @@ jobs:
225222 NODE_PACKAGE_TESTS_ONLY : ON
226223 ENABLE_LTO : OFF
227224
225+ - name : clang-18-debug-asan-ubsan
226+ continue-on-error : false
227+ node : 22
228+ runs-on : ubuntu-24.04
229+ BUILD_TYPE : Debug
230+ CCOMPILER : clang-18
231+ CUCUMBER_TIMEOUT : 20000
232+ CXXCOMPILER : clang++-18
233+ ENABLE_SANITIZER : ON
234+ TARGET_ARCH : x86_64-asan-ubsan
235+ OSRM_CONNECTION_RETRIES : 10
236+ OSRM_CONNECTION_EXP_BACKOFF_COEF : 1.5
237+
228238 - name : clang-17-release
229239 continue-on-error : false
230240 node : 20
@@ -245,27 +255,6 @@ jobs:
245255 CUCUMBER_TIMEOUT : 60000
246256 ENABLE_LTO : OFF
247257
248- - name : conan-linux-debug-asan-ubsan
249- continue-on-error : false
250- node : 20
251- runs-on : ubuntu-24.04
252- BUILD_TYPE : Release
253- CCOMPILER : clang-18
254- CXXCOMPILER : clang++-18
255- ENABLE_CONAN : ON
256- ENABLE_SANITIZER : ON
257- ENABLE_LTO : OFF
258-
259- - name : conan-linux-release
260- continue-on-error : false
261- node : 20
262- runs-on : ubuntu-24.04
263- BUILD_TYPE : Release
264- CCOMPILER : clang-18
265- CXXCOMPILER : clang++-18
266- ENABLE_CONAN : ON
267- ENABLE_LTO : OFF
268-
269258 - name : gcc-14-release
270259 continue-on-error : false
271260 node : 22
@@ -284,6 +273,16 @@ jobs:
284273 CXXCOMPILER : g++-13
285274 CXXFLAGS : ' -Wno-array-bounds -Wno-uninitialized'
286275
276+ - name : gcc-13-debug-cov
277+ continue-on-error : false
278+ node : 22
279+ runs-on : ubuntu-24.04
280+ BUILD_TYPE : Debug
281+ CCOMPILER : gcc-13
282+ CUCUMBER_TIMEOUT : 20000
283+ CXXCOMPILER : g++-13
284+ ENABLE_COVERAGE : ON
285+
287286 - name : gcc-12-release
288287 continue-on-error : false
289288 node : 22
@@ -293,6 +292,27 @@ jobs:
293292 CXXCOMPILER : g++-12
294293 CXXFLAGS : ' -Wno-array-bounds -Wno-uninitialized'
295294
295+ - name : conan-linux-release
296+ continue-on-error : false
297+ node : 20
298+ runs-on : ubuntu-24.04
299+ BUILD_TYPE : Release
300+ CCOMPILER : clang-18
301+ CXXCOMPILER : clang++-18
302+ ENABLE_CONAN : ON
303+ ENABLE_LTO : OFF
304+
305+ - name : conan-linux-debug-asan-ubsan
306+ continue-on-error : false
307+ node : 20
308+ runs-on : ubuntu-24.04
309+ BUILD_TYPE : Release
310+ CCOMPILER : clang-18
311+ CXXCOMPILER : clang++-18
312+ ENABLE_CONAN : ON
313+ ENABLE_SANITIZER : ON
314+ ENABLE_LTO : OFF
315+
296316 - name : conan-linux-release-node
297317 build_node_package : true
298318 continue-on-error : false
@@ -331,7 +351,7 @@ jobs:
331351 build_node_package : true
332352 continue-on-error : true
333353 node : 22
334- runs-on : macos-15 # arm64
354+ runs-on : macos-15 # arm64
335355 BUILD_TYPE : Release
336356 CCOMPILER : clang
337357 CXXCOMPILER : clang++
@@ -419,7 +439,7 @@ jobs:
419439 fi
420440 # See: https://github.com/actions/toolkit/issues/946#issuecomment-1590016041
421441 # We need it to be able to access system folders while restoring cached Boost below
422- - name : Give tar root ownership
442+ - name : Give tar root ownership
423443 if : runner.os == 'Linux' && matrix.ENABLE_CONAN != 'ON'
424444 run : sudo chown root /bin/tar && sudo chmod u+s /bin/tar
425445
@@ -429,7 +449,7 @@ jobs:
429449 id : install-boost
430450 with :
431451 boost_version : 1.85.0
432-
452+
433453 - name : Install dev dependencies
434454 run : |
435455 # workaround for issue that GitHub Actions seems to not adding it to PATH after https://github.com/actions/runner-images/pull/6499
@@ -438,20 +458,21 @@ jobs:
438458 echo "/Library/Frameworks/Python.framework/Versions/Current/bin" >> $GITHUB_PATH
439459 fi
440460
441- # ccache
461+ # Update package list
462+ if [[ "${RUNNER_OS}" == "Linux" || "${ENABLE_CONAN}" != "ON" ]]; then
463+ sudo apt-get update -y
464+ fi
465+
466+ # Install compiler and ccache
442467 if [[ "${RUNNER_OS}" == "Linux" ]]; then
443- sudo apt-get update -y && sudo apt-get install ccache
468+ sudo apt-get install -y ${CCOMPILER} ${CXXCOMPILER} ccache
444469 elif [[ "${RUNNER_OS}" == "macOS" ]]; then
445470 brew install ccache
446471 fi
447472
448473 # Linux dev packages
449- if [ "${ENABLE_CONAN}" != "ON" ]; then
450- sudo apt-get update -y
474+ if [[ "${ENABLE_CONAN}" != "ON" ]]; then
451475 sudo apt-get install -y libbz2-dev libxml2-dev libzip-dev liblua5.2-dev
452- if [[ "${CCOMPILER}" != clang-* ]]; then
453- sudo apt-get install -y ${CXXCOMPILER}
454- fi
455476 if [[ "${ENABLE_COVERAGE}" == "ON" ]]; then
456477 sudo apt-get install -y lcov
457478 fi
0 commit comments