diff options
author | Aaron Plattner <aplattner@nvidia.com> | 2013-08-05 10:51:14 -0700 |
---|---|---|
committer | Aaron Plattner <aplattner@nvidia.com> | 2013-08-05 10:51:14 -0700 |
commit | a977103d446bc8c0c3827d8726c53bb8292a31cd (patch) | |
tree | 9ab082b2f17bb7faf49d1a9ff8ed06b3e06a4eaa | |
parent | bae15338d0f3be4553a09bb6d9dd3c702a83c457 (diff) |
325.15325.15
-rw-r--r-- | command-list.c | 1 | ||||
-rw-r--r-- | files.c | 12 | ||||
-rw-r--r-- | manifest.c | 2 | ||||
-rw-r--r-- | misc.c | 18 | ||||
-rw-r--r-- | nvidia-installer.h | 2 | ||||
-rw-r--r-- | version.mk | 2 |
6 files changed, 28 insertions, 9 deletions
diff --git a/command-list.c b/command-list.c index bfa22dc..a4d0fc4 100644 --- a/command-list.c +++ b/command-list.c @@ -599,6 +599,7 @@ static ConflictingFileInfo __xfree86_non_opengl_libs[] = { { "libnvidia-ml.", 13, /* strlen("libnvidia-ml.") */ NULL }, { "libnvidia-encode.", 17, /* strlen("libnvidia-encode.") */ NULL }, { "libnvidia-vgx.", 14, /* strlen("libnvidia-vgx.") */ NULL }, + { "libnvidia-ifr.", 14, /* strlen("libnvidia-ifr.") */ NULL }, { "libnvidia-vgxcfg.", 17, /* strlen("libnvidia-vgxcfg.") */ NULL }, { NULL, 0, NULL } }; @@ -680,6 +680,18 @@ 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; + default: /* @@ -104,6 +104,8 @@ static const struct { { ENTRY(NVIDIA_MODPROBE, F, F, T, T, F, F, F ) }, { ENTRY(NVIDIA_MODPROBE_MANPAGE,F, F, T, T, F, F, F ) }, { ENTRY(MODULE_SIGNING_KEY, F, F, T, F, F, F, F ) }, + { ENTRY(NVIFR_LIB, T, F, T, F, F, T, F ) }, + { ENTRY(NVIFR_LIB_SYMLINK, T, F, F, F, T, F, F ) }, }; /* @@ -2732,13 +2732,12 @@ static char *nouveau_blacklist_file_is_present(Options *op) * * Returns FALSE if the nouveau kernel driver is in use (cause * installation to abort); returns TRUE if the nouveau driver is not - * in use and the user has not explicitly requested that the blacklist - * file be written. + * in use, or if the nouveau check is to be skipped. */ int check_for_nouveau(Options *op) { - int ret; + int ret, nouveau_detected; char *blacklist_files; #define NOUVEAU_POINTER_MESSAGE \ @@ -2748,15 +2747,17 @@ int check_for_nouveau(Options *op) if (op->no_nouveau_check) return TRUE; - if (nouveau_is_present()) { + nouveau_detected = nouveau_is_present(); + + if (nouveau_detected) { ui_error(op, "The Nouveau kernel driver is currently in use " "by your system. This driver is incompatible with the NVIDIA " "driver, and must be disabled before proceeding. " NOUVEAU_POINTER_MESSAGE); } else if (!op->disable_nouveau) { - /* If novueau isn't loaded, we can return early, unless the user + /* If nouveau isn't loaded, we can return early, unless the user * explicitly requested for the blacklist file to be written. */ - return TRUE; + return !nouveau_detected; } blacklist_files = nouveau_blacklist_file_is_present(op); @@ -2775,7 +2776,7 @@ int check_for_nouveau(Options *op) * written, don't return early, so that the files can be written * again, e.g. in case a file is present, but not in the right * place for this particular system. */ - return FALSE; + return !nouveau_detected; } } @@ -2804,7 +2805,8 @@ int check_for_nouveau(Options *op) } } - return FALSE; + /* Allow installation to continue if nouveau was not detected. */ + return !nouveau_detected; } #define DKMS_STATUS " status" diff --git a/nvidia-installer.h b/nvidia-installer.h index afaea29..7f9effe 100644 --- a/nvidia-installer.h +++ b/nvidia-installer.h @@ -262,6 +262,8 @@ 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_MAX } PackageEntryFileType; @@ -1 +1 @@ -NVIDIA_VERSION = 325.08 +NVIDIA_VERSION = 325.15 |