Tracking ci.yml changes from master.

This commit is contained in:
Ralf W. Grosse-Kunstleve 2023-08-07 21:03:46 -07:00
parent 6f702e7f0e
commit b9e956b002
2 changed files with 49 additions and 48 deletions

View File

@ -422,54 +422,55 @@ jobs:
# run: cmake --build build --target test_cmake_build # run: cmake --build build --target test_cmake_build
# Testing on CentOS 7 + PGI compilers, which seems to require more workarounds # Testing on Ubuntu + NVHPC (previous PGI) compilers, which seems to require more workarounds
centos-nvhpc7: ubuntu-nvhpc7:
if: ${{ false }} # JOB DISABLED (NEEDS WORK): https://github.com/pybind/pybind11/issues/4690 runs-on: ubuntu-20.04
runs-on: ubuntu-latest name: "🐍 3 • NVHPC 23.5 • C++17 • x64"
name: "🐍 3 • CentOS7 / PGI 22.9 • x64"
container: centos:7
env:
# tzdata will try to ask for the timezone, so set the DEBIAN_FRONTEND
DEBIAN_FRONTEND: 'noninteractive'
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Add Python 3 and a few requirements - name: Add NVHPC Repo
run: yum update -y && yum install -y epel-release && yum install -y git python3-devel make environment-modules cmake3 yum-utils run: |
echo 'deb [trusted=yes] https://developer.download.nvidia.com/hpc-sdk/ubuntu/amd64 /' | \
sudo tee /etc/apt/sources.list.d/nvhpc.list
- name: Install NVidia HPC SDK - name: Install 🐍 3 & NVHPC
run: yum-config-manager --add-repo https://developer.download.nvidia.com/hpc-sdk/rhel/nvhpc.repo && yum -y install nvhpc-22.9 run: |
sudo apt-get update -y && \
sudo apt-get install -y cmake environment-modules git python3-dev python3-pip python3-numpy && \
sudo apt-get install -y --no-install-recommends nvhpc-23-5 && \
sudo rm -rf /var/lib/apt/lists/*
python3 -m pip install --upgrade pip
python3 -m pip install --upgrade pytest
# On CentOS 7, we have to filter a few tests (compiler internal error) # On some systems, you many need further workarounds:
# and allow deeper template recursion (not needed on CentOS 8 with a newer
# standard library). On some systems, you many need further workarounds:
# https://github.com/pybind/pybind11/pull/2475 # https://github.com/pybind/pybind11/pull/2475
- name: Configure - name: Configure
shell: bash shell: bash
run: | run: |
source /etc/profile.d/modules.sh source /etc/profile.d/modules.sh
module load /opt/nvidia/hpc_sdk/modulefiles/nvhpc/22.9 module load /opt/nvidia/hpc_sdk/modulefiles/nvhpc/23.5
cmake3 -S . -B build -DDOWNLOAD_CATCH=ON \ cmake -S . -B build -DDOWNLOAD_CATCH=ON \
-DCMAKE_CXX_STANDARD=11 \ -DCMAKE_CXX_STANDARD=17 \
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)") \ -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)") \
-DCMAKE_CXX_FLAGS="-Wc,--pending_instantiations=0 -DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT" \ -DCMAKE_CXX_FLAGS="-Wc,--pending_instantiations=0 -DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT" \
-DPYBIND11_TEST_FILTER="test_smart_ptr.cpp" -DPYBIND11_TEST_FILTER="test_smart_ptr.cpp"
# Building before installing Pip should produce a warning but not an error
- name: Build - name: Build
run: cmake3 --build build -j 2 --verbose run: cmake --build build -j 2 --verbose
- name: Install CMake with pip
run: |
python3 -m pip install --upgrade pip
python3 -m pip install pytest
- name: Python tests - name: Python tests
run: cmake3 --build build --target pytest run: cmake --build build --target pytest
- name: C++ tests - name: C++ tests
run: cmake3 --build build --target cpptest run: cmake --build build --target cpptest
- name: Interface test - name: Interface test
run: cmake3 --build build --target test_cmake_build run: cmake --build build --target test_cmake_build
# Testing on GCC using the GCC docker images (only recent images supported) # Testing on GCC using the GCC docker images (only recent images supported)

View File

@ -1,5 +1,5 @@
--- ci.yml 2023-08-03 22:50:35.724639197 -0700 --- ci.yml 2023-08-07 21:01:04.703855130 -0700
+++ ci_sh_def.yml 2023-08-03 22:54:28.312146852 -0700 +++ ci_sh_def.yml 2023-08-07 21:01:44.175795896 -0700
@@ -1,4 +1,16 @@ @@ -1,4 +1,16 @@
-name: CI -name: CI
+# PLEASE KEEP THIS GROUP OF FILES IN SYNC AT ALL TIMES: +# PLEASE KEEP THIS GROUP OF FILES IN SYNC AT ALL TIMES:
@ -76,16 +76,16 @@
- name: Build - name: Build
run: cmake --build build -j2 --verbose run: cmake --build build -j2 --verbose
@@ -433,7 +450,7 @@ @@ -440,7 +457,7 @@
cmake3 -S . -B build -DDOWNLOAD_CATCH=ON \ cmake -S . -B build -DDOWNLOAD_CATCH=ON \
-DCMAKE_CXX_STANDARD=11 \ -DCMAKE_CXX_STANDARD=17 \
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)") \ -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)") \
- -DCMAKE_CXX_FLAGS="-Wc,--pending_instantiations=0" \ - -DCMAKE_CXX_FLAGS="-Wc,--pending_instantiations=0" \
+ -DCMAKE_CXX_FLAGS="-Wc,--pending_instantiations=0 -DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT" \ + -DCMAKE_CXX_FLAGS="-Wc,--pending_instantiations=0 -DPYBIND11_USE_SMART_HOLDER_AS_DEFAULT" \
-DPYBIND11_TEST_FILTER="test_smart_ptr.cpp" -DPYBIND11_TEST_FILTER="test_smart_ptr.cpp"
# Building before installing Pip should produce a warning but not an error - name: Build
@@ -493,6 +510,7 @@ @@ -494,6 +511,7 @@
-DPYBIND11_WERROR=ON -DPYBIND11_WERROR=ON
-DDOWNLOAD_CATCH=ON -DDOWNLOAD_CATCH=ON
-DCMAKE_CXX_STANDARD=${{ matrix.std }} -DCMAKE_CXX_STANDARD=${{ matrix.std }}
@ -93,7 +93,7 @@
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)") -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")
- name: Build - name: Build
@@ -515,6 +533,7 @@ @@ -516,6 +534,7 @@
-DPYBIND11_WERROR=ON -DPYBIND11_WERROR=ON
-DDOWNLOAD_CATCH=ON -DDOWNLOAD_CATCH=ON
-DCMAKE_CXX_STANDARD=${{ matrix.std }} -DCMAKE_CXX_STANDARD=${{ matrix.std }}
@ -101,7 +101,7 @@
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)") -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")
"-DPYBIND11_TEST_OVERRIDE=test_call_policies.cpp;test_gil_scoped.cpp;test_thread.cpp" "-DPYBIND11_TEST_OVERRIDE=test_call_policies.cpp;test_gil_scoped.cpp;test_thread.cpp"
@@ -566,6 +585,7 @@ @@ -567,6 +586,7 @@
-DDOWNLOAD_CATCH=ON \ -DDOWNLOAD_CATCH=ON \
-DDOWNLOAD_EIGEN=OFF \ -DDOWNLOAD_EIGEN=OFF \
-DCMAKE_CXX_STANDARD=11 \ -DCMAKE_CXX_STANDARD=11 \
@ -109,7 +109,7 @@
-DCMAKE_CXX_COMPILER=$(which icpc) \ -DCMAKE_CXX_COMPILER=$(which icpc) \
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)") -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")
@@ -598,6 +618,7 @@ @@ -599,6 +619,7 @@
-DDOWNLOAD_CATCH=ON \ -DDOWNLOAD_CATCH=ON \
-DDOWNLOAD_EIGEN=OFF \ -DDOWNLOAD_EIGEN=OFF \
-DCMAKE_CXX_STANDARD=17 \ -DCMAKE_CXX_STANDARD=17 \
@ -117,7 +117,7 @@
-DCMAKE_CXX_COMPILER=$(which icpc) \ -DCMAKE_CXX_COMPILER=$(which icpc) \
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)") -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")
@@ -665,6 +686,7 @@ @@ -666,6 +687,7 @@
-DDOWNLOAD_CATCH=ON -DDOWNLOAD_CATCH=ON
-DDOWNLOAD_EIGEN=ON -DDOWNLOAD_EIGEN=ON
-DCMAKE_CXX_STANDARD=11 -DCMAKE_CXX_STANDARD=11
@ -125,7 +125,7 @@
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)") -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")
- name: Build - name: Build
@@ -715,6 +737,7 @@ @@ -716,6 +738,7 @@
cmake ../pybind11-tests cmake ../pybind11-tests
-DDOWNLOAD_CATCH=ON -DDOWNLOAD_CATCH=ON
-DPYBIND11_WERROR=ON -DPYBIND11_WERROR=ON
@ -133,7 +133,7 @@
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)") -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")
working-directory: /build-tests working-directory: /build-tests
@@ -810,6 +833,7 @@ @@ -811,6 +834,7 @@
-DPYBIND11_WERROR=ON -DPYBIND11_WERROR=ON
-DDOWNLOAD_CATCH=ON -DDOWNLOAD_CATCH=ON
-DDOWNLOAD_EIGEN=ON -DDOWNLOAD_EIGEN=ON
@ -141,7 +141,7 @@
${{ matrix.args }} ${{ matrix.args }}
- name: Build C++11 - name: Build C++11
run: cmake --build build -j 2 run: cmake --build build -j 2
@@ -864,6 +888,7 @@ @@ -865,6 +889,7 @@
-DPYBIND11_WERROR=ON -DPYBIND11_WERROR=ON
-DDOWNLOAD_CATCH=ON -DDOWNLOAD_CATCH=ON
-DDOWNLOAD_EIGEN=ON -DDOWNLOAD_EIGEN=ON
@ -149,7 +149,7 @@
${{ matrix.args }} ${{ matrix.args }}
- name: Build C++11 - name: Build C++11
run: cmake --build build --config Debug -j 2 run: cmake --build build --config Debug -j 2
@@ -904,6 +929,7 @@ @@ -905,6 +930,7 @@
-DDOWNLOAD_CATCH=ON -DDOWNLOAD_CATCH=ON
-DDOWNLOAD_EIGEN=ON -DDOWNLOAD_EIGEN=ON
-DCMAKE_CXX_STANDARD=20 -DCMAKE_CXX_STANDARD=20
@ -157,7 +157,7 @@
- name: Build C++20 - name: Build C++20
run: cmake --build build -j 2 run: cmake --build build -j 2
@@ -924,6 +950,7 @@ @@ -925,6 +951,7 @@
-DDOWNLOAD_CATCH=ON -DDOWNLOAD_CATCH=ON
-DDOWNLOAD_EIGEN=ON -DDOWNLOAD_EIGEN=ON
-DCMAKE_CXX_STANDARD=20 -DCMAKE_CXX_STANDARD=20
@ -165,7 +165,7 @@
"-DPYBIND11_TEST_OVERRIDE=test_call_policies.cpp;test_gil_scoped.cpp;test_thread.cpp" "-DPYBIND11_TEST_OVERRIDE=test_call_policies.cpp;test_gil_scoped.cpp;test_thread.cpp"
- name: Build C++20 - Exercise cmake -DPYBIND11_TEST_OVERRIDE - name: Build C++20 - Exercise cmake -DPYBIND11_TEST_OVERRIDE
@@ -966,7 +993,7 @@ @@ -967,7 +994,7 @@
- name: Configure C++11 - name: Configure C++11
# LTO leads to many undefined reference like # LTO leads to many undefined reference like
# `pybind11::detail::function_call::function_call(pybind11::detail::function_call&&) # `pybind11::detail::function_call::function_call(pybind11::detail::function_call&&)
@ -174,7 +174,7 @@
- name: Build C++11 - name: Build C++11
run: cmake --build build -j 2 run: cmake --build build -j 2
@@ -984,7 +1011,7 @@ @@ -985,7 +1012,7 @@
run: git clean -fdx run: git clean -fdx
- name: Configure C++14 - name: Configure C++14
@ -183,7 +183,7 @@
- name: Build C++14 - name: Build C++14
run: cmake --build build2 -j 2 run: cmake --build build2 -j 2
@@ -1002,7 +1029,7 @@ @@ -1003,7 +1030,7 @@
run: git clean -fdx run: git clean -fdx
- name: Configure C++17 - name: Configure C++17
@ -192,7 +192,7 @@
- name: Build C++17 - name: Build C++17
run: cmake --build build3 -j 2 run: cmake --build build3 -j 2
@@ -1069,6 +1096,7 @@ @@ -1070,6 +1097,7 @@
-DDOWNLOAD_EIGEN=ON -DDOWNLOAD_EIGEN=ON
-DCMAKE_CXX_COMPILER=clang++ -DCMAKE_CXX_COMPILER=clang++
-DCMAKE_CXX_STANDARD=17 -DCMAKE_CXX_STANDARD=17
@ -200,7 +200,7 @@
- name: Build - name: Build
run: cmake --build . -j 2 run: cmake --build . -j 2
@@ -1134,6 +1162,7 @@ @@ -1135,6 +1163,7 @@
-DDOWNLOAD_EIGEN=ON -DDOWNLOAD_EIGEN=ON
-DCMAKE_CXX_COMPILER=clang++ -DCMAKE_CXX_COMPILER=clang++
-DCMAKE_CXX_STANDARD=17 -DCMAKE_CXX_STANDARD=17
@ -208,7 +208,7 @@
-DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)") -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")
- name: Build - name: Build
@@ -1157,6 +1186,7 @@ @@ -1158,6 +1187,7 @@
-DDOWNLOAD_EIGEN=ON -DDOWNLOAD_EIGEN=ON
-DCMAKE_CXX_COMPILER=clang++ -DCMAKE_CXX_COMPILER=clang++
-DCMAKE_CXX_STANDARD=17 -DCMAKE_CXX_STANDARD=17