commit:     68c9089b79a78e3352c7c92e229d141d1ccf60f3
Author:     Ionen Wolkens <sudinave <AT> gmail <DOT> com>
AuthorDate: Sun Apr 25 08:51:22 2021 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sun Apr 25 08:51:22 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=68c9089b

x11-drivers/nvidia-drivers: prevent 390.xx abi_x86_32 GLX segfault

Regression since 390.141-r1.

Alternate libnvidia-tls.so from the tls/ directory is necessary for
390.xx branch and legacy libglx.so but wasn't used with abi_x86_32.

-d 32 test is for x86 keyword without the directory (wasn't affected).

Closes: https://github.com/gentoo/gentoo/pull/20520
Closes: https://bugs.gentoo.org/785289
Signed-off-by: Ionen Wolkens <sudinave <AT> gmail.com>
Signed-off-by: David Seifert <soap <AT> gentoo.org>

 ...-drivers-390.141-r1.ebuild => nvidia-drivers-390.141-r2.ebuild} | 7 ++++++-
 ...dia-drivers-390.143.ebuild => nvidia-drivers-390.143-r1.ebuild} | 7 ++++++-
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-390.141-r1.ebuild 
b/x11-drivers/nvidia-drivers/nvidia-drivers-390.141-r2.ebuild
similarity index 98%
rename from x11-drivers/nvidia-drivers/nvidia-drivers-390.141-r1.ebuild
rename to x11-drivers/nvidia-drivers/nvidia-drivers-390.141-r2.ebuild
index 5c16a5b14be..50b08991c3f 100644
--- a/x11-drivers/nvidia-drivers/nvidia-drivers-390.141-r1.ebuild
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-390.141-r2.ebuild
@@ -138,6 +138,12 @@ src_prepare() {
 
        default
 
+       # alternate tls library needed for 390's libglx.so (bug #785289)
+       mv tls/libnvidia-tls.so.${PV} . || die
+       if [[ -d 32 ]]; then
+               mv 32/tls/libnvidia-tls.so.${PV} 32 || die
+       fi
+
        # prevent detection of incomplete kernel DRM support (bug #603818)
        sed 's/defined(CONFIG_DRM)/defined(CONFIG_DRM_KMS_HELPER)/' \
                -i kernel/conftest.sh || die
@@ -337,7 +343,6 @@ src_install() {
        doman nvidia-smi.1
 
        # install prebuilt-only libraries
-       mv tls/libnvidia-tls.so.${PV} . || die # alt tls lib needed by libglx.so
        multilib_foreach_abi nvidia-drivers_libs_install
 
        einstalldocs

diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-390.143.ebuild 
b/x11-drivers/nvidia-drivers/nvidia-drivers-390.143-r1.ebuild
similarity index 98%
rename from x11-drivers/nvidia-drivers/nvidia-drivers-390.143.ebuild
rename to x11-drivers/nvidia-drivers/nvidia-drivers-390.143-r1.ebuild
index 9475ceb6d03..3dcee051f4a 100644
--- a/x11-drivers/nvidia-drivers/nvidia-drivers-390.143.ebuild
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-390.143-r1.ebuild
@@ -138,6 +138,12 @@ src_prepare() {
 
        default
 
+       # alternate tls library needed for 390's libglx.so (bug #785289)
+       mv tls/libnvidia-tls.so.${PV} . || die
+       if [[ -d 32 ]]; then
+               mv 32/tls/libnvidia-tls.so.${PV} 32 || die
+       fi
+
        # prevent detection of incomplete kernel DRM support (bug #603818)
        sed 's/defined(CONFIG_DRM)/defined(CONFIG_DRM_KMS_HELPER)/' \
                -i kernel/conftest.sh || die
@@ -337,7 +343,6 @@ src_install() {
        doman nvidia-smi.1
 
        # install prebuilt-only libraries
-       mv tls/libnvidia-tls.so.${PV} . || die # alt tls lib needed by libglx.so
        multilib_foreach_abi nvidia-drivers_libs_install
 
        einstalldocs

Reply via email to