ports/151816: Please udpate nvidia drivers 256.53 -> 260.19.12
Ivan Klymenko
fidaj at ukr.net
Fri Oct 29 21:30:16 UTC 2010
The following reply was made to PR ports/151816; it has been noted by GNATS.
From: Ivan Klymenko <fidaj at ukr.net>
To: bug-followup at FreeBSD.org, coder at tuxfamily.org
Cc:
Subject: Re: ports/151816: Please udpate nvidia drivers 256.53 ->
260.19.12
Date: Sat, 30 Oct 2010 00:20:50 +0300
--MP_/ZGH3SV3QrhlR2LBBYOOcZOE
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
try to use ...
--MP_/ZGH3SV3QrhlR2LBBYOOcZOE
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename=nvidia-driver-260.19.12.shar.txt
# This is a shell archive. Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file". Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
# .
# ./files
# ./files/patch-lib::Makefile
# ./files/pkg-message.in
# ./Makefile
# ./distinfo
# ./pkg-descr
# ./pkg-plist
#
echo c - .
mkdir -p . > /dev/null 2>&1
echo c - ./files
mkdir -p ./files > /dev/null 2>&1
echo x - ./files/patch-lib::Makefile
sed 's/^X//' >./files/patch-lib::Makefile << 'a2e5f05d8eb748e916fe48be8c5b57de'
X--- lib/Makefile.orig Fri Jun 17 09:44:23 2005
X+++ lib/Makefile Wed Jun 22 19:12:16 2005
X@@ -6,7 +6,7 @@
X FIND_DIRS= /usr/lib \
X ${LOCALBASE}/lib
X
X-.if exists(/compat/linux)
X+.if exists(/compat/linux) && !defined(WITHOUT_LINUX)
X SUBDIR+= compat
X FIND_DIRS+= /compat/linux/lib \
X /compat/linux/usr/lib \
a2e5f05d8eb748e916fe48be8c5b57de
echo x - ./files/pkg-message.in
sed 's/^X//' >./files/pkg-message.in << 'f63be51668f70461c30a5539f7c148ef'
XTo use these drivers, make sure that you have loaded the nvidia kernel
Xmodule, by doing
X
X # kldload nvidia
X
Xor adding
X
X nvidia_load="YES"
X
Xto your /boot/loader.conf.
X
XIf you build this port with WITH_FREEBSD_AGP=yes, make sure you have
Xagp.ko kernel module installed and loaded, since nvidia.ko will depend
Xon it, or have your kernel compiled with "device agp". Otherwise the
Xnvidia kernel module will not load. Also, care to specify correct
X``Option "NvAGP"'' in ``Device'' section of your X11 configuration file.
X
XWhen building with Linux compatibility (WITH_LINUX=yes), make sure
Xlinux.ko is available as well (or have it compiled in kernel). It can
Xbe loaded via /boot/loader.conf (or later in boot process if you add
X
X linux_enable="YES"
X
Xto your /etc/rc.conf.
X
XNote that this driver does not support PAE-enabled kernels.
X
XIf X.org cannot start and reports
X
X (EE) NVIDIA(0): Failed to obtain a shared memory identifier.
X
Xin /var/log/Xorg.0.log while actually you have ``options SYSVSHM''
Xenabled in kernel, the sysctl ``kern.ipc.shmall'' should be increased.
X
XSee %%DOCSDIR%%/README for more information.
f63be51668f70461c30a5539f7c148ef
echo x - ./Makefile
sed 's/^X//' >./Makefile << '464ef7c6571951809b23e262cbe26e19'
X# New ports collection makefile for: nvidia-driver (latest and master port)
X# Date created: 15 september 2010
X# Whom: Ivan Klymenko <fidaj at ukr.net>
X#
X# $FreeBSD: ports/x11/nvidia-driver/Makefile,v 1.97 2010/04/10 13:40:07 danfe Exp $
X#
X
XPORTNAME= nvidia-driver
XDISTVERSION?= 260.19.12
XPORTREVISION?= 0 # As a reminder it can be overridden
XCATEGORIES= x11 kld
XMASTER_SITES= ${MASTER_SITE_NVIDIA}
XARCH_SUFX= ${ARCH:S/i386//:S/amd/_/}
XMASTER_SITE_SUBDIR= XFree86/FreeBSD-x86${ARCH_SUFX}/${DISTVERSION}
XDISTNAME= NVIDIA-FreeBSD-x86${ARCH_SUFX}-${DISTVERSION}
X
XMAINTAINER= fidaj at ukr.net
XCOMMENT= NVidia graphics card binary drivers for hardware OpenGL rendering
X
XNO_PACKAGE= should be recompiled for a particular FreeBSD kernel
XUSE_GL= gl
XUSE_LDCONFIG= yes
XSUB_FILES+= pkg-message
XDOCSDIR= ${PREFIX}/share/doc/NVIDIA_GLX-1.0
XMODULESDIR= lib/xorg/modules
XPORTDOCS= *
X
X# Starting with version 1.0-7667, NVidia has dropped support for numerous
X# "legacy" GPUs. Consult NVidia README (the Appendix) to find out whether
X# you need to use legacy driver version and install one of corresponding
X# `x11/nvidia-driver-71', `x11/nvidia-driver-96', or `x11/nvidia-driver-173'
X# slave ports.
X#
X# XXX Until NVidia starts to name their releases consistently, employ this
X# ugly hack below to derive NVVERSION. XXX
X#
X.if ${DISTVERSION:C/[0-9]+//g} == ".." # major.minor.update
XNVVERSION= ${DISTVERSION:S/.//g}
X.else # major.minor
XNVVERSION= ${DISTVERSION:S/.//g}00
X.endif
X
X.if ${NVVERSION} >= 1952200
XONLY_FOR_ARCHS= i386 amd64
X.else
XONLY_FOR_ARCHS= i386
X.endif
X
XOPTIONS= FREEBSD_AGP "Use FreeBSD AGP GART driver" off \
X ACPI_PM "Enable support for ACPI Power Management" off \
X LINUX "Build with support for Linux compatibility" on
X.if ${NVVERSION} >= 1952200
XOPTIONS+= WBINVD "Enable heavy-weight cache-flush logic" off
X.endif
X
X.include <bsd.port.pre.mk>
X
X# XXX Should use ${PKG_INFO} but it does not expand for some reason XXX
X#
XXSERVVERSION!= /usr/sbin/pkg_info -qO x11-servers/xorg-server 2>/dev/null || true
XLIBGLVERSION!= /usr/sbin/pkg_info -qO graphics/libGL 2>/dev/null || true
X
X.if empty(XSERVVERSION)
XIGNORE= needs an X server implementation installed
X.endif
X
XPLIST_SUB+= XSERVVERSION=${XSERVVERSION} LIBGLVERSION=${LIBGLVERSION} \
X LINUXBASE=${LINUXBASE} SHLIB_VERSION=${PORTVERSION} \
X MODULESDIR=${MODULESDIR}
X
X.if !defined(WITHOUT_LINUX)
XCONFLICTS= linux-dri-[0-9]* linux-f10-dri-[0-9]* linux-f8-dri-[0-9]* \
X linux_dri-[0-9]* linux_dri-devel-[0-9]*
XUSE_LINUX= yes
XPLIST_SUB+= LINUX=""
X.else
XPLIST_SUB+= LINUX="@comment "
X# Propagate WITHOUT_LINUX variable down to inner Makefiles
XMAKE_ENV+= WITHOUT_LINUX=yes
X.endif
X
X.if ${OSVERSION} < 702106 && ${NVVERSION} >= 1952200
XIGNORE= requires fairly recent FreeBSD-STABLE, or FreeBSD-CURRENT
X.endif
X
X.if ${NVVERSION} < 1952200
XLIB_DEPENDS+= m.3:${PORTSDIR}/misc/compat5x
X.endif
X
Xpost-patch: .SILENT
X# We should support -CURRENT: kill the check
X ${REINPLACE_CMD} '24,26d' ${WRKSRC}/src/nv-freebsd.h
X# Adjust for updated d_mmap() in recent -CURRENT
X.if ${OSVERSION} > 900005 && ${NVVERSION} < 1952200
X ${REINPLACE_CMD} 's/vm_offset_t offset/vm_ooffset_t offset/ ; \
X s/vm_offset_t \*address/vm_paddr_t *address/ ; \
X s/int nprot/&, vm_memattr_t *memattr/' \
X ${WRKSRC}/src/nvidia_dev.c
X.endif
X.if defined(WITH_FREEBSD_AGP)
X ${REINPLACE_CMD} -E 's/undef (NV_SUPPORT_OS_AGP)/define \1/' \
X ${WRKSRC}/src/nv-freebsd.h
X.endif
X.if defined(WITH_ACPI_PM)
X ${REINPLACE_CMD} -E 's/undef (NV_SUPPORT_ACPI_PM)/define \1/' \
X ${WRKSRC}/src/nv-freebsd.h
X.endif
X.if defined(WITHOUT_LINUX)
X ${REINPLACE_CMD} -E 's/define (NV_SUPPORT_LINUX_COMPAT)/undef \1/' \
X ${WRKSRC}/src/nv-freebsd.h
X.endif
X.if defined(WITH_WBINVD)
X ${REINPLACE_CMD} -E 's/undef (NV_USE_WBINVD)/define \1/' \
X ${WRKSRC}/src/nv-freebsd.h
X.endif
X# Don't build any binaries (nvidia-settings and nvidia-xconfig) and manuals
X.if ${NVVERSION} < 974600 || ${NVVERSION} >= 1952200
X ${REINPLACE_CMD} -E 's/(extension).*/\1/' ${WRKSRC}/x11/Makefile
X.else
X ${REINPLACE_CMD} -E 's/(lib).*/\1/' ${WRKSRC}/x11/Makefile
X.endif
X ${REINPLACE_CMD} '/bin/d ; /man/d' ${WRKSRC}/x11/Makefile
X# Conditionally install documentation (but you generally want it)
X.if defined(NOPORTDOCS)
X ${REINPLACE_CMD} -E 's/(x11).*/\1/ ; /doc/d' ${WRKSRC}/Makefile
X.endif
X# Do not execute afterinstall target (prevent automatic module registration)
X ${REINPLACE_CMD} -e 's/afterinstall/dontexecute/' ${WRKSRC}/Makefile
X
Xpre-su-install:
X# XXX This port silently assumes PREFIX == LOCALBASE XXX
X @${MKDIR} ${PREFIX}/${MODULESDIR}/drivers
X
Xpost-install:
X# pkg-plist is already overbloated, so use these hacks instead of PLIST_SUB's
X.if ${NVVERSION} < 817400
X @${REINPLACE_CMD} '/libnvidia-cfg/d' ${TMPPLIST}
X.endif
X.if ${NVVERSION} < 974600 || ${NVVERSION} >= 1952200
X @${REINPLACE_CMD} '/wfb/d' ${TMPPLIST}
X.endif
X.if ${NVVERSION} < 1802900
X @${REINPLACE_CMD} '/vdpau/d' ${TMPPLIST}
X.else
X @${MKDIR} ${PREFIX}/include/vdpau
X @${LN} -sf ${DOCSDIR}/vdpau*.h ${PREFIX}/include/vdpau
X.endif
X.if ${NVVERSION} < 1851829
X @${REINPLACE_CMD} '/libcuda/d' ${TMPPLIST}
X.endif
X# Some applications need this symlink (see PR ports/72877)
X @${LN} -sf libXvMCNVIDIA.so.1 ${PREFIX}/lib/libXvMCNVIDIA_dynamic.so.1
X @${ECHO_MSG}
X @${CAT} ${PKGMESSAGE}
X @${ECHO_MSG}
X
X.include <bsd.port.post.mk>
464ef7c6571951809b23e262cbe26e19
echo x - ./distinfo
sed 's/^X//' >./distinfo << 'aec8793adfd5b7c3f00e62ae41a09ac2'
XMD5 (NVIDIA-FreeBSD-x86-260.19.12.tar.gz) = cd9331364959a9e8ce6bfc23a9e46799
XSHA256 (NVIDIA-FreeBSD-x86-260.19.12.tar.gz) = 1ad76a62916b1c89ae005cbae8b33c3c7cc17ae6a0aaf750b62c70117a9a9db2
XSIZE (NVIDIA-FreeBSD-x86-260.19.12.tar.gz) = 27173729
XMD5 (NVIDIA-FreeBSD-x86_64-260.19.12.tar.gz) = a36e2aa1a1066fd462ff9b67069f7e63
XSHA256 (NVIDIA-FreeBSD-x86_64-260.19.12.tar.gz) = cb386babc6800808b84d3cc42f73fd20c954c40fe71997803f3457a4e7bfbc21
XSIZE (NVIDIA-FreeBSD-x86_64-260.19.12.tar.gz) = 27840201
XMD5 (NVIDIA-FreeBSD-x86-173.14.25.tar.gz) = 1eca3916a9ae86b953f54405e1881774
XSHA256 (NVIDIA-FreeBSD-x86-173.14.25.tar.gz) = c432ed94ce71e297b2d9304d9f34f906b58e2c7c4bc13d8dbac264ed52fd6261
XSIZE (NVIDIA-FreeBSD-x86-173.14.25.tar.gz) = 16682722
XMD5 (NVIDIA-FreeBSD-x86-96.43.16.tar.gz) = 3fc5c2bb537d4a7664d84a7a0df09c7c
XSHA256 (NVIDIA-FreeBSD-x86-96.43.16.tar.gz) = 38bf334284dc600d92d8436333c98d5577e34d69456ed71f1cccc75caa6dffcd
XSIZE (NVIDIA-FreeBSD-x86-96.43.16.tar.gz) = 11842453
XMD5 (NVIDIA-FreeBSD-x86-71.86.13.tar.gz) = 19000b906225ebd39ca3edc1b0c3c7a5
XSHA256 (NVIDIA-FreeBSD-x86-71.86.13.tar.gz) = 27ae01cd6fe050871f7785c2146b18e74ea882f6262e46dc965bf26061238447
XSIZE (NVIDIA-FreeBSD-x86-71.86.13.tar.gz) = 8066159
aec8793adfd5b7c3f00e62ae41a09ac2
echo x - ./pkg-descr
sed 's/^X//' >./pkg-descr << '0e313719ff012ceaf97a028d51caa8f5'
XThese are the official NVidia binary drivers for hardware OpenGL rendering
Xin X, using the GLX extensions.
X
XWWW: http://www.nvidia.com/object/unix.html
0e313719ff012ceaf97a028d51caa8f5
echo x - ./pkg-plist
sed 's/^X//' >./pkg-plist << 'ef3e7f63841ae908ba397c2bef1fbad6'
X at comment I can't add the below files to the package because pkg_delete
X at comment will complain when removing this package:
X at comment %%MODULESDIR%%/extensions/XXX-libglx.la.%%%%.%%XSERVVERSION%%
X at comment %%MODULESDIR%%/extensions/XXX-libglx.so.%%%%.%%XSERVVERSION%%
X at comment lib/XXX-libGL.so.1.%%%%.%%LIBGLVERSION%%
X at comment They are however restored when this package is removed:
X at exec mv -f %D/%%MODULESDIR%%/extensions/libglx.la %D/%%MODULESDIR%%/extensions/XXX-libglx.la.%%%%.%%XSERVVERSION%%
X at unexec mv -f %D/%%MODULESDIR%%/extensions/XXX-libglx.la.%%%%.%%XSERVVERSION%% %D/%%MODULESDIR%%/extensions/libglx.la
X at exec mv -f %D/%%MODULESDIR%%/extensions/libglx.so %D/%%MODULESDIR%%/extensions/XXX-libglx.so.%%%%.%%XSERVVERSION%%
X at unexec mv -f %D/%%MODULESDIR%%/extensions/XXX-libglx.so.%%%%.%%XSERVVERSION%% %D/%%MODULESDIR%%/extensions/libglx.so
X at exec mv -f %D/lib/libGL.so.1 %D/lib/XXX-libGL.so.1.%%%%.%%LIBGLVERSION%%
X at unexec mv -f %D/lib/XXX-libGL.so.1.%%%%.%%LIBGLVERSION%% %D/lib/libGL.so.1
Xlib/libnvidia-tls.so.1
Xlib/libnvidia-tls.so
Xlib/libnvidia-cfg.so.1
Xlib/libnvidia-cfg.so
Xlib/libnvidia-glcore.so.1
Xlib/libnvidia-glcore.so
Xlib/vdpau/libvdpau_nvidia.so.1
Xlib/libvdpau_nvidia.so
Xlib/libXvMCNVIDIA.so.1
Xlib/libXvMCNVIDIA.so
Xlib/libXvMCNVIDIA.a
Xlib/libXvMCNVIDIA_dynamic.so.1
X at dirrm lib/vdpau
X%%MODULESDIR%%/libnvidia-wfb.so.1
X%%MODULESDIR%%/drivers/nvidia_drv.so
X%%MODULESDIR%%/extensions/libglx.so.1
X at exec ln -sf libglx.so.1 %D/%%MODULESDIR%%/extensions/libglx.so
X at dirrmtry %%MODULESDIR%%/drivers
X at cwd /boot/modules
Xnvidia.ko
X at unexec kldxref %D
X%%LINUX%%@cwd %%LINUXBASE%%
X%%LINUX%%usr/lib/libGL.so.%%SHLIB_VERSION%%
X%%LINUX%%usr/lib/libGL.so.1
X%%LINUX%%usr/lib/libnvidia-glcore.so.%%SHLIB_VERSION%%
X%%LINUX%%usr/lib/libcuda.so.%%SHLIB_VERSION%%
X%%LINUX%%usr/lib/libcuda.so.1
X%%LINUX%%usr/lib/libnvidia-tls.so.%%SHLIB_VERSION%%
X%%LINUX%%usr/lib/libvdpau_nvidia.so
X%%LINUX%%usr/lib/vdpau/libvdpau_nvidia.so.%%SHLIB_VERSION%%
X%%LINUX%%usr/lib/vdpau/libvdpau_nvidia.so.1
X%%LINUX%%@dirrm usr/lib/vdpau
X%%LINUX%%@exec %D/sbin/ldconfig -r %D
X%%LINUX%%@unexec %D/sbin/ldconfig -r %D
ef3e7f63841ae908ba397c2bef1fbad6
exit
--MP_/ZGH3SV3QrhlR2LBBYOOcZOE--
More information about the freebsd-ports-bugs
mailing list