commit:     6f8cf8941216354dd5f962c9f56eaeb2a596cd40
Author:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Mon Jan 27 19:48:14 2020 +0000
Commit:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Mon Jan 27 19:55:43 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6f8cf894

x11-drivers/nvidia-drivers: Fix CFLAGS=-fno-common

Package-Manager: Portage-2.3.85, Repoman-2.3.20
Closes: https://bugs.gentoo.org/706742
Signed-off-by: Jeroen Roovers <jer <AT> gentoo.org>

 .../files/nvidia-settings-fno-common.patch         | 22 ++++++++++++++++++++++
 .../nvidia-drivers/nvidia-drivers-340.108.ebuild   |  9 +++++++++
 .../nvidia-drivers-390.132-r1.ebuild               |  8 ++++++--
 .../nvidia-drivers/nvidia-drivers-430.64-r1.ebuild |  8 ++++++--
 .../nvidia-drivers/nvidia-drivers-435.21-r1.ebuild |  8 ++++++--
 .../nvidia-drivers/nvidia-drivers-440.44-r1.ebuild |  8 ++++++--
 6 files changed, 55 insertions(+), 8 deletions(-)

diff --git a/x11-drivers/nvidia-drivers/files/nvidia-settings-fno-common.patch 
b/x11-drivers/nvidia-drivers/files/nvidia-settings-fno-common.patch
new file mode 100644
index 00000000000..06e046ff61d
--- /dev/null
+++ b/x11-drivers/nvidia-drivers/files/nvidia-settings-fno-common.patch
@@ -0,0 +1,22 @@
+--- a/nvidia-settings-@PV@/src/gtk+-2.x/ctkvdpau.c
++++ b/nvidia-settings-@PV@/src/gtk+-2.x/ctkvdpau.c
+@@ -103,6 +103,8 @@
+ const gchar* __video_mixer_attribute_help =
+ "This shows the video mixer attributes and any applicable ranges.";
+ 
++struct VDPAUDeviceImpl VDPAUDeviceFunctions;
++
+ static int queryOutputSurface(CtkVDPAU *ctk_vdpau, VdpDevice device,
+                               VdpGetProcAddress *getProcAddress);
+ 
+--- a/nvidia-settings-@PV@/src/gtk+-2.x/ctkvdpau.h
++++ b/nvidia-settings-@PV@/src/gtk+-2.x/ctkvdpau.h
+@@ -46,7 +46,7 @@
+     (G_TYPE_INSTANCE_GET_CLASS ((obj), CTK_TYPE_VDPAU, CtkVDPAUClass))
+ 
+ 
+-struct VDPAUDeviceImpl {
++extern struct VDPAUDeviceImpl {
+ 
+     VdpGetErrorString *GetErrorString;
+     VdpGetProcAddress *GetProcAddress;

diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-340.108.ebuild 
b/x11-drivers/nvidia-drivers/nvidia-drivers-340.108.ebuild
index eb2eff41ca7..103ebfe12f1 100644
--- a/x11-drivers/nvidia-drivers/nvidia-drivers-340.108.ebuild
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-340.108.ebuild
@@ -142,6 +142,15 @@ src_prepare() {
                gunzip $man_file || die
        done
 
+       if use tools; then
+               cp "${FILESDIR}"/nvidia-settings-fno-common.patch "${WORKDIR}" 
|| die
+               sed -i \
+                       -e "s:@PV@:${PV}:g" \
+                       "${WORKDIR}"/nvidia-settings-fno-common.patch \
+                       || die
+               eapply "${WORKDIR}"/nvidia-settings-fno-common.patch
+       fi
+
        # Allow user patches so they can support RC kernels and whatever else
        eapply_user
 }

diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-390.132-r1.ebuild 
b/x11-drivers/nvidia-drivers/nvidia-drivers-390.132-r1.ebuild
index b47a737853e..4105f905174 100644
--- a/x11-drivers/nvidia-drivers/nvidia-drivers-390.132-r1.ebuild
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-390.132-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
@@ -151,10 +151,14 @@ src_prepare() {
        done
 
        if use tools; then
+               cp "${FILESDIR}"/nvidia-settings-fno-common.patch "${WORKDIR}" 
|| die
                cp "${FILESDIR}"/nvidia-settings-linker.patch "${WORKDIR}" || 
die
                sed -i \
                        -e "s:@PV@:${PV}:g" \
-                       "${WORKDIR}"/nvidia-settings-linker.patch || die
+                       "${WORKDIR}"/nvidia-settings-fno-common.patch \
+                       "${WORKDIR}"/nvidia-settings-linker.patch \
+                       || die
+               eapply "${WORKDIR}"/nvidia-settings-fno-common.patch
                eapply "${WORKDIR}"/nvidia-settings-linker.patch
        fi
 

diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-430.64-r1.ebuild 
b/x11-drivers/nvidia-drivers/nvidia-drivers-430.64-r1.ebuild
index e6e492ff959..3703f7a20d3 100644
--- a/x11-drivers/nvidia-drivers/nvidia-drivers-430.64-r1.ebuild
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-430.64-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
@@ -149,10 +149,14 @@ src_prepare() {
        done
 
        if use tools; then
+               cp "${FILESDIR}"/nvidia-settings-fno-common.patch "${WORKDIR}" 
|| die
                cp "${FILESDIR}"/nvidia-settings-linker.patch "${WORKDIR}" || 
die
                sed -i \
                        -e "s:@PV@:${PV}:g" \
-                       "${WORKDIR}"/nvidia-settings-linker.patch || die
+                       "${WORKDIR}"/nvidia-settings-fno-common.patch \
+                       "${WORKDIR}"/nvidia-settings-linker.patch \
+                       || die
+               eapply "${WORKDIR}"/nvidia-settings-fno-common.patch
                eapply "${WORKDIR}"/nvidia-settings-linker.patch
        fi
 

diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-435.21-r1.ebuild 
b/x11-drivers/nvidia-drivers/nvidia-drivers-435.21-r1.ebuild
index e8abec24def..33342e4c716 100644
--- a/x11-drivers/nvidia-drivers/nvidia-drivers-435.21-r1.ebuild
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-435.21-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
@@ -153,10 +153,14 @@ src_prepare() {
        done
 
        if use tools; then
+               cp "${FILESDIR}"/nvidia-settings-fno-common.patch "${WORKDIR}" 
|| die
                cp "${FILESDIR}"/nvidia-settings-linker.patch "${WORKDIR}" || 
die
                sed -i \
                        -e "s:@PV@:${PV}:g" \
-                       "${WORKDIR}"/nvidia-settings-linker.patch || die
+                       "${WORKDIR}"/nvidia-settings-fno-common.patch \
+                       "${WORKDIR}"/nvidia-settings-linker.patch \
+                       || die
+               eapply "${WORKDIR}"/nvidia-settings-fno-common.patch
                eapply "${WORKDIR}"/nvidia-settings-linker.patch
        fi
 

diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-440.44-r1.ebuild 
b/x11-drivers/nvidia-drivers/nvidia-drivers-440.44-r1.ebuild
index 6be7d51e602..2951a064fcd 100644
--- a/x11-drivers/nvidia-drivers/nvidia-drivers-440.44-r1.ebuild
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-440.44-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
@@ -156,10 +156,14 @@ src_prepare() {
        done
 
        if use tools; then
+               cp "${FILESDIR}"/nvidia-settings-fno-common.patch "${WORKDIR}" 
|| die
                cp "${FILESDIR}"/nvidia-settings-linker.patch "${WORKDIR}" || 
die
                sed -i \
                        -e "s:@PV@:${PV}:g" \
-                       "${WORKDIR}"/nvidia-settings-linker.patch || die
+                       "${WORKDIR}"/nvidia-settings-fno-common.patch \
+                       "${WORKDIR}"/nvidia-settings-linker.patch \
+                       || die
+               eapply "${WORKDIR}"/nvidia-settings-fno-common.patch
                eapply "${WORKDIR}"/nvidia-settings-linker.patch
        fi
 

Reply via email to