nvidia-driver 64bit version
Alexey Dokuchaev
danfe at FreeBSD.org
Sun Dec 6 22:19:42 UTC 2009
On Fri, Dec 04, 2009 at 03:35:47PM +0000, Alexey Dokuchaev wrote:
> In any case, I'll post a diff here for review before I make any commits
> WRT amd64 support in nvidia-driver.
OK, see attached diff. I could not test amd64 version, because my amd64
box is currently down, but will certainly do so once it's up'n'running
again. i386 version works fine so far.
I would appreciate any testing (esp. amd64) of the patched port. Please
note that some changes in pkg-list occurred; try to see that port
deinstalls cleanly in amd64 case (both via "make deinstall" and
"pkg_delete"). And, of course, that it installs and works.
Thanks.
./danfe
-------------- next part --------------
Index: Makefile
===================================================================
RCS file: /mnt/fbsd/development/FreeBSD-CVS/ports/x11/nvidia-driver/Makefile,v
retrieving revision 1.93
diff -u -r1.93 Makefile
--- Makefile 29 Sep 2009 13:25:25 -0000 1.93
+++ Makefile 6 Dec 2009 20:56:53 -0000
@@ -6,18 +6,23 @@
#
PORTNAME= nvidia-driver
-DISTVERSION?= 185.18.36
+DISTVERSION?= 195.22
PORTREVISION?= 0 # As a reminder it can be overridden
CATEGORIES= x11 kld
MASTER_SITES= ${MASTER_SITE_NVIDIA}
+ARCH_SUFX= ${ARCH:S/i386//:S/amd/_/}
+.if ${DISTVERSION} == 195.22
+MASTER_SITE_SUBDIR= XFree86/FreeBSD-x86${ARCH_SUFX}/${DISTVERSION}
+ONLY_FOR_ARCHS= i386 amd64
+.else
MASTER_SITE_SUBDIR= freebsd/${DISTVERSION}
-DISTNAME= NVIDIA-FreeBSD-x86-${DISTVERSION}
+ONLY_FOR_ARCHS= i386
+.endif
+DISTNAME= NVIDIA-FreeBSD-x86${ARCH_SUFX}-${DISTVERSION}
MAINTAINER= danfe at FreeBSD.org
COMMENT= NVidia graphics card binary drivers for hardware OpenGL rendering
-ONLY_FOR_ARCHS= i386
-
NO_PACKAGE= should be recompiled for a particular FreeBSD kernel
USE_GL= gl
USE_LDCONFIG= yes
@@ -27,8 +32,11 @@
PORTDOCS= *
OPTIONS= FREEBSD_AGP "Use FreeBSD AGP GART driver" off \
- ACPI "Enable support for ACPI Power Management" off \
+ ACPI_PM "Enable support for ACPI Power Management" off \
LINUX "Build with support for Linux compatibility" on
+.if ${DISTVERSION} == 195.22
+OPTIONS+= WBINVD "Enable heavy-weight cache-flush logic" off
+.endif
# Starting with version 1.0-7667, NVidia has dropped support for numerous
# "legacy" GPUs. Consult NVidia README (the Appendix) to find out whether
@@ -37,7 +45,7 @@
# slave ports.
#
# XXX Until NVidia starts to name their releases consistently, employ this
-# ugly hack to derive NVVERSION. XXX
+# ugly hack below to derive NVVERSION. XXX
#
.if ${DISTVERSION:C/[0-9]+//g} == ".." # major.minor.update
NVVERSION= ${DISTVERSION:S/.//g}
@@ -80,7 +88,7 @@
${REINPLACE_CMD} -E 's/undef (NV_SUPPORT_OS_AGP)/define \1/' \
${WRKSRC}/src/nv-freebsd.h
.endif
-.if defined(WITH_ACPI)
+.if defined(WITH_ACPI_PM)
${REINPLACE_CMD} -E 's/undef (NV_SUPPORT_ACPI_PM)/define \1/' \
${WRKSRC}/src/nv-freebsd.h
.endif
@@ -88,8 +96,12 @@
${REINPLACE_CMD} -E 's/define (NV_SUPPORT_LINUX_COMPAT)/undef \1/' \
${WRKSRC}/src/nv-freebsd.h
.endif
+.if defined(WITH_WBINVD)
+ ${REINPLACE_CMD} -E 's/undef (NV_USE_WBINVD)/define \1/' \
+ ${WRKSRC}/src/nv-freebsd.h
+.endif
# Don't build any binaries (nvidia-settings and nvidia-xconfig) and manuals
-.if ${NVVERSION} < 974600
+.if ${NVVERSION} < 974600 || ${NVVERSION} == 1952200
${REINPLACE_CMD} -E 's/(extension).*/\1/' ${WRKSRC}/x11/Makefile
.else
${REINPLACE_CMD} -E 's/(lib).*/\1/' ${WRKSRC}/x11/Makefile
@@ -111,7 +123,7 @@
.if ${NVVERSION} < 817400
@${REINPLACE_CMD} '/libnvidia-cfg/d' ${TMPPLIST}
.endif
-.if ${NVVERSION} < 974600
+.if ${NVVERSION} < 974600 || ${NVVERSION} == 1952200
@${REINPLACE_CMD} '/wfb/d' ${TMPPLIST}
.endif
.if ${NVVERSION} < 1802900
Index: distinfo
===================================================================
RCS file: /mnt/fbsd/development/FreeBSD-CVS/ports/x11/nvidia-driver/distinfo,v
retrieving revision 1.33
diff -u -r1.33 distinfo
--- distinfo 29 Sep 2009 13:25:25 -0000 1.33
+++ distinfo 6 Dec 2009 18:19:43 -0000
@@ -1,6 +1,9 @@
-MD5 (NVIDIA-FreeBSD-x86-185.18.36.tar.gz) = feff4da79a8c3a2f194f46c95c545adb
-SHA256 (NVIDIA-FreeBSD-x86-185.18.36.tar.gz) = 890b9543d3c81bccc72d60c653647a719c9037f8fc7a88144a18b2a012fbd4a7
-SIZE (NVIDIA-FreeBSD-x86-185.18.36.tar.gz) = 19245550
+MD5 (NVIDIA-FreeBSD-x86-195.22.tar.gz) = 2c7faa5baa155693be978c446c5d44a3
+SHA256 (NVIDIA-FreeBSD-x86-195.22.tar.gz) = 2299aeadeec81a1210d65529c17c2829fdc4d5586c46b1ae6f8b20089a2122e8
+SIZE (NVIDIA-FreeBSD-x86-195.22.tar.gz) = 24784839
+MD5 (NVIDIA-FreeBSD-x86_64-195.22.tar.gz) = c9b0cdeb68d573556a38e16c02ffed55
+SHA256 (NVIDIA-FreeBSD-x86_64-195.22.tar.gz) = 3a6a0fc3003615c07090c04f2d5b41fa86cf8493309bf48eff8bcaa37126508c
+SIZE (NVIDIA-FreeBSD-x86_64-195.22.tar.gz) = 25503618
MD5 (NVIDIA-FreeBSD-x86-173.14.20.tar.gz) = 54869428baee8878c04c19751a2a8047
SHA256 (NVIDIA-FreeBSD-x86-173.14.20.tar.gz) = c5a27324d96391ada41b4ccbbf2a321c3d86693e54d1e9d1139d97c3132530f3
SIZE (NVIDIA-FreeBSD-x86-173.14.20.tar.gz) = 16211218
Index: pkg-plist
===================================================================
RCS file: /mnt/fbsd/development/FreeBSD-CVS/ports/x11/nvidia-driver/pkg-plist,v
retrieving revision 1.25
diff -u -r1.25 pkg-plist
--- pkg-plist 4 Aug 2009 08:27:43 -0000 1.25
+++ pkg-plist 6 Dec 2009 21:21:37 -0000
@@ -18,14 +18,15 @@
lib/libGLcore.so
lib/libvdpau.so.1
lib/libvdpau.so
-lib/libvdpau_nvidia.so.1
+lib/vdpau/libvdpau_nvidia.so.1
lib/libvdpau_nvidia.so
-lib/libvdpau_trace.so.1
+lib/vdpau/libvdpau_trace.so.1
lib/libvdpau_trace.so
lib/libXvMCNVIDIA.so.1
lib/libXvMCNVIDIA.so
lib/libXvMCNVIDIA.a
lib/libXvMCNVIDIA_dynamic.so.1
+ at dirrm lib/vdpau
%%MODULESDIR%%/libnvidia-wfb.so.1
%%MODULESDIR%%/drivers/nvidia_drv.so
%%MODULESDIR%%/extensions/libglx.so.1
@@ -44,9 +45,12 @@
%%LINUX%%usr/lib/libnvidia-tls.so.1
%%LINUX%%usr/lib/libvdpau.so.%%SHLIB_VERSION%%
%%LINUX%%usr/lib/libvdpau.so.1
-%%LINUX%%usr/lib/libvdpau_nvidia.so.%%SHLIB_VERSION%%
%%LINUX%%usr/lib/libvdpau_nvidia.so
-%%LINUX%%usr/lib/libvdpau_trace.so.%%SHLIB_VERSION%%
%%LINUX%%usr/lib/libvdpau_trace.so
+%%LINUX%%usr/lib/vdpau/libvdpau_nvidia.so.%%SHLIB_VERSION%%
+%%LINUX%%usr/lib/vdpau/libvdpau_nvidia.so.1
+%%LINUX%%usr/lib/vdpau/libvdpau_trace.so.%%SHLIB_VERSION%%
+%%LINUX%%usr/lib/vdpau/libvdpau_trace.so.1
+%%LINUX%%@dirrm usr/lib/vdpau
%%LINUX%%@exec %D/sbin/ldconfig -r %D
%%LINUX%%@unexec %D/sbin/ldconfig -r %D
More information about the freebsd-ports
mailing list