commit: 9ebc15021d020f41c9960ae8774ae16e24d2ed97 Author: Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com> AuthorDate: Thu May 22 11:47:34 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Thu May 22 16:07:12 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9ebc1502
dev-util/nvidia-cuda-toolkit: add clang useflag to force specific compiler The at-least-one-of dependency on clang or gcc allowed the PM to depclean one of them. If e.g. clang is installed via LLVM_SLOT it allows older gcc to be depcleaned even if it is the system compiler. Causing the hostcompiler lookup to fail. Bug: https://bugs.gentoo.org/956046 Signed-off-by: Paul Zander <negril.nx+gentoo <AT> gmail.com> Part-of: https://github.com/gentoo/gentoo/pull/42202 Signed-off-by: Sam James <sam <AT> gentoo.org> dev-util/nvidia-cuda-toolkit/metadata.xml | 1 + ...a-toolkit-12.6.3.ebuild => nvidia-cuda-toolkit-12.6.3-r1.ebuild} | 6 ++++-- ...a-toolkit-12.8.1.ebuild => nvidia-cuda-toolkit-12.8.1-r1.ebuild} | 6 ++++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/dev-util/nvidia-cuda-toolkit/metadata.xml b/dev-util/nvidia-cuda-toolkit/metadata.xml index ae4d40199441..b28664c8dab7 100644 --- a/dev-util/nvidia-cuda-toolkit/metadata.xml +++ b/dev-util/nvidia-cuda-toolkit/metadata.xml @@ -6,6 +6,7 @@ <name>Gentoo Science Project</name> </maintainer> <use> + <flag name="clang">Depend on <pkg>llvm-core/clang</pkg> as host compiler</flag> <flag name="debugger">Install the CUDA debugger</flag> <flag name="nsight">Install profiling and optimizing tools (nsight-compute, nsight-systems)</flag> <flag name="profiler">Install the NVIDIA CUDA profiler (nvprof) and the related libraries</flag> diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.3.ebuild b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.3-r1.ebuild similarity index 99% rename from dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.3.ebuild rename to dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.3-r1.ebuild index d2845a65dcaf..8415006bd0fa 100644 --- a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.3.ebuild +++ b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.3-r1.ebuild @@ -31,7 +31,7 @@ SLOT="0/${PV}" # UNSLOTTED # SLOT="${PV}" # SLOTTED KEYWORDS="-* ~amd64 ~arm64 ~amd64-linux ~arm64-linux" -IUSE="debugger examples profiler rdma sanitizer" +IUSE="clang debugger examples profiler rdma sanitizer" RESTRICT="bindist mirror strip test" REQUIRED_USE="${PYTHON_REQUIRED_USE}" @@ -39,8 +39,10 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}" # since CUDA 11, the bundled toolkit driver (== ${DRIVER_PV}) and the # actual required minimum driver version are different. RDEPEND=" - || ( + !clang? ( <sys-devel/gcc-$(( GCC_MAX_VER + 1 ))_pre[cxx] + ) + clang? ( <llvm-core/clang-$(( CLANG_MAX_VER + 1 ))_pre ) sys-process/numactl diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.1.ebuild b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.1-r1.ebuild similarity index 99% rename from dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.1.ebuild rename to dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.1-r1.ebuild index 46414fa97bec..8e3639e189f3 100644 --- a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.1.ebuild +++ b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.8.1-r1.ebuild @@ -31,7 +31,7 @@ SLOT="0/${PV}" # UNSLOTTED # SLOT="${PV}" # SLOTTED KEYWORDS="-* ~amd64 ~arm64 ~amd64-linux ~arm64-linux" -IUSE="debugger examples profiler rdma sanitizer" +IUSE="clang debugger examples profiler rdma sanitizer" RESTRICT="bindist mirror strip test" REQUIRED_USE="${PYTHON_REQUIRED_USE}" @@ -39,8 +39,10 @@ REQUIRED_USE="${PYTHON_REQUIRED_USE}" # since CUDA 11, the bundled toolkit driver (== ${DRIVER_PV}) and the # actual required minimum driver version are different. RDEPEND=" - || ( + !clang? ( <sys-devel/gcc-$(( GCC_MAX_VER + 1 ))_pre[cxx] + ) + clang? ( <llvm-core/clang-$(( CLANG_MAX_VER + 1 ))_pre ) sys-process/numactl
