@@ -90,16 +90,14 @@ jobs:
9090 fail-fast : false
9191 matrix :
9292 include :
93- # Linux x86_64 with CUDA support (uses GCC Toolset 13 for CUDA compatibility)
93+ # Linux x86_64 with CUDA support. Use the manylinux 2.34 image's
94+ # default GCC 11 toolchain: CUDA 12.6 supports GCC 6.x-13.2, while
95+ # GCC 13 emits libstdc++ symbols newer than auditwheel's
96+ # manylinux_2_35 policy allows.
9497 - os : ubuntu-latest
9598 architecture : x86_64
9699 cibw_archs : x86_64
97100 install_cuda : true
98- # GCC Toolset 13 paths for CUDA compatibility
99- gcc_path_prefix : " /opt/rh/gcc-toolset-13/root/usr/bin:"
100- gcc_ld_path : " /opt/rh/gcc-toolset-13/root/usr/lib64:/opt/rh/gcc-toolset-13/root/usr/lib:"
101- gcc_cc : " /opt/rh/gcc-toolset-13/root/usr/bin/gcc"
102- gcc_cxx : " /opt/rh/gcc-toolset-13/root/usr/bin/g++"
103101 # Linux aarch64 - temporarily disabled while the LLVM 21.1
104102 # manylinux_2_34 bootstrap is validated on the primary x86_64 lane.
105103 # - os: ubuntu-24.04-arm
@@ -209,10 +207,9 @@ jobs:
209207 CIBW_ARCHS_LINUX : ${{ matrix.cibw_archs }}
210208 CIBW_MANYLINUX_X86_64_IMAGE : " manylinux_2_34"
211209 CIBW_MANYLINUX_AARCH64_IMAGE : " manylinux_2_34"
212- # Linux configuration - GCC Toolset and CUDA paths are conditional via matrix variables
210+ # Linux configuration - CUDA paths are conditional via matrix variables
213211 CIBW_ENVIRONMENT_LINUX : >
214- PATH=${{ matrix.gcc_path_prefix }}$HOME/.cargo/bin:$HOME/.pecos/deps/llvm-21.1/bin:$HOME/.pecos/deps/cmake-${{ env.PECOS_CMAKE_VERSION }}/bin:/usr/local/cuda-12.6/bin:$PATH
215- LD_LIBRARY_PATH=${{ matrix.gcc_ld_path }}$HOME/.pecos/deps/llvm-21.1/lib:$LD_LIBRARY_PATH
212+ PATH=$HOME/.cargo/bin:$HOME/.pecos/deps/llvm-21.1/bin:$HOME/.pecos/deps/cmake-${{ env.PECOS_CMAKE_VERSION }}/bin:/usr/local/cuda-12.6/bin:$PATH
216213 LLVM_SYS_211_PREFIX=$HOME/.pecos/deps/llvm-21.1
217214 LIBCLANG_PATH=$HOME/.pecos/deps/llvm-21.1/lib
218215 CMAKE=$HOME/.pecos/deps/cmake-${{ env.PECOS_CMAKE_VERSION }}/bin/cmake
@@ -224,9 +221,6 @@ jobs:
224221 dnf install -y bzip2 libffi-devel xz
225222 # Install CUDA Toolkit for GPU support on x86_64 (compile-time only, no GPU needed)
226223 if [ "${{ matrix.install_cuda }}" = "true" ]; then
227- echo "Installing GCC 13 (required for CUDA 12.6 compatibility)..."
228- dnf install -y gcc-toolset-13
229- source /opt/rh/gcc-toolset-13/enable
230224 echo "Installing CUDA Toolkit from NVIDIA repos..."
231225 . /etc/os-release
232226 CUDA_RHEL_MAJOR="${VERSION_ID%%.*}"
@@ -244,7 +238,7 @@ jobs:
244238 cargo run --locked --release -p pecos-cli -- llvm configure "$HOME/.pecos/deps/llvm-21.1"
245239 cargo run --locked --release -p pecos-cli -- install cmake --force
246240 CIBW_REPAIR_WHEEL_COMMAND_LINUX : >
247- auditwheel repair -w {dest_dir} {wheel} &&
241+ auditwheel repair --plat manylinux_2_35_${{ matrix.cibw_archs }} - w {dest_dir} {wheel} &&
248242 pipx run abi3audit --strict --report {wheel}
249243 # macOS configuration
250244 CIBW_ENVIRONMENT_MACOS : >
@@ -328,7 +322,7 @@ jobs:
328322 bash scripts/ci/install-llvm-21-conda-linux.sh
329323 cargo run --locked --release -p pecos-cli -- llvm configure "$HOME/.pecos/deps/llvm-21.1"
330324 CIBW_REPAIR_WHEEL_COMMAND_LINUX : >
331- auditwheel repair -w {dest_dir} {wheel} &&
325+ auditwheel repair --plat manylinux_2_35_${{ matrix.cibw_archs }} - w {dest_dir} {wheel} &&
332326 pipx run abi3audit --strict --report {wheel}
333327 CIBW_ENVIRONMENT_MACOS : >
334328 PATH=$HOME/.cargo/bin:$HOME/.pecos/deps/llvm-21.1/bin:$PATH
0 commit comments