1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-10-18 19:49:40 +00:00

- Update NVidia mainline driver to version 410.104, the latest in

the 410.xx series and the last without full Wayland support
- Move 390.xx to corresponding legacy slave port and update to the
  latest version 390.129

PR:	232645
This commit is contained in:
Alexey Dokuchaev 2019-10-29 13:44:57 +00:00
parent 86df10d07e
commit 836cc2b180
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=515978
6 changed files with 74 additions and 12 deletions

View File

@ -232,6 +232,7 @@
SUBDIR += nvidia-driver
SUBDIR += nvidia-driver-304
SUBDIR += nvidia-driver-340
SUBDIR += nvidia-driver-390
SUBDIR += nvidia-settings
SUBDIR += nvidia-xconfig
SUBDIR += nxcomp

View File

@ -0,0 +1,11 @@
# Created by: Alexey Dokuchaev <danfe@FreeBSD.org>
# $FreeBSD$
DISTVERSION= 390.129
# Explicitly set PORTREVISION as it can be overridden by the master port
PORTREVISION= 0
MASTERDIR= ${.CURDIR}/../nvidia-driver
PKGNAMESUFFIX= -390
.include "${MASTERDIR}/Makefile"

View File

@ -10,9 +10,9 @@
# slave ports instead (`x11/nvidia-driver-340' or `x11/nvidia-driver-304').
PORTNAME= nvidia-driver
DISTVERSION?= 390.87
DISTVERSION?= 410.104
# Always try to set PORTREVISION as it can be overridden by the slave ports
PORTREVISION?= 4
PORTREVISION?= 0
CATEGORIES= x11
MASTER_SITES= NVIDIA/XFree86/FreeBSD-${ARCH_SUFX}/${DISTVERSION}
DISTNAME= NVIDIA-FreeBSD-${ARCH_SUFX}-${DISTVERSION}
@ -24,6 +24,11 @@ COMMENT= NVidia graphics card binary drivers for hardware OpenGL rendering
LICENSE_FILE= ${WRKSRC}/doc/license.txt
.include "${.CURDIR}/../nvidia-driver/Makefile.common"
# Pull GNU sed(1) for "binary" patching of libEGL.so.1 (see below)
.if ${NVVERSION} >= 410.057
PATCH_DEPENDS= gsed:textproc/gsed
.endif
USES= kmod uidfix
USE_XORG= x11 xorg-server xext
USE_GL= gl
@ -35,7 +40,9 @@ USE_LDCONFIG= yes
# fixed upstream (across all versions, including legacy ones), use this
# hack below to universally set NVIDIA_ROOT. Also provide X11BASE value
# since it is still used by legacy drivers.
MAKE_ENV= NVIDIA_ROOT=${WRKSRC} X11BASE=${LOCALBASE}
GLVND_JSON_PATH= ${PREFIX}/share/glvnd/egl_vendor.d
MAKE_ENV= NVIDIA_ROOT=${WRKSRC} X11BASE=${LOCALBASE} \
EGL_GLVND_JSON_PATH=${STAGEDIR}${GLVND_JSON_PATH}
SUB_FILES= pkg-deinstall pkg-install pkg-message nvidia.conf
SUB_PATCHES= extra-patch-src-Makefile \
extra-patch-src-nv-freebsd.h \
@ -140,8 +147,10 @@ post-patch: .SILENT
.endif
# Adjust installation path of a conflicting file (shared between
# nvidia-driver and xorg-server) to ease package manager work
.if ${NVVERSION} < 410.057
${REINPLACE_CMD} -e '/LIBDIR/s:xorg/modules/extensions:&/.nvidia:' \
${WRKSRC}/x11/extension/Makefile
.endif
# Do not execute afterinstall target (prevent automatic module registration
# and "smart" installation of conflicting files heuristics)
${REINPLACE_CMD} -e 's/afterinstall/&_dontexecute/' ${WRKSRC}/Makefile
@ -150,8 +159,16 @@ post-patch: .SILENT
# /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
.if ${NVVERSION} >= 334.016
${REINPLACE_CMD} -e 's,/usr/share/nvidia,${STAGEDIR}${DOCSDIR},' \
.if ${NVVERSION} >= 410.057
${REINPLACE_CMD} -e 's,/usr/share/nvidia,$${DESTDIR}${DOCSDIR},' \
${WRKSRC}/lib/libGLX_nvidia/Makefile ${WRKSRC}/doc/Makefile
${REINPLACE_CMD} -e '/AUXLINK_LINK/s,\$${DESTDIR},,' \
${WRKSRC}/lib/libGLX_nvidia/Makefile
prefix="${PREFIX}" ; padding=$$(($${#prefix}+3)) ; \
gsed ${REINPLACE_ARGS} -E "s,/etc/glvnd/egl_vendor\.d.{$$padding},${GLVND_JSON_PATH}\x00," \
${WRKSRC}/obj/libglvnd/libEGL.so.1
.elif ${NVVERSION} >= 334.016
${REINPLACE_CMD} -e 's,/usr/share/nvidia,$${DESTDIR}${DOCSDIR},' \
${WRKSRC}/lib/libGL/Makefile ${WRKSRC}/doc/Makefile
.endif
# Finally, process OPTIONS
@ -209,7 +226,15 @@ post-install: .SILENT
${REINPLACE_CMD} -E '/(lib)?nvidia-(debugdump|smi|ml)/d' ${TMPPLIST}
.endif
.if ${NVVERSION} < 358.009
${REINPLACE_CMD} '/nvidia-modeset.ko/d' ${TMPPLIST}
${REINPLACE_CMD} -e '/nvidia-modeset\.ko/d' ${TMPPLIST}
.endif
.if ${NVVERSION} < 410.057
${REINPLACE_CMD} -E '/lib(EGL|GLESv[12].*)_nvidia/d ; \
/lib(GLX|GLdispatch|OpenGL)/d ; \
/extensions\/libglxserver_nvidia\.so/d ; \
/10_nvidia\.json/d' ${TMPPLIST}
.else
${REINPLACE_CMD} -e '/extensions\/\.nvidia\/libglx/d' ${TMPPLIST}
.endif
# Rename some libraries and install a libmap file to resolve conflict with
# Mesa libraries.

View File

@ -4,7 +4,11 @@ LICENSE= NVIDIA
LICENSE_NAME= License For Customer Use of NVIDIA Software
LICENSE_PERMS= dist-mirror no-dist-sell pkg-mirror no-pkg-sell auto-accept
.if ${DISTVERSION:R} > 390
ONLY_FOR_ARCHS= amd64
.else
ONLY_FOR_ARCHS= i386 amd64
.endif
ARCH_SUFX= x86${ARCH:S/i386//:S/amd/_/}

View File

@ -1,8 +1,11 @@
TIMESTAMP = 1482026038
SHA256 (NVIDIA-FreeBSD-x86_64-390.87.tar.gz) = 221c80982378a333f541646d5d2030c72311c491f5a0f98b93fdd95cd5be11fc
SIZE (NVIDIA-FreeBSD-x86_64-390.87.tar.gz) = 63648591
SHA256 (NVIDIA-FreeBSD-x86-390.87.tar.gz) = a2e61b0c541aa9bdcde7de43cd88a7ce5ff3de9fdafe60fa7d6e10942186d7d4
SIZE (NVIDIA-FreeBSD-x86-390.87.tar.gz) = 64326801
SHA256 (NVIDIA-FreeBSD-x86_64-410.104.tar.gz) = 39bafa652026fae3dc077ceff8bea0a15401c36fd13c4770842f546b2e27498f
SIZE (NVIDIA-FreeBSD-x86_64-410.104.tar.gz) = 61995820
SHA256 (NVIDIA-FreeBSD-x86_64-390.129.tar.gz) = fa109c9737a529c87efe66c3bc0a47bffa49278d6361aebc1bf6b784eb5d6968
SIZE (NVIDIA-FreeBSD-x86_64-390.129.tar.gz) = 63905694
TIMESTAMP = 1572354940
SHA256 (NVIDIA-FreeBSD-x86-390.129.tar.gz) = 58e537c1a016e4fd362590e32c6f874ccdd90ce265839eb30cf370afcdc22bae
SIZE (NVIDIA-FreeBSD-x86-390.129.tar.gz) = 64565178
SHA256 (NVIDIA-FreeBSD-x86_64-340.107.tar.gz) = 047efae28cc81e4d56c64d2a0c15d9b7ff07f09bba22696464de8276334a4df7
SIZE (NVIDIA-FreeBSD-x86_64-340.107.tar.gz) = 61179967
SHA256 (NVIDIA-FreeBSD-x86-340.107.tar.gz) = 1978ae48512d8a693979b153463c76954d2aec91a6b2a568b3aa1198e5b3d199

View File

@ -2,14 +2,29 @@ bin/nvidia-bug-report.sh
bin/nvidia-debugdump
bin/nvidia-smi
etc/libmap.d/nvidia.conf
lib/libGL-NVIDIA.so
lib/libGL-NVIDIA.so.1
lib/libEGL-NVIDIA.so
lib/libEGL-NVIDIA.so.1
lib/libEGL_nvidia.so
lib/libEGL_nvidia.so.0
lib/libGL-NVIDIA.so
lib/libGL-NVIDIA.so.1
lib/libGLESv1_CM.so
lib/libGLESv1_CM.so.1
lib/libGLESv1_CM_nvidia.so
lib/libGLESv1_CM_nvidia.so.1
lib/libGLESv2-NVIDIA.so
lib/libGLESv2-NVIDIA.so.2
lib/libGLESv2_nvidia.so
lib/libGLESv2_nvidia.so.2
lib/libGLX.so
lib/libGLX.so.0
lib/libGLX_indirect.so.0
lib/libGLX_nvidia.so
lib/libGLX_nvidia.so.0
lib/libGLdispatch.so
lib/libGLdispatch.so.0
lib/libOpenGL.so
lib/libOpenGL.so.0
lib/libXvMCNVIDIA.a
lib/libXvMCNVIDIA.so
lib/libXvMCNVIDIA.so.1
@ -29,8 +44,11 @@ lib/libnvidia-tls.so.1
lib/libvdpau_nvidia.so
lib/vdpau/libvdpau_nvidia.so.1
man/man1/nvidia-smi.1.gz
share/glvnd/egl_vendor.d/10_nvidia.json
%%MODULESDIR%%/drivers/nvidia_drv.so
%%MODULESDIR%%/extensions/.nvidia/libglx.so
%%MODULESDIR%%/extensions/.nvidia/libglx.so.1
%%MODULESDIR%%/extensions/libglxserver_nvidia.so
%%MODULESDIR%%/extensions/libglxserver_nvidia.so.1
/%%KMODDIR%%/nvidia.ko
/%%KMODDIR%%/nvidia-modeset.ko