summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlonso Rodriguez2020-07-07 00:58:46 +0200
committerAlonso Rodriguez2020-07-07 00:58:46 +0200
commit64b98b0794e55f3d39fb92757c7eae07e2a959eb (patch)
tree276d08709cacd34b4b52d97e86009046b569f43b
parent16091be4c0b33a5210217f17f2717935b6e3abf9 (diff)
downloadaur-64b98b0794e55f3d39fb92757c7eae07e2a959eb.tar.gz
Update to 390.138-1
-rw-r--r--.SRCINFO10
-rw-r--r--0001-nvidia-settings-Make-VDPAUDeviceFunctions-static-to-.patch111
-rw-r--r--PKGBUILD13
3 files changed, 125 insertions, 9 deletions
diff --git a/.SRCINFO b/.SRCINFO
index d2bb1acb907..3fca7012e53 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,7 +1,7 @@
pkgbase = nvidia-390xx-settings
pkgdesc = Tool for configuring the NVIDIA graphics driver, 390xx legacy branch
- pkgver = 390.132
- pkgrel = 2
+ pkgver = 390.138
+ pkgrel = 1
url = https://github.com/NVIDIA/nvidia-settings
arch = x86_64
license = GPL2
@@ -15,10 +15,12 @@ pkgbase = nvidia-390xx-settings
makedepends = nvidia-390xx-utils
makedepends = libxext
options = staticlibs
- source = nvidia-settings-390.132.tar.gz::https://github.com/NVIDIA/nvidia-settings/archive/390.132.tar.gz
+ source = nvidia-settings-390.138.tar.gz::https://github.com/NVIDIA/nvidia-settings/archive/390.138.tar.gz
source = libxnvctrl_so.patch
- sha512sums = ad6836c8b002478fe7b76fb7df6b685686e73ba0849533f5d2c6cc0ca489f212556f309bc67870b2844921bfdb2c3c49300f35ee4d32e3d4c7f29c1ac9b0dd9a
+ source = 0001-nvidia-settings-Make-VDPAUDeviceFunctions-static-to-.patch
+ sha512sums = c27c8dbb858f06982e251bd3bf49650d05ca8811d61eb342b43bf00bc595b8d789b38b7ebd76b9ab5786ec5bee84b1cb44ee3f3fb24c40dee1b1b9d535993eb6
sha512sums = f69f5dc84fe624579a3c9ce877f4ae4e34c2184877576afbea07b8abdd7ff01e470517f2b77cd11a904518cbcb83fb388ca1d08888006f0ef2854723920c9cf8
+ sha512sums = 0fd6355a10dfecb3636764f40eb0d4a4625f69e48fb653060f40e2bde8bf51eb04ae08be8751163d94e022c6f595a9756cde9d8404a556a4a83e3b5b74052c53
pkgname = nvidia-390xx-settings
depends = jansson
diff --git a/0001-nvidia-settings-Make-VDPAUDeviceFunctions-static-to-.patch b/0001-nvidia-settings-Make-VDPAUDeviceFunctions-static-to-.patch
new file mode 100644
index 00000000000..7c1301fbf22
--- /dev/null
+++ b/0001-nvidia-settings-Make-VDPAUDeviceFunctions-static-to-.patch
@@ -0,0 +1,111 @@
+From a7c1f5fce6303a643fadff7d85d59934bd0cf6b6 Mon Sep 17 00:00:00 2001
+From: Aaron Plattner <aplattner@nvidia.com>
+Date: Mon, 18 May 2020 15:27:01 -0700
+Subject: [PATCH] nvidia-settings: Make VDPAUDeviceFunctions static to
+ ctkvdpau.c
+
+GCC 10 defaults to building with -fno-common, which exposes a bug in
+nvidia-settings: The VDPAUDeviceFunctions structure is defined as global in
+ctkvdpau.h, so both ctkvdpau.o and ctkwindow.o have it as a global, non-static
+"tentative definition" symbol. The GCC 10 man page describes it like this:
+
+ -fcommon
+ In C code, this option controls the placement of global variables
+ defined without an initializer, known as tentative definitions in
+ the C standard. Tentative definitions are distinct from
+ declarations of a variable with the "extern" keyword, which do not
+ allocate storage.
+
+ The default is -fno-common, which specifies that the compiler
+ places uninitialized global variables in the BSS section of the
+ object file. This inhibits the merging of tentative definitions by
+ the linker so you get a multiple-definition error if the same
+ variable is accidentally defined in more than one compilation unit.
+
+ The -fcommon places uninitialized global variables in a common
+ block. This allows the linker to resolve all tentative definitions
+ of the same variable in different compilation units to the same
+ object, or to a non-tentative definition. This behavior is
+ inconsistent with C++, and on many targets implies a speed and code
+ size penalty on global variable references. It is mainly useful to
+ enable legacy code to link without errors.
+
+Since the copy of VDPAUDeviceFunctions in ctkwindow.o is not used, just remove
+it by moving the definition of this structure into ctkvdpau.c.
+---
+ src/gtk+-2.x/ctkvdpau.c | 23 +++++++++++++++++++++++
+ src/gtk+-2.x/ctkvdpau.h | 24 ------------------------
+ 2 files changed, 23 insertions(+), 24 deletions(-)
+
+diff --git a/src/gtk+-2.x/ctkvdpau.c b/src/gtk+-2.x/ctkvdpau.c
+index 2f120f0..6149c28 100644
+--- a/src/gtk+-2.x/ctkvdpau.c
++++ b/src/gtk+-2.x/ctkvdpau.c
+@@ -103,6 +103,29 @@ const gchar* __video_mixer_parameter_help =
+ const gchar* __video_mixer_attribute_help =
+ "This shows the video mixer attributes and any applicable ranges.";
+
++static struct VDPAUDeviceImpl {
++
++ VdpGetErrorString *GetErrorString;
++ VdpGetProcAddress *GetProcAddress;
++ VdpGetApiVersion *GetApiVersion;
++ VdpGetInformationString *GetInformationString;
++ VdpVideoSurfaceQueryCapabilities *VideoSurfaceQueryCapabilities;
++ VdpVideoSurfaceQueryGetPutBitsYCbCrCapabilities
++ *VideoSurfaceQueryGetPutBitsYCbCrCapabilities;
++ VdpOutputSurfaceQueryCapabilities *OutputSurfaceQueryCapabilities;
++ VdpOutputSurfaceQueryGetPutBitsNativeCapabilities
++ *OutputSurfaceQueryGetPutBitsNativeCapabilities;
++ VdpOutputSurfaceQueryPutBitsYCbCrCapabilities
++ *OutputSurfaceQueryPutBitsYCbCrCapabilities;
++ VdpBitmapSurfaceQueryCapabilities *BitmapSurfaceQueryCapabilities;
++ VdpDecoderQueryCapabilities *DecoderQueryCapabilities;
++ VdpVideoMixerQueryFeatureSupport *VideoMixerQueryFeatureSupport;
++ VdpVideoMixerQueryParameterSupport *VideoMixerQueryParameterSupport;
++ VdpVideoMixerQueryAttributeSupport *VideoMixerQueryAttributeSupport;
++ VdpVideoMixerQueryParameterValueRange *VideoMixerQueryParameterValueRange;
++ VdpVideoMixerQueryAttributeValueRange *VideoMixerQueryAttributeValueRange;
++} VDPAUDeviceFunctions;
++
+ static int queryOutputSurface(CtkVDPAU *ctk_vdpau, VdpDevice device,
+ VdpGetProcAddress *getProcAddress);
+
+diff --git a/src/gtk+-2.x/ctkvdpau.h b/src/gtk+-2.x/ctkvdpau.h
+index ec58d36..2652f6f 100644
+--- a/src/gtk+-2.x/ctkvdpau.h
++++ b/src/gtk+-2.x/ctkvdpau.h
+@@ -45,30 +45,6 @@ G_BEGIN_DECLS
+ #define CTK_VDPAU_GET_CLASS(obj) \
+ (G_TYPE_INSTANCE_GET_CLASS ((obj), CTK_TYPE_VDPAU, CtkVDPAUClass))
+
+-
+-struct VDPAUDeviceImpl {
+-
+- VdpGetErrorString *GetErrorString;
+- VdpGetProcAddress *GetProcAddress;
+- VdpGetApiVersion *GetApiVersion;
+- VdpGetInformationString *GetInformationString;
+- VdpVideoSurfaceQueryCapabilities *VideoSurfaceQueryCapabilities;
+- VdpVideoSurfaceQueryGetPutBitsYCbCrCapabilities
+- *VideoSurfaceQueryGetPutBitsYCbCrCapabilities;
+- VdpOutputSurfaceQueryCapabilities *OutputSurfaceQueryCapabilities;
+- VdpOutputSurfaceQueryGetPutBitsNativeCapabilities
+- *OutputSurfaceQueryGetPutBitsNativeCapabilities;
+- VdpOutputSurfaceQueryPutBitsYCbCrCapabilities
+- *OutputSurfaceQueryPutBitsYCbCrCapabilities;
+- VdpBitmapSurfaceQueryCapabilities *BitmapSurfaceQueryCapabilities;
+- VdpDecoderQueryCapabilities *DecoderQueryCapabilities;
+- VdpVideoMixerQueryFeatureSupport *VideoMixerQueryFeatureSupport;
+- VdpVideoMixerQueryParameterSupport *VideoMixerQueryParameterSupport;
+- VdpVideoMixerQueryAttributeSupport *VideoMixerQueryAttributeSupport;
+- VdpVideoMixerQueryParameterValueRange *VideoMixerQueryParameterValueRange;
+- VdpVideoMixerQueryAttributeValueRange *VideoMixerQueryAttributeValueRange;
+-} VDPAUDeviceFunctions;
+-
+ /* Generic description structure */
+ typedef struct
+ {
+--
+2.27.0
+
diff --git a/PKGBUILD b/PKGBUILD
index 247060cf41e..cd0f96ccb62 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -3,8 +3,8 @@
pkgbase=nvidia-390xx-settings
pkgname=('nvidia-390xx-settings' 'libxnvctrl-390xx')
-pkgver=390.132
-pkgrel=2
+pkgver=390.138
+pkgrel=1
pkgdesc='Tool for configuring the NVIDIA graphics driver, 390xx legacy branch'
url='https://github.com/NVIDIA/nvidia-settings'
arch=('x86_64')
@@ -12,13 +12,16 @@ license=('GPL2')
makedepends=('git' 'inetutils' 'gtk2' 'jansson' 'gtk3' 'libxv' 'libvdpau' 'nvidia-390xx-utils' 'libxext')
options=('staticlibs')
source=(nvidia-settings-${pkgver}.tar.gz::https://github.com/NVIDIA/nvidia-settings/archive/${pkgver}.tar.gz
- libxnvctrl_so.patch)
-sha512sums=('ad6836c8b002478fe7b76fb7df6b685686e73ba0849533f5d2c6cc0ca489f212556f309bc67870b2844921bfdb2c3c49300f35ee4d32e3d4c7f29c1ac9b0dd9a'
- 'f69f5dc84fe624579a3c9ce877f4ae4e34c2184877576afbea07b8abdd7ff01e470517f2b77cd11a904518cbcb83fb388ca1d08888006f0ef2854723920c9cf8')
+ libxnvctrl_so.patch
+ 0001-nvidia-settings-Make-VDPAUDeviceFunctions-static-to-.patch)
+sha512sums=('c27c8dbb858f06982e251bd3bf49650d05ca8811d61eb342b43bf00bc595b8d789b38b7ebd76b9ab5786ec5bee84b1cb44ee3f3fb24c40dee1b1b9d535993eb6'
+ 'f69f5dc84fe624579a3c9ce877f4ae4e34c2184877576afbea07b8abdd7ff01e470517f2b77cd11a904518cbcb83fb388ca1d08888006f0ef2854723920c9cf8'
+ '0fd6355a10dfecb3636764f40eb0d4a4625f69e48fb653060f40e2bde8bf51eb04ae08be8751163d94e022c6f595a9756cde9d8404a556a4a83e3b5b74052c53')
prepare() {
cd nvidia-settings-${pkgver}
patch -p1 < "${srcdir}/libxnvctrl_so.patch"
+ patch -p1 < "${srcdir}/0001-nvidia-settings-Make-VDPAUDeviceFunctions-static-to-.patch"
}
build() {