cat nvidia-driver-367.35.edited.diff
--- x11/nvidia-driver/Makefile (revision 417930)
+++ x11/nvidia-driver/Makefile (working copy)
@@ -7,11 +7,10 @@
# Starting with version 1.0-7667, NVidia has dropped support for numerous
# "legacy" GPUs. Consult NVidia README (the Appendix) to find out whether
# you need to use legacy driver version and install one of corresponding
-# slave ports instead (`x11/nvidia-driver-173', `x11/nvidia-driver-304',
-# or `x11/nvidia-driver-340').
+# slave ports instead (`x11/nvidia-driver-304', or `x11/nvidia-driver-340').
PORTNAME= nvidia-driver
-DISTVERSION?= 346.96
+DISTVERSION?= 367.35
# Always try to set PORTREVISION as it can be overridden by the slave ports
PORTREVISION?= 0
CATEGORIES= x11
@@ -29,7 +28,7 @@
ARCH_SUFX= x86${ARCH:S/i386//:S/amd/_/}
USES= kmod uidfix
-USE_XORG= xorg-server
+USE_XORG= x11 xorg-server xext
USE_GL= gl
USE_LDCONFIG= yes
@@ -57,45 +56,29 @@
. endif
.endif
-.if ${NVVERSION} >= 195.022
MASTER_SITE_SUBDIR= XFree86/FreeBSD-${ARCH_SUFX}/${DISTVERSION}
ONLY_FOR_ARCHS= i386 amd64
-.else
-MASTER_SITE_SUBDIR= freebsd/${DISTVERSION}
-ONLY_FOR_ARCHS= i386
-.endif
-.if ${NVVERSION} <= 190.042
-EXTRA_PATCHES= ${FILESDIR}/legacy-patch-mk-nvidia.lib.mk
-.else
-EXTRA_PATCHES= ${FILESDIR}/extra-patch-mk-nvidia.lib.mk
-.endif
-
-.if ${NVVERSION} >= 304.088
+.if ${NVVERSION} < 355.006
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-src-Makefile \
${FILESDIR}/extra-patch-src-nv-freebsd.h \
${FILESDIR}/extra-patch-src-nv-misc.h
-.endif
-
-.if ${NVVERSION} >= 304.125 # 331.020
-EXTRA_PATCHES+= ${FILESDIR}/extra-patch-x11-driver-Makefile
.else
-EXTRA_PATCHES+= ${FILESDIR}/legacy-patch-x11-driver-Makefile
+NVSRC=nvidia
+EXTRA_PATCHES+= ${FILESDIR}/extra-patch-src_nvidia_Makefile \
+ ${FILESDIR}/extra-patch-src_nvidia_nv-freebsd.h \
+ ${FILESDIR}/extra-patch-src_nvidia_nv-misc.h
.endif
-
-# Fix recent arbitrary memory access vulnerability in legacy drivers
-.if ${NVVERSION} <= 190.053
-. if ${NVVERSION} != 173.01435
-EXTRA_PATCHES+= ${FILESDIR}/security-patch-CVE-2012-0946
-. endif
-EXTRA_PATCHES+= ${FILESDIR}/security-patch-CVE-2012-4225
+.if ${NVVERSION} >= 358.009
+EXTRA_PATCHES+= ${FILESDIR}/extra-patch-src_nvidia-modeset_nvidia-modeset-freebsd.c
.endif
-OPTIONS_DEFINE= ACPI_PM LINUX DOCS
+OPTIONS_DEFINE= ACPI_PM LINUX DOCS WBINVD
OPTIONS_DEFAULT= LINUX
ACPI_PM_DESC= ACPI Power Management support
LINUX_DESC= Linux compatibility support
+WBINVD_DESC= Flush CPU caches directly with WBINVD
.if ${NVVERSION} < 310.014
OPTIONS_DEFINE+= FREEBSD_AGP
@@ -102,11 +85,6 @@
FREEBSD_AGP_DESC= Use FreeBSD AGP GART driver
.endif
-.if ${NVVERSION} >= 195.022
-OPTIONS_DEFINE+= WBINVD
-WBINVD_DESC= Flush CPU caches directly with WBINVD
-.endif
-
.if ${NVVERSION} >= 304.088
OPTIONS_DEFINE_i386= PAE
PAE_DESC= Physical Address Extensions support
@@ -127,97 +105,61 @@
MAKE_ENV+= WITHOUT_LINUX=yes
.endif
-.if ${NVVERSION} < 195.022
-# ABI version is hardcoded inside the binary, so specify it explicitly here
-LIB_DEPENDS= libm.so.3:misc/compat5x
-.endif
-
post-patch: .SILENT
-# We should support -CURRENT: kill the check
- ${REINPLACE_CMD} -e '24,26d' ${WRKSRC}/src/nv-freebsd.h
-# Adjust legacy drivers for updated d_mmap() since FreeBSD src SVN r201223
-.if ${NVVERSION} < 195.022
- ${REINPLACE_CMD} -e 's/vm_offset_t offset/vm_ooffset_t offset/ ; \
- s/vm_offset_t \*address/vm_paddr_t *address/ ; \
- s/int nprot/&, vm_memattr_t *memattr/' \
- ${WRKSRC}/src/nvidia_dev.c
-.endif
-# In the legacy drivers: remove page queue locking and add page locking
-# around vm_page_(un)wire() after FreeBSD src SVN r207410, r207617, and
-# r207644; also remove page queue locking around vm_page_wakeup() after
-# FreeBSD src SVN r163622
-.if ${NVVERSION} < 304.064
- ${REINPLACE_CMD} -E '/vm_page_(un)?lock_queues\(\);/d ; \
- s/(vm_page_(un)?wire\()([^,]+)(, 0)?(\);)/vm_page_lock(\3); & vm_page_unlock(\3);/' \
- ${WRKSRC}/src/nvidia_subr.c
-.endif
-# Catch up legacy drivers with FreeBSD src SVN r225617
-.if ${NVVERSION} < 195.022
- ${REINPLACE_CMD} -e '/return/s/ioctl/sys_&/' \
- ${WRKSRC}/src/nvidia_linux.c
-.endif
+ ${REINPLACE_CMD} -e '24,26d' ${WRKSRC}/src/${NVSRC}/nv-freebsd.h
# Adjust Linux headers #include's after FreeBSD src SVN r246085
.if ${OSVERSION} > 1000027 && ${NVVERSION} >= 96.04323
${REINPLACE_CMD} -E '/#include "machine\/\.\.\/linux(32)?\/linux.h"/ \
{ x ; s/.*/#include "machine\/..\/..\/compat\/linux\/linux_ioctl.h"/ ; H ; x ; }' \
- ${WRKSRC}/src/nvidia_linux.c
+ ${WRKSRC}/src/${NVSRC}/nvidia_linux.c
.endif
# Adjust vm_object locking after FreeBSD src SVN r248084
.if ${OSVERSION} > 1000029
${REINPLACE_CMD} -e '/#include <vm\/vm_object.h>/ \
{ x ; s/.*/#include <sys\/rwlock.h>/ ; G ; }' \
- ${WRKSRC}/src/nv-freebsd.h
+ ${WRKSRC}/src/${NVSRC}/nv-freebsd.h
${REINPLACE_CMD} -E 's/(VM_OBJECT_)(UN)?(LOCK)/\1W\2\3/' \
- ${WRKSRC}/src/nvidia_subr.c
+ ${WRKSRC}/src/${NVSRC}/nvidia_subr.c
.endif
# Adjust kmem(9) calls after FreeBSD src SVN r254025
.if ${OSVERSION} > 1000040 && ${NVVERSION} < 331.067
${REINPLACE_CMD} -e '/kmem_/s/kernel_map/kernel_arena/' \
- ${WRKSRC}/src/nvidia_subr.c
+ ${WRKSRC}/src/${NVSRC}/nvidia_subr.c
.endif
-# Argument count of vm_map_find() changed in FreeBSD src SVN r255426
-.if ${OSVERSION} > 1000054 && ${NVVERSION} < 304.123 # < 331.067
- ${REINPLACE_CMD} -e 's/virtual_address, size,/& 0,/' \
- ${WRKSRC}/src/nvidia_subr.c
-.endif
# Fix CTLFLAG_* values for SYSCTL_ADD_PROC() after FreeBSD src SVN r273377
.if ${OSVERSION} > 1100039 || ${OSVERSION} > 1001501 && ${OSVERSION} < 1100000
${REINPLACE_CMD} -e '/SYSCTL_ADD_PROC/,/;/ \
s/^[[:blank:]]*CTLFLAG_RD/CTLTYPE_STRING |&/' \
- ${WRKSRC}/src/nvidia_sysctl.c
+ ${WRKSRC}/src/${NVSRC}/nvidia_sysctl.c
.endif
# Replace d_thread_t (compat shim to support FreeBSD 4) with `struct thread'
${REINPLACE_CMD} -e 's/d_thread_t/struct thread/' \
- ${WRKSRC}/src/nvidia_ctl.c ${WRKSRC}/src/nvidia_dev.c \
- ${WRKSRC}/src/nvidia_linux.c
-# Fix stack buffer overflow in nvidia_sysctl_bus_type()
- ${REINPLACE_CMD} -e 's/8 bus_type\[4\]/8 bus_type[8]/' \
- ${WRKSRC}/src/nvidia_sysctl.c
-# Unbreak the build of 173.14.xx legacy series on recent -CURRENT
-.if ${NVVERSION} < 195.022 && ${NVVERSION} >= 169.004
- ${REINPLACE_CMD} -E 's/os_(alloc|free)_contig_pages/NV_API_CALL &/' \
- ${WRKSRC}/src/nv-freebsd.h
+ ${WRKSRC}/src/${NVSRC}/nvidia_ctl.c ${WRKSRC}/src/${NVSRC}/nvidia_dev.c \
+ ${WRKSRC}/src/${NVSRC}/nvidia_linux.c
+.if ${NVVERSION} >= 358.009
+ ${REINPLACE_CMD} -e 's/d_thread_t/struct thread/' \
+ ${WRKSRC}/src/nvidia-modeset/nvidia-modeset-freebsd.c
.endif
# Process OPTIONS
.if ${PORT_OPTIONS:MFREEBSD_AGP}
${REINPLACE_CMD} -E 's/undef (NV_SUPPORT_OS_AGP)/define \1/' \
- ${WRKSRC}/src/nv-freebsd.h
+ ${WRKSRC}/src/${NVSRC}/nv-freebsd.h
.endif
.if ${PORT_OPTIONS:MACPI_PM}
${REINPLACE_CMD} -E 's/undef (NV_SUPPORT_ACPI_PM)/define \1/' \
- ${WRKSRC}/src/nv-freebsd.h
+ ${WRKSRC}/src/${NVSRC}/nv-freebsd.h
.endif
.if ! ${PORT_OPTIONS:MLINUX}
${REINPLACE_CMD} -E 's/define (NV_SUPPORT_LINUX_COMPAT)/undef \1/' \
- ${WRKSRC}/src/nv-freebsd.h
+ ${WRKSRC}/src/${NVSRC}/nv-freebsd.h
.endif
.if ${PORT_OPTIONS:MPAE}
${REINPLACE_CMD} -E 's/undef (NV_SUPPORT_PAE)/define \1/' \
- ${WRKSRC}/src/nv-freebsd.h
+ ${WRKSRC}/src/${NVSRC}/nv-freebsd.h
.endif
.if ${PORT_OPTIONS:MWBINVD}
${REINPLACE_CMD} -E 's/undef (NV_USE_WBINVD)/define \1/' \
- ${WRKSRC}/src/nv-freebsd.h
+ ${WRKSRC}/src/${NVSRC}/nv-freebsd.h
.endif
${REINPLACE_CMD} -e 's/exists(\/.*/& \&\& !defined(WITHOUT_LINUX)/' \
${WRKSRC}/lib/Makefile
@@ -229,11 +171,6 @@
.endif
# Do not build any binaries (native nvidia-settings and nvidia-xconfig are
# provided by corresponding ports) and manual pages
-.if ${NVVERSION} < 97.046 || ${NVVERSION} >= 195.022
- ${REINPLACE_CMD} -E 's/(extension).*/\1/' ${WRKSRC}/x11/Makefile
-.else
- ${REINPLACE_CMD} -E 's/(lib).*/\1/' ${WRKSRC}/x11/Makefile
-.endif
${REINPLACE_CMD} -e '/bin/d ; /man/d' ${WRKSRC}/x11/Makefile
# Also do not install libnvidia-gtk* libraries which are for nvidia-settings
.if ${NVVERSION} >= 346.016
@@ -259,7 +196,7 @@
# and "smart" installation of conflicting files heuristics)
${REINPLACE_CMD} -e 's/afterinstall/&_dontexecute/' ${WRKSRC}/Makefile
${REINPLACE_CMD} -e 's/beforeinstall/&_dontexecute/' \
- ${WRKSRC}/lib/Makefile ${WRKSRC}/src/Makefile
+ ${WRKSRC}/lib/Makefile ${WRKSRC}/src/${NVSRC}/Makefile
# /usr/share/nvidia path is hardcoded in libGL and nvidia-settings, but we
# won't adhere to this stupidity and install nvidia-application-profiles-*
# files as part of documentation
@@ -267,6 +204,11 @@
${REINPLACE_CMD} -e 's,/usr/share/nvidia,${STAGEDIR}${DOCSDIR},' \
${WRKSRC}/lib/libGL/Makefile ${WRKSRC}/doc/Makefile
.endif
+# Fix cap_rights, does not exist before 10.x
+.if ${OSVERSION} < 1000000 && ${NVVERSION} >= 358.009
+ ${REINPLACE_CMD} '/<sys\/caprights.h>/d ; /cap_rights_t rights/d ; s/cap_rights_init(&rights, CAP_IOCTL)/CAP_IOCTL/' \
+ ${WRKSRC}/src/nvidia-modeset/nvidia-modeset-freebsd.c
+.endif
pre-install:
@${MKDIR} ${STAGEDIR}${PREFIX}/${MODULESDIR}/drivers \
@@ -276,24 +218,9 @@
${INSTALL_SCRIPT} ${WRKSRC}/obj/nvidia-bug-report.sh \
${STAGEDIR}${PREFIX}/bin
# pkg-plist is already overbloated, so use these hacks instead of PLIST_SUB's
-.if ${NVVERSION} < 81.074
- ${REINPLACE_CMD} -e '/libnvidia-cfg/d' ${TMPPLIST}
-.endif
-.if ${NVVERSION} < 97.046 || ${NVVERSION} >= 195.022
- ${REINPLACE_CMD} -e '/wfb/d' ${TMPPLIST}
-.endif
-.if ${NVVERSION} < 180.029
- ${REINPLACE_CMD} -e '/vdpau/d' ${TMPPLIST}
-.elif ${NVVERSION} >= 304.128 && ${NVVERSION} < 310.019
+.if ${NVVERSION} >= 304.128 && ${NVVERSION} < 310.019 || ${NVVERSION} >= 361.016
${REINPLACE_CMD} -E '/libvdpau(_trace)?\.so/d' ${TMPPLIST}
.endif
-.if ${NVVERSION} < 185.01829
- ${REINPLACE_CMD} -e '/libcuda/d' ${TMPPLIST}
-.endif
-.if ${NVVERSION} >= 256.053
- ${REINPLACE_CMD} -E 's/libGLcore/libnvidia-glcore/ ; \
- /usr.*(glcore|tls).*so\.1$$/d' ${TMPPLIST}
-.endif
.if ${NVVERSION} >= 310.019
${REINPLACE_CMD} -e '/libXvMCNVIDIA/d' ${TMPPLIST}
.else # some applications need this symlink (see PR ports/72877)
@@ -307,6 +234,28 @@
.if ${NVVERSION} >= 195.022
${REINPLACE_CMD} -e '/does not support PAE/,+1d' ${PKGMESSAGE}
.endif
+.if ${NVVERSION} < 352.009
+ ${REINPLACE_CMD} -E '/(lib)?nvidia-(debugdump|smi|ml)/d' ${TMPPLIST}
+.endif
+.if ${NVVERSION} < 355.006
+ ${REINPLACE_CMD} -E '/(libEGL_nvidia|GLdispatch|OpenGL)/d' ${TMPPLIST}
+.else
+ ${REINPLACE_CMD} 's/libEGL\.so\.${PORTVERSION}/libEGL.so/' \
+ ${TMPPLIST}
+.endif
+.if ${NVVERSION} < 358.009
+ ${REINPLACE_CMD} '/nvidia-modeset.ko/d' ${TMPPLIST}
+.else
+ ${REINPLACE_CMD} 's/nvidia$$/nvidia-modeset/ ; s/nvidia_/nvidia-modeset_/' \
+ ${PKGMESSAGE}
+.endif
+.if ${NVVERSION} >= 361.028
+ ${REINPLACE_CMD} -E '/(EGL_nvidia\.so|GLESv[12](_CM)?(\.so\.[0-9]+\.[0-9]+))$$/d' \
+ ${TMPPLIST}
+.else
+ ${REINPLACE_CMD} -E '/\/lib\/libGLESv[12](_CM)?(\.so)?(_nvidia.so(\.[0-9]|\.[0-9]+\.[0-9]+)?)?$$/d ; \
+ /libEGL_nvidia\.so\.${PORTVERSION}/d' ${TMPPLIST}
+.endif
# Target below can be used instead of standard `makesum' to correctly
# update distinfo (i.e., keeping other driver version entries intact)
--- x11/nvidia-driver/distinfo (revision 417930)
+++ x11/nvidia-driver/distinfo (working copy)
@@ -1,3 +1,7 @@
+SHA256 (NVIDIA-FreeBSD-x86_64-367.35.tar.gz) = b33057ce23ce1ae44ddd246a7d2d9e2b0aa2ed5a289d8a83e849249de81a1035
+SIZE (NVIDIA-FreeBSD-x86_64-367.35.tar.gz) = 59393955
+SHA256 (NVIDIA-FreeBSD-x86-367.35.tar.gz) = 2edf78801213dea72ddd6c40acd860893623224166ad522fd47e202443cb6d50
+SIZE (NVIDIA-FreeBSD-x86-367.35.tar.gz) = 62636433
SHA256 (NVIDIA-FreeBSD-x86_64-346.96.tar.gz) = 89daaff29afe92d825ec8c00149a703b4eb234e4f16bbfb98673f077521bcff9
SIZE (NVIDIA-FreeBSD-x86_64-346.96.tar.gz) = 58774970
SHA256 (NVIDIA-FreeBSD-x86-346.96.tar.gz) = a27d7b79c053702bf6524b2c4725321fa557be18a585735e0b8122d884348c3e
--- x11/nvidia-driver/files/extra-patch-mk-nvidia.lib.mk (revision 417930)
+++ x11/nvidia-driver/files/extra-patch-mk-nvidia.lib.mk (nonexistent)
@@ -1,13 +0,0 @@
---- mk/nvidia.lib.mk.orig 2013-08-16 10:53:30.000000000 +0200
-+++ mk/nvidia.lib.mk 2014-01-27 16:55:39.000000000 +0100
-@@ -46,8 +46,8 @@
- .endif
- .endif
- .if defined(AUXLINK_TGT)
-- @rm -f ${AUXLINK_LINK}
-- @ln -fs ${AUXLINK_TGT} ${AUXLINK_LINK}
-+ @rm -f ${DESTDIR}${AUXLINK_LINK}
-+ @ln -fs ${AUXLINK_TGT} ${DESTDIR}${AUXLINK_LINK}
- .endif
- .if defined(STATICLIB_NAME)
- @rm -f ${DESTDIR}${LIBDIR}/${STATICLIB_NAME}
--- x11/nvidia-driver/files/extra-patch-src_nvidia-modeset_nvidia-modeset-freebsd.c (nonexistent)
+++ x11/nvidia-driver/files/extra-patch-src_nvidia-modeset_nvidia-modeset-freebsd.c (working copy)
@@ -0,0 +1,20 @@
+--- src/nvidia-modeset/nvidia-modeset-freebsd.c.orig 2016-05-28 15:44:11 UTC
++++ src/nvidia-modeset/nvidia-modeset-freebsd.c
+@@ -245,7 +245,7 @@ struct nvkms_ref_ptr {
+
+ struct nvkms_ref_ptr* NVKMS_API_CALL nvkms_alloc_ref_ptr(void *ptr)
+ {
+- struct nvkms_ref_ptr *ref_ptr = nvkms_alloc(sizeof(*ref_ptr), NV_FALSE);
++ struct nvkms_ref_ptr *ref_ptr = nvkms_alloc(sizeof(*ref_ptr), NV_TRUE);
+ if (ref_ptr) {
+ mtx_init(&ref_ptr->lock, "nvkms-ref-ptr-lock", NULL, MTX_SPIN);
+ // The ref_ptr owner counts as a reference on the ref_ptr itself.
+@@ -792,7 +792,7 @@ static int nvkms_open(
+ nvkms_module.client_counter += 1;
+ sx_xunlock(&nvkms_module.lock);
+
+- popen = nvkms_alloc(sizeof(*popen), NV_FALSE);
++ popen = nvkms_alloc(sizeof(*popen), NV_TRUE);
+ if (popen == NULL) {
+ return ENOMEM;
+ }
--- x11/nvidia-driver/files/extra-patch-src_nvidia_Makefile (nonexistent)
+++ x11/nvidia-driver/files/extra-patch-src_nvidia_Makefile (working copy)
@@ -0,0 +1,18 @@
+--- src/nvidia/Makefile.orig 2015-08-26 22:35:13 UTC
++++ src/nvidia/Makefile
+@@ -26,6 +26,15 @@ NO_OBJ= true
+ stdarg.h:
+ @ln -s machine/stdarg.h stdarg.h
+
++SRCS+= opt_global.h
++.if ${MACHINE_ARCH} == "i386" && !defined(KERNBUILDDIR)
++PAE!= sed -n '/define NV_SUPPORT_PAE/p' nv-freebsd.h
++.if !empty(PAE)
++opt_global.h:
++ echo "#define PAE 1" > ${.TARGET}
++.endif
++.endif
++
+ *.c: stdarg.h
+
+ beforeinstall: ${KMOD}.ko
--- x11/nvidia-driver/files/extra-patch-src_nvidia_nv-freebsd.h (nonexistent)
+++ x11/nvidia-driver/files/extra-patch-src_nvidia_nv-freebsd.h (working copy)
@@ -0,0 +1,14 @@
+--- src/nvidia/nv-freebsd.h.orig 2015-10-30 22:40:02 UTC
++++ src/nvidia/nv-freebsd.h
+@@ -144,6 +144,11 @@ MALLOC_DECLARE(M_NVIDIA);
+ #endif
+
+ /*
++ * Enable/Disable support for PAE on i386.
++ */
++#undef NV_SUPPORT_PAE
++
++/*
+ * Enable/Disable support for ACPI Power Management.
+ */
+
--- x11/nvidia-driver/files/extra-patch-src_nvidia_nv-misc.h (nonexistent)
+++ x11/nvidia-driver/files/extra-patch-src_nvidia_nv-misc.h (working copy)
@@ -0,0 +1,11 @@
+--- src/nvidia/nv-misc.h.orig 2015-10-30 22:24:29 UTC
++++ src/nvidia/nv-misc.h
+@@ -11,6 +11,8 @@
+ #ifndef _NV_MISC_H_
+ #define _NV_MISC_H_
+
++#include "opt_global.h"
++
+ #include "nvtypes.h"
+ #include "rmretval.h"
+
--- x11/nvidia-driver/files/extra-patch-x11-driver-Makefile (revision 417930)
+++ x11/nvidia-driver/files/extra-patch-x11-driver-Makefile (nonexistent)
@@ -1,11 +0,0 @@
---- x11/driver/Makefile.orig 2013-08-16 10:53:30.000000000 +0200
-+++ x11/driver/Makefile 2014-01-27 18:25:14.000000000 +0100
-@@ -5,7 +5,7 @@
- .endif
-
- DRIVERS= nvidia_drv.o nvidia_drv.so
--.if exists(${LOCALBASE}/lib/xorg/modules/drivers)
-+.if exists(${DESTDIR}${LOCALBASE}/lib/xorg/modules/drivers)
- DRIVERDIR= ${LOCALBASE}/lib/xorg/modules/drivers
- .else
- DRIVERDIR= ${LOCALBASE}/lib/modules/drivers
--- x11/nvidia-driver/files/legacy-patch-mk-nvidia.lib.mk (revision 417930)
+++ x11/nvidia-driver/files/legacy-patch-mk-nvidia.lib.mk (nonexistent)
@@ -1,10 +0,0 @@
---- mk/nvidia.lib.mk.orig
-+++ mk/nvidia.lib.mk
-@@ -17,6 +17,7 @@
-
- install:
- .if defined(SHLIB_NAME)
-+ @mkdir -p ${DESTDIR}${LIBDIR}
- @rm -f ${DESTDIR}${LIBDIR}/${SHLIB_NAME}
- @${INSTALL} -C -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \
- ${NVIDIA_ROOT}/${OBJDIR}/${SHLIB_NAME} \
--- x11/nvidia-driver/files/legacy-patch-x11-driver-Makefile (revision 417930)
+++ x11/nvidia-driver/files/legacy-patch-x11-driver-Makefile (nonexistent)
@@ -1,11 +0,0 @@
---- x11/driver/Makefile.orig 2012-12-12 15:39:41.000000000 +0100
-+++ x11/driver/Makefile 2014-01-28 22:28:05.000000000 +0100
-@@ -5,7 +5,7 @@
- .endif
-
- DRIVERS= nvidia_drv.o nvidia_drv.so
--.if exists(${X11BASE}/lib/xorg/modules/drivers)
-+.if exists(${DESTDIR}${X11BASE}/lib/xorg/modules/drivers)
- DRIVERDIR= ${X11BASE}/lib/xorg/modules/drivers
- .else
- DRIVERDIR= ${X11BASE}/lib/modules/drivers
--- x11/nvidia-driver/files/patch-mk_nvidia.lib.mk (nonexistent)
+++ x11/nvidia-driver/files/patch-mk_nvidia.lib.mk (working copy)
@@ -0,0 +1,13 @@
+--- mk/nvidia.lib.mk.orig 2015-08-24 03:56:22 UTC
++++ mk/nvidia.lib.mk
+@@ -46,8 +46,8 @@ install: ${EXTRADEPS}
+ .endif
+ .endif
+ .if defined(AUXLINK_TGT)
+- @rm -f ${AUXLINK_LINK}
+- @ln -fs ${AUXLINK_TGT} ${AUXLINK_LINK}
++ @rm -f ${DESTDIR}${AUXLINK_LINK}
++ @ln -fs ${AUXLINK_TGT} ${DESTDIR}${AUXLINK_LINK}
+ .endif
+ .if defined(STATICLIB_NAME)
+ @rm -f ${DESTDIR}${LIBDIR}/${STATICLIB_NAME}
--- x11/nvidia-driver/files/patch-x11_driver_Makefile (nonexistent)
+++ x11/nvidia-driver/files/patch-x11_driver_Makefile (working copy)
@@ -0,0 +1,11 @@
+--- x11/driver/Makefile.orig 2015-08-24 03:56:22 UTC
++++ x11/driver/Makefile
+@@ -5,7 +5,7 @@ LOCALBASE= /usr/local
+ .endif
+
+ DRIVERS= nvidia_drv.o nvidia_drv.so
+-.if exists(${LOCALBASE}/lib/xorg/modules/drivers)
++.if exists(${DESTDIR}${LOCALBASE}/lib/xorg/modules/drivers)
+ DRIVERDIR= ${LOCALBASE}/lib/xorg/modules/drivers
+ .else
+ DRIVERDIR= ${LOCALBASE}/lib/modules/drivers
--- x11/nvidia-driver/files/security-patch-CVE-2012-0946 (revision 417930)
+++ x11/nvidia-driver/files/security-patch-CVE-2012-0946 (nonexistent)
@@ -1,28 +0,0 @@
---- src/nv.h.orig 2011-07-14 02:51:53.000000000 +0800
-+++ src/nv.h 2012-05-10 18:15:51.000000000 +0800
-@@ -364,6 +364,14 @@
- ((offset) >= (nv)->agp.address) && \
- (((offset) + ((length)-1)) <= (nv)->agp.address + ((nv)->agp.size-1)))
-
-+#define IS_REG_RANGE_WITHIN_MAPPING(nv, roffset, rlength, moffset, mlength) \
-+ (((moffset) <= ((nv)->regs->address + ((roffset) + (rlength)-1))) &&\
-+ (((moffset) + (mlength)-1) >= ((nv)->regs->address + (roffset))))
-+
-+#define IS_BLACKLISTED_REG_OFFSET(nv, offset, length) \
-+ ((IS_REG_RANGE_WITHIN_MAPPING(nv, 0x1000, 0x1000, offset, length)) ||\
-+ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x700000, 0x100000, offset, length)))
-+
- /* duplicated from nvos.h for external builds */
- #ifndef NVOS_AGP_CONFIG_DISABLE_AGP
- # define NVOS_AGP_CONFIG_DISABLE_AGP (0x00000000)
---- src/nvidia_subr.c.orig 2012-05-10 18:09:01.000000000 +0800
-+++ src/nvidia_subr.c 2012-05-10 18:13:41.000000000 +0800
-@@ -1464,6 +1464,8 @@
- }
-
- if (IS_REG_OFFSET(nv, offset, PAGE_SIZE)) {
-+ if (IS_BLACKLISTED_REG_OFFSET(nv, offset, PAGE_SIZE))
-+ return -1;
- *physical = offset;
- return 0;
- }
--- x11/nvidia-driver/files/security-patch-CVE-2012-4225 (revision 417930)
+++ x11/nvidia-driver/files/security-patch-CVE-2012-4225 (nonexistent)
@@ -1,24 +0,0 @@
---- src/nv.h.orig 2012-08-02 18:19:37.000000000 -0700
-+++ src/nv.h 2012-08-02 18:19:37.000000000 -0700
-@@ -436,7 +436,20 @@
-
- #define IS_BLACKLISTED_REG_OFFSET(nv, offset, length) \
- ((IS_REG_RANGE_WITHIN_MAPPING(nv, 0x1000, 0x1000, offset, length)) ||\
-- (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x700000, 0x100000, offset, length)))
-+ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x84000, 0x1000, offset, length)) ||\
-+ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x85000, 0x1000, offset, length)) ||\
-+ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x86000, 0x1000, offset, length)) ||\
-+ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x87000, 0x1000, offset, length)) ||\
-+ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x89000, 0x1000, offset, length)) ||\
-+ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0xa0000, 0x20000, offset, length)) ||\
-+ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x104000, 0x1000, offset, length)) ||\
-+ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x105000, 0x1000, offset, length)) ||\
-+ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x10a000, 0x1000, offset, length)) ||\
-+ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x1c2000, 0x1000, offset, length)) ||\
-+ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x1c3000, 0x1000, offset, length)) ||\
-+ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x618000, 0x2000, offset, length)) ||\
-+ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x627000, 0x1000, offset, length)) ||\
-+ (IS_REG_RANGE_WITHIN_MAPPING(nv, 0x700000, 0x100000, offset, length)))
-
- /* duplicated from nvos.h for external builds */
- #ifndef NVOS_AGP_CONFIG_DISABLE_AGP
--- x11/nvidia-driver/pkg-plist (revision 417930)
+++ x11/nvidia-driver/pkg-plist (working copy)
@@ -1,4 +1,6 @@
bin/nvidia-bug-report.sh
+bin/nvidia-debugdump
+bin/nvidia-smi
lib/.nvidia/libGL.so
lib/.nvidia/libGL.so.1
lib/.nvidia/libEGL.so
@@ -7,8 +9,8 @@
lib/libGLESv1_CM.so.1
lib/.nvidia/libGLESv2.so
lib/.nvidia/libGLESv2.so.2
-lib/libGLcore.so
-lib/libGLcore.so.1
+lib/libnvidia-glcore.so
+lib/libnvidia-glcore.so.1
lib/libXvMCNVIDIA.a
lib/libXvMCNVIDIA.so
lib/libXvMCNVIDIA.so.1
@@ -19,31 +21,45 @@
lib/libnvidia-eglcore.so.1
lib/libnvidia-glsi.so
lib/libnvidia-glsi.so.1
+lib/libnvidia-ml.so
+lib/libnvidia-ml.so.1
lib/libnvidia-tls.so
lib/libnvidia-tls.so.1
lib/libvdpau_nvidia.so
lib/vdpau/libvdpau_nvidia.so.1
+man/man1/nvidia-smi.1.gz
%%MODULESDIR%%/drivers/nvidia_drv.so
%%MODULESDIR%%/extensions/.nvidia/libglx.so
%%MODULESDIR%%/extensions/.nvidia/libglx.so.1
-%%MODULESDIR%%/libnvidia-wfb.so.1
/%%KMODDIR%%/nvidia.ko
+/%%KMODDIR%%/nvidia-modeset.ko
%%LINUX%%%%LINUXBASE%%/usr/lib/libEGL.so.%%SHLIB_VERSION%%
%%LINUX%%%%LINUXBASE%%/usr/lib/libEGL.so.1
+%%LINUX%%%%LINUXBASE%%/usr/lib/libEGL_nvidia.so.%%SHLIB_VERSION%%
%%LINUX%%%%LINUXBASE%%/usr/lib/libGL.so.%%SHLIB_VERSION%%
%%LINUX%%%%LINUXBASE%%/usr/lib/libGL.so.1
+%%LINUX%%%%LINUXBASE%%/usr/lib/libEGL_nvidia.so
+%%LINUX%%%%LINUXBASE%%/usr/lib/libEGL_nvidia.so.0
%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv1_CM.so.%%SHLIB_VERSION%%
%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv1_CM.so.1
+%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv1_CM.so
+%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv1_CM_nvidia.so.1
+%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv1_CM_nvidia.so.%%SHLIB_VERSION%%
%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv2.so.%%SHLIB_VERSION%%
%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv2.so.2
-%%LINUX%%%%LINUXBASE%%/usr/lib/libGLcore.so.%%SHLIB_VERSION%%
-%%LINUX%%%%LINUXBASE%%/usr/lib/libGLcore.so.1
+%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv2.so
+%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv2_nvidia.so.2
+%%LINUX%%%%LINUXBASE%%/usr/lib/libGLESv2_nvidia.so.%%SHLIB_VERSION%%
+%%LINUX%%%%LINUXBASE%%/usr/lib/libGLdispatch.so
+%%LINUX%%%%LINUXBASE%%/usr/lib/libGLdispatch.so.0
+%%LINUX%%%%LINUXBASE%%/usr/lib/libOpenGL.so
+%%LINUX%%%%LINUXBASE%%/usr/lib/libOpenGL.so.0
+%%LINUX%%%%LINUXBASE%%/usr/lib/libnvidia-glcore.so.%%SHLIB_VERSION%%
%%LINUX%%%%LINUXBASE%%/usr/lib/libcuda.so.%%SHLIB_VERSION%%
%%LINUX%%%%LINUXBASE%%/usr/lib/libcuda.so.1
%%LINUX%%%%LINUXBASE%%/usr/lib/libnvidia-eglcore.so.%%SHLIB_VERSION%%
%%LINUX%%%%LINUXBASE%%/usr/lib/libnvidia-glsi.so.%%SHLIB_VERSION%%
%%LINUX%%%%LINUXBASE%%/usr/lib/libnvidia-tls.so.%%SHLIB_VERSION%%
-%%LINUX%%%%LINUXBASE%%/usr/lib/libnvidia-tls.so.1
%%LINUX%%%%LINUXBASE%%/usr/lib/libvdpau.so.%%SHLIB_VERSION%%
%%LINUX%%%%LINUXBASE%%/usr/lib/libvdpau.so.1
%%LINUX%%%%LINUXBASE%%/usr/lib/libvdpau_nvidia.so
@@ -54,3 +70,8 @@
%%LINUX%%%%LINUXBASE%%/usr/lib/vdpau/libvdpau_trace.so.1
%%LINUX%%@exec %%LINUXBASE%%/sbin/ldconfig -r %%LINUXBASE%%
%%LINUX%%@unexec %%LINUXBASE%%/sbin/ldconfig -r %%LINUXBASE%%
+%%LINUX%%@dir %%LINUXBASE%%/usr/lib/vdpau
+%%LINUX%%@dir %%LINUXBASE%%/usr/lib
+%%LINUX%%@dir %%LINUXBASE%%/usr
+%%LINUX%%@dir %%LINUXBASE%%
+%%LINUX%%@dir /compat