summaryrefslogtreecommitdiff
path: root/dev-util
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-09-11 12:30:55 +0100
committerV3n3RiX <venerix@koprulu.sector>2024-09-11 12:30:55 +0100
commit65a36438d5b824f80023c282dadc3fcd5736b526 (patch)
tree12aedb23736e7cceba662d217cdd7f0f2a2662ba /dev-util
parentadd278b9601ff9e4af091c91c851ee46a185be8f (diff)
gentoo auto-resync : 11:09:2024 - 12:30:54
Diffstat (limited to 'dev-util')
-rw-r--r--dev-util/Manifest.gzbin65079 -> 65097 bytes
-rw-r--r--dev-util/bcc/Manifest5
-rw-r--r--dev-util/bcc/bcc-0.31.0.ebuild (renamed from dev-util/bcc/bcc-0.28.0-r1.ebuild)87
-rw-r--r--dev-util/bcc/files/bcc-0.31.0-dont-install-static-libs.patch13
-rw-r--r--dev-util/directx-headers/Manifest2
-rw-r--r--dev-util/directx-headers/directx-headers-1.614.1.ebuild30
-rw-r--r--dev-util/egypt/Manifest2
-rw-r--r--dev-util/egypt/egypt-1.10.ebuild14
-rw-r--r--dev-util/gengetopt/Manifest1
-rw-r--r--dev-util/gengetopt/gengetopt-2.23.ebuild29
-rw-r--r--dev-util/indent/Manifest2
-rw-r--r--dev-util/indent/indent-2.2.12.ebuild50
-rw-r--r--dev-util/kdevelop-pg-qt/Manifest2
-rw-r--r--dev-util/kdevelop-pg-qt/kdevelop-pg-qt-2.2.2.ebuild20
-rw-r--r--dev-util/nvidia-cuda-toolkit/Manifest2
-rw-r--r--dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.1.ebuild328
16 files changed, 440 insertions, 147 deletions
diff --git a/dev-util/Manifest.gz b/dev-util/Manifest.gz
index 2719697a7128..7a30f0344a49 100644
--- a/dev-util/Manifest.gz
+++ b/dev-util/Manifest.gz
Binary files differ
diff --git a/dev-util/bcc/Manifest b/dev-util/bcc/Manifest
index 35c341d2e989..84d43051517a 100644
--- a/dev-util/bcc/Manifest
+++ b/dev-util/bcc/Manifest
@@ -1,12 +1,13 @@
AUX 60bcc.env 32 BLAKE2B dbbfb31408af7f3375b02981113d81d71075d339fded45db24b2168baa9f3ffe51205447c12eb9c3f06188fd32db591f21bce41edaff473a40b10320067447cd SHA512 a040c762df54a0218fb3fc4a6609b0e924003be689eaff629fabe69e1ed224fc38fdaac377624944718e5b174ac413edf3730cd0a228bd73bf8ef8678e97d73c
AUX bcc-0.23.0-man-compress.patch 704 BLAKE2B 0eceb68e7d7a09b948d24e98c833031751421c829ba99564499b4e4ded9f0bc505b60a2648de7287185d85d847b65f3b929dd08b3fe9f97b1a7aaf9868750ec4 SHA512 7f7c4f4292ab5334201506ba523adc1c9a8e87cd3656a896cf31fe7f48f25e84bb52552f7d02d12442784a72cf7bcb01dec8a63eb2679aa9d84ff935f94d1863
AUX bcc-0.25.0-cmakelists.patch 358 BLAKE2B 0159aa6e483bd5fab0bc920e8416a94a43809d99a29344b17321bc92890614f99cba1bb8bea02522b890be456904250ef2875d2d88b3f6d55022ad2d4ad2910e SHA512 9521e22cb9318b56601e1d27362903d63fcd8954b7539e6e92db267406d8aed6be8261b62f02d186edb82d548d64578bd99674f93c86e36e1fdd43332dc1552a
+AUX bcc-0.31.0-dont-install-static-libs.patch 867 BLAKE2B 4661b7524cf337bc3b64c0a2465945cf9896bb894383fd42afdcecd6f78878fa9904722f29c8ef1cc0c539f7bd9569c98ea6795defa79c35f74c9ba34030a0dc SHA512 e612a1ea7f97d147e2d8fd26e8929803d37164e209cbb45535742f99ff2f461bd8269ea8983701d7a98287338984a097d371098fdb83e693ac89663f5dcfcaa5
AUX bcc-0.9.0-no-luajit-automagic-dep.patch 463 BLAKE2B 286ed298055cbdb22d9c3f3f064c77da685cf75cc8c0ab0cad4d4b473f0eac0b1533ca8eb7e6159108d184d16db7a264b0ea9d30ccdc3d988d88bab28be7310d SHA512 6e5c20de22547410ffa566cb8226a47ee0e8c91183bc5b70eb22637a08fe55cfc96fde169ef3ab8d6e8d7c9e356c35e61b164b3ad675835d3ea8d5239a448979
-DIST bcc-0.28.0.tar.gz 6148954 BLAKE2B cfd3c8d63128e050512462449ff7d467f8f809c239ac01ae8e75365e89116ec351641a68682d23472aa3b4e265547bb20ca5572084c532a40ccd3131edf255a2 SHA512 792ce93dba64b1f87390b2602dcaeba04ac8b2863652b06eb9a907b93bc6137a944b856cc6fa9c7a38671c89814740967561ca4f3b29c267babca7dc5e78aa02
DIST bcc-0.29.1.tar.gz 6778304 BLAKE2B 23df483df59ef7d66117b15628299a32155136aa5254edbf76f7507a972f3ebcba1d4b2aa83c41e8f061eeeb96812f522c34fed27e9a37e5f4ad3478c7cde88f SHA512 9e60130ea602e19e6c6f88a8c17023cea5daf4c5bcc7af8816e9f5c662341136eb449a3fdf870ffad215495ac3bf895115c0d968d92ce79ebe2899b3e2464d24
DIST bcc-0.30.0.tar.gz 6797246 BLAKE2B 517f4fcce8bcaf4c8c17075f9a906b452ee14a0c46fa500c301521fe46d854fcf4f632e741b34168dfeb819d9b0d64b967e716fa6222ba7dcaeddb03570985e6 SHA512 70478ca8c18e7f106c462513ca9af46f49b4ebcca6380a9393208fca88f83895a7396f918bf5d01dce1bc4a876bccb9b95aa56d426e55d384cf11c9baaa6a89b
-EBUILD bcc-0.28.0-r1.ebuild 3077 BLAKE2B 705569eaa9955df0c937fb91e16bf0581efa07f75c320998b0e77965be0d44862c79a858eb1a8741ecc80aede9f628896d60a39562dabb850eeb3d7a59422597 SHA512 6b41066299ee4b0e38688aad3a471df90aef356320e478d150ee5d0e5ea35fdeff601fa68f91f0b14c3b876aac43afd86e6a4269b8eff6cd39b4ecd6acdfa939
+DIST bcc-0.31.0.tar.gz 6807504 BLAKE2B 75739914a18a7952bbefbed6f55b88d3be4f0483d2fd74bf7d6f7a6491d659ab893e7bd6b5e74c7b2239d6a2a9db04522487e3b36e7ddf65b1cc2d8712f786a8 SHA512 a1fe855c316d0508814dc02382b13897ff565bee52de0fc9d7521eabd304227e41bf7d322b10ab29fd5b13aeac85cc75ee76ac348cf1f4bb6499b8853bac10ab
EBUILD bcc-0.29.1-r1.ebuild 3076 BLAKE2B 336b061630c512e338f92f29cd2cb83b8445436fcd31ae75008f38a989481725b589d185173ced2ba1e86d75017827a8d4619cd53ff59e45280cab67cb733d6d SHA512 544bf5ec686458b51a2e9dbc18ffb10e08d33c1626cee2698c395fa51b283a0e069fefb94dbb1f15a61406fd515a419024811a8f0de7adef4448281752cc09cc
EBUILD bcc-0.29.1-r2.ebuild 3214 BLAKE2B 2bd87d02bf6a10f467971dd38ce76d83705664026d8b716c36b3ad03f5fa9263aaeef5df0653a661420620b16831c12cc8fce62148469d666d938fa16ed3316b SHA512 a836d324e5a5da246facc5d35546c719e23b0ed0eb1588252e49a146a4b62e83925ef18d7c6a6ceba2327c58fda471f02a615c560978a43c20816b1f3cfcb8a5
EBUILD bcc-0.30.0-r1.ebuild 3099 BLAKE2B 81fe5952644ea5393523b9652e4e68af72ce496d4ccd6b9c3fdef15a5125dae89619c7c90469b0b5118d5f581b26ebc4fcc64470309495effbeb6bf144ac093e SHA512 98eeb13444dbbe044915fc61d1c3c955f338499e8bdb8ad1ec9229213c14a6783b856b49f7a36c6db30667d882fca07a9221ed25df82eb27e5773102da054724
+EBUILD bcc-0.31.0.ebuild 4056 BLAKE2B 3b3b4bf9b7dbda9576774404297e1a6385a71ac6f55a502946e231ad951d86cd621a2753911244ad8f62f870626e36261a3fa092db5bc3a709799939c71f93d5 SHA512 058c4d1eb7a982b5d41a3f1ba140243a4cf0941f2f1184a2fde205b024fd1195607efddd875c8168788027bc09e6ddfaf524976b2cfe3adf069a5e022f0ec12e
MISC metadata.xml 419 BLAKE2B 8b46153f6ab2d6959a767f105a9e33109f705bf879bd4d6708eb4a85e310140d8f810569bf3e37f89bd5a07758de7653697214643b606dc314009e8b8db709ac SHA512 3036d51a8ff5c5adc507387aad252ab7a90c341c5f04c626158353d938992e78c6b5e344354220141979f91522e0204e388d47fd0ccf91415634f6cde646a0c3
diff --git a/dev-util/bcc/bcc-0.28.0-r1.ebuild b/dev-util/bcc/bcc-0.31.0.ebuild
index 003d3e90c761..274d6f9b7d3a 100644
--- a/dev-util/bcc/bcc-0.28.0-r1.ebuild
+++ b/dev-util/bcc/bcc-0.31.0.ebuild
@@ -1,13 +1,15 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
LUA_COMPAT=( luajit )
-PYTHON_COMPAT=( python3_{9..12} )
-LLVM_MAX_SLOT=17
+DISTUTILS_OPTIONAL=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..13} )
+LLVM_COMPAT=( {15..18} )
-inherit cmake linux-info llvm lua-single python-r1 toolchain-funcs
+inherit cmake linux-info llvm-r1 lua-single distutils-r1 toolchain-funcs
DESCRIPTION="Tools for BPF-based Linux IO analysis, networking, monitoring, and more"
HOMEPAGE="https://iovisor.github.io/bcc/"
@@ -16,11 +18,11 @@ SRC_URI="https://github.com/iovisor/bcc/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
-IUSE="+lua test"
+IUSE="+lua +python static-libs test"
REQUIRED_USE="
${PYTHON_REQUIRED_USE}
- lua? ( ${LUA_REQUIRED_USE} )
+ lua? ( python ${LUA_REQUIRED_USE} )
"
# tests need root access
@@ -28,11 +30,13 @@ RESTRICT="test"
RDEPEND="
>=dev-libs/elfutils-0.166:=
- >=dev-libs/libbpf-1.2.0:=[static-libs(-)]
+ >=dev-libs/libbpf-1.2.0:=
sys-kernel/linux-headers
- <sys-devel/clang-$((${LLVM_MAX_SLOT} + 1)):=
- <sys-devel/llvm-$((${LLVM_MAX_SLOT} + 1)):=[llvm_targets_BPF(+)]
- ${PYTHON_DEPS}
+ $(llvm_gen_dep '
+ sys-devel/clang:${LLVM_SLOT}=
+ sys-devel/llvm:${LLVM_SLOT}=
+ ')
+ python? ( ${PYTHON_DEPS} )
lua? ( ${LUA_DEPS} )
"
DEPEND="
@@ -49,6 +53,7 @@ DEPEND="
BDEPEND="
app-arch/zip
virtual/pkgconfig
+ python? ( ${DISTUTILS_DEPS} )
"
PATCHES=(
@@ -66,8 +71,22 @@ pkg_pretend() {
}
pkg_setup() {
- llvm_pkg_setup
- python_setup
+ llvm-r1_pkg_setup
+ use python && python_setup
+}
+
+bcc_distutils_phase() {
+ if use python; then
+ local python_phase_func="distutils-r1_${EBUILD_PHASE_FUNC}"
+
+ if declare -f "${python_phase_func}" > /dev/null; then
+ pushd "${S}/src/python" > /dev/null || die
+ MY_S="${S}" S="${S}/src/python" "${python_phase_func}"
+ popd > /dev/null || die
+ else
+ die "Called ${FUNCNAME[0]} called in ${EBUILD_PHASE_FUNC}, but ${python_phase_func} doesn't exist"
+ fi
+ fi
}
src_prepare() {
@@ -80,28 +99,32 @@ src_prepare() {
# bug 811288
local script scriptname
for script in $(find tools/old -type f -name "*.py" || die); do
- scriptname=$(basename ${script} || die)
- mv ${script} tools/old/old-${scriptname} || die
+ mv "${script}" "tools/old/old-${script##*/}" || die
done
- cmake_src_prepare
-}
+ use static-libs || PATCHES+=( "${FILESDIR}/bcc-0.31.0-dont-install-static-libs.patch" )
-python_add_impl() {
- bcc_python_impls+="${EPYTHON};"
+ # use distutils-r1 eclass funcs rather than letting upstream handle python
+ printf '\n' > src/python/CMakeLists.txt || die
+
+ if use python; then
+ for python_file in $(find "${S}/src/python" -name '*.py.in' || die); do
+ sed "s:@REVISION@:${PV%%_*}:" "${python_file}" > "${python_file%.in}" || die
+ done
+ fi
+
+ cmake_src_prepare
+ bcc_distutils_phase
}
src_configure() {
- local bcc_python_impls
- python_foreach_impl python_add_impl
-
local mycmakeargs=(
-DREVISION=${PV%%_*}
-DENABLE_LLVM_SHARED=ON
+ -DENABLE_NO_PIE=OFF
-DCMAKE_USE_LIBBPF_PACKAGE=ON
-DLIBBPF_INCLUDE_DIRS="$($(tc-getPKG_CONFIG) --cflags-only-I libbpf | sed 's:-I::g')"
-DKERNEL_INCLUDE_DIRS="${KERNEL_DIR}"
- -DPYTHON_CMD="${bcc_python_impls%;}"
-Wno-dev
)
if use lua && use lua_single_target_luajit; then
@@ -109,13 +132,27 @@ src_configure() {
fi
cmake_src_configure
+ bcc_distutils_phase
+}
+
+src_compile() {
+ cmake_src_compile
+ bcc_distutils_phase
+}
+
+python_install() {
+ distutils-r1_python_install
+
+ local tool
+ for tool in $(grep -Elr '#!/usr/bin/(env |)python' "${MY_S}/tools"); do
+ local tool_name="${tool##*/}"
+ python_newscript "${tool}" "${tool_name%.py}"
+ done
}
src_install() {
cmake_src_install
-
- python_replicate_script $(grep -Flr '#!/usr/bin/python' "${ED}/usr/share/bcc/tools")
- python_foreach_impl python_optimize
+ bcc_distutils_phase
newenvd "${FILESDIR}"/60bcc.env 60bcc.env
local -A rename_tools=(
diff --git a/dev-util/bcc/files/bcc-0.31.0-dont-install-static-libs.patch b/dev-util/bcc/files/bcc-0.31.0-dont-install-static-libs.patch
new file mode 100644
index 000000000000..b600f128ebb0
--- /dev/null
+++ b/dev-util/bcc/files/bcc-0.31.0-dont-install-static-libs.patch
@@ -0,0 +1,13 @@
+diff --git a/src/cc/CMakeLists.txt b/src/cc/CMakeLists.txt
+index 104eff0e..e34b911a 100644
+--- a/src/cc/CMakeLists.txt
++++ b/src/cc/CMakeLists.txt
+@@ -179,7 +179,7 @@ target_link_libraries(bcc-shared ${bcc_common_libs_for_s})
+ target_link_libraries(bcc-static ${bcc_common_libs_for_a} bcc-loader-static)
+ set(bcc-lua-static ${bcc-lua-static} ${bcc_common_libs_for_lua})
+
+-install(TARGETS bcc-shared bcc-static bcc-loader-static bpf-static LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
++install(TARGETS bcc-shared LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
+ install(FILES ${bcc_table_headers} DESTINATION include/bcc)
+ install(FILES ${bcc_api_headers} DESTINATION include/bcc)
+ install(DIRECTORY ${libbpf_uapi} DESTINATION include/bcc/compat/linux FILES_MATCHING PATTERN "*.h")
diff --git a/dev-util/directx-headers/Manifest b/dev-util/directx-headers/Manifest
index 895ac20709c1..9a514abd53ee 100644
--- a/dev-util/directx-headers/Manifest
+++ b/dev-util/directx-headers/Manifest
@@ -1,6 +1,8 @@
DIST directx-headers-1.613.1.tar.gz 449088 BLAKE2B 64e19960029842bd9c3b03b00718b12ab44b2f2b04678e4190b2f03fb57c559b2ce54692dd04278c10aeb5b3c9078a31793ff530c4011691f859ed444c9a9ac5 SHA512 a450b989f1a066f81ef24d269b0415e2f0256bcecb14a4efa75416acb97c56e036faa0db3a0d2dac7fb87d47193adc1a4a34b22c6c0019dfbf89e015d727e374
DIST directx-headers-1.614.0.tar.gz 458121 BLAKE2B b81c9f904c50178dc794dd57cc5d406340cdbd3f53a9f5f542bd396080adc6cf83d5ed175ba8f2ce70cce9e995e7daa84bed2bfa35181098718808b9d476b605 SHA512 5f78c8d47d02c1620b4ef4b379f0598e000c7aef367d694d37f796978019383911d0778434bff5a635f8d1c688595896337dbd31dacdca3e37af91b51be98b08
+DIST directx-headers-1.614.1.tar.gz 458944 BLAKE2B 7c23727450d98e2dc4dcdc04119c380683c6789bb969bf3a4e29dc1b44479f3cb063238f18805332171227e41f8a8539d6f87ec26ba7a6c8cb3a394f0f818cc2 SHA512 934108052b9aa54b888c301f358a9d5b8f9ce1a5902e33b80c3273c963d10984faa7da167f1fed203462fe016e30443cb5e0d014de63fc9c0a81a674f757a7a9
EBUILD directx-headers-1.613.1.ebuild 655 BLAKE2B aea1ff3d2cb405e6e27566b3f9dd24c5bef4c524dfb232fe94e88c6674f81016cb04804b7fe310d0d1f45078d7c071aee8587db03dd9cd3a9b9034fea66f628a SHA512 df95cd0ef13eaad6c0e283ebcd229d9435e7e95abd7c5d4966dce23400f8ba9232381287bd350a3d56459a463f7e9274b499e0b8983f1bf3b98c6d4f59b5d870
EBUILD directx-headers-1.614.0.ebuild 657 BLAKE2B 7146585f52b997625fb842749f40e8e7eb5b411f0f2d1b1d7d2bc8f5fd2e21cbf87b80d2e9f54ea7ef3dcf634bf93a17877e187f88e16b85dfedf93f257e3a37 SHA512 f4c1a140570dc5de3ce1a880c6eea8765a75ee9bd7a45fe87858f35a3a100c32258a23fbb94e2b3b4945eb1f32f55c4c10687e8ee2cd70f71db5d872f9040325
+EBUILD directx-headers-1.614.1.ebuild 657 BLAKE2B 7146585f52b997625fb842749f40e8e7eb5b411f0f2d1b1d7d2bc8f5fd2e21cbf87b80d2e9f54ea7ef3dcf634bf93a17877e187f88e16b85dfedf93f257e3a37 SHA512 f4c1a140570dc5de3ce1a880c6eea8765a75ee9bd7a45fe87858f35a3a100c32258a23fbb94e2b3b4945eb1f32f55c4c10687e8ee2cd70f71db5d872f9040325
EBUILD directx-headers-9999.ebuild 650 BLAKE2B 97645e8e18a5ebd940cebd17208d12efc7320051da601e63dece56befc0a1a488ce5a7ee9740d7d66980073d0ed049a705004d98248a1ace5680ca5f5a003634 SHA512 0c76415738ba6b1fd268376f4d9946701b663da829ca00596d7d7e2a74c1cf05f9c89894c1f83bec4e291c52a20d3e1643f55169e151de9ebe2cf0be8b168e76
MISC metadata.xml 325 BLAKE2B 5f99ebc7e34bc34ed7ce7de68b4856195b45a4b482fa198972f3f054a4b945bb548a046b71e07ed2e89d3486b7259291bc1b5d09cfae739d0daa091d366a82e7 SHA512 f8ff1d6fafe3c2ed1837ab3db04a52351ccf851098046e0240c5619745682c2669aaa0791a792647d0af533cfc4f83b68171cc2afd05a30c532b918d42111216
diff --git a/dev-util/directx-headers/directx-headers-1.614.1.ebuild b/dev-util/directx-headers/directx-headers-1.614.1.ebuild
new file mode 100644
index 000000000000..a206503ba728
--- /dev/null
+++ b/dev-util/directx-headers/directx-headers-1.614.1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+MY_PN=DirectX-Headers
+inherit meson-multilib
+
+if [[ ${PV} == *9999* ]]; then
+ EGIT_REPO_URI="https://github.com/microsoft/${MY_PN}.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/microsoft/${MY_PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm64 ~x86"
+ S="${WORKDIR}"/${MY_PN}-${PV}
+fi
+
+DESCRIPTION="DirectX header files and WSL stubs"
+HOMEPAGE="https://github.com/microsoft/DirectX-Headers"
+
+LICENSE="MIT"
+SLOT="0"
+
+multilib_src_configure() {
+ local emesonargs=(
+ -Dbuild-test=false
+ )
+
+ meson_src_configure
+}
diff --git a/dev-util/egypt/Manifest b/dev-util/egypt/Manifest
index a330ba9e4e31..edb2cff0700f 100644
--- a/dev-util/egypt/Manifest
+++ b/dev-util/egypt/Manifest
@@ -1,5 +1,3 @@
-DIST egypt-1.10.tar.gz 4670 BLAKE2B 66ec84fec092cc8e0e29a866cca4d574ce069af395a9bdfb05e0124390e0a01907a3fc6a0dc94a1bdc652166c4deafd7b8ef03d9808133c584df3827c1803371 SHA512 81e98b3d379301f1c0919aeb46d45264772b7d9d77277cb842c8ed7b944d61918e530f4e9e2c56451445dc2c6a312fd76086a81e193540baa3d56f3bb56b438d
DIST egypt-1.11.tar.gz 8808 BLAKE2B 11ce73c0e087c90c8f5fbc0a990c8e33033da2d469de4688a6f5f4eb62ed1e85140d75d0f02774f6b89da0137723a767dc712124bb54b50b526319beba37e698 SHA512 6817ba991c3908f601977499481a1b28a6ab8ce9961749b7c6ef516cc2cd7daf355fc0fd5a4a4577c5d2201fe8e74cda498a6e2083f21f0113f7e7ce69b834e6
-EBUILD egypt-1.10.ebuild 373 BLAKE2B 760f6891ca59ced0ae94dbaf05da07098f424716e0c3482acf9f0886f9a0fc7274982f1290a840b1eaf827e24a98aef5a7b2989d282e36fae0b6ad2c2a822d16 SHA512 e009401c13a95098f93038af7fd9044d623f54c76539b35ebf90a0641357ecb5dcf5fa952cb4ade08f2e8f1c97170e8579bebe8762c8ea5cfacaa422f3c97db0
EBUILD egypt-1.11.ebuild 373 BLAKE2B 5dcb8e3e64e9eaed84be2558915b06e24580500ac7bbdef3aafce3e2a18c5ac14f4631a641cbb567e0e34589eb617e5f9dfd86319269f4dafa45f49855138c1c SHA512 0c8013ab6782a48681f08d7693e3057447494be54c205ff96a5ff26cc13908290e8a5ed43effc47a1c84798387a0748816aa05efedc2bef2f00c024a44799971
MISC metadata.xml 167 BLAKE2B 868e3b584722eaacf68273db062bb773d8c7e5d7ab2b81ca7e8397643bf7cc106c3a1033594401c99c54f667bb45d6b73f9048fc335580bbd44b4589ad26a832 SHA512 30caadd1496c3b9969136038239a1d8e01f236726b4022c2d7e19ca7575f25f735e556835e581afbf44fbd3e4104c40f2b5ef5fa70118d75c881fdf871962d0a
diff --git a/dev-util/egypt/egypt-1.10.ebuild b/dev-util/egypt/egypt-1.10.ebuild
deleted file mode 100644
index bbe52b762db3..000000000000
--- a/dev-util/egypt/egypt-1.10.ebuild
+++ /dev/null
@@ -1,14 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit perl-module
-
-DESCRIPTION="Devilishly simple tool for creating call graphs of C programs"
-HOMEPAGE="https://www.gson.org/egypt/"
-SRC_URI="https://www.gson.org/egypt/download/${P}.tar.gz"
-
-LICENSE="|| ( Artistic GPL-1+ )"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
diff --git a/dev-util/gengetopt/Manifest b/dev-util/gengetopt/Manifest
index e84bf7e191ae..b2e6b2742cb4 100644
--- a/dev-util/gengetopt/Manifest
+++ b/dev-util/gengetopt/Manifest
@@ -1,5 +1,4 @@
AUX gengetopt-2.22.6-docdirs.patch 364 BLAKE2B 06919d379a6f0e13271d89dda845dcc920a7581ff380d52318ec11f658327c73c1102326108080b9129610fe89b80aec39c01e0923c1449ae2d00123f4e8609d SHA512 f2bb3ba6e63c32deeda6d0408621a480b0902d2e93a3ceecbe3e79f72c79f3269bbd2e2fd3cd6bcb248bd81d0105dcd8520d44d523c53ce58843bc38a9cb21f6
DIST gengetopt-2.23.tar.xz 584860 BLAKE2B efd94e28d35319f3a04af4f97b87fd8a07bef93856da0dcfad54ab4800d43510f7948bbb7440f39abfe242aede5657abd874bf4ab4dd311336e10f37e7960cb5 SHA512 3749191d35acbeff6680f2a4d0516706a0491053f632aaa44ead7c3a42e56f9870bd7c4a85a1886f2052e17d86a2853e2f65d445e0c9920e41f1dc354f003712
EBUILD gengetopt-2.23-r1.ebuild 707 BLAKE2B 4ce302b050bf81a5af7d706b474e3b8ea6f1c32c08a4cf74926e9c218fae43b462df74915f3f78b301fb5246212dab3cfb6660683c023fcc0f599d3542e2870d SHA512 1613d7c9d79f42918962034bb7a13a13ab9ee0305419cdf1b333b03cc5b784e649d17dff5ac9b19e61fb80ea35443df6d1d4fb1ad48e8abba7804ec20dd00b29
-EBUILD gengetopt-2.23.ebuild 668 BLAKE2B dfd6a5b5331ba36d73441e18b378e420290837e1af150c6e9c5dc30ead3f8fca67580287720f3f10f16ebb62ad3a44003388f4acf93d53a8c3c1ff7679ac3a28 SHA512 2f47daffe259c88a12ac8355bfa734961bdfc57eae0e40b189deb31bcee3ea8766414230286af2767fa003cde5c78f13655cf6b7ca9bcb99d0a2dc03f842c8b4
MISC metadata.xml 249 BLAKE2B 0d3d228dea2987e4570c226d0884d525dabf87d6e6ccd0fc77f80bf15167cc549b1370525b66f16424725e3e28b000bbee903a91ab6924169fce6187414c759a SHA512 607b41efa842d0b95452f5e549c3a651f301bd5e8e61445f144e948f6c74626759df6f45dc8065bf86d8adaa71dfb79b1c61e84a92532633a2a4eeaeac234f3b
diff --git a/dev-util/gengetopt/gengetopt-2.23.ebuild b/dev-util/gengetopt/gengetopt-2.23.ebuild
deleted file mode 100644
index 846a58aa41a3..000000000000
--- a/dev-util/gengetopt/gengetopt-2.23.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools
-
-DESCRIPTION="A tool to write command line option parsing code for C programs"
-HOMEPAGE="https://www.gnu.org/software/gengetopt/"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux"
-
-BDEPEND="sys-apps/texinfo"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-2.22.6-docdirs.patch
-)
-
-src_prepare() {
- default
-
- sed -e 's:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:' -i configure.ac || die
- sed -e '/gengetoptdoc_DATA/d' -i Makefile.am || die
-
- eautoreconf
-}
diff --git a/dev-util/indent/Manifest b/dev-util/indent/Manifest
index 5d8fc85f99f9..a1ca3760adee 100644
--- a/dev-util/indent/Manifest
+++ b/dev-util/indent/Manifest
@@ -1,5 +1,3 @@
-DIST indent-2.2.12.tar.xz 620280 BLAKE2B c3414ebe58d75b74356b5c37234639dc34998b73e45a4c28ee20ab2932c523b528d577c45c32db88f2ee4aed58d1dceeda2fe68b8975d211dc0dad4a3a20f7c7 SHA512 dbe73bd3729074825f9f5b4241a4c539ad32069df56511963417caf0351ff9ec5edd77e9580338301c8abf89ab9c0592bc7e82c14eec7450c496259d7e9045dd
DIST indent-2.2.13.tar.xz 475360 BLAKE2B 6aad65e966f91c9776d0b3d32f185a6c7b45eabca847c806c1fff935562f6c4512f472ec814dc54d3fc40498f513baee99b5bcfc2ea25fd67fd24b0cd0f9fe1a SHA512 a92028f99cc64b451aac99802de564f2e915e7f0e258df761141f77595c07cc95c3f2c35917618dbc2cfa3aa5b163544e07aa6641c32298aca3a1c5331bb8c69
-EBUILD indent-2.2.12.ebuild 1105 BLAKE2B f10b56d19b8cecd6c6f8edd32f19e20fa2657291d99b72df1c1ea55b6fb1ccb4a25f797e08ca22a3e3d8883a0915c58b4ca726ab5e84cb0cf330897259ae0ece SHA512 8bdd4b10ffe49cf3134b220c24f352409770c716fc1eb29c1c57ebb35a56885b5edf867ce7ceb54754bb089d732b17617508e2a944b3957cd8f8db9aead5d8a5
EBUILD indent-2.2.13.ebuild 829 BLAKE2B 8c91d14f20a070cd33529973198b9bde7c68283883dbf501f6fd524107ac69db197c540d8c00a4b7019a648eeffdd86cdb1c3a71520a60f67604932350e4bd4d SHA512 e9e909ef7b6088a70d45e8f026d4dfcdada712532c1467b0c1acf9131fc4a4d4b784f6cdf2f76ace124a8222ed122081e47347c92ccac2f20d5c46ca40c5752b
MISC metadata.xml 246 BLAKE2B ac877f4d9efd245589942e444e49aa217b48ba48af50fdc8d5893ca70fd04fc840c96eeb8e61d93bef5322fea198269813f0d674d481552ec3ec08a042016fc5 SHA512 2a28c9351bdec8b63ad5df5151c2afc18fc5c4afa9f41525a49bd20cd477974f15796b01f7727d2a2723907b8af233c351a5fbaacc2f9e9a89c71119cf34f287
diff --git a/dev-util/indent/indent-2.2.12.ebuild b/dev-util/indent/indent-2.2.12.ebuild
deleted file mode 100644
index 11b20f5a8555..000000000000
--- a/dev-util/indent/indent-2.2.12.ebuild
+++ /dev/null
@@ -1,50 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit autotools strip-linguas
-
-DESCRIPTION="Indent program source files"
-HOMEPAGE="https://www.gnu.org/software/indent/"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
-
-LICENSE="GPL-3"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~mips ppc ppc64 ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
-IUSE="nls"
-
-BDEPEND="app-text/texi2html
- nls? ( sys-devel/gettext )"
-DEPEND="nls? ( virtual/libintl )"
-RDEPEND="${DEPEND}"
-
-src_prepare() {
- default
-
- sed -i -e '/AM_CFLAGS/s:-Werror::g' src/Makefile.{am,in} || die
- eautoreconf
-}
-
-src_configure() {
- strip-linguas -i po/
-
- if use nls; then
- gl_cv_cc_vis_werror=no \
- econf $(use_enable nls)
- else
- ac_cv_func_setlocale=no \
- gl_cv_cc_vis_werror=no \
- econf $(use_enable nls)
- fi
-}
-
-src_test() {
- emake -C regression/
-}
-
-src_install() {
- # htmldir as set in configure is ignored in doc/Makefile*
- emake DESTDIR="${D}" htmldir="${EPREFIX}/usr/share/doc/${PF}/html" install
- dodoc AUTHORS NEWS README.md ChangeLog{,-1990,-1998,-2001}
-}
diff --git a/dev-util/kdevelop-pg-qt/Manifest b/dev-util/kdevelop-pg-qt/Manifest
index c1b329b5471f..9bf9fd86b473 100644
--- a/dev-util/kdevelop-pg-qt/Manifest
+++ b/dev-util/kdevelop-pg-qt/Manifest
@@ -1,5 +1,3 @@
-DIST kdevelop-pg-qt-2.2.2.tar.xz 660708 BLAKE2B 822753315969cf4176ed1a25bb27516661af865a4c337f069a892b008802359f4a933ebc9e9e1ac0c91d2314a6ec5cdcf91db4641e624e07373dfec47a71dcf1 SHA512 e82f2fa2aafa2c9f949e298989de70a0455c30f6bef4a40e38977c23ad645ee49a0a8c57b5c45d0ddfef13ee7b7e4efd2dc2ed3003a456f24108161415700369
DIST kdevelop-pg-qt-2.3.0.tar.xz 660164 BLAKE2B 4167068e8f8348c428e4260061abbd24a4c490588414a8a566d84b61913bfc6cb06292900cb881327b5ecdd3c0cf92aa02f6361cd870f9d8bc79f8ff295aa89a SHA512 27bd102cf64f9cd7b27940be02cb81b620732a11e2416327104a18edc6990e43b2a57281bec91697466c3ab3ac8d322412dd06673329e04583e3bc90862b43b9
-EBUILD kdevelop-pg-qt-2.2.2.ebuild 453 BLAKE2B 82a7082e942b85745690a862fb4bdfe90be8634f188915fa1e613461655772672aeae9f2eb005277486738108f8a9983bb527f21af9a041eed60bf951145fc59 SHA512 e9c49b5f62d2e9fa4713531df6292a82c06e71995e9da72a9358e19059b59e98cdf49f6b2bcb576f8952f2cbbac2a7a6b0babcd04ca735f67aa2c07c936b8e39
EBUILD kdevelop-pg-qt-2.3.0.ebuild 572 BLAKE2B 41c5d27e04478c981a3a55577d5cf57fd02687a57b6037500efbb7edfaa5957a4ba51e4ede5d2bd113998a4cf081a78bc414fd4066d3adb825a554eb53b5427f SHA512 0d84c7b41fa7ca4d1a792442514eee03939b457b63adb5f8ad7171285c6a650c102b38b0361624763f58108efb7d17fcaf549d6a8c560d62d628ff16dc868988
MISC metadata.xml 318 BLAKE2B 922a5e32e706b2976c5f359a14194d268d3f499398576c80ce5fad8c0fcea0fbf048de4480a80a6a1889c88b8b6c14147654a3ab4d5ffbcc258c2290da63f6d1 SHA512 614cb8dda7ad2088e5d6ef39b449bb4be0ac72cd0231c320188d76d1816dce6490c5114bb4798112c4b11d99d30a9e82ff8fcf08ffa8c049589682a5e38208f6
diff --git a/dev-util/kdevelop-pg-qt/kdevelop-pg-qt-2.2.2.ebuild b/dev-util/kdevelop-pg-qt/kdevelop-pg-qt-2.2.2.ebuild
deleted file mode 100644
index cba62e3eea64..000000000000
--- a/dev-util/kdevelop-pg-qt/kdevelop-pg-qt-2.2.2.ebuild
+++ /dev/null
@@ -1,20 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-ECM_TEST="true"
-inherit ecm kde.org
-
-DESCRIPTION="LL(1) parser generator used mainly by KDevelop language plugins"
-HOMEPAGE="https://www.kdevelop.org/"
-SRC_URI="mirror://kde/stable/${PN}/${PV}/src/${P}.tar.xz"
-
-LICENSE="LGPL-2+ LGPL-2.1+"
-SLOT="0"
-KEYWORDS="amd64 arm64 ~ppc64 x86"
-
-BDEPEND="
- app-alternatives/yacc
- app-alternatives/lex
-"
diff --git a/dev-util/nvidia-cuda-toolkit/Manifest b/dev-util/nvidia-cuda-toolkit/Manifest
index f47beed97c75..4d7b3cc0ea96 100644
--- a/dev-util/nvidia-cuda-toolkit/Manifest
+++ b/dev-util/nvidia-cuda-toolkit/Manifest
@@ -6,6 +6,7 @@ DIST cuda_12.4.1_550.54.15_linux.run 4454730420 BLAKE2B 643513a673e72aeab2e0268c
DIST cuda_12.5.0_555.42.02_linux.run 4294677299 BLAKE2B ffefb576feb9f8e6ea8975bf74fe7277902364035e5dcb27f7b4bdc1d73ea44ce8e057087d670ec18eb49727a9343484bf3aa234c045b91684c70141cf8162e7 SHA512 84fa3ad278217a0fbea97d2d880f625e7e7074a12e98d50d664daaf8298d7d8dd7b222c6f5815636e484df8f1e75c062c70c09f744d139652d960ca8c064114e
DIST cuda_12.5.1_555.42.06_linux.run 4311634770 BLAKE2B 3546faeb24687dd11ad0a61a4f02cfbd97119d9e3cd3e24ea294b81ed488de7dfef03607c69d7b5a8087db10cf794205936add7cfa8ccda207e3aca315be48df SHA512 604843e09717c2af0873b2d5a2e242ff1b99122d515b6a7a29e70c55ab605524744359781f5b642059550b4def57877597111914965efe7d3a1a1387c9dbb1a0
DIST cuda_12.6.0_560.28.03_linux.run 4333105923 BLAKE2B 533e9080dbf087a661ab6e59548e48ca0d2b514f47c3e97ac89b628f79197875a7425ad69c4d271b5fa8243561c1ccba698e3bf322b194b29a5f7fa031ea8f06 SHA512 fe5710c168298d2283a3f636ad5e1e212970fe8d9554ab450aa61d786536f50efb9d9e9396b6ac59638bd4204faadb5a99ec8a8c02e2c57a18f479123aaff3c9
+DIST cuda_12.6.1_560.35.03_linux.run 4345714567 BLAKE2B 147c7f03e0d9ade4c603d93920d0cd6bb1706efc268797ae870b5244feaa8159393015f96e920c6255e93d8040dd5b046075804cfa7c5da18a645800d65b8c3d SHA512 514ec89f847457c3ba78cd0dc22c25aebf2a19a6bbd5a8d071f31519d1007889cde6ba888a01596434216a8a88bfba21059cdc8e3fa9397133c93d2a9f0c015e
EBUILD nvidia-cuda-toolkit-11.8.0-r4.ebuild 8044 BLAKE2B 54995f4f2a8a1998539a6798ff2a68bbfed1943c3e6da27eff58458853db006e105bb39e5bb1935b11971539dcc63fb552ce0b280860ba46ce04f04e98890568 SHA512 df7eb92e74e80302e0fd966ba1c2a97a38f97e3e6bba4bb0a1a389e1336c13d3c9a3603f7079a597d2ae723f7088e83ff708e8ef5d2ba503de0469bf25e1c1c8
EBUILD nvidia-cuda-toolkit-12.3.2.ebuild 9504 BLAKE2B 6abf260006cfd3471665526df049d3f80d956f6a849e8e73c0914aa32faf86ff68d659aa8fcc5a4e95eb6890bf271a2d40edec67aeadd5154444d66e8d337c5e SHA512 3660334d48205d952fd73e688742d700db4b9594920d42d289c581d10af34af516fd8920993650dafacb983492ae72d6b4f3b0ce51d3301d66d6450b34c0c7a9
EBUILD nvidia-cuda-toolkit-12.4.0.ebuild 9515 BLAKE2B 270c9952890a529d17355d5456d6d2422740f69eb9af1b88121e0c8b7a0a9632a39647fc69da4e3653cba4e4cd60f3afc20fce2095743ba128aae8a15f0676ab SHA512 949e4ad4b2d1758279bb620c5a2ba0ea90c93e852f862c448490c689d8d4f522891cb6a772a65894a4f9867be1c8dea1facf87616370bdd0f45987f9d437a3ab
@@ -13,4 +14,5 @@ EBUILD nvidia-cuda-toolkit-12.4.1.ebuild 9515 BLAKE2B 2fdc866adfe7f552349bcce9b6
EBUILD nvidia-cuda-toolkit-12.5.0-r1.ebuild 9535 BLAKE2B b8b50bede8a66a8bce76f6677991b0cf433c3338e89dc82597473dc63874810b9b7461de97d9abc55a471b38618445b7c6dc8e37c18caa8c7d0e3fb9cbdf835e SHA512 8f983c2dc5797fa82f144008ddce2b7eb4b2aaa66b1cf439be25a67fba4a0b4ff5af3480451d53bf0375917e1219facf48e69e7d213aca1e3acbb984595a4d41
EBUILD nvidia-cuda-toolkit-12.5.1.ebuild 9535 BLAKE2B ea6b46070159a18d8f541af47d648a79b75f7f964d689418220e4eaf87c56fc000eb39fed84637c161aa5f18e5f7e03f0615cbec6670517fd2efefd83139a0a4 SHA512 47bca7b76aad3842f37d8da4fbbdf646a1ca2cc93bc7ae870d8e164a05f735974ca28d69a99a6d0ffcd331e5134025b3819360f27c65dc6c27338756bfc74ba8
EBUILD nvidia-cuda-toolkit-12.6.0.ebuild 9535 BLAKE2B 984ec77cc39675ba22703339ecbd5596452a5631c7303e4db492bad0b80496ea13151cb25f87a7c0e39d9d2a173be7ad9469a91acfd785abb83632caae230297 SHA512 efbf2fcc39f60ca1f35f15202e924146618b4441c090d26e07048e10dee6ddd79f10640b1c6d8d2e84a218edb6a1382f2398eaf182a503d5dd6dbce250844af3
+EBUILD nvidia-cuda-toolkit-12.6.1.ebuild 9535 BLAKE2B f78cfef4c17ae924032894ff649a5f2911b6fd28727b2ca1f7176b4c009e0841a4936a49998e9029c3c415730f012ab24452f3f0ddf047a48f26811b7c2835eb SHA512 1395bb046c7443c69dfc4f589f9ba88956205faf7779704ecfc0928664d2cbfff07f8db378c20371f84d1971f01aa781bfde95a9a15d16053ddb5aa485467ee3
MISC metadata.xml 761 BLAKE2B a6ae653c6206cbc05349297499b6dde91bce6d543e10bd5ea915cfe9729dfa6f1eb954ae09c2e4d3997f51315ae090b38606c21b5099e750596ea66fdd93e817 SHA512 9133517d805201d25b651e48abed90394c88ef33a2571ab20b3b19d365f85a90478486c7c087c9150d7d9f6e4026873c5236c64ed649fd3bfc8f9b81479dcc59
diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.1.ebuild b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.1.ebuild
new file mode 100644
index 000000000000..32ef330046ed
--- /dev/null
+++ b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-12.6.1.ebuild
@@ -0,0 +1,328 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit check-reqs toolchain-funcs unpacker
+
+DRIVER_PV="560.35.03"
+
+DESCRIPTION="NVIDIA CUDA Toolkit (compiler and friends)"
+HOMEPAGE="https://developer.nvidia.com/cuda-zone"
+SRC_URI="https://developer.download.nvidia.com/compute/cuda/${PV}/local_installers/cuda_${PV}_${DRIVER_PV}_linux.run"
+S="${WORKDIR}"
+
+LICENSE="NVIDIA-CUDA"
+SLOT="0/${PV}"
+KEYWORDS="-* ~amd64 ~amd64-linux"
+IUSE="debugger examples nsight profiler rdma vis-profiler sanitizer"
+RESTRICT="bindist mirror"
+
+# since CUDA 11, the bundled toolkit driver (== ${DRIVER_PV}) and the
+# actual required minimum driver version are different.
+RDEPEND="
+ <sys-devel/gcc-14_pre[cxx]
+ virtual/libcrypt
+ examples? (
+ media-libs/freeglut
+ media-libs/glu
+ )
+ nsight? (
+ app-crypt/mit-krb5
+ dev-libs/libpfm
+ dev-libs/wayland
+ dev-qt/qtwayland:6
+ >=dev-libs/openssl-3
+ media-libs/tiff-compat:4
+ sys-libs/zlib
+ )
+ rdma? ( sys-cluster/rdma-core )
+ vis-profiler? (
+ >=virtual/jre-1.8:*
+ )"
+BDEPEND="nsight? ( dev-util/patchelf )"
+
+QA_PREBUILT="opt/cuda/*"
+CHECKREQS_DISK_BUILD="15000M"
+
+pkg_setup() {
+ check-reqs_pkg_setup
+}
+
+src_prepare() {
+ # 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"
+
+ sed \
+ -e "s:CUDA_SUPPORTED_GCC:${cuda_supported_gcc}:g" \
+ "${FILESDIR}"/cuda-config.in > "${T}"/cuda-config || die
+
+ default
+}
+
+src_install() {
+ local cudadir=/opt/cuda
+ local ecudadir="${EPREFIX}${cudadir}"
+ local pathextradirs ldpathextradirs
+ dodir ${cudadir}
+ into ${cudadir}
+
+ # Install standard sub packages
+ local builddirs=(
+ builds/cuda_{cccl,cudart,cuobjdump,cuxxfilt,demo_suite,nvcc,nvdisasm,nvml_dev,nvprune,nvrtc,nvtx,opencl}
+ builds/lib{cublas,cufft,cufile,curand,cusolver,cusparse,npp,nvjitlink,nvjpeg}
+ builds/nvidia_fs
+ $(usex profiler "builds/cuda_nvprof builds/cuda_cupti builds/cuda_profiler_api" "")
+ $(usex vis-profiler "builds/cuda_nvvp" "")
+ $(usex debugger "builds/cuda_gdb" "")
+ )
+
+ local d f
+ for d in "${builddirs[@]}"; do
+ ebegin "Installing ${d}"
+ [[ -d ${d} ]] || die "Directory does not exist: ${d}"
+
+ if [[ -d ${d}/bin ]]; then
+ for f in ${d}/bin/*; do
+ if [[ -f ${f} ]]; then
+ dobin "${f}"
+ else
+ insinto ${cudadir}/bin
+ doins -r "${f}"
+ fi
+ done
+ fi
+
+ insinto ${cudadir}
+ if [[ -d ${d}/targets ]]; then
+ doins -r "${d}"/targets
+ fi
+ if [[ -d ${d}/share ]]; then
+ doins -r "${d}"/share
+ fi
+ if [[ -d ${d}/extras ]]; then
+ doins -r "${d}"/extras
+ fi
+ eend $?
+ done
+ dobin "${T}"/cuda-config
+
+ doins builds/EULA.txt
+ # nvml and nvvm need special handling
+ ebegin "Installing nvvm"
+ doins -r builds/cuda_nvcc/nvvm
+ fperms +x ${cudadir}/nvvm/bin/cicc
+ eend $?
+
+ ebegin "Installing nvml"
+ doins -r builds/cuda_nvml_dev/nvml
+ eend $?
+
+ if use sanitizer; then
+ ebegin "Installing sanitizer"
+ dobin builds/integration/Sanitizer/compute-sanitizer
+ doins -r builds/cuda_sanitizer_api/compute-sanitizer
+ # special handling for the executable
+ fperms +x ${cudadir}/compute-sanitizer/compute-sanitizer
+ eend $?
+ fi
+
+ use debugger && ldpathextradirs+=":${ecudadir}/extras/Debugger/lib64"
+ use profiler && ldpathextradirs+=":${ecudadir}/extras/CUPTI/lib64"
+
+ if use vis-profiler; then
+ ebegin "Installing libnvvp"
+ doins -r builds/cuda_nvvp/libnvvp
+ # special handling for the executable
+ fperms +x ${cudadir}/libnvvp/nvvp
+ eend $?
+ pathextradirs+=":${ecudadir}/libnvvp"
+ fi
+
+ if use nsight; then
+ local ncu_dir=$(grep -o 'nsight-compute-[0-9][0-9\.]*' -m1 manifests/cuda_x86_64.xml)
+ ebegin "Installing ${ncu_dir}"
+ mv builds/nsight_compute builds/${ncu_dir} || die
+ doins -r builds/${ncu_dir}
+
+ # check this list on every bump
+ local exes=(
+ ${ncu_dir}/ncu
+ ${ncu_dir}/ncu-ui
+ ${ncu_dir}/host/linux-desktop-glibc_2_11_3-x64/libexec/QtWebEngineProcess
+ ${ncu_dir}/host/linux-desktop-glibc_2_11_3-x64/CrashReporter
+ ${ncu_dir}/host/linux-desktop-glibc_2_11_3-x64/OpenGLVersionChecker
+ ${ncu_dir}/host/linux-desktop-glibc_2_11_3-x64/QdstrmImporter
+ ${ncu_dir}/host/linux-desktop-glibc_2_11_3-x64/ncu-ui
+ ${ncu_dir}/host/linux-desktop-glibc_2_11_3-x64/ncu-ui.bin
+ ${ncu_dir}/target/linux-desktop-glibc_2_11_3-x64/TreeLauncherSubreaper
+ ${ncu_dir}/target/linux-desktop-glibc_2_11_3-x64/TreeLauncherTargetLdPreloadHelper
+ ${ncu_dir}/target/linux-desktop-glibc_2_11_3-x64/ncu
+ )
+
+ dobin builds/integration/nsight-compute/{ncu,ncu-ui}
+ eend $?
+
+ # remove rdma libs (unless USE=rdma)
+ if ! use rdma; then
+ rm -r "${ED}"/${cudadir}/${ncu_dir}/host/target-linux-x64/CollectX || die
+ fi
+
+ local nsys_dir=$(grep -o 'nsight-systems-[0-9][0-9\.]*' -m1 manifests/cuda_x86_64.xml)
+ ebegin "Installing ${nsys_dir}"
+ mv builds/nsight_systems builds/${nsys_dir} || die
+ doins -r builds/${nsys_dir}
+
+ # check this list on every bump
+ exes+=(
+ ${nsys_dir}/host-linux-x64/nsys-ui
+ ${nsys_dir}/host-linux-x64/nsys-ui.bin
+ ${nsys_dir}/host-linux-x64/ResolveSymbols
+ ${nsys_dir}/host-linux-x64/ImportNvtxt
+ ${nsys_dir}/host-linux-x64/CrashReporter
+ ${nsys_dir}/host-linux-x64/QdstrmImporter
+ ${nsys_dir}/host-linux-x64/libexec/QtWebEngineProcess
+ ${nsys_dir}/target-linux-x64/nsys
+ ${nsys_dir}/target-linux-x64/launcher
+ ${nsys_dir}/target-linux-x64/nvgpucs
+ ${nsys_dir}/target-linux-x64/nsys-launcher
+ ${nsys_dir}/target-linux-x64/sqlite3
+ ${nsys_dir}/target-linux-x64/python/bin/python
+ ${nsys_dir}/target-linux-x64/CudaGpuInfoDumper
+ )
+
+ # remove rdma libs (unless USE=rdma)
+ if ! use rdma; then
+ rm -r "${ED}"/${cudadir}/${nsys_dir}/target-linux-x64/CollectX || die
+ fi
+
+ dobin builds/integration/nsight-systems/{nsight-sys,nsys,nsys-ui}
+ eend $?
+
+ # nsight scripts and binaries need to have their executable bit set, #691284
+ for f in "${exes[@]}"; do
+ fperms +x ${cudadir}/${f}
+ done
+
+ # fix broken RPATHs
+ patchelf --set-rpath '$ORIGIN' \
+ "${ED}"/${cudadir}/${ncu_dir}/host/{linux-desktop-glibc_2_11_3-x64,target-linux-x64}/{libarrow.so,libparquet.so.500.0.0} || die
+ patchelf --set-rpath '$ORIGIN' \
+ "${ED}"/${cudadir}/${nsys_dir}/{host-linux-x64,target-linux-x64}/{libarrow.so,libparquet.so.500.0.0} || die
+
+ # remove foreign archs (triggers SONAME warning, #749903)
+ rm -r "${ED}"/${cudadir}/${ncu_dir}/target/linux-desktop-t210-a64 || die
+
+ # unbundle libstdc++
+ rm "${ED}"/${cudadir}/${nsys_dir}/host-linux-x64/libstdc++.so.6 || die
+
+ # unbundle openssl
+ rm "${ED}"/${cudadir}/${ncu_dir}/host/linux-desktop-glibc_2_11_3-x64/lib{crypto,ssl}.so* || die
+ rm "${ED}"/${cudadir}/${nsys_dir}/host-linux-x64/lib{crypto,ssl}.so* || die
+
+ # unbundle libpfm
+ rm "${ED}"/${cudadir}/${nsys_dir}/host-linux-x64/libpfm.so* || die
+
+ # TODO: unbundle qt5
+ # TODO: unbundle boost
+ # TODO: unbundle icu
+ # TODO: unbundle mesa
+ # TODO: unbundle libSshClient
+ # TODO: unbundle sqlite
+ fi
+
+ if use examples; then
+ local exes=(
+ extras/demo_suite/bandwidthTest
+ extras/demo_suite/busGrind
+ extras/demo_suite/deviceQuery
+ extras/demo_suite/nbody
+ extras/demo_suite/oceanFFT
+ extras/demo_suite/randomFog
+ extras/demo_suite/vectorAdd
+ )
+
+ # set executable bit on demo_suite binaries
+ for f in "${exes[@]}"; do
+ fperms +x ${cudadir}/${f}
+ done
+ else
+ rm -r "${ED}"/${cudadir}/extras/demo_suite || die
+ fi
+
+ # remove rdma libs (unless USE=rdma)
+ if ! use rdma; then
+ rm "${ED}"/${cudadir}/targets/x86_64-linux/lib/libcufile_rdma* || die
+ fi
+
+ # Add include and lib symlinks
+ dosym targets/x86_64-linux/include ${cudadir}/include
+ dosym targets/x86_64-linux/lib ${cudadir}/lib64
+
+ # Remove bad symlinks
+ rm "${ED}"/${cudadir}/targets/x86_64-linux/include/include || die
+ rm "${ED}"/${cudadir}/targets/x86_64-linux/lib/lib64 || die
+
+ # Remove dead gdb plugins
+ if use debugger; then
+ rm "${ED}"/${cudadir}/bin/cuda-gdb-python3.{8,9}-tui || die
+ fi
+
+ newenvd - 99cuda <<-EOF
+ PATH=${ecudadir}/bin${pathextradirs}
+ ROOTPATH=${ecudadir}/bin
+ LDPATH=${ecudadir}/lib64:${ecudadir}/nvvm/lib64${ldpathextradirs}
+ EOF
+
+ # Cuda prepackages libraries, don't revdep-build on them
+ insinto /etc/revdep-rebuild
+ newins - 80${PN} <<-EOF
+ SEARCH_DIRS_MASK="${ecudadir}"
+ EOF
+
+ # https://bugs.gentoo.org/926116
+ insinto /etc/sandbox.d
+ newins - 80${PN} <<-EOF
+ SANDBOX_PREDICT="/proc/self/task"
+ EOF
+}
+
+pkg_postinst_check() {
+ local a="$("${EROOT}"/opt/cuda/bin/cuda-config -s)"
+ local b="0.0"
+ local v
+ for v in ${a}; do
+ ver_test "${v}" -gt "${b}" && b="${v}"
+ done
+
+ # if gcc and if not gcc-version is at least greatest supported
+ if tc-is-gcc && \
+ ver_test $(gcc-version) -gt "${b}"; then
+ ewarn
+ ewarn "gcc > ${b} will not work with CUDA"
+ ewarn "Make sure you set an earlier version of gcc with gcc-config"
+ ewarn "or append --compiler-bindir= pointing to a gcc bindir like"
+ ewarn "--compiler-bindir=${EPREFIX}/usr/*pc-linux-gnu/gcc-bin/gcc${b}"
+ ewarn "to the nvcc compiler flags"
+ ewarn
+ fi
+}
+
+pkg_postinst() {
+ if [[ ${MERGE_TYPE} != binary ]]; then
+ pkg_postinst_check
+ fi
+
+ if use profiler || use nsight; then
+ einfo
+ einfo "nvidia-drivers restrict access to performance counters."
+ einfo "You'll need to either run profiling tools (nvprof, nsight) "
+ 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
+}