summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAaron Plattner <aplattner@nvidia.com>2021-10-14 11:30:15 -0700
committerAaron Plattner <aplattner@nvidia.com>2021-10-14 11:30:15 -0700
commitfa29084bed42d903c45c99cebe72f191dc474fe7 (patch)
treef6a11f5955e176e19c632d80ed52411e37088932
parent7e1a1f688f3b26c6463af3cbdc0138cc9abf0acb (diff)
495.29.05
-rw-r--r--Makefile4
-rw-r--r--conflicting-kernel-modules.c3
-rw-r--r--files.c38
-rw-r--r--files.h2
-rw-r--r--install-from-cwd.c2
-rw-r--r--kernel.c6
-rw-r--r--manifest.c5
-rw-r--r--ncurses-ui.c9
-rw-r--r--nvLegacy.h154
-rw-r--r--nvidia-installer.h8
-rw-r--r--option_table.h9
-rw-r--r--utils.mk4
-rw-r--r--version.mk2
13 files changed, 206 insertions, 40 deletions
diff --git a/Makefile b/Makefile
index 9ea42d8..d5e783e 100644
--- a/Makefile
+++ b/Makefile
@@ -101,6 +101,8 @@ else
COMPAT_32_SRC =
endif
+BULLSEYE_BUILD ?= 0
+
##############################################################################
# The common-utils directory may be in one of two places: either
# elsewhere in the driver source tree when building nvidia-installer
@@ -135,6 +137,8 @@ common_cflags += -imacros $(CONFIG_H)
common_cflags += -I $(OUTPUTDIR)
common_cflags += -I $(COMMON_UTILS_DIR)
+common_cflags += $(if $(BULLSEYE_BUILD),-DBULLSEYE_BUILD,)
+
CFLAGS += $(common_cflags)
HOST_CFLAGS += $(common_cflags)
diff --git a/conflicting-kernel-modules.c b/conflicting-kernel-modules.c
index d48bc33..6c7a1bd 100644
--- a/conflicting-kernel-modules.c
+++ b/conflicting-kernel-modules.c
@@ -38,6 +38,9 @@ const char * const conflicting_kernel_modules[] = {
"nvidia4", "nvidia5", "nvidia6", "nvidia7",
"nvidia-frontend",
"nvidia-kutils",
+#ifdef BULLSEYE_BUILD
+ "libcov-lkm",
+#endif
};
const int num_conflicting_kernel_modules = ARRAY_LEN(conflicting_kernel_modules);
diff --git a/files.c b/files.c
index 96eeccc..765cb17 100644
--- a/files.c
+++ b/files.c
@@ -638,6 +638,15 @@ int set_destinations(Options *op, Package *p)
path = "";
break;
+ case FILE_TYPE_GBM_BACKEND_LIB_SYMLINK:
+ p->entries[i].target = nvstrcat(op->utility_prefix, "/", op->utility_libdir, "/", p->entries[i].target, NULL);
+ /* fallthrough */
+ case FILE_TYPE_GBM_BACKEND_LIB:
+ prefix = op->opengl_prefix;
+ dir = op->gbm_backend_dir;
+ path = "";
+ break;
+
case FILE_TYPE_NVCUVID_LIB:
case FILE_TYPE_NVCUVID_LIB_SYMLINK:
if (p->entries[i].compat_arch == FILE_COMPAT_ARCH_COMPAT32) {
@@ -741,18 +750,6 @@ int set_destinations(Options *op, Package *p)
dir = path = "";
break;
- case FILE_TYPE_NVIFR_LIB:
- case FILE_TYPE_NVIFR_LIB_SYMLINK:
- if (p->entries[i].compat_arch == FILE_COMPAT_ARCH_COMPAT32) {
- prefix = op->compat32_prefix;
- dir = op->compat32_libdir;
- } else {
- prefix = op->opengl_prefix;
- dir = op->opengl_libdir;
- }
- path = "";
- break;
-
case FILE_TYPE_XORG_OUTPUTCLASS_CONFIG:
prefix = op->x_sysconfig_path;
dir = path = "";
@@ -780,14 +777,6 @@ int set_destinations(Options *op, Package *p)
dir = path = "";
break;
- case FILE_TYPE_ALLOCATOR_JSON:
- /*
- * Defined in the prototype allocator driver loader module code.
- */
- prefix = "/etc/allocator/";
- dir = path = "";
- break;
-
case FILE_TYPE_INTERNAL_UTILITY_BINARY:
case FILE_TYPE_INTERNAL_UTILITY_LIB:
case FILE_TYPE_INTERNAL_UTILITY_DATA:
@@ -1773,9 +1762,9 @@ int pack_precompiled_files(Options *op, Package *p, int num_files,
* 'replace'.
*/
-char *nv_strreplace(char *src, char *orig, char *replace)
+char *nv_strreplace(const char *src, const char *orig, const char *replace)
{
- char *prev_s, *end_s, *s;
+ const char *prev_s, *end_s, *s;
char *d, *dst;
int len, dst_len, orig_len, replace_len;
int done = 0;
@@ -1818,7 +1807,7 @@ char *nv_strreplace(char *src, char *orig, char *replace)
if (!done) {
dst = realloc(dst, dst_len + replace_len + 1);
d = dst + dst_len;
- strncpy(d, replace, replace_len);
+ memcpy(d, replace, replace_len);
d[replace_len] = '\0';
dst_len += replace_len;
}
@@ -2313,6 +2302,9 @@ void get_default_prefixes_and_paths(Options *op)
if (!op->opengl_libdir)
op->opengl_libdir = default_libdir;
+ if (!op->gbm_backend_dir)
+ op->gbm_backend_dir = nvstrcat(default_libdir, "/", "gbm", NULL);
+
if (!op->x_prefix) {
if (op->modular_xorg) {
op->x_prefix = XORG7_DEFAULT_X_PREFIX;
diff --git a/files.h b/files.h
index 7e66053..621445a 100644
--- a/files.h
+++ b/files.h
@@ -63,7 +63,7 @@ void process_dkms_conf(Options *op, Package *p);
int set_security_context(Options *op, const char *filename, const char *type);
void get_default_prefixes_and_paths(Options *op);
void get_compat32_path(Options *op);
-char *nv_strreplace(char *src, char *orig, char *replace);
+char *nv_strreplace(const char *src, const char *orig, const char *replace);
char *get_filename(Options *op, const char *def, const char *msg);
int secure_delete(Options *op, const char *file);
void invalidate_package_entry(PackageEntry *entry);
diff --git a/install-from-cwd.c b/install-from-cwd.c
index b14251a..da65841 100644
--- a/install-from-cwd.c
+++ b/install-from-cwd.c
@@ -1420,7 +1420,7 @@ generate_done:
} else {
/* Remove any ':' characters from fingerprint and truncate */
char *tmp = nv_strreplace(fingerprint, ":", "");
- strncpy(short_fingerprint, tmp, sizeof(short_fingerprint));
+ strncpy(short_fingerprint, tmp, sizeof(short_fingerprint) - 1);
nvfree(tmp);
}
short_fingerprint[sizeof(short_fingerprint) - 1] = '\0';
diff --git a/kernel.c b/kernel.c
index 1f6440f..c46d3be 100644
--- a/kernel.c
+++ b/kernel.c
@@ -1237,8 +1237,8 @@ static int ignore_load_error(Options *op, Package *p,
"from the one used to build the target kernel, or "
"if another driver, such as nouveau, is "
"present and prevents the NVIDIA kernel module from "
- "obtaining ownership of the NVIDIA GPU(s), "
- "or no NVIDIA GPU installed in this system is supported "
+ "obtaining ownership of the NVIDIA device(s), "
+ "or no NVIDIA device installed in this system is supported "
"by this NVIDIA Linux graphics driver release.\n\n"
"Please see the log entries 'Kernel module load "
"error' and 'Kernel messages' at the end of the file "
@@ -2230,7 +2230,7 @@ static char *convert_include_path_to_source_path(const char *inc)
* i386 for i586 and i686 or arm for arm7l.
*/
-static char __machine_arch[16];
+static char __machine_arch[65];
char *get_machine_arch(Options *op)
{
diff --git a/manifest.c b/manifest.c
index 428ccda..8b85df1 100644
--- a/manifest.c
+++ b/manifest.c
@@ -82,6 +82,7 @@ static const struct {
{ ENTRY(OPENCL_WRAPPER_SYMLINK, T, F, T, T, F, F, F, F, F) },
{ ENTRY(TLS_LIB, T, T, T, F, T, T, F, T, F) },
{ ENTRY(UTILITY_LIB, T, T, F, F, T, F, F, T, F) },
+ { ENTRY(GBM_BACKEND_LIB, T, T, F, F, T, F, F, T, F) },
{ ENTRY(DOCUMENTATION, F, T, T, F, F, F, F, T, F) },
{ ENTRY(APPLICATION_PROFILE, F, T, T, F, F, F, F, T, F) },
{ ENTRY(MANPAGE, F, T, T, F, F, F, F, T, F) },
@@ -89,6 +90,7 @@ static const struct {
{ ENTRY(OPENGL_SYMLINK, T, F, F, T, F, T, F, T, F) },
{ ENTRY(CUDA_SYMLINK, T, F, T, T, F, F, F, T, F) },
{ ENTRY(UTILITY_LIB_SYMLINK, T, F, F, T, F, F, F, T, F) },
+ { ENTRY(GBM_BACKEND_LIB_SYMLINK, T, F, F, T, F, F, F, T, F) },
{ ENTRY(INSTALLER_BINARY, F, T, F, F, F, F, F, T, F) },
{ ENTRY(UTILITY_BINARY, F, T, F, F, F, F, F, T, F) },
{ ENTRY(UTILITY_BIN_SYMLINK, F, F, F, T, F, F, F, T, F) },
@@ -109,8 +111,6 @@ static const struct {
{ ENTRY(NVIDIA_MODPROBE, F, T, T, F, F, F, F, T, F) },
{ ENTRY(NVIDIA_MODPROBE_MANPAGE, F, T, T, F, F, F, F, T, F) },
{ ENTRY(MODULE_SIGNING_KEY, F, T, F, F, F, F, T, T, F) },
- { ENTRY(NVIFR_LIB, T, T, F, F, T, F, F, T, F) },
- { ENTRY(NVIFR_LIB_SYMLINK, T, F, F, T, F, F, F, T, F) },
{ ENTRY(XORG_OUTPUTCLASS_CONFIG, F, T, F, F, F, F, F, T, F) },
{ ENTRY(DKMS_CONF, F, T, F, F, F, F, T, T, T) },
{ ENTRY(GLVND_LIB, T, T, F, F, T, T, F, T, F) },
@@ -124,7 +124,6 @@ static const struct {
{ ENTRY(EGL_EXTERNAL_PLATFORM_JSON, F, T, F, F, F, T, F, T, F) },
{ ENTRY(FLEXERA_LIB, F, T, T, F, T, F, F, F, F) },
{ ENTRY(FLEXERA_LIB_SYMLINK, F, F, T, T, F, F, F, F, F) },
- { ENTRY(ALLOCATOR_JSON, F, T, F, F, F, F, F, T, F) },
{ ENTRY(INTERNAL_UTILITY_BINARY, T, T, F, F, F, F, F, T, F) },
{ ENTRY(INTERNAL_UTILITY_LIB, T, T, F, F, T, F, F, T, F) },
{ ENTRY(INTERNAL_UTILITY_DATA, F, T, F, F, F, F, F, T, F) },
diff --git a/ncurses-ui.c b/ncurses-ui.c
index 376d3d0..316e2d0 100644
--- a/ncurses-ui.c
+++ b/ncurses-ui.c
@@ -424,8 +424,9 @@ static char *nv_ncurses_get_input(Options *op,
/* copy the default response into the buffer */
memset(buf, 0, MAX_BUF_LEN);
- if (def) strncpy(buf, def, MAX_BUF_LEN);
-
+ if (def) strncpy(buf, def, MAX_BUF_LEN - 1);
+ buf[MAX_BUF_LEN - 1] = '\0';
+
draw_get_input:
/* free any existing message region */
@@ -1890,8 +1891,8 @@ static char *nv_ncurses_create_command_list_text(DataStruct *d, CommandList *cl)
tmp[0] = 0;
- strncat(tmp, ret, lenret);
- strncat(tmp, str, lenstr);
+ memcpy(tmp, ret, lenret);
+ memcpy(tmp + lenret, str, lenstr);
tmp[lenret + lenstr] = '\n';
tmp[lenret + lenstr + 1] = 0;
diff --git a/nvLegacy.h b/nvLegacy.h
index 89b60a4..566b3bd 100644
--- a/nvLegacy.h
+++ b/nvLegacy.h
@@ -41,6 +41,7 @@ typedef struct _LEGACY_STRINGS {
* This table describes how we should refer to legacy branches.
*/
static const LEGACY_STRINGS LegacyStrings[] = {
+ { 8, "470.xx" },
{ 7, "390.xx" },
{ 6, "367.xx" },
{ 5, "340.xx" },
@@ -661,6 +662,61 @@ static const LEGACY_INFO LegacyList[] = {
{ 0x0F01, 0x0000, 0x0000, 7, "GeForce GT 620" },
{ 0x0F02, 0x0000, 0x0000, 7, "GeForce GT 730" },
{ 0x0F03, 0x0000, 0x0000, 7, "GeForce GT 610" },
+ { 0x0FC6, 0x0000, 0x0000, 8, "GeForce GTX 650" },
+ { 0x0FC8, 0x0000, 0x0000, 8, "GeForce GT 740" },
+ { 0x0FC9, 0x0000, 0x0000, 8, "GeForce GT 730" },
+ { 0x0FCD, 0x0000, 0x0000, 8, "GeForce GT 755M" },
+ { 0x0FCE, 0x0000, 0x0000, 8, "GeForce GT 640M LE" },
+ { 0x0FD1, 0x0000, 0x0000, 8, "GeForce GT 650M" },
+ { 0x0FD2, 0x0000, 0x0000, 8, "GeForce GT 640M" },
+ { 0x0FD2, 0x1028, 0x0595, 8, "GeForce GT 640M LE" },
+ { 0x0FD2, 0x1028, 0x05B2, 8, "GeForce GT 640M LE" },
+ { 0x0FD3, 0x0000, 0x0000, 8, "GeForce GT 640M LE" },
+ { 0x0FD4, 0x0000, 0x0000, 8, "GeForce GTX 660M" },
+ { 0x0FD5, 0x0000, 0x0000, 8, "GeForce GT 650M" },
+ { 0x0FD8, 0x0000, 0x0000, 8, "GeForce GT 640M" },
+ { 0x0FD9, 0x0000, 0x0000, 8, "GeForce GT 645M" },
+ { 0x0FDF, 0x0000, 0x0000, 8, "GeForce GT 740M" },
+ { 0x0FE0, 0x0000, 0x0000, 8, "GeForce GTX 660M" },
+ { 0x0FE1, 0x0000, 0x0000, 8, "GeForce GT 730M" },
+ { 0x0FE2, 0x0000, 0x0000, 8, "GeForce GT 745M" },
+ { 0x0FE3, 0x103C, 0x2B16, 8, "GeForce GT 745A" },
+ { 0x0FE3, 0x17AA, 0x3675, 8, "GeForce GT 745A" },
+ { 0x0FE3, 0x0000, 0x0000, 8, "GeForce GT 745M" },
+ { 0x0FE4, 0x0000, 0x0000, 8, "GeForce GT 750M" },
+ { 0x0FE9, 0x0000, 0x0000, 8, "GeForce GT 750M" },
+ { 0x0FEA, 0x0000, 0x0000, 8, "GeForce GT 755M" },
+ { 0x0FEC, 0x0000, 0x0000, 8, "GeForce 710A" },
+ { 0x0FED, 0x0000, 0x0000, 8, "GeForce 820M" },
+ { 0x0FEE, 0x0000, 0x0000, 8, "GeForce 810M" },
+ { 0x0FF6, 0x0000, 0x0000, 8, "Quadro K1100M" },
+ { 0x0FF8, 0x0000, 0x0000, 8, "Quadro K500M" },
+ { 0x0FF9, 0x0000, 0x0000, 8, "Quadro K2000D" },
+ { 0x0FFA, 0x0000, 0x0000, 8, "Quadro K600" },
+ { 0x0FFB, 0x0000, 0x0000, 8, "Quadro K2000M" },
+ { 0x0FFC, 0x0000, 0x0000, 8, "Quadro K1000M" },
+ { 0x0FFD, 0x0000, 0x0000, 8, "NVS 510" },
+ { 0x0FFE, 0x0000, 0x0000, 8, "Quadro K2000" },
+ { 0x0FFF, 0x0000, 0x0000, 8, "Quadro 410" },
+ { 0x1001, 0x0000, 0x0000, 8, "GeForce GTX TITAN Z" },
+ { 0x1004, 0x0000, 0x0000, 8, "GeForce GTX 780" },
+ { 0x1005, 0x0000, 0x0000, 8, "GeForce GTX TITAN" },
+ { 0x1007, 0x0000, 0x0000, 8, "GeForce GTX 780" },
+ { 0x1008, 0x0000, 0x0000, 8, "GeForce GTX 780 Ti" },
+ { 0x100A, 0x0000, 0x0000, 8, "GeForce GTX 780 Ti" },
+ { 0x100C, 0x0000, 0x0000, 8, "GeForce GTX TITAN Black" },
+ { 0x1021, 0x0000, 0x0000, 8, "Tesla K20Xm" },
+ { 0x1022, 0x0000, 0x0000, 8, "Tesla K20c" },
+ { 0x1023, 0x0000, 0x0000, 8, "Tesla K40m" },
+ { 0x1024, 0x0000, 0x0000, 8, "Tesla K40c" },
+ { 0x1026, 0x0000, 0x0000, 8, "Tesla K20s" },
+ { 0x1027, 0x0000, 0x0000, 8, "Tesla K40st" },
+ { 0x1028, 0x0000, 0x0000, 8, "Tesla K20m" },
+ { 0x1029, 0x0000, 0x0000, 8, "Tesla K40s" },
+ { 0x102A, 0x0000, 0x0000, 8, "Tesla K40t" },
+ { 0x102D, 0x0000, 0x0000, 8, "Tesla K80" },
+ { 0x103A, 0x0000, 0x0000, 8, "Quadro K6000" },
+ { 0x103C, 0x0000, 0x0000, 8, "Quadro K5200" },
{ 0x1040, 0x0000, 0x0000, 7, "GeForce GT 520" },
{ 0x1042, 0x0000, 0x0000, 7, "GeForce 510" },
{ 0x1048, 0x0000, 0x0000, 7, "GeForce 605" },
@@ -1063,6 +1119,56 @@ static const LEGACY_INFO LegacyList[] = {
{ 0x1140, 0x1179, 0xFA59, 7, "GeForce 710M" },
{ 0x1140, 0x1179, 0xFA88, 7, "GeForce 710M" },
{ 0x1140, 0x1179, 0xFA89, 7, "GeForce 710M" },
+ { 0x1180, 0x0000, 0x0000, 8, "GeForce GTX 680" },
+ { 0x1183, 0x0000, 0x0000, 8, "GeForce GTX 660 Ti" },
+ { 0x1184, 0x0000, 0x0000, 8, "GeForce GTX 770" },
+ { 0x1185, 0x0000, 0x0000, 8, "GeForce GTX 660" },
+ { 0x1185, 0x10DE, 0x106F, 8, "GeForce GTX 760" },
+ { 0x1187, 0x0000, 0x0000, 8, "GeForce GTX 760" },
+ { 0x1188, 0x0000, 0x0000, 8, "GeForce GTX 690" },
+ { 0x1189, 0x0000, 0x0000, 8, "GeForce GTX 670" },
+ { 0x1189, 0x10DE, 0x1074, 8, "GeForce GTX 760 Ti OEM" },
+ { 0x118A, 0x0000, 0x0000, 8, "GRID K520" },
+ { 0x118E, 0x0000, 0x0000, 8, "GeForce GTX 760 (192-bit)" },
+ { 0x118F, 0x0000, 0x0000, 8, "Tesla K10" },
+ { 0x1193, 0x0000, 0x0000, 8, "GeForce GTX 760 Ti OEM" },
+ { 0x1194, 0x0000, 0x0000, 8, "Tesla K8" },
+ { 0x1195, 0x0000, 0x0000, 8, "GeForce GTX 660" },
+ { 0x1198, 0x0000, 0x0000, 8, "GeForce GTX 880M" },
+ { 0x1199, 0x0000, 0x0000, 8, "GeForce GTX 870M" },
+ { 0x1199, 0x1458, 0xD001, 8, "GeForce GTX 760" },
+ { 0x119A, 0x0000, 0x0000, 8, "GeForce GTX 860M" },
+ { 0x119D, 0x0000, 0x0000, 8, "GeForce GTX 775M" },
+ { 0x119E, 0x0000, 0x0000, 8, "GeForce GTX 780M" },
+ { 0x119F, 0x0000, 0x0000, 8, "GeForce GTX 780M" },
+ { 0x11A0, 0x0000, 0x0000, 8, "GeForce GTX 680M" },
+ { 0x11A1, 0x0000, 0x0000, 8, "GeForce GTX 670MX" },
+ { 0x11A2, 0x0000, 0x0000, 8, "GeForce GTX 675MX" },
+ { 0x11A3, 0x0000, 0x0000, 8, "GeForce GTX 680MX" },
+ { 0x11A7, 0x0000, 0x0000, 8, "GeForce GTX 675MX" },
+ { 0x11B4, 0x0000, 0x0000, 8, "Quadro K4200" },
+ { 0x11B6, 0x0000, 0x0000, 8, "Quadro K3100M" },
+ { 0x11B7, 0x0000, 0x0000, 8, "Quadro K4100M" },
+ { 0x11B8, 0x0000, 0x0000, 8, "Quadro K5100M" },
+ { 0x11BA, 0x0000, 0x0000, 8, "Quadro K5000" },
+ { 0x11BC, 0x0000, 0x0000, 8, "Quadro K5000M" },
+ { 0x11BD, 0x0000, 0x0000, 8, "Quadro K4000M" },
+ { 0x11BE, 0x0000, 0x0000, 8, "Quadro K3000M" },
+ { 0x11C0, 0x0000, 0x0000, 8, "GeForce GTX 660" },
+ { 0x11C2, 0x0000, 0x0000, 8, "GeForce GTX 650 Ti BOOST" },
+ { 0x11C3, 0x0000, 0x0000, 8, "GeForce GTX 650 Ti" },
+ { 0x11C4, 0x0000, 0x0000, 8, "GeForce GTX 645" },
+ { 0x11C5, 0x0000, 0x0000, 8, "GeForce GT 740" },
+ { 0x11C6, 0x0000, 0x0000, 8, "GeForce GTX 650 Ti" },
+ { 0x11C8, 0x0000, 0x0000, 8, "GeForce GTX 650" },
+ { 0x11CB, 0x0000, 0x0000, 8, "GeForce GT 740" },
+ { 0x11E0, 0x0000, 0x0000, 8, "GeForce GTX 770M" },
+ { 0x11E1, 0x0000, 0x0000, 8, "GeForce GTX 765M" },
+ { 0x11E2, 0x0000, 0x0000, 8, "GeForce GTX 765M" },
+ { 0x11E3, 0x0000, 0x0000, 8, "GeForce GTX 760M" },
+ { 0x11E3, 0x17AA, 0x3683, 8, "GeForce GTX 760A" },
+ { 0x11FA, 0x0000, 0x0000, 8, "Quadro K4000" },
+ { 0x11FC, 0x0000, 0x0000, 8, "Quadro K2100M" },
{ 0x1200, 0x0000, 0x0000, 7, "GeForce GTX 560 Ti" },
{ 0x1201, 0x0000, 0x0000, 7, "GeForce GTX 560" },
{ 0x1203, 0x0000, 0x0000, 7, "GeForce GTX 460 SE v2" },
@@ -1088,7 +1194,53 @@ static const LEGACY_INFO LegacyList[] = {
{ 0x124B, 0x0000, 0x0000, 7, "GeForce GT 640" },
{ 0x124D, 0x0000, 0x0000, 7, "GeForce GT 555M" },
{ 0x124D, 0x1462, 0x10CC, 7, "GeForce GT 635M" },
- { 0x1251, 0x0000, 0x0000, 7, "GeForce GTX 560M" }
+ { 0x1251, 0x0000, 0x0000, 7, "GeForce GTX 560M" },
+ { 0x1280, 0x0000, 0x0000, 8, "GeForce GT 635" },
+ { 0x1281, 0x0000, 0x0000, 8, "GeForce GT 710" },
+ { 0x1282, 0x0000, 0x0000, 8, "GeForce GT 640" },
+ { 0x1284, 0x0000, 0x0000, 8, "GeForce GT 630" },
+ { 0x1286, 0x0000, 0x0000, 8, "GeForce GT 720" },
+ { 0x1287, 0x0000, 0x0000, 8, "GeForce GT 730" },
+ { 0x1288, 0x0000, 0x0000, 8, "GeForce GT 720" },
+ { 0x1289, 0x0000, 0x0000, 8, "GeForce GT 710" },
+ { 0x128B, 0x0000, 0x0000, 8, "GeForce GT 710" },
+ { 0x1290, 0x0000, 0x0000, 8, "GeForce GT 730M" },
+ { 0x1290, 0x103C, 0x2AFA, 8, "GeForce GT 730A" },
+ { 0x1291, 0x0000, 0x0000, 8, "GeForce GT 735M" },
+ { 0x1292, 0x0000, 0x0000, 8, "GeForce GT 740M" },
+ { 0x1292, 0x17AA, 0x3675, 8, "GeForce GT 740A" },
+ { 0x1292, 0x17AA, 0x367C, 8, "GeForce GT 740A" },
+ { 0x1292, 0x17AA, 0x3684, 8, "GeForce GT 740A" },
+ { 0x1293, 0x0000, 0x0000, 8, "GeForce GT 730M" },
+ { 0x1295, 0x0000, 0x0000, 8, "GeForce 710M" },
+ { 0x1295, 0x103C, 0x2B0D, 8, "GeForce 710A" },
+ { 0x1295, 0x103C, 0x2B0F, 8, "GeForce 710A" },
+ { 0x1295, 0x103C, 0x2B20, 8, "GeForce 810A" },
+ { 0x1295, 0x103C, 0x2B21, 8, "GeForce 810A" },
+ { 0x1295, 0x17AA, 0x367A, 8, "GeForce 805A" },
+ { 0x1295, 0x17AA, 0x367C, 8, "GeForce 710A" },
+ { 0x1296, 0x0000, 0x0000, 8, "GeForce 825M" },
+ { 0x1298, 0x0000, 0x0000, 8, "GeForce GT 720M" },
+ { 0x1299, 0x0000, 0x0000, 8, "GeForce 920M" },
+ { 0x1299, 0x1B0A, 0x01C6, 8, "GeForce GT 730" },
+ { 0x1299, 0x17AA, 0x30BB, 8, "GeForce 920A" },
+ { 0x1299, 0x17AA, 0x30DA, 8, "GeForce 920A" },
+ { 0x1299, 0x17AA, 0x30DC, 8, "GeForce 920A" },
+ { 0x1299, 0x17AA, 0x30DD, 8, "GeForce 920A" },
+ { 0x1299, 0x17AA, 0x30DF, 8, "GeForce 920A" },
+ { 0x1299, 0x17AA, 0x3117, 8, "GeForce 920A" },
+ { 0x1299, 0x17AA, 0x361B, 8, "GeForce 920A" },
+ { 0x1299, 0x17AA, 0x362D, 8, "GeForce 920A" },
+ { 0x1299, 0x17AA, 0x362E, 8, "GeForce 920A" },
+ { 0x1299, 0x17AA, 0x3630, 8, "GeForce 920A" },
+ { 0x1299, 0x17AA, 0x3637, 8, "GeForce 920A" },
+ { 0x1299, 0x17AA, 0x369B, 8, "GeForce 920A" },
+ { 0x1299, 0x17AA, 0x36A7, 8, "GeForce 920A" },
+ { 0x1299, 0x17AA, 0x36AF, 8, "GeForce 920A" },
+ { 0x1299, 0x17AA, 0x36F0, 8, "GeForce 920A" },
+ { 0x129A, 0x0000, 0x0000, 8, "GeForce 910M" },
+ { 0x12B9, 0x0000, 0x0000, 8, "Quadro K610M" },
+ { 0x12BA, 0x0000, 0x0000, 8, "Quadro K510M" }
};
#endif /* __NV_LEGACY_H */
diff --git a/nvidia-installer.h b/nvidia-installer.h
index 17be13e..37d3a66 100644
--- a/nvidia-installer.h
+++ b/nvidia-installer.h
@@ -138,8 +138,6 @@ typedef enum {
FILE_TYPE_NVIDIA_MODPROBE,
FILE_TYPE_NVIDIA_MODPROBE_MANPAGE,
FILE_TYPE_MODULE_SIGNING_KEY,
- FILE_TYPE_NVIFR_LIB,
- FILE_TYPE_NVIFR_LIB_SYMLINK,
FILE_TYPE_XORG_OUTPUTCLASS_CONFIG,
FILE_TYPE_DKMS_CONF,
FILE_TYPE_GLVND_LIB,
@@ -153,7 +151,6 @@ typedef enum {
FILE_TYPE_EGL_EXTERNAL_PLATFORM_JSON,
FILE_TYPE_FLEXERA_LIB,
FILE_TYPE_FLEXERA_LIB_SYMLINK,
- FILE_TYPE_ALLOCATOR_JSON,
FILE_TYPE_INTERNAL_UTILITY_BINARY,
FILE_TYPE_INTERNAL_UTILITY_LIB,
FILE_TYPE_INTERNAL_UTILITY_DATA,
@@ -161,6 +158,8 @@ typedef enum {
FILE_TYPE_SYSTEMD_UNIT,
FILE_TYPE_SYSTEMD_UNIT_SYMLINK,
FILE_TYPE_SYSTEMD_SLEEP_SCRIPT,
+ FILE_TYPE_GBM_BACKEND_LIB,
+ FILE_TYPE_GBM_BACKEND_LIB_SYMLINK,
FILE_TYPE_MAX
} PackageEntryFileType;
@@ -249,6 +248,8 @@ typedef struct __options {
char *utility_bindir;
char *installer_prefix;
+ char *gbm_backend_dir;
+
char *dot_desktopdir;
char *documentation_prefix;
@@ -463,6 +464,7 @@ typedef struct __package {
#define DEFAULT_X_PREFIX "/usr/X11R6"
#define DEFAULT_UTILITY_PREFIX "/usr"
#define DEFAULT_DOCUMENTATION_PREFIX "/usr"
+#define DEFAULT_GBM_PREFIX "/usr"
#define DEFAULT_APPLICATION_PROFILE_PATH "/usr/share/nvidia"
#define DEFAULT_WINE_PREFIX "/usr"
diff --git a/option_table.h b/option_table.h
index 6e62554..a1b636e 100644
--- a/option_table.h
+++ b/option_table.h
@@ -113,6 +113,7 @@ enum {
SYSTEMD_UNIT_PREFIX_OPTION,
SYSTEMD_SLEEP_PREFIX_OPTION,
SYSTEMD_SYSCONF_PREFIX_OPTION,
+ GBM_BACKEND_DIR_OPTION,
};
static const NVGetoptOption __options[] = {
@@ -290,6 +291,14 @@ static const NVGetoptOption __options[] = {
"' or '" DEFAULT_LIBDIR "' on 64bit " "systems, depending on the "
"installed Linux distribution." },
+ { "gbm-backend-dir", GBM_BACKEND_DIR_OPTION, NVGETOPT_STRING_ARGUMENT, NULL,
+ "The path relative to the OpenGL library installation prefix under "
+ "which the NVIDIA GBM backend library will be installed. The "
+ "default is '$libdir/gbm', where '$libdir' is '" DEFAULT_64BIT_LIBDIR
+ "' or '" DEFAULT_LIBDIR "', depending on the installed Linux "
+ "distribution. Only under very rare circumstances should this option be "
+ "used." },
+
{ "documentation-prefix", DOCUMENTATION_PREFIX_OPTION,
NVGETOPT_STRING_ARGUMENT, NULL,
"The prefix under which the documentation files for the NVIDIA "
diff --git a/utils.mk b/utils.mk
index e5ac3a2..dd68d48 100644
--- a/utils.mk
+++ b/utils.mk
@@ -59,6 +59,10 @@ CFLAGS += -Wno-unused-parameter
HOST_CC_ONLY_CFLAGS += -Wno-format-zero-length
HOST_CFLAGS += -Wno-unused-parameter
+# Treat warnings as errors, if requested
+WARNINGS_AS_ERRORS ?=
+CFLAGS += $(if $(WARNINGS_AS_ERRORS),-Werror)
+
DEBUG ?=
DEVELOP ?=
diff --git a/version.mk b/version.mk
index 3684bbb..c72c011 100644
--- a/version.mk
+++ b/version.mk
@@ -1,4 +1,4 @@
-NVIDIA_VERSION = 470.74
+NVIDIA_VERSION = 495.29.05
# This file.
VERSION_MK_FILE := $(lastword $(MAKEFILE_LIST))