21
21
fail-fast : false
22
22
matrix :
23
23
include :
24
+ - name : ubu22-x86-gcc12-clang-repl-18-cppyy
25
+ os : ubuntu-22.04
26
+ compiler : gcc-12
27
+ clang-runtime : ' 18'
28
+ cling : Off
29
+ cppyy : On
24
30
- name : ubu22-x86-gcc12-clang-repl-17-cppyy
25
31
os : ubuntu-22.04
26
32
compiler : gcc-12
@@ -121,6 +127,12 @@ jobs:
121
127
# cling: On
122
128
# cling-version: '1.0'
123
129
# cppyy: On
130
+ - name : osx13-x86-clang-clang-repl-18-cppyy
131
+ os : macos-13
132
+ compiler : clang
133
+ clang-runtime : ' 18'
134
+ cling : Off
135
+ cppyy : On
124
136
- name : osx13-x86-clang-clang-repl-17-cppyy
125
137
os : macos-13
126
138
compiler : clang
@@ -337,7 +349,14 @@ jobs:
337
349
run : |
338
350
# Install deps
339
351
sudo apt-get update
340
- sudo apt-get install git g++ debhelper devscripts gnupg python3 valgrind
352
+ sudo apt-get install git g++ debhelper devscripts gnupg python3
353
+ sudo apt-get install -y libc6-dbg
354
+ sudo snap install valgrind --classic
355
+
356
+ # Install libraries used by the cppyy test suite
357
+ sudo apt install libeigen3-dev
358
+ sudo apt install libboost-all-dev
359
+
341
360
conda install -y -q -c conda-forge \
342
361
distro \
343
362
pytest
@@ -412,9 +431,12 @@ jobs:
412
431
# Now build gtest.a and gtest_main for CppInterOp to run its tests.
413
432
cmake --build . --target gtest_main --parallel ${{ env.ncpus }}
414
433
else
415
- # Apply patches
416
- git apply -v ../cppyy-backend/patches/llvm/clang${{ matrix.clang-runtime }}-*.patch
417
- echo "Apply clang${{ matrix.clang-runtime }}-*.patch patches:"
434
+ # Apply patches
435
+ llvm_vers=$(echo "${{ matrix.clang-runtime }}" | tr '[:lower:]' '[:upper:]')
436
+ if [[ "${llvm_vers}" != "18" ]]; then
437
+ git apply -v ../cppyy-backend/patches/llvm/clang${{ matrix.clang-runtime }}-*.patch
438
+ echo "Apply clang${{ matrix.clang-runtime }}-*.patch patches:"
439
+ fi
418
440
cd build
419
441
cmake -DLLVM_ENABLE_PROJECTS=clang \
420
442
-DLLVM_TARGETS_TO_BUILD="host;NVPTX" \
@@ -729,10 +751,13 @@ jobs:
729
751
python -m pip install pytest-xdist
730
752
python -m pip install numba
731
753
echo ::endgroup::
754
+
732
755
echo ::group::Run complete test suite
733
756
set -o pipefail
734
757
python -m pytest -sv | tee complete_testrun.log 2>&1
735
758
set +o pipefail
759
+ echo ::endgroup::
760
+
736
761
echo ::group::Crashing Test Logs
737
762
# See if we don't have a crash that went away
738
763
# Comment out all xfails but the ones that have a run=False condition.
@@ -757,12 +782,12 @@ jobs:
757
782
if [[ "${{ matrix.os }}" == macos-* ]]; then
758
783
echo "Skipping Valgrind checks on macOS"
759
784
else
760
- if [[ "${{ matrix.clang-runtime }}" == "17" || "${{ matrix.clang-runtime }}" == "18" ]]; then
761
- echo "Valgrind reports true for clang-runtime 17 or 18 , due to memory leaks with LLVM"
762
- valgrind --error-exitcode=1 --suppressions=../etc/valgrind-cppyy-cling.supp python -m pytest -m "not xfail" -v || true
785
+ if [[ "${{ matrix.clang-runtime }}" == "17" ]]; then
786
+ echo "Valgrind reports true for clang-runtime 17, due to memory leaks with LLVM"
787
+ valgrind --show-error-list=yes -- error-exitcode=1 --suppressions=../etc/valgrind-cppyy-cling.supp python -m pytest -m "not xfail" -v || true
763
788
else
764
789
echo "Running valgrind on passing tests"
765
- valgrind --error-exitcode=1 --suppressions=../etc/valgrind-cppyy-cling.supp python -m pytest -m "not xfail" -v
790
+ valgrind --show-error-list=yes -- error-exitcode=1 --suppressions=../etc/valgrind-cppyy-cling.supp python -m pytest -m "not xfail" -v
766
791
fi
767
792
fi
768
793
export RETCODE=+$?
0 commit comments