From 750c970f8e3441f1379b862479c55636d731f3ec Mon Sep 17 00:00:00 2001 From: Robert Underwood Date: Sat, 14 Dec 2019 16:20:13 -0600 Subject: [PATCH] dev-util/nvidia-cuda-toolkit: nvprof/nsight fix Previously, there were bugs in the ebuilds that prevented nsight and nvprof from being installed correctly. For nvprof, a no longer needed wrapper was begin installed on top of it. In the case of nsight, it was not setting the executable to a+x. Additionally, cuda-config was being installed in a way would cause ebuild to complain about permissions. These were resolved with better use of doexe. Additionally, fixed revdep-rebuild warnings with cuda profiling libraries. Closes: https://github.com/gentoo/gentoo/pull/13986 Closes: https://bugs.gentoo.org/686738 Package-Manager: Portage-2.3.79, Repoman-2.3.16 Signed-off-by: Robert Underwood Signed-off-by: Jason Zaman --- ...uild => nvidia-cuda-toolkit-10.1.105-r2.ebuild} | 12 +++++++----- ...uild => nvidia-cuda-toolkit-10.1.168-r1.ebuild} | 12 +++++++----- ...uild => nvidia-cuda-toolkit-10.1.243-r2.ebuild} | 14 ++++++++------ ...build => nvidia-cuda-toolkit-10.2.89-r1.ebuild} | 14 ++++++++------ 4 files changed, 30 insertions(+), 22 deletions(-) rename dev-util/nvidia-cuda-toolkit/{nvidia-cuda-toolkit-10.1.105-r1.ebuild => nvidia-cuda-toolkit-10.1.105-r2.ebuild} (92%) rename dev-util/nvidia-cuda-toolkit/{nvidia-cuda-toolkit-10.1.168.ebuild => nvidia-cuda-toolkit-10.1.168-r1.ebuild} (92%) rename dev-util/nvidia-cuda-toolkit/{nvidia-cuda-toolkit-10.1.243-r1.ebuild => nvidia-cuda-toolkit-10.1.243-r2.ebuild} (91%) rename dev-util/nvidia-cuda-toolkit/{nvidia-cuda-toolkit-10.2.89.ebuild => nvidia-cuda-toolkit-10.2.89-r1.ebuild} (91%) diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.105-r1.ebuild b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.105-r2.ebuild similarity index 92% rename from dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.105-r1.ebuild rename to dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.105-r2.ebuild index 8d87753545e2..044d47d5908e 100644 --- a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.105-r1.ebuild +++ b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.105-r2.ebuild @@ -94,12 +94,14 @@ src_install() { into ${cudadir} # Install binaries separately to make sure the X permission is set - local bindirs=( bin nvvm/bin extras/demo_suite ) + local bindirs=( bin nvvm/bin extras/demo_suite $(usex profiler "libnsight/nsight") ) for i in $(find "${bindirs[@]}" -maxdepth 1 -type f); do exeinto ${cudadir}/${i%/*} doexe ${i} rm ${i} || die done + exeinto ${cudadir}/bin + doexe "${T}"/cuda-config # Install the rest insinto ${cudadir} @@ -112,10 +114,10 @@ src_install() { EOF doenvd "${T}"/99cuda - use profiler && \ - make_wrapper nvprof "${ecudadir}/bin/nvprof" "." "${ecudadir}/lib64:${ecudadir}/lib" - - dobin "${T}"/cuda-config + #Cuda prepackages libraries, don't revdep-build on them + echo "SEARCH_DIRS_MASK=\"${ecudadir}\"" > "${T}/80${PN}" || die + insinto "/etc/revdep-rebuild" + doins "${T}/80${PN}" } pkg_postinst_check() { diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.168.ebuild b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.168-r1.ebuild similarity index 92% rename from dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.168.ebuild rename to dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.168-r1.ebuild index 752313594b10..005fa2bc1931 100644 --- a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.168.ebuild +++ b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.168-r1.ebuild @@ -94,12 +94,14 @@ src_install() { into ${cudadir} # Install binaries separately to make sure the X permission is set - local bindirs=( bin nvvm/bin extras/demo_suite ) + local bindirs=( bin nvvm/bin extras/demo_suite $(usex profiler "libnsight/nsight") ) for i in $(find "${bindirs[@]}" -maxdepth 1 -type f); do exeinto ${cudadir}/${i%/*} doexe ${i} rm ${i} || die done + exeinto ${cudadir}/bin + doexe "${T}"/cuda-config # Install the rest insinto ${cudadir} @@ -112,10 +114,10 @@ src_install() { EOF doenvd "${T}"/99cuda - use profiler && \ - make_wrapper nvprof "${ecudadir}/bin/nvprof" "." "${ecudadir}/lib64:${ecudadir}/lib" - - dobin "${T}"/cuda-config + #Cuda prepackages libraries, don't revdep-build on them + echo "SEARCH_DIRS_MASK=\"${ecudadir}\"" > "${T}/80${PN}" || die + insinto "/etc/revdep-rebuild" + doins "${T}/80${PN}" } pkg_postinst_check() { diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.243-r1.ebuild b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.243-r2.ebuild similarity index 91% rename from dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.243-r1.ebuild rename to dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.243-r2.ebuild index 375c8aa7bc1a..be194aa5a032 100644 --- a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.243-r1.ebuild +++ b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.1.243-r2.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -102,12 +102,14 @@ src_install() { into ${cudadir} # Install binaries separately to make sure the X permission is set - local bindirs=( bin nvvm/bin extras/demo_suite ) + local bindirs=( bin nvvm/bin extras/demo_suite $(usex profiler "libnsight/nsight") ) for i in $(find "${bindirs[@]}" -maxdepth 1 -type f); do exeinto ${cudadir}/${i%/*} doexe ${i} rm ${i} || die done + exeinto ${cudadir}/bin + doexe "${T}"/cuda-config # Install the rest insinto ${cudadir} @@ -120,10 +122,10 @@ src_install() { EOF doenvd "${T}"/99cuda - use profiler && \ - make_wrapper nvprof "${ecudadir}/bin/nvprof" "." "${ecudadir}/lib64:${ecudadir}/lib" - - dobin "${T}"/cuda-config + #Cuda prepackages libraries, don't revdep-build on them + echo "SEARCH_DIRS_MASK=\"${ecudadir}\"" > "${T}/80${PN}" || die + insinto "/etc/revdep-rebuild" + doins "${T}/80${PN}" } pkg_postinst_check() { diff --git a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.2.89.ebuild b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.2.89-r1.ebuild similarity index 91% rename from dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.2.89.ebuild rename to dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.2.89-r1.ebuild index ca7089f105fc..ddef237a69ed 100644 --- a/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.2.89.ebuild +++ b/dev-util/nvidia-cuda-toolkit/nvidia-cuda-toolkit-10.2.89-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2020 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -102,12 +102,14 @@ src_install() { into ${cudadir} # Install binaries separately to make sure the X permission is set - local bindirs=( bin nvvm/bin extras/demo_suite ) + local bindirs=( bin nvvm/bin extras/demo_suite $(usex profiler "libnsight/nsight") ) for i in $(find "${bindirs[@]}" -maxdepth 1 -type f); do exeinto ${cudadir}/${i%/*} doexe ${i} rm ${i} || die done + exeinto ${cudadir}/bin + doexe "${T}"/cuda-config # Install the rest insinto ${cudadir} @@ -120,10 +122,10 @@ src_install() { EOF doenvd "${T}"/99cuda - use profiler && \ - make_wrapper nvprof "${ecudadir}/bin/nvprof" "." "${ecudadir}/lib64:${ecudadir}/lib" - - dobin "${T}"/cuda-config + #Cuda prepackages libraries, don't revdep-build on them + echo "SEARCH_DIRS_MASK=\"${ecudadir}\"" > "${T}/80${PN}" || die + insinto "/etc/revdep-rebuild" + doins "${T}/80${PN}" } pkg_postinst_check() { -- 2.26.2