mirror of
https://git.FreeBSD.org/ports.git
synced 2025-01-16 07:58:04 +00:00
Update nVidia main driver, Linux libraries, and tools to version 460.36.
PR: 249505, 250277
This commit is contained in:
parent
e8506bd7d0
commit
bc4f906a66
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=564088
@ -1,7 +1,7 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= nvidia-libs
|
||||
DISTVERSION?= 440.100
|
||||
DISTVERSION?= 460.39
|
||||
# Always try to set PORTREVISION as it can be overridden by the slave ports
|
||||
PORTREVISION?= 0
|
||||
CATEGORIES= x11 linux
|
||||
@ -40,9 +40,6 @@ LINUX_LIBS= libcuda.so.${PORTVERSION} \
|
||||
libnvidia-opencl.so.${PORTVERSION} \
|
||||
libnvidia-tls.so.${PORTVERSION} \
|
||||
libvdpau_nvidia.so.${PORTVERSION}
|
||||
.if ${NVVERSION} < 415.013
|
||||
LINUX_LIBS+= tls/libnvidia-tls.so.${PORTVERSION}
|
||||
.endif
|
||||
LINUX_LINKS= libcuda.so.${PORTVERSION} libcuda.so.1 \
|
||||
libcuda.so.${PORTVERSION} libcuda.so \
|
||||
libnvcuvid.so.${PORTVERSION} libnvcuvid.so.1 \
|
||||
@ -61,6 +58,7 @@ LINUX32_LIBS= libcuda.so.${PORTVERSION} \
|
||||
libnvidia-tls.so.${PORTVERSION} \
|
||||
libvdpau_nvidia.so.${PORTVERSION}
|
||||
.if ${NVVERSION} < 415.013
|
||||
LINUX_LIBS+= tls/libnvidia-tls.so.${PORTVERSION}
|
||||
LINUX32_LIBS+= tls/libnvidia-tls.so.${PORTVERSION}
|
||||
.endif
|
||||
LINUX32_LINKS= libcuda.so.${PORTVERSION} libcuda.so.1 \
|
||||
@ -93,11 +91,16 @@ PLIST_RE+= '\,${LINUXBASE}.*libEGL_nvidia\.so\.${PORTVERSION},d'
|
||||
.else
|
||||
PLIST_RE+= '\,${LINUXBASE}.*libEGL_nvidia\.so,d'
|
||||
.endif
|
||||
.if ${NVVERSION} >= 361.016 && ${NVVERSION} < 450.051
|
||||
LINUX_LIBS+= libnvidia-fatbinaryloader.so.${PORTVERSION}
|
||||
LINUX32_LIBS+= libnvidia-fatbinaryloader.so.${PORTVERSION}
|
||||
.else
|
||||
PLIST_RE+= '\,${LINUXBASE}.*libnvidia-fatbinaryloader\.so,d'
|
||||
.endif
|
||||
.if ${NVVERSION} >= 361.016
|
||||
LINUX_LIBS+= libGLESv1_CM_nvidia.so.${PORTVERSION} \
|
||||
libGLESv2_nvidia.so.${PORTVERSION} \
|
||||
libGLX_nvidia.so.${PORTVERSION} \
|
||||
libnvidia-fatbinaryloader.so.${PORTVERSION} \
|
||||
libnvidia-ptxjitcompiler.so.${PORTVERSION}
|
||||
LINUX_LINKS+= libGLESv1_CM_nvidia.so.${PORTVERSION} libGLESv1_CM_nvidia.so.1 \
|
||||
libGLESv2_nvidia.so.${PORTVERSION} libGLESv2_nvidia.so.2 \
|
||||
@ -108,7 +111,6 @@ LINUX_LINKS+= libGLESv1_CM_nvidia.so.${PORTVERSION} libGLESv1_CM_nvidia.so.1 \
|
||||
LINUX32_LIBS+= libGLESv1_CM_nvidia.so.${PORTVERSION} \
|
||||
libGLESv2_nvidia.so.${PORTVERSION} \
|
||||
libGLX_nvidia.so.${PORTVERSION} \
|
||||
libnvidia-fatbinaryloader.so.${PORTVERSION} \
|
||||
libnvidia-ptxjitcompiler.so.${PORTVERSION}
|
||||
LINUX32_LINKS+= libGLESv1_CM_nvidia.so.${PORTVERSION} libGLESv1_CM_nvidia.so.1 \
|
||||
libGLESv2_nvidia.so.${PORTVERSION} libGLESv2_nvidia.so.2 \
|
||||
@ -119,10 +121,13 @@ LINUX32_LINKS+= libGLESv1_CM_nvidia.so.${PORTVERSION} libGLESv1_CM_nvidia.so.1 \
|
||||
.else
|
||||
PLIST_RE+= '\,${LINUXBASE}.*libGLESv(1_CM|2)_nvidia\.so,d' \
|
||||
'\,${LINUXBASE}.*libGLX_(nvidia|indirect)\.so,d' \
|
||||
'\,${LINUXBASE}.*libnvidia-fatbinaryloader\.so,d' \
|
||||
'\,${LINUXBASE}.*libnvidia-ptxjitcompiler\.so,d'
|
||||
.endif
|
||||
.if ${NVVERSION} >= 440.026
|
||||
.if ${NVVERSION:R} >= 460 # 460.27.04
|
||||
LINUX_LIBS+= libnvidia-egl-wayland.so.1.1.5
|
||||
LINUX_LINKS+= libnvidia-egl-wayland.so.1.1.5 libnvidia-egl-wayland.so.1
|
||||
PLIST_RE+= '\,${LINUXBASE},s/(libnvidia-egl-wayland\.so)\.X/\1.1.1.5/'
|
||||
.elif ${NVVERSION} >= 440.026
|
||||
LINUX_LIBS+= libnvidia-egl-wayland.so.1.1.4
|
||||
LINUX_LINKS+= libnvidia-egl-wayland.so.1.1.4 libnvidia-egl-wayland.so.1
|
||||
PLIST_RE+= '\,${LINUXBASE},s/(libnvidia-egl-wayland\.so)\.X/\1.1.1.4/'
|
||||
|
@ -1,6 +1,6 @@
|
||||
TIMESTAMP = 1482026038
|
||||
SHA256 (NVIDIA-Linux-x86_64-440.100.run) = 649684fab4f37b178afb6cae012e7f9736377d89fa8abdfca26f24a13bbacf1f
|
||||
SIZE (NVIDIA-Linux-x86_64-440.100.run) = 144653408
|
||||
SHA256 (NVIDIA-Linux-x86_64-460.39.run) = 0bf0664078013aa62ed6840caed0637b226884b9398e1fb647e127ad3ad9a37f
|
||||
SIZE (NVIDIA-Linux-x86_64-460.39.run) = 178310565
|
||||
SHA256 (NVIDIA-Linux-x86_64-390.141.run) = 4b389a374412c80b2eda356c0fb9e8bef5768831d2cb77c8c9f906f6172c3f7e
|
||||
SIZE (NVIDIA-Linux-x86_64-390.141.run) = 85330901
|
||||
SHA256 (NVIDIA-Linux-x86-390.141.run) = 8dfbc8ce77d2f49780105dd7e3058bbf8e663e9b17495507b7544ece34ffaf43
|
||||
|
@ -11,9 +11,9 @@
|
||||
# or `x11/nvidia-driver-304').
|
||||
|
||||
PORTNAME= nvidia-driver
|
||||
DISTVERSION?= 440.100
|
||||
DISTVERSION?= 460.39
|
||||
# Always try to set PORTREVISION as it can be overridden by the slave ports
|
||||
PORTREVISION?= 1
|
||||
PORTREVISION?= 0
|
||||
CATEGORIES= x11
|
||||
MASTER_SITES= NVIDIA/XFree86/FreeBSD-${ARCH_SUFX}/${DISTVERSION}
|
||||
DISTNAME= NVIDIA-FreeBSD-${ARCH_SUFX}-${DISTVERSION}
|
||||
@ -47,9 +47,7 @@ SUB_FILES+= pkg-deinstall pkg-install
|
||||
SUB_PATCHES= extra-patch-src-Makefile \
|
||||
extra-patch-src-nv-freebsd.h \
|
||||
extra-patch-src-nv-misc.h \
|
||||
extra-patch-src-nvidia_ctl.c \
|
||||
extra-patch-src-nvidia_dev.c \
|
||||
extra-patch-src-nvidia_linux.c \
|
||||
extra-patch-src-nvidia_pci.c
|
||||
DOCSDIR= ${PREFIX}/share/doc/NVIDIA_GLX-1.0
|
||||
MODULESDIR= lib/xorg/modules
|
||||
@ -67,8 +65,15 @@ NVSRC= .
|
||||
NVSRC= nvidia
|
||||
.endif
|
||||
|
||||
.if ${NVVERSION} >= 358.009
|
||||
.if ${NVVERSION} < 460.039
|
||||
. if ${NVVERSION} >= 358.009
|
||||
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-src_nvidia-modeset_nvidia-modeset-freebsd.c
|
||||
. endif
|
||||
SUB_PATCHES+= extra-patch-src-nvidia_ctl.c \
|
||||
extra-patch-src-nvidia_linux.c
|
||||
.else
|
||||
EXTRA_PATCHES+= ${FILESDIR}/460-patch-lib-libGLX_nvidia-Makefile
|
||||
SUB_PATCHES+= 460-patch-src-nvidia_linux.c
|
||||
.endif
|
||||
|
||||
OPTIONS_DEFINE= ACPI_PM LINUX WBINVD DOCS
|
||||
@ -99,7 +104,7 @@ EXTRA_PATCHES+= ${WRKDIR}/${p}
|
||||
|
||||
post-patch: .SILENT
|
||||
# We should support -CURRENT: kill the check (first #if __FreeBSD_version)
|
||||
linenum=$$(${SED} -ne '/^#if __FreeBSD_version/ {=; q;}' \
|
||||
linenum=$$(${SED} -ne '/^#if __FreeBSD_version/ { = ; q ; }' \
|
||||
${WRKSRC}/src/${NVSRC}/nv-freebsd.h) ; ${REINPLACE_CMD} \
|
||||
-e "$$linenum,+2d" ${WRKSRC}/src/${NVSRC}/nv-freebsd.h
|
||||
# Adjust Linux headers #include's after FreeBSD src r246085
|
||||
@ -213,6 +218,10 @@ post-install: .SILENT
|
||||
${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:R} < 460
|
||||
${REINPLACE_CMD} -e '/libnvidia-glvkspirv\.so/d ; \
|
||||
/nvidia_icd\.json/d ; /nvidia_layers\.json/d' ${TMPPLIST}
|
||||
.endif
|
||||
.if ${NVVERSION} >= 304.128 && ${NVVERSION} < 310.019 || ${NVVERSION} >= 361.016
|
||||
${REINPLACE_CMD} -E '/libvdpau(_trace)?\.so/d' ${TMPPLIST}
|
||||
.endif
|
||||
|
@ -1,6 +1,6 @@
|
||||
TIMESTAMP = 1482026038
|
||||
SHA256 (NVIDIA-FreeBSD-x86_64-440.100.tar.gz) = da5abe605560890405976785eb28e6d9fa79181ac7d158e52e5327d4d0faef5f
|
||||
SIZE (NVIDIA-FreeBSD-x86_64-440.100.tar.gz) = 82523267
|
||||
SHA256 (NVIDIA-FreeBSD-x86_64-460.39.tar.gz) = a666f04313e9c919e3c6ecebe3c8d75d91246147955d9497ce6dae64738a314e
|
||||
SIZE (NVIDIA-FreeBSD-x86_64-460.39.tar.gz) = 108214308
|
||||
SHA256 (NVIDIA-FreeBSD-x86_64-390.141.tar.gz) = d51fb464a52773c285ba075628f4a513a3ece5bba8e500be8b65fd0c122f78a4
|
||||
SIZE (NVIDIA-FreeBSD-x86_64-390.141.tar.gz) = 65303462
|
||||
SHA256 (NVIDIA-FreeBSD-x86-390.141.tar.gz) = c0e2abc13ec350ba7d34bf68225261cf1bfa0f5b07e30c71dd090c83c0542f7d
|
||||
|
27
x11/nvidia-driver/files/460-patch-lib-libGLX_nvidia-Makefile
Normal file
27
x11/nvidia-driver/files/460-patch-lib-libGLX_nvidia-Makefile
Normal file
@ -0,0 +1,27 @@
|
||||
--- lib/libGLX_nvidia/Makefile.orig
|
||||
+++ lib/libGLX_nvidia/Makefile
|
||||
@@ -16,18 +16,18 @@ EXTRADEPS= nvidia-application-profiles-rc nvidia_icd.j
|
||||
# look for this file.
|
||||
|
||||
nvidia_icd.json:
|
||||
- @mkdir -p ${VKICD_PATH}
|
||||
+ @mkdir -p ${DESTDIR}${VKICD_PATH}
|
||||
@${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \
|
||||
${NVIDIA_ROOT}/nvidia_icd.json \
|
||||
- ${VKICD_PATH}
|
||||
- @sed -i '' -e "s/__NV_VK_ICD__/lib${LIB}.so/" ${VKICD_PATH}/nvidia_icd.json
|
||||
+ ${DESTDIR}${VKICD_PATH}
|
||||
+ @sed -i '' -e "s/__NV_VK_ICD__/lib${LIB}.so/" ${DESTDIR}${VKICD_PATH}/nvidia_icd.json
|
||||
|
||||
nvidia_layers.json:
|
||||
- @mkdir -p ${VKLAYERS_PATH}
|
||||
+ @mkdir -p ${DESTDIR}${VKLAYERS_PATH}
|
||||
@${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \
|
||||
${NVIDIA_ROOT}/nvidia_layers.json \
|
||||
- ${VKLAYERS_PATH}
|
||||
- @sed -i '' -e "s/__NV_VK_ICD__/lib${LIB}.so/" ${VKLAYERS_PATH}/nvidia_layers.json
|
||||
+ ${DESTDIR}${VKLAYERS_PATH}
|
||||
+ @sed -i '' -e "s/__NV_VK_ICD__/lib${LIB}.so/" ${DESTDIR}${VKLAYERS_PATH}/nvidia_layers.json
|
||||
|
||||
|
||||
nvidia-application-profiles-rc:
|
33
x11/nvidia-driver/files/460-patch-src-nvidia_linux.c.in
Normal file
33
x11/nvidia-driver/files/460-patch-src-nvidia_linux.c.in
Normal file
@ -0,0 +1,33 @@
|
||||
--- src/%%NVSRC%%/nvidia_linux.c.orig 2017-09-14 20:46:30 UTC
|
||||
+++ src/%%NVSRC%%/nvidia_linux.c
|
||||
@@ -35,21 +35,16 @@ int linux_ioctl_nvidia(
|
||||
struct linux_ioctl_args *args
|
||||
)
|
||||
{
|
||||
- struct file *fp;
|
||||
- int error;
|
||||
- cap_rights_t rights;
|
||||
- u_long cmd;
|
||||
+ static const uint32_t dir[4] = { IOC_VOID, IOC_IN, IOC_OUT, IOC_INOUT };
|
||||
|
||||
- error = fget(td, args->fd, cap_rights_init(&rights, CAP_IOCTL), &fp);
|
||||
- if (error != 0)
|
||||
- return error;
|
||||
-
|
||||
- cmd = args->cmd;
|
||||
-
|
||||
- error = fo_ioctl(fp, cmd, (caddr_t)args->arg, td->td_ucred, td);
|
||||
- fdrop(fp, td);
|
||||
-
|
||||
- return error;
|
||||
+ if ((args->cmd & (1<<29)) != 0) {
|
||||
+ /* FreeBSD has only 13 bits to encode the size. */
|
||||
+ printf("nvidia: pid %d (%s): ioctl cmd=0x%x size too large\n",
|
||||
+ (int)td->td_proc->p_pid, td->td_proc->p_comm, args->cmd);
|
||||
+ return (EINVAL);
|
||||
+ }
|
||||
+ args->cmd = (args->cmd & ~IOC_DIRMASK) | dir[args->cmd >> 30];
|
||||
+ return (sys_ioctl(td, (struct ioctl_args *)args));
|
||||
}
|
||||
|
||||
struct linux_ioctl_handler nvidia_handler = {
|
@ -37,6 +37,8 @@ lib/libnvidia-glcore.so
|
||||
lib/libnvidia-glcore.so.1
|
||||
lib/libnvidia-glsi.so
|
||||
lib/libnvidia-glsi.so.1
|
||||
lib/libnvidia-glvkspirv.so
|
||||
lib/libnvidia-glvkspirv.so.1
|
||||
lib/libnvidia-ml.so
|
||||
lib/libnvidia-ml.so.1
|
||||
lib/libnvidia-tls.so
|
||||
@ -79,6 +81,8 @@ lib32/vdpau/libvdpau_nvidia.so.1
|
||||
man/man1/nvidia-smi.1.gz
|
||||
@comment share/egl/egl_external_platform.d/10_nvidia_wayland.json
|
||||
share/glvnd/egl_vendor.d/10_nvidia.json
|
||||
share/vulkan/icd.d/nvidia_icd.json
|
||||
share/vulkan/implicit_layer.d/nvidia_layers.json
|
||||
%%MODULESDIR%%/drivers/nvidia_drv.so
|
||||
%%MODULESDIR%%/extensions/.nvidia/libglx.so
|
||||
%%MODULESDIR%%/extensions/.nvidia/libglx.so.1
|
||||
|
@ -2,7 +2,7 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= nvidia-settings
|
||||
PORTVERSION= 440.100
|
||||
PORTVERSION= 460.39
|
||||
CATEGORIES= x11
|
||||
|
||||
MAINTAINER= x11@FreeBSD.org
|
||||
|
@ -1,3 +1,3 @@
|
||||
TIMESTAMP = 1593032511
|
||||
SHA256 (NVIDIA-nvidia-settings-440.100_GH0.tar.gz) = 562e487261986f4e5241f554b14b799fd9184cdb121532c0e3fe309709c37719
|
||||
SIZE (NVIDIA-nvidia-settings-440.100_GH0.tar.gz) = 1314731
|
||||
TIMESTAMP = 1611681405
|
||||
SHA256 (NVIDIA-nvidia-settings-460.39_GH0.tar.gz) = ea4183fcf38f4cdfedbf782f101de57a88e2c38fc25b9bd691b101087da0e5e2
|
||||
SIZE (NVIDIA-nvidia-settings-460.39_GH0.tar.gz) = 1233261
|
||||
|
@ -2,7 +2,7 @@
|
||||
# $FreeBSD$
|
||||
|
||||
PORTNAME= nvidia-xconfig
|
||||
PORTVERSION= 440.100
|
||||
PORTVERSION= 460.39
|
||||
CATEGORIES= x11
|
||||
|
||||
MAINTAINER= x11@FreeBSD.org
|
||||
|
@ -1,3 +1,3 @@
|
||||
TIMESTAMP = 1593032427
|
||||
SHA256 (NVIDIA-nvidia-xconfig-440.100_GH0.tar.gz) = 2517e614b8500f69099b74abceb782ca4741c61dc288560d9d39c40cfa458b1d
|
||||
SIZE (NVIDIA-nvidia-xconfig-440.100_GH0.tar.gz) = 141048
|
||||
TIMESTAMP = 1611681275
|
||||
SHA256 (NVIDIA-nvidia-xconfig-460.39_GH0.tar.gz) = eb6e6034389a3ed2ea39d89b9a7a49e9f1cc4669f620abff114964867c05ed9f
|
||||
SIZE (NVIDIA-nvidia-xconfig-460.39_GH0.tar.gz) = 142321
|
||||
|
Loading…
Reference in New Issue
Block a user