commit: 7fae8d1dcc9deb7fdb8d99c9b1bb17c38fb1c9b7
Author: Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com>
AuthorDate: Wed Aug 13 08:04:35 2025 +0000
Commit: Mart Raudsepp <leio <AT> gentoo <DOT> org>
CommitDate: Wed Aug 13 09:25:10 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7fae8d1d
dev-util/nvidia-cuda-toolkit: drop 12.9.0
Signed-off-by: Paul Zander <negril.nx+gentoo <AT> gmail.com>
Signed-off-by: Mart Raudsepp <leio <AT> gentoo.org>
dev-util/nvidia-cuda-toolkit/Manifest | 2 -
.../nvidia-cuda-toolkit-12.9.0.ebuild | 386 ---------------------
2 files changed, 388 deletions(-)
diff --git a/dev-util/nvidia-cuda-toolkit/Manifest
b/dev-util/nvidia-cuda-toolkit/Manifest
index 6800eb925a52..1ca66b6c88d0 100644
--- a/dev-util/nvidia-cuda-toolkit/Manifest
+++ b/dev-util/nvidia-cuda-toolkit/Manifest
@@ -6,7 +6,5 @@ DIST cuda_12.6.3_560.35.05_linux.run 4446722669 BLAKE2B
9ff67a3fca58af6fcb259a5b
DIST cuda_12.6.3_560.35.05_linux_sbsa.run 3760696924 BLAKE2B
06d2ce57911fd73dd64db8bb864b85f0f52a1f21382ac79e681cf4e55302ae57b700cf7a0943fee9924ff6024f056021acec50e3d90c9ee853c0d61121686603
SHA512
ad20647c8dd72937ba74c31c6e04b75d717c16a851972ba2da78cfe11453586702b28a1383f589e4c67825588c29924f87abae9cde964c41a59cf5fe43e7c632
DIST cuda_12.8.1_570.124.06_linux.run 5382238770 BLAKE2B
6dff4eb32e97f960bdb2bd57d0dbf0920a9f85c19c26199adcac64eb9d30d7b6f6e2691c7a7a0b5b8249c7860cc685931080a3775c804f6e4e3294c43380e94f
SHA512
2ac14ba054bf01924e1953053850f679ebdbc2b9150715398365464eae9d686cde2b82abb8f385b74e4eafa8d68421a9ea216c7647c08956ccba8b2299b50a6e
DIST cuda_12.8.1_570.124.06_linux_sbsa.run 4606631442 BLAKE2B
142c3a231f2a621c4d6a74059b72125baca83d2653ba95c726e3e3c12cf8a0a6b75ced7c0bdaa98450c3d2c2224e88886598191b594ac69be52ba5765bb30592
SHA512
108a75e0ca098b0fd514b3380d42b4752669201dcd68c41f2c1ecf9f29c216ac5937fa33d60e11be06e8a2ad8ae73aa49e6685a363ea77af943e1a1b936b8349
-DIST cuda_12.9.0_575.51.03_linux.run 5839691742 BLAKE2B
aead43ad3c127fcbe4e642ca3f82e46fe328aeb11d0b3b5abf2784948ce8b46dc703d959c9dd8dbe87697f52bc294636950129a60e2106d26e20e4eeb297c6f3
SHA512
92bef212ed5b5583ba1fdc12add2d7d9e8ced9abb48e336f5cd71bf507a841a855b0d7232d90d1c730ee21f5da2106c6f4acf8100852c1719e1a16715a665878
-DIST cuda_12.9.0_575.51.03_linux_sbsa.run 5058547799 BLAKE2B
c8b482fcd45529c2f810292be182cc6de703ab9e25018a220e18cb1b163e9bcb5c1648a898a658d678c5e229b83264b9b5a14309adca5c0de1189835e7d1fa18
SHA512
9d6d8b2e0529815eeb18aeefcf2e151c91960c0c7e29917b02d0e66cc68f396dda67fda24456031a94fb4d21348087428c26d18b25d891af621ede492a5d29cf
DIST cuda_12.9.1_575.57.08_linux.run 5860276058 BLAKE2B
482aee91731ca490956f3cf375e973b15ddcf69b295693d34488958e2592e5c55dabed589aa4f5f4ad59a50ae00b4523e5ebf760a613b634ca00164d363fb567
SHA512
fc29c5fc1121fb6634f1fe396abe7f34d351686454516269e9143e678ea178f906a35b916b8bb2d96ecfcfc705dda7d0f4547f7e7f00d36e392d981a766b6a56
DIST cuda_12.9.1_575.57.08_linux_sbsa.run 5074335372 BLAKE2B
71782c3e7e39503aa914c8e02b7e5e44c856bd98bb9d1d46b90dfb7db4a2becb03ed1467fbca34c2ea1147202deb379198495007d69c7987320e138a63f2164e
SHA512
91e3b457b6c36c8c3f07ae6fbd24f3f90b9ea22397059f91655ad68c32b96547e2c732af987a0c5ea63c37c43d48f199d97b9e84068c145633ebf67c34465ac6
diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.9.0.ebuild
b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.9.0.ebuild
deleted file mode 100644
index bbf706a74624..000000000000
--- a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.9.0.ebuild
+++ /dev/null
@@ -1,386 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-# shellcheck disable=SC2317
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{11..13} )
-inherit check-reqs edo toolchain-funcs
-inherit python-r1
-
-DRIVER_PV="575.51.03"
-GCC_MAX_VER="14"
-CLANG_MAX_VER="19"
-
-DESCRIPTION="NVIDIA CUDA Toolkit (compiler and friends)"
-HOMEPAGE="https://developer.nvidia.com/cuda-zone"
-SRC_URI="
- amd64? (
-
https://developer.download.nvidia.com/compute/cuda/${PV}/local_installers/cuda_${PV}_${DRIVER_PV}_linux.run
- )
- arm64? (
-
https://developer.download.nvidia.com/compute/cuda/${PV}/local_installers/cuda_${PV}_${DRIVER_PV}_linux_sbsa.run
- )
-"
-S="${WORKDIR}"
-
-LICENSE="NVIDIA-CUDA"
-
-SLOT="0/${PV}" # UNSLOTTED
-# SLOT="${PV}" # SLOTTED
-
-KEYWORDS="-* ~amd64 ~arm64 ~amd64-linux ~arm64-linux"
-IUSE="clang debugger examples nsight profiler rdma sanitizer"
-RESTRICT="bindist mirror strip test"
-
-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
- debugger? (
- ${PYTHON_DEPS}
- )
- examples? (
- media-libs/freeglut
- media-libs/glu
- )
- nsight? (
- dev-util/nsight-compute
- dev-util/nsight-systems
- )
- rdma? (
- sys-cluster/rdma-core
- )
-"
-BDEPEND="
- $(python_gen_any_dep '
- dev-python/defusedxml[${PYTHON_USEDEP}]
- ')
-"
-
-# CUDA_PATH="/opt/cuda-${PV}" #950207
-CUDA_PATH="/opt/cuda"
-QA_PREBUILT="${CUDA_PATH#/}/*"
-
-python_check_deps() {
- python_has_version "dev-python/defusedxml[${PYTHON_USEDEP}]"
-}
-
-cuda-toolkit_check_reqs() {
- if use amd64; then
- export CHECKREQS_DISK_BUILD="7195M"
- elif use arm64; then
- export CHECKREQS_DISK_BUILD="6969M"
- fi
-
- "check-reqs_pkg_${EBUILD_PHASE}"
-}
-
-cuda_verify() {
- # only works with unpacked sources
- [[ "${EBUILD_PHASE}" != prepare ]] && return
-
- # run self checks
- local compiler_versions GCC_HAS_VER CLANG_HAS_VER
- compiler_versions="$(
- grep -oP "unsupported (GNU|clang) version.*(gcc versions later
than|clang version must be less than) [0-9]*" \
-
"${S}"/builds/cuda_nvcc/targets/*/include/crt/host_config.h
- )"
-
- GCC_HAS_VER="$( echo "${compiler_versions}" | grep gcc | grep -oP
"(?<=than )[0-9]*")"
- if [[ "${GCC_MAX_VER}" -ne "${GCC_HAS_VER}" ]]; then
- eqawarn "check GCC_MAX_VER is ${GCC_MAX_VER} and should be
${GCC_HAS_VER}"
- fi
-
- CLANG_HAS_VER="$(( $(echo "${compiler_versions}" | grep clang | grep
-oP "(?<=than )[0-9]*") - 1 ))"
- if [[ "${CLANG_MAX_VER}" -ne "${CLANG_HAS_VER}" ]]; then
- eqawarn "check CLANG_MAX_VER is ${CLANG_MAX_VER} and should be
${CLANG_HAS_VER}"
- fi
-}
-
-pkg_pretend() {
- cuda-toolkit_check_reqs
-}
-
-pkg_setup() {
- cuda-toolkit_check_reqs
-
- if [[ "${MERGE_TYPE}" == binary ]]; then
- return
- fi
-
- # we need python for manifest parsing and to determine the supported
python versions for cuda-gdb
- python_setup
-
- if use amd64; then
- narch=x86_64
- elif use arm64; then
- narch=sbsa
- else
- die "unknown arch ${ARCH}"
- fi
-
- export narch
-}
-
-src_unpack() {
- cuda_verify
-
- local exclude=(
- "cuda-installer"
- "*-uninstaller"
- "NVIDIA-Linux-${narch}-${DRIVER_PV}.run"
- "builds/cuda_documentation"
- "builds/cuda_nsight"
- "builds/cuda_nvvp"
- "builds/nsight_compute"
- "builds/nsight_systems"
- "builds/nvidia_fs"
- )
-
- edob -m "Extracting ${A}" \
- bash "${DISTDIR}/${A}" --tar xf -X <(printf "%s\n"
"${exclude[@]}")
-}
-
-src_prepare() {
- pushd "builds/cuda_nvcc/targets/${narch}-linux" >/dev/null || die
- eapply -p5 "${FILESDIR}/nvidia-cuda-toolkit-glibc-2.41-r1.patch"
- popd >/dev/null || die
-
- default
-}
-
-src_configure() {
- :
-}
-
-src_compile() {
- :
-}
-
-src_install() {
- local -x SKIP_COMPONENTS=(
- "Kernel_Objects"
- "Visual_Tools"
- "Documentation" # obsolete
- "cuda-gdb-src" # not used
- )
-
- ! use debugger && SKIP_COMPONENTS+=( "cuda-gdb" )
- ! use examples && SKIP_COMPONENTS+=( "Demo_Suite" )
- ! use profiler && SKIP_COMPONENTS+=( "cuda-cupti"
"cuda-profiler-api" "nvprof" )
- ! use sanitizer && SKIP_COMPONENTS+=( "compute-sanitizer" )
-
- dodir "${CUDA_PATH}"
- into "${CUDA_PATH}"
-
- dofile() {
- debug-print-function "${FUNCNAME[0]}" "$@"
-
- if [[ $# -ne 1 ]] && [[ $# -ne 2 ]]; then
- die "${FUNCNAME[0]} must receive one or two arguments"
- fi
-
- local _DESTDIR
- _DESTDIR="$(dirname "${CUDA_PATH}/${1%/}")${2:+/${2%/}}"
- mkdir -p "${ED}${_DESTDIR}" || die "mkdir ${_DESTDIR} failed"
-
- local dir
- dir="$(dirname "${1}")"
-
- if test -z "$(find "${dir}" -maxdepth 1 -name "$(basename
"$1")" -print -quit)"; then
- if [[ -e "${ED}${_DESTDIR}/$(basename "${1}")" ]]; then
- return
- fi
- if [[ "$1" ==
"targets/x86_64-linux/lib/stubs/libcusolverMg*" ]] ||
- [[ "$1" ==
"targets/x86_64-linux/lib/libcusparse.so.*" ]]; then
- return
- fi
- return
- fi
-
- if [[ -e "${ED}${_DESTDIR}/$(basename "${1}")" ]]; then
- # skip noisy warnings
- if [[ "$(basename "${1}")" == "include" ]] ||
- [[ "$(basename "${1}")" == "lib64" ]]; then
- return
- fi
- eqawarn "${ED}${_DESTDIR}/$(basename "${1}") exists"
- return
- fi
-
- eval mv -i "${1}" "${ED}${_DESTDIR}" || die "mv failed ${PWD} /
${1} -> ${ED} ${_DESTDIR}"
- }
-
- dopcfile() {
- [[ $# -eq 0 ]] && return
-
- dodir "${CUDA_PATH}/pkgconfig"
- cat > "${ED}${CUDA_PATH}/pkgconfig/${1}.pc" <<-EOF || die
"dopcfile"
- cudaroot=${EPREFIX}${CUDA_PATH}
- libdir=\${cudaroot}/targets/${narch}-linux/lib${4}
- includedir=\${cudaroot}/targets/${narch}-linux/include
-
- Name: ${1}
- Description: ${3}
- Version: ${2}
- Libs: -L\${libdir} -l${1}
- Cflags: -I\${includedir}
- EOF
- }
-
- pushd builds >/dev/null || die
- fix_executable_bit=(
-
cuda_cupti/extras/CUPTI/samples/pc_sampling_utility/pc_sampling_utility_helper.h
-
cuda_cupti/extras/CUPTI/samples/pc_sampling_continuous/libpc_sampling_continuous.pl
-
- libcufile/gds/tools/run_gdsio.cfg
- )
-
- if use amd64; then
- fix_executable_bit+=(
- cuda_opencl/targets/*/include/CL/cl.hpp
-
- libcufile/targets/*/lib/libcufile_rdma_static.a
- libcufile/targets/*/lib/libcufile_static.a
- )
- fi
- chmod -x "${fix_executable_bit[@]}" || die "failed chmod"
- popd >/dev/null || die
-
- ebegin "parsing manifest" "${S}/manifests/cuda_"*.xml # {{{
-
- "${EPYTHON}" "${FILESDIR}/parse_manifest.py"
"${S}/manifests/cuda_"*".xml" &> "${T}/install.sh" \
- || die "failed to parse manifest"
- # shellcheck disable=SC1091
- source "${T}/install.sh" || die "failed to source install script"
-
- eend $? # }}}
-
- if use debugger; then
- if [[ -d "${ED}/${CUDA_PATH}/extras/Debugger/lib64" ]]; then
- rmdir "${ED}/${CUDA_PATH}/extras/Debugger/lib64" || die
"remove debugger lib64"
- fi
-
- find "${ED}/${CUDA_PATH}/bin" -maxdepth 1 -name
"cuda-gdb-*-tui" -print0 | while read -rd $'\0' tui_name; do
- impl="$(basename "${tui_name}" | cut -d '-' -f 3 | tr
'.' '_')"
-
- if ! has "${impl}" "${PYTHON_COMPAT[@]}" || ! use
"python_targets_${impl}"; then
- rm "${tui_name}" || die "tui-name rm
${tui_name}"
- sed -e "/$(basename "${tui_name}")\"/d" -i
"${ED}/${CUDA_PATH}/bin/cuda-gdb" || die "tui_name sed"
- fi
- done
- fi
-
- # remove rdma libs (unless USE=rdma)
- if ! use rdma; then
- rm
"${ED}/${CUDA_PATH}/targets/${narch}-linux/lib/libcufile_rdma"* || die "failed
to remove rdma files"
- fi
-
- # Add include and lib symlinks
- dosym -r "${CUDA_PATH}/targets/${narch}-linux/include"
"${CUDA_PATH}/include"
- dosym -r "${CUDA_PATH}/targets/${narch}-linux/lib"
"${CUDA_PATH}/$(get_libdir)"
-
- find "${ED}/${CUDA_PATH}" -empty -delete || die
-
- local ldpathextradirs pathextradirs
-
- use debugger &&
ldpathextradirs+=":${EPREFIX}${CUDA_PATH}/extras/Debugger/lib64"
- use profiler &&
ldpathextradirs+=":${EPREFIX}${CUDA_PATH}/extras/CUPTI/lib64"
-
- local revord=$(( 999999 - $(printf "%02d%02d%02d" "$(ver_cut 1)"
"$(ver_cut 2)" "$(ver_cut 3)") ))
- newenvd - "99cuda${revord}" <<-EOF
- PATH=${EPREFIX}${CUDA_PATH}/bin${pathextradirs}
- PKG_CONFIG_PATH=${EPREFIX}${CUDA_PATH}/pkgconfig
-
LDPATH=${EPREFIX}${CUDA_PATH}/$(get_libdir):${EPREFIX}${CUDA_PATH}/nvvm/lib64${ldpathextradirs}
- EOF
-
- # CUDA prepackages libraries, don't revdep-build on them
- insinto /etc/revdep-rebuild
- newins - "80${PN}${revord}" <<-EOF
- SEARCH_DIRS_MASK="${EPREFIX}${CUDA_PATH}"
- EOF
-
- # https://bugs.gentoo.org/926116
- insinto /etc/sandbox.d
- newins - "80${PN}" <<-EOF
- SANDBOX_PREDICT="/proc/self/task"
- EOF
-
- # TODO drop and replace with runtime detection similar to what python
does {{{
- # ATTENTION: change requires revbump, see link below for supported GCC
# versions
- #
https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#system-requirements
- local cuda_supported_gcc=( 8.5 9.5 10 11 12 13 "${GCC_MAX_VER}" )
-
- sed \
- -e "s:CUDA_SUPPORTED_GCC:${cuda_supported_gcc[*]}:g" \
- "${FILESDIR}"/cuda-config.in >
"${ED}/${CUDA_PATH}/bin/cuda-config" || die
- fperms +x "${CUDA_PATH}/bin/cuda-config"
- # }}}
-
- # skip til cudnn has been changed #950207
- # if [[ "${SLOT}" != "${PV}" ]]; then
- # dosym -r "${CUDA_PATH}" "${CUDA_PATH%"-${PV}"}"
- # fi
-
- fowners -R root:root "${CUDA_PATH}"
-}
-
-pkg_postinst_check() {
- # Due to requiring specific compiler versions here, we check more then
we have to, for the sake of clarity.
- # tc-getCC defaults to gcc, so clang-major-version is checked using gcc
and fails on gcc-profiles. # 959420
- # We therefore force gcc and clang for the check.
-
- if tc-is-gcc || ! use clang; then
- if ver_test "$(CC=gcc gcc-major-version)" -gt "${GCC_MAX_VER}";
then
- ewarn
- ewarn "gcc > ${GCC_MAX_VER} will not work with CUDA"
- ewarn
- ewarn "Append --ccbin= pointing to a gcc bindir to the
nvcc compiler flags (NVCCFLAGS)"
- ewarn "or set NVCC_CCBIN to the same bindir."
- ewarn " NVCCFLAGS=\"--ccbin=$(eval echo
"${EPREFIX}/usr/*-linux-gnu/gcc-bin/${GCC_MAX_VER}")\""
- ewarn " NVCC_CCBIN=$(eval echo
"${EPREFIX}/usr/*-linux-gnu/gcc-bin/${GCC_MAX_VER}")"
- ewarn
- fi
- fi
-
- if tc-is-clang || use clang; then
- if ver_test "$(CC=clang clang-major-version)" -gt
"${CLANG_MAX_VER}"; then
- ewarn
- ewarn "clang > ${CLANG_MAX_VER} will not work with CUDA"
- ewarn
- ewarn "Append --ccbin= pointing to a clang bindir to
the nvcc compiler flags (NVCCFLAGS)"
- ewarn "or set NVCC_CCBIN to the same bindir."
- ewarn " NVCCFLAGS=\"--ccbin=$(eval echo
"${EPREFIX}/usr/lib/llvm/*/bin${CLANG_MAX_VER}")\""
- ewarn " NVCC_CCBIN=$(eval echo
"${EPREFIX}/usr/lib/llvm/*/bin${CLANG_MAX_VER}")"
- ewarn
- fi
- fi
-}
-
-pkg_postinst() {
- if [[ ${MERGE_TYPE} != binary ]]; then
- pkg_postinst_check
- fi
-
- if use profiler; then
- einfo
- einfo "nvidia-drivers restricts access to performance counters."
- einfo "You'll need to run profiling tools (nvprof) "
- einfo "using sudo (needs cap SYS_ADMIN) or add the following
line to "
- einfo "a modprobe configuration file "
- einfo "(e.g. /etc/modprobe.d/nvidia-prof.conf): "
- einfo
- einfo "options nvidia NVreg_RestrictProfilingToAdminUsers=0"
- einfo
- fi
-}