Debian Patches

Status for nvidia-settings-legacy-340xx/340.108-7

Patch Description Author Forwarded Bugs Origin Last update
0001-nvidia-settings-Remove-STAMP_C.patch [PATCH 1/2] nvidia-settings: Remove $(STAMP_C)
This file is generated at build time and includes the version, builder, and date
of the build. For example,

$ strings /usr/bin/nvidia-settings | grep 'nvidia id'
nvidia id: nvidia-settings: version 396.14 (buildmeister@swio-display-x86-rhel47-09) Mon Mar 19 20:18:47 PDT 2018

This information isn't hugely useful, and makes it difficult for some
distributions to achieve their goal of reproducible builds. Rather than adding a
build-time flag to hard-code this information, just remove it.

See https://github.com/NVIDIA/nvidia-settings/pull/12
Aaron Plattner <aplattner@nvidia.com> no 2018-03-23
0002-nvidia-settings-Remove-__DATE__-from-the-man-page.patch [PATCH 2/2] nvidia-settings: Remove __DATE__ from the man page
The man page is supposed to have a date in it that describes when it was
updated. It's hard to remember to change it so we have the makefile insert the
build date instead. However, doing that makes it difficult for distributions to
achieve reproducible builds since it changes the resulting package when builds
happen on different days.

The date in this file doesn't really matter, so just hard-code today's date and
remove the code to generate it.

Closes https://github.com/NVIDIA/nvidia-settings/pull/12
Aaron Plattner <aplattner@nvidia.com> no 2018-03-23
0003-nvidia-settings-Make-VDPAUDeviceFunctions-static-to-.patch [PATCH] nvidia-settings: Make VDPAUDeviceFunctions static to ctkvdpau.c

GCC 10 defaults to building with -fno-common, which exposes a bug 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.
Aaron Plattner <aplattner@nvidia.com> no 2020-05-18
12_nvidia-settings.desktop.diff substitute placeholders in desktop file Andreas Beckmann <debian@abeckmann.de> not-needed
16_gzip-n.diff use gzip -n to avoid package-contains-timestamped-gzip Andreas Beckmann <anbe@debian.org> no
typos.diff fix some typos found by lintian Andreas Beckmann <anbe@debian.org> no
xorg.patch resolve xorg libdir at build time Andreas Beckmann <anbe@debian.org> not-needed

All known versions for source package 'nvidia-settings-legacy-340xx'

Links