Index: head/x11/Makefile =================================================================== --- head/x11/Makefile (revision 515977) +++ head/x11/Makefile (revision 515978) @@ -1,527 +1,528 @@ # $FreeBSD$ # COMMENT = Ports to support the X window system SUBDIR += 3ddesktop SUBDIR += 9box SUBDIR += 9menu SUBDIR += admiral SUBDIR += alacritty SUBDIR += alltray SUBDIR += alttab SUBDIR += aminal SUBDIR += antimicro SUBDIR += appres SUBDIR += apwal SUBDIR += arandr SUBDIR += aterm SUBDIR += babl SUBDIR += bbappconf SUBDIR += bbdock SUBDIR += bbrun SUBDIR += beforelight SUBDIR += bemenu SUBDIR += bgrot SUBDIR += bgs SUBDIR += bitmap SUBDIR += bmpanel2 SUBDIR += bricons SUBDIR += brisk-menu SUBDIR += cde SUBDIR += cinnamon SUBDIR += cinnamon-desktop SUBDIR += cinnamon-menus SUBDIR += cinnamon-screensaver SUBDIR += cinnamon-session SUBDIR += cl-clx SUBDIR += cl-clx-sbcl SUBDIR += compton-conf SUBDIR += conlecterm SUBDIR += controllermap SUBDIR += cool-retro-term SUBDIR += decurs SUBDIR += deforaos-desktop SUBDIR += deforaos-keyboard SUBDIR += deforaos-libdesktop SUBDIR += deforaos-locker SUBDIR += deforaos-panel SUBDIR += deskmenu SUBDIR += deskpaint SUBDIR += dmenu SUBDIR += dmenu2 SUBDIR += docker-tray SUBDIR += dsbautostart SUBDIR += dxpc SUBDIR += dzen2 SUBDIR += eaglemode SUBDIR += editres SUBDIR += emprint SUBDIR += erun SUBDIR += eterm SUBDIR += evilvte SUBDIR += fbdesk SUBDIR += fbpanel SUBDIR += find-cursor SUBDIR += fireflies SUBDIR += florence SUBDIR += flruler SUBDIR += fluxbg SUBDIR += fpc-x11 SUBDIR += fstobdf SUBDIR += gcb SUBDIR += gdm SUBDIR += gmrun SUBDIR += gnome-clipboard-daemon SUBDIR += gnome-desktop SUBDIR += gnome-menus SUBDIR += gnome-pie SUBDIR += gnome-session SUBDIR += gnome-shell SUBDIR += gnome-shell-extensions SUBDIR += gnome-terminal SUBDIR += gnome3 SUBDIR += gnome3-lite SUBDIR += gnustep-app SUBDIR += gpctool SUBDIR += grabc SUBDIR += grim SUBDIR += gromit SUBDIR += gskrab SUBDIR += gstreamer1-plugins-x SUBDIR += gstreamer1-plugins-ximagesrc SUBDIR += gsynaptics SUBDIR += gtk-theme-switch2 SUBDIR += gtkchtheme SUBDIR += gtkterm2 SUBDIR += guake SUBDIR += gxkb SUBDIR += hhpc SUBDIR += hs-X11 SUBDIR += hs-X11-xft SUBDIR += hs-xmobar SUBDIR += hsetroot SUBDIR += i3blocks SUBDIR += i3lock SUBDIR += i3status SUBDIR += iceauth SUBDIR += ico SUBDIR += idesk SUBDIR += imwheel SUBDIR += innerspace SUBDIR += ipager SUBDIR += j4-dmenu-desktop SUBDIR += kanshi SUBDIR += kb2mb2 SUBDIR += kde-baseapps SUBDIR += kde5 SUBDIR += keybinder SUBDIR += keybinder-gtk3 SUBDIR += keyboardcast SUBDIR += keylaunch SUBDIR += kf5-frameworkintegration SUBDIR += kf5-frameworks SUBDIR += kf5-kactivities SUBDIR += kf5-kactivities-stats SUBDIR += kf5-kded SUBDIR += kf5-kdelibs4support SUBDIR += kf5-kglobalaccel SUBDIR += kf5-kinit SUBDIR += kf5-krunner SUBDIR += kf5-kwayland SUBDIR += kf5-kwindowsystem SUBDIR += kf5-plasma-framework SUBDIR += konsole SUBDIR += lemonbar SUBDIR += libICE SUBDIR += libSM SUBDIR += libX11 SUBDIR += libXScrnSaver SUBDIR += libXau SUBDIR += libXcm SUBDIR += libXcomposite SUBDIR += libXcursor SUBDIR += libXdamage SUBDIR += libXdmcp SUBDIR += libXext SUBDIR += libXfixes SUBDIR += libXi SUBDIR += libXinerama SUBDIR += libXp SUBDIR += libXpm SUBDIR += libXpresent SUBDIR += libXrandr SUBDIR += libXrender SUBDIR += libXres SUBDIR += libXtst SUBDIR += libXv SUBDIR += libXvMC SUBDIR += libXxf86dga SUBDIR += libXxf86misc SUBDIR += libXxf86vm SUBDIR += libdmx SUBDIR += libexo SUBDIR += libfakekey SUBDIR += libfm SUBDIR += libfm-extra SUBDIR += libfm-qt SUBDIR += libgnome SUBDIR += libgnome-reference SUBDIR += libgnomekbd SUBDIR += libgnomemm26 SUBDIR += libinput SUBDIR += libmatekbd SUBDIR += libsx SUBDIR += libsynaptics SUBDIR += libwacom SUBDIR += libxcb SUBDIR += libxdg-basedir SUBDIR += libxfce4menu SUBDIR += libxfce4util SUBDIR += libxkbcommon SUBDIR += libxkbfile SUBDIR += libxklavier SUBDIR += libxshmfence SUBDIR += lightdm SUBDIR += lightdm-gtk-greeter SUBDIR += lilyterm SUBDIR += linux-c6-pixman SUBDIR += linux-c6-xorg-libs SUBDIR += linux-c7-libxkbcommon SUBDIR += linux-c7-pixman SUBDIR += linux-c7-xorg-libs SUBDIR += linux-nvidia-libs SUBDIR += linux-nvidia-libs-304 SUBDIR += linux-nvidia-libs-340 SUBDIR += listres SUBDIR += lsw SUBDIR += luit SUBDIR += lumina SUBDIR += lumina-core SUBDIR += lumina-coreutils SUBDIR += lupe SUBDIR += lxde-meta SUBDIR += lxhotkey SUBDIR += lxmenu-data SUBDIR += lxpanel SUBDIR += lxqt-about SUBDIR += lxqt-globalkeys SUBDIR += lxqt-runner SUBDIR += lxrandr SUBDIR += mate SUBDIR += mate-applets SUBDIR += mate-base SUBDIR += mate-desktop SUBDIR += mate-menus SUBDIR += mate-panel SUBDIR += mate-screensaver SUBDIR += mate-session-manager SUBDIR += mate-terminal SUBDIR += menu-cache SUBDIR += menulibre SUBDIR += metalock SUBDIR += metisse SUBDIR += mkcomposecache SUBDIR += mlterm SUBDIR += mons SUBDIR += mrxvt SUBDIR += mrxvt-devel SUBDIR += multi-aterm SUBDIR += mxico SUBDIR += numlockx SUBDIR += nvidia-driver SUBDIR += nvidia-driver-304 SUBDIR += nvidia-driver-340 + SUBDIR += nvidia-driver-390 SUBDIR += nvidia-settings SUBDIR += nvidia-xconfig SUBDIR += nxcomp SUBDIR += ooxcb SUBDIR += p5-Clipboard SUBDIR += p5-X11-GUITest SUBDIR += p5-X11-IdleTime SUBDIR += p5-X11-Protocol SUBDIR += p5-X11-Protocol-Other SUBDIR += p5-X11-Resolution SUBDIR += p5-X11-XCB SUBDIR += p5-X11-Xlib SUBDIR += p5-XTerm-Conf SUBDIR += pcdm SUBDIR += perwindowlayoutd SUBDIR += pipeglade SUBDIR += pixman SUBDIR += plank SUBDIR += plasma5-kactivitymanagerd SUBDIR += plasma5-kgamma5 SUBDIR += plasma5-kscreen SUBDIR += plasma5-kwayland-integration SUBDIR += plasma5-libkscreen SUBDIR += plasma5-plasma SUBDIR += plasma5-plasma-desktop SUBDIR += plasma5-plasma-integration SUBDIR += plasma5-plasma-workspace SUBDIR += polybar SUBDIR += printscreen SUBDIR += props SUBDIR += py-caffeine-ng SUBDIR += py-pyscreenshot SUBDIR += py-pyvirtualdisplay SUBDIR += py-qt5-opengl SUBDIR += py-xcffib SUBDIR += py-xdot SUBDIR += py-xdot06 SUBDIR += qimageblitz SUBDIR += qt5-qev SUBDIR += qt5-x11extras SUBDIR += qterminal SUBDIR += radare-cutter SUBDIR += rendercheck SUBDIR += rgb SUBDIR += rofi SUBDIR += rofi-calc SUBDIR += rofi-pass SUBDIR += rox-wallpaper SUBDIR += roxbg SUBDIR += roxterm SUBDIR += rsibreak SUBDIR += rubygem-gnome SUBDIR += rxvt SUBDIR += rxvt-unicode SUBDIR += sakura SUBDIR += sbxkb SUBDIR += screen-message SUBDIR += scripts SUBDIR += sddm SUBDIR += sessreg SUBDIR += setlayout SUBDIR += setxkbmap SUBDIR += simdock SUBDIR += simplestroke SUBDIR += sisctrl SUBDIR += slick-greeter SUBDIR += slim SUBDIR += slock SUBDIR += slop SUBDIR += slurp SUBDIR += smproxy SUBDIR += sselp SUBDIR += stalonetray SUBDIR += startup-notification SUBDIR += sterm SUBDIR += stjerm SUBDIR += swarp SUBDIR += swaybg SUBDIR += swayidle SUBDIR += swaylock SUBDIR += sxhkd SUBDIR += sxpc SUBDIR += tabbed SUBDIR += temperature.app SUBDIR += terminal.app SUBDIR += terminator SUBDIR += terminology SUBDIR += thinglaunch SUBDIR += thingylaunch SUBDIR += tilda SUBDIR += tint SUBDIR += trayer SUBDIR += tycoon SUBDIR += urxvt-font-size SUBDIR += urxvt-perls SUBDIR += vdesk SUBDIR += viewres SUBDIR += virtboard SUBDIR += virtualgl SUBDIR += wallutils SUBDIR += waybar SUBDIR += wbar SUBDIR += wbarconf SUBDIR += wcm SUBDIR += wdisplays SUBDIR += wdm SUBDIR += wev SUBDIR += wf-shell SUBDIR += wl-clipboard SUBDIR += wmappl SUBDIR += wmblob SUBDIR += wmbutton SUBDIR += wmcliphist SUBDIR += wmctrl SUBDIR += wmdrawer SUBDIR += wmmatrix SUBDIR += wmsystemtray SUBDIR += wmutils-core SUBDIR += wmutils-opt SUBDIR += wmxss SUBDIR += workrave SUBDIR += x11perf SUBDIR += x3270 SUBDIR += xaniroc SUBDIR += xantfarm SUBDIR += xascii SUBDIR += xauth SUBDIR += xautolock SUBDIR += xautomation SUBDIR += xbacklight SUBDIR += xballoon SUBDIR += xbanish SUBDIR += xbanner SUBDIR += xbiff SUBDIR += xbindkeys SUBDIR += xbitmaps SUBDIR += xbrightness SUBDIR += xcalc SUBDIR += xcalib SUBDIR += xcape SUBDIR += xcb SUBDIR += xcb-proto SUBDIR += xcb-util SUBDIR += xcb-util-cursor SUBDIR += xcb-util-errors SUBDIR += xcb-util-image SUBDIR += xcb-util-keysyms SUBDIR += xcb-util-renderutil SUBDIR += xcb-util-wm SUBDIR += xcb-util-xrm SUBDIR += xcbautolock SUBDIR += xclip SUBDIR += xclipboard SUBDIR += xcm SUBDIR += xcmd SUBDIR += xcmsdb SUBDIR += xcoloredit SUBDIR += xcolors SUBDIR += xcolorsel SUBDIR += xconsole SUBDIR += xcursorgen SUBDIR += xcut SUBDIR += xditview SUBDIR += xdm SUBDIR += xdotool SUBDIR += xdpyinfo SUBDIR += xdriinfo SUBDIR += xdtm SUBDIR += xedit SUBDIR += xev SUBDIR += xeyes SUBDIR += xf86dga SUBDIR += xfce4-clipman-plugin SUBDIR += xfce4-conf SUBDIR += xfce4-dashboard SUBDIR += xfce4-embed-plugin SUBDIR += xfce4-goodies SUBDIR += xfce4-quicklauncher-plugin SUBDIR += xfce4-screensaver SUBDIR += xfce4-screenshooter-plugin SUBDIR += xfce4-taskmanager SUBDIR += xfce4-terminal SUBDIR += xfce4-verve-plugin SUBDIR += xfce4-whiskermenu-plugin SUBDIR += xfce4-wmdock-plugin SUBDIR += xfd SUBDIR += xfindproxy SUBDIR += xfishtank SUBDIR += xforward SUBDIR += xfwp SUBDIR += xgamma SUBDIR += xgc SUBDIR += xgrab SUBDIR += xhost SUBDIR += xidle SUBDIR += xinit SUBDIR += xinput SUBDIR += xkb-switch SUBDIR += xkbcomp SUBDIR += xkbctrl SUBDIR += xkbevd SUBDIR += xkbind SUBDIR += xkbprint SUBDIR += xkbset SUBDIR += xkbutils SUBDIR += xkeyboard-config SUBDIR += xkeycaps SUBDIR += xkeywrap SUBDIR += xkill SUBDIR += xload SUBDIR += xloadimage SUBDIR += xlockmore SUBDIR += xlogo SUBDIR += xlsatoms SUBDIR += xlsclients SUBDIR += xmag SUBDIR += xman SUBDIR += xmangekyou SUBDIR += xmascot SUBDIR += xmessage SUBDIR += xmh SUBDIR += xmodmap SUBDIR += xmon SUBDIR += xmore SUBDIR += xmotd SUBDIR += xmove SUBDIR += xmsg SUBDIR += xmx SUBDIR += xnee SUBDIR += xnodecor SUBDIR += xorg SUBDIR += xorg-apps SUBDIR += xorg-cf-files SUBDIR += xorg-docs SUBDIR += xorg-libraries SUBDIR += xorg-minimal SUBDIR += xorgproto SUBDIR += xpr SUBDIR += xpra SUBDIR += xprintidle SUBDIR += xprompt SUBDIR += xprop SUBDIR += xrandr SUBDIR += xrdb SUBDIR += xrefresh SUBDIR += xrestop SUBDIR += xrootconsole SUBDIR += xrsh SUBDIR += xrsi SUBDIR += xscope SUBDIR += xscreensaver SUBDIR += xscreensaver.app SUBDIR += xsel-conrad SUBDIR += xset SUBDIR += xsetroot SUBDIR += xsettingsd SUBDIR += xskyroot SUBDIR += xsm SUBDIR += xsnow SUBDIR += xstarroll SUBDIR += xstdcmap SUBDIR += xstroke SUBDIR += xtacy SUBDIR += xterm SUBDIR += xtermcontrol SUBDIR += xtermset SUBDIR += xtestpicture SUBDIR += xtoolwait SUBDIR += xtrans SUBDIR += xtrlock SUBDIR += xtset SUBDIR += xvattr SUBDIR += xvidtune SUBDIR += xvinfo SUBDIR += xvkbd SUBDIR += xvmcinfo SUBDIR += xvt SUBDIR += xwatchwin SUBDIR += xwd SUBDIR += xwininfo SUBDIR += xwinwrap SUBDIR += xwit SUBDIR += xwud SUBDIR += xxkb SUBDIR += xzoom SUBDIR += yad SUBDIR += yakuake SUBDIR += yalias SUBDIR += yeahconsole SUBDIR += yelp SUBDIR += zenity .include Index: head/x11/nvidia-driver/Makefile =================================================================== --- head/x11/nvidia-driver/Makefile (revision 515977) +++ head/x11/nvidia-driver/Makefile (revision 515978) @@ -1,237 +1,262 @@ # Created by: Stijn Hoop # $FreeBSD$ # # For those wondering why this port is not under `x11-drivers' category, # have a look at https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=121930. # # 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-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} DISTFILES= ${DISTNAME}${EXTRACT_SUFX} MAINTAINER= danfe@FreeBSD.org 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 USE_LDCONFIG= yes # NVIDIA_ROOT is not set in src/Makefile, which results in bogus -I/src # passed to compiler and broken build on HEAD since r221320 when option # -Wmissing-include-dirs was added for kernel sources. Until properly # 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 \ 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 PORTDOCS= * .if ${NVVERSION} >= 331.013 SUB_LIST+= NVGL="" .else SUB_LIST+= NVGL="\# " .endif .if ${NVVERSION} < 355.006 NVSRC= . .else NVSRC= nvidia .endif .if ${NVVERSION} >= 358.009 # Initialize memory allocations to avoid spurious "lock re-initialization" # errors. A little more detail can be found in bug 201340 starting around # comment #50. EXTRA_PATCHES+= ${FILESDIR}/extra-patch-src_nvidia-modeset_nvidia-modeset-freebsd.c .endif OPTIONS_DEFINE= ACPI_PM LINUX WBINVD DOCS OPTIONS_DEFINE_i386= PAE OPTIONS_DEFAULT= LINUX ACPI_PM_DESC= ACPI Power Management support LINUX_DESC= Linux compatibility support PAE_DESC= Physical Address Extensions support WBINVD_DESC= Flush CPU caches directly with WBINVD .if ${NVVERSION} < 310.014 OPTIONS_DEFINE+= FREEBSD_AGP FREEBSD_AGP_DESC= Use FreeBSD AGP GART driver .endif PLIST_SUB+= MODULESDIR=${MODULESDIR} .include pre-patch: .for p in ${SUB_PATCHES} @${SED} 's/%%NVSRC%%/${NVSRC}/g' ${PATCHDIR}/${p}.in > ${WRKDIR}/${p} .endfor .for p in ${SUB_PATCHES} EXTRA_PATCHES+= ${WRKDIR}/${p} .endfor post-patch: .SILENT # We should support -CURRENT: kill the check ${REINPLACE_CMD} -e '24,26d' ${WRKSRC}/src/${NVSRC}/nv-freebsd.h # Adjust Linux headers #include's after FreeBSD src r246085 ${REINPLACE_CMD} -E '/#include "machine\/\.\.\/linux(32)?\/linux.h"/ \ { x ; s/.*/#include "machine\/..\/..\/compat\/linux\/linux_ioctl.h"/ ; H ; x ; }' \ ${WRKSRC}/src/${NVSRC}/nvidia_linux.c # Fix bogus memset() call ${REINPLACE_CMD} -e '/memset/s/sizeof(ci/sizeof(*ci/' \ ${WRKSRC}/src/${NVSRC}/nvidia_subr.c # Chase `sys/capability.h' rename to `sys/capsicum.h' in FreeBSD src r263232 ${REINPLACE_CMD} -e 's:sys/capability\.h:sys/capsicum.h:' \ ${WRKSRC}/src/${NVSRC}/nv-freebsd.h .if ${NVVERSION} >= 358.009 ${REINPLACE_CMD} -e 's:sys/capability\.h:sys/capsicum.h:' \ ${WRKSRC}/src/nvidia-modeset/nvidia-modeset-freebsd.c .endif # KPI of kmem_alloc_contig(),kmem_free() changed in FreeBSD src r338143,r338318 .if ${OSVERSION} >= 1200079 ${REINPLACE_CMD} \ -e 's/kmem_alloc_contig(kmem_arena, /kmem_alloc_contig(/' \ -e 's/kmem_free(kmem_arena, /kmem_free(/' \ ${WRKSRC}/src/${NVSRC}/nvidia_subr.c .endif # Pull the right header after FreeBSD src r347984 .if ${OSVERSION} >= 1300029 && ${NVVERSION} >= 358.009 ${REINPLACE_CMD} -e '/^#include/s:lock\.h:mutex.h:' \ ${WRKSRC}/src/nvidia-modeset/nvidia-modeset-freebsd.c .endif # Disable installation of Linux libraries (provided by the corresponding # `x11/linux-nvidia-libs' port or its slaves) ${REINPLACE_CMD} -e 's/exists(\/.*/& \&\& 0/' \ ${WRKSRC}/lib/Makefile # Do not install VDPAU libraries which are provided by `multimedia/libvdpau' # port for a while now ${REINPLACE_CMD} -e '/libvdpau[[:blank:]_][^n]/d ; \ s/name libvdpau/&_nvidia/' ${WRKSRC}/lib/Makefile # Do not build any binaries (native nvidia-settings and nvidia-xconfig are # provided by their corresponding ports) and manual pages ${REINPLACE_CMD} -E 's/(extension).*/\1/' ${WRKSRC}/x11/Makefile ${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 ${REINPLACE_CMD} -e '/libnvidia-gtk/d' ${WRKSRC}/lib/Makefile .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 ${REINPLACE_CMD} -e 's/beforeinstall/&_dontexecute/' \ ${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 -.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 .if ${PORT_OPTIONS:MFREEBSD_AGP} ${REINPLACE_CMD} -E 's/undef (NV_SUPPORT_OS_AGP)/define \1/' \ ${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/${NVSRC}/nv-freebsd.h .endif .if ! ${PORT_OPTIONS:MLINUX} ${REINPLACE_CMD} -E 's/define (NV_SUPPORT_LINUX_COMPAT)/undef \1/' \ ${WRKSRC}/src/${NVSRC}/nv-freebsd.h . if ${NVVERSION} >= 358.009 ${REINPLACE_CMD} -E 's/define (NVKMS_SUPPORT_LINUX_COMPAT)/undef \1/' \ ${WRKSRC}/src/nvidia-modeset/nvidia-modeset-freebsd.c . endif .endif .if ${PORT_OPTIONS:MPAE} ${REINPLACE_CMD} -E 's/undef (NV_SUPPORT_PAE)/define \1/' \ ${WRKSRC}/src/${NVSRC}/nv-freebsd.h .endif .if ${PORT_OPTIONS:MWBINVD} ${REINPLACE_CMD} -E 's/undef (NV_USE_WBINVD)/define \1/' \ ${WRKSRC}/src/${NVSRC}/nv-freebsd.h .endif # Conditionally install documentation (but you generally want it) .if ! ${PORT_OPTIONS:MDOCS} ${REINPLACE_CMD} -E 's/(x11).*/\1/ ; /doc/d' ${WRKSRC}/Makefile .endif pre-install: @${MKDIR} ${STAGEDIR}${PREFIX}/${MODULESDIR}/drivers \ ${STAGEDIR}${PREFIX}/${MODULESDIR}/extensions 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} >= 304.128 && ${NVVERSION} < 310.019 || ${NVVERSION} >= 361.016 ${REINPLACE_CMD} -E '/libvdpau(_trace)?\.so/d' ${TMPPLIST} .endif .if ${NVVERSION} >= 310.019 ${REINPLACE_CMD} -e '/libXvMCNVIDIA/d' ${TMPPLIST} .else # some applications need this symlink (see PR ports/72877) ${LN} -sf libXvMCNVIDIA.so.1 \ ${STAGEDIR}${PREFIX}/lib/libXvMCNVIDIA_dynamic.so.1 .endif .if ${NVVERSION} < 331.013 || ${ARCH} == amd64 && ${NVVERSION} < 334.016 ${REINPLACE_CMD} -E '/lib(nvidia-)?(EGL|eglcore|GLESv|glsi)/d' \ ${TMPPLIST} .endif .if ${NVVERSION} < 352.009 ${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. ${LN} -sf libGL-NVIDIA.so.1 \ ${STAGEDIR}${PREFIX}/lib/libGL-NVIDIA.so ${MV} -f ${STAGEDIR}${PREFIX}/lib/libGL.so.1 \ ${STAGEDIR}${PREFIX}/lib/libGL-NVIDIA.so.1 ${RM} ${STAGEDIR}${PREFIX}/lib/libGL.so .if ${NVVERSION} >= 331.013 ${LN} -sf libEGL-NVIDIA.so.1 \ ${STAGEDIR}${PREFIX}/lib/libEGL-NVIDIA.so ${MV} -f ${STAGEDIR}${PREFIX}/lib/libEGL.so.1 \ ${STAGEDIR}${PREFIX}/lib/libEGL-NVIDIA.so.1 ${RM} ${STAGEDIR}${PREFIX}/lib/libEGL.so ${LN} -sf libGLESv2-NVIDIA.so.2 \ ${STAGEDIR}${PREFIX}/lib/libGLESv2-NVIDIA.so ${MV} -f ${STAGEDIR}${PREFIX}/lib/libGLESv2.so.2 \ ${STAGEDIR}${PREFIX}/lib/libGLESv2-NVIDIA.so.2 ${RM} ${STAGEDIR}${PREFIX}/lib/libGLESv2.so .endif @${MKDIR} ${STAGEDIR}${PREFIX}/etc/libmap.d/ ${INSTALL_DATA} ${WRKDIR}/nvidia.conf \ ${STAGEDIR}${PREFIX}/etc/libmap.d/ .include Index: head/x11/nvidia-driver/Makefile.common =================================================================== --- head/x11/nvidia-driver/Makefile.common (revision 515977) +++ head/x11/nvidia-driver/Makefile.common (revision 515978) @@ -1,34 +1,38 @@ # $FreeBSD$ 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/_/} # NVVERSION is float since r372065 (integer values become less readable # after minor version could occupy three digits) .if ${DISTVERSION:C/[0-9]+//g} == ".." # major.minor.update NVVERSION= ${DISTVERSION:S/./.0/:R}${DISTVERSION:E} .else # major.minor . if ${DISTVERSION:E} < 100 NVVERSION= ${DISTVERSION:S/./.0/} # allow minor > 99 . else NVVERSION= ${DISTVERSION} . endif .endif # Target below can be used instead of standard `makesum' to correctly # update distinfo (i.e., keeping other driver version entries intact) .if ${.TARGETS:Mupdate-distinfo} DISTINFO_FILE= ${MASTERDIR}/distinfo.new .endif update-distinfo: makesum .SILENT ${REINPLACE_CMD} -e '/${ARCH_SUFX}-${NVVERSION:R}/s/^/~/' \ ${MASTERDIR}/distinfo ${REINPLACE_CMD} -e '/^~SHA256/r ${DISTINFO_FILE}' -e '/^~/d' \ ${MASTERDIR}/distinfo ${RM} ${DISTINFO_FILE} ${MASTERDIR}/distinfo.bak Index: head/x11/nvidia-driver/distinfo =================================================================== --- head/x11/nvidia-driver/distinfo (revision 515977) +++ head/x11/nvidia-driver/distinfo (revision 515978) @@ -1,13 +1,16 @@ 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 SIZE (NVIDIA-FreeBSD-x86-340.107.tar.gz) = 60305952 SHA256 (NVIDIA-FreeBSD-x86_64-304.137.tar.gz) = 231693189e1bdf5c1dd02315cde5ef9ed6c0854564314438f2f40f9788a34120 SIZE (NVIDIA-FreeBSD-x86_64-304.137.tar.gz) = 36474676 SHA256 (NVIDIA-FreeBSD-x86-304.137.tar.gz) = 5f874133853eacc5b9a10311cec22d3c4898db7f75b92bb6c12d5be5126516fb SIZE (NVIDIA-FreeBSD-x86-304.137.tar.gz) = 35399011 Index: head/x11/nvidia-driver/pkg-plist =================================================================== --- head/x11/nvidia-driver/pkg-plist (revision 515977) +++ head/x11/nvidia-driver/pkg-plist (revision 515978) @@ -1,36 +1,54 @@ 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 lib/libXvMCNVIDIA_dynamic.so.1 lib/libnvidia-cfg.so lib/libnvidia-cfg.so.1 lib/libnvidia-eglcore.so lib/libnvidia-eglcore.so.1 lib/libnvidia-glcore.so lib/libnvidia-glcore.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 +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 Index: head/x11/nvidia-driver-390/Makefile =================================================================== --- head/x11/nvidia-driver-390/Makefile (nonexistent) +++ head/x11/nvidia-driver-390/Makefile (revision 515978) @@ -0,0 +1,11 @@ +# Created by: Alexey Dokuchaev +# $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" Property changes on: head/x11/nvidia-driver-390/Makefile ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +FreeBSD=%H \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property