summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlivier Crête <tester@gentoo.org>2003-07-18 21:43:30 +0000
committerOlivier Crête <tester@gentoo.org>2003-07-18 21:43:30 +0000
commit8c8b30b07f99b9ce4fe8d3b3dd674e7fafc72cde (patch)
tree017d0ef1862eb1ff5aa43e0e231cd6f212b209ad
parentfixing Manifest (diff)
downloadhistorical-8c8b30b07f99b9ce4fe8d3b3dd674e7fafc72cde.tar.gz
historical-8c8b30b07f99b9ce4fe8d3b3dd674e7fafc72cde.tar.bz2
historical-8c8b30b07f99b9ce4fe8d3b3dd674e7fafc72cde.zip
Add amd64 nvidia driver
-rw-r--r--media-video/nvidia-glx/ChangeLog8
-rw-r--r--media-video/nvidia-glx/Manifest29
-rw-r--r--media-video/nvidia-glx/files/digest-nvidia-glx-1.0.41801
-rw-r--r--media-video/nvidia-glx/files/nvidia-glx-1.0.4180-defines.patch22
-rw-r--r--media-video/nvidia-glx/nvidia-glx-1.0.4180.ebuild107
-rw-r--r--media-video/nvidia-kernel/ChangeLog8
-rw-r--r--media-video/nvidia-kernel/Manifest28
-rw-r--r--media-video/nvidia-kernel/files/digest-nvidia-kernel-1.0.41801
-rw-r--r--media-video/nvidia-kernel/nvidia-kernel-1.0.4180.ebuild133
9 files changed, 309 insertions, 28 deletions
diff --git a/media-video/nvidia-glx/ChangeLog b/media-video/nvidia-glx/ChangeLog
index 01fa7d5c0c13..f4e802738c93 100644
--- a/media-video/nvidia-glx/ChangeLog
+++ b/media-video/nvidia-glx/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for media-video/nvidia-glx
# Copyright 2002-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/nvidia-glx/ChangeLog,v 1.22 2003/07/12 21:12:50 aliz Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/nvidia-glx/ChangeLog,v 1.23 2003/07/18 21:43:25 tester Exp $
+
+*nvidia-glx-1.0.4180 (18 Jul 2003)
+
+ 18 Jul 2003; Olivier Crete <tester@gentoo.org> nvidia-glx-1.0.4180.ebuild,
+ files/nvidia-glx-1.0.4180-defines.patch:
+ Added amd64 version of the driver
22 Jun 2003; Martin Schlemmer <azarah@gentoo.org>
nvidia-glx-1.0.4363.ebuild:
diff --git a/media-video/nvidia-glx/Manifest b/media-video/nvidia-glx/Manifest
index ce7a78e8ed15..1724809e375e 100644
--- a/media-video/nvidia-glx/Manifest
+++ b/media-video/nvidia-glx/Manifest
@@ -1,20 +1,23 @@
-MD5 c3afc69f917a783ebd53cf2de38065dc files/09nvidia 61
+MD5 15b46a42f05c684c7c39bb18fcde2d45 nvidia-glx-1.0.4349.ebuild 3163
+MD5 9aa3559aba64e9bd936be78e3aa4446d nvidia-glx-1.0.4191-r1.ebuild 2798
+MD5 234657b19a6d19a6981c4aab1ad09fcf nvidia-glx-1.0.3123.ebuild 2658
+MD5 eda7c795bd17b67c804cf6bb1ba65156 nvidia-glx-1.0.4180.ebuild 2804
+MD5 e38d931344afe435a5c06b419d1a64c8 nvidia-glx-1.0.2960-r1.ebuild 2721
+MD5 85a8775d3e943c601606f6e9bafca957 nvidia-glx-1.0.4363.ebuild 3098
+MD5 710891576fa1586432f79c9d960029d8 nvidia-glx-1.0.4191.ebuild 2662
+MD5 df731a6e32dcbdc8ba416add3d11c15b nvidia-glx-1.0.2880.ebuild 2679
+MD5 58a8e23b671b303f9eaf32aacfb53498 ChangeLog 3325
MD5 cea66cc5b458a313a9ac72b56e32e10b files/README.gentoo 200
-MD5 db715a5b58ba38f9d757cf6be06778e7 files/digest-nvidia-glx-1.0.2880 72
+MD5 fda10e01c37b4518535e3b258be78fa5 files/libGL.la.1 747
MD5 d95d0e66acb41538e6faace158d2ac21 files/digest-nvidia-glx-1.0.2960-r1 72
+MD5 db715a5b58ba38f9d757cf6be06778e7 files/digest-nvidia-glx-1.0.2880 72
MD5 fe071363bf9a87e17f14273a23a2192d files/digest-nvidia-glx-1.0.3123 72
+MD5 55f859a1c99a7fb8329f83ca27c02d27 files/digest-nvidia-glx-1.0.4180 72
MD5 feb67e9281b725c30e7a45327532267f files/digest-nvidia-glx-1.0.4191 72
+MD5 8b34536317191f4059bebe95beabe1a4 files/digest-nvidia-glx-1.0.4349 72
+MD5 ffa1654d23ef713b0d6273d4d844fd0c files/digest-nvidia-glx-1.0.4363 72
MD5 feb67e9281b725c30e7a45327532267f files/digest-nvidia-glx-1.0.4191-r1 72
MD5 cac348587b9f365512957ab034c2eed2 files/libGL.la 740
-MD5 fda10e01c37b4518535e3b258be78fa5 files/libGL.la.1 747
MD5 8bbb4aceec8380bff8456f2e7a824580 files/nvidia-glx-1.0.4191-defines.patch 906
-MD5 8b34536317191f4059bebe95beabe1a4 files/digest-nvidia-glx-1.0.4349 72
-MD5 ffa1654d23ef713b0d6273d4d844fd0c files/digest-nvidia-glx-1.0.4363 72
-MD5 df731a6e32dcbdc8ba416add3d11c15b nvidia-glx-1.0.2880.ebuild 2679
-MD5 e38d931344afe435a5c06b419d1a64c8 nvidia-glx-1.0.2960-r1.ebuild 2721
-MD5 234657b19a6d19a6981c4aab1ad09fcf nvidia-glx-1.0.3123.ebuild 2658
-MD5 9aa3559aba64e9bd936be78e3aa4446d nvidia-glx-1.0.4191-r1.ebuild 2798
-MD5 710891576fa1586432f79c9d960029d8 nvidia-glx-1.0.4191.ebuild 2662
-MD5 35ef48900d5dee4b4bfdfefb587ea19f ChangeLog 3130
-MD5 15b46a42f05c684c7c39bb18fcde2d45 nvidia-glx-1.0.4349.ebuild 3163
-MD5 85a8775d3e943c601606f6e9bafca957 nvidia-glx-1.0.4363.ebuild 3098
+MD5 c3afc69f917a783ebd53cf2de38065dc files/09nvidia 61
+MD5 edc0aa96126ecf2502823be39bdd38b3 files/nvidia-glx-1.0.4180-defines.patch 906
diff --git a/media-video/nvidia-glx/files/digest-nvidia-glx-1.0.4180 b/media-video/nvidia-glx/files/digest-nvidia-glx-1.0.4180
new file mode 100644
index 000000000000..c3015dc8b3ae
--- /dev/null
+++ b/media-video/nvidia-glx/files/digest-nvidia-glx-1.0.4180
@@ -0,0 +1 @@
+MD5 8fce69148978c023794c7c645a63859b NVIDIA_GLX-1.0-4180.tar.gz 2321950
diff --git a/media-video/nvidia-glx/files/nvidia-glx-1.0.4180-defines.patch b/media-video/nvidia-glx/files/nvidia-glx-1.0.4180-defines.patch
new file mode 100644
index 000000000000..c14dcbc8780f
--- /dev/null
+++ b/media-video/nvidia-glx/files/nvidia-glx-1.0.4180-defines.patch
@@ -0,0 +1,22 @@
+diff -ur NVIDIA_GLX-1.0-4180/usr/include/GL/glx.h NVIDIA_GLX-1.0-4191.new/usr/include/GL/glx.h
+--- NVIDIA_GLX-1.0-4180/usr/include/GL/glx.h 2002-12-09 21:26:55.000000000 +0100
++++ NVIDIA_GLX-1.0-4180.new/usr/include/GL/glx.h 2003-01-30 18:20:23.000000000 +0100
+@@ -39,6 +39,7 @@
+ typedef XID GLXPixmap;
+ typedef XID GLXDrawable;
+ typedef XID GLXPbuffer;
++typedef XID GLXPbufferSGIX;
+ typedef XID GLXWindow;
+ typedef XID GLXFBConfigID;
+
+diff -ur NVIDIA_GLX-1.0-4180/usr/include/GL/glxtokens.h NVIDIA_GLX-1.0-4191.new/usr/include/GL/glxtokens.h
+--- NVIDIA_GLX-1.0-4180/usr/include/GL/glxtokens.h 2002-12-09 21:26:55.000000000 +0100
++++ NVIDIA_GLX-1.0-4180.new/usr/include/GL/glxtokens.h 2003-01-30 18:20:44.000000000 +0100
+@@ -28,6 +28,7 @@
+
+ #define GLX_VERSION_1_1 1
+ #define GLX_VERSION_1_2 1
++#define GLX_VERSION_1_3 1
+
+ /* GLX Extensions */
+ #define GLX_EXT_import_context 1
diff --git a/media-video/nvidia-glx/nvidia-glx-1.0.4180.ebuild b/media-video/nvidia-glx/nvidia-glx-1.0.4180.ebuild
new file mode 100644
index 000000000000..8c6d1b4d7c87
--- /dev/null
+++ b/media-video/nvidia-glx/nvidia-glx-1.0.4180.ebuild
@@ -0,0 +1,107 @@
+# Copyright 1999-2003 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-video/nvidia-glx/nvidia-glx-1.0.4180.ebuild,v 1.1 2003/07/18 21:43:25 tester Exp $
+
+inherit eutils
+
+# Make sure Portage does _NOT_ strip symbols. Need both lines for
+# Portage 1.8.9+
+DEBUG="yes"
+RESTRICT="nostrip"
+
+NV_V="${PV/1.0./1.0-}"
+NV_PACKAGE="NVIDIA_GLX-${NV_V}"
+S="${WORKDIR}/NVIDIA_GLX-${NV_V}"
+DESCRIPTION="XFree86 GLX libraries for the NVIDIA's X driver"
+SRC_URI="http://download.nvidia.com/XFree86_40/${NV_V}/${NV_PACKAGE}.tar.gz"
+HOMEPAGE="http://www.nvidia.com/"
+
+LICENSE="NVIDIA"
+SLOT="0"
+KEYWORDS="amd64 -x86 -ppc -sparc -alpha"
+
+# We need xfree-4.2.0-r9 to support the dynamic libGL* stuff
+DEPEND="virtual/glibc
+ >=x11-base/xfree-4.2.0-r9
+ >=x11-base/opengl-update-1.3
+ ~media-video/nvidia-kernel-${PV}"
+
+PROVIDE="virtual/opengl"
+
+src_unpack() {
+ unpack ${A}
+
+ # correct defines to make gtkglext build work
+ epatch ${FILESDIR}/${P}-defines.patch
+}
+
+src_install() {
+ local NV_ROOT="/usr/lib/opengl/nvidia"
+
+ # The X module
+ exeinto /usr/X11R6/lib/modules/drivers
+ doexe usr/X11R6/lib/modules/drivers/nvidia_drv.o
+
+ # The GLX extension
+ exeinto ${NV_ROOT}/extensions
+ newexe usr/X11R6/lib/modules/extensions/libglx.so.${PV} libglx.so
+
+ # The GLX libraries
+ exeinto ${NV_ROOT}/lib
+ doexe usr/lib/libGL.so.${PV} \
+ usr/lib/libGLcore.so.${PV}
+ dosym libGL.so.${PV} ${NV_ROOT}/lib/libGL.so
+ dosym libGL.so.${PV} ${NV_ROOT}/lib/libGL.so.1
+ dosym libGLcore.so.${PV} ${NV_ROOT}/lib/libGLcore.so
+ dosym libGLcore.so.${PV} ${NV_ROOT}/lib/libGLcore.so.1
+
+ insinto /usr/X11R6/lib
+ doins usr/X11R6/lib/libXvMCNVIDIA.a
+ exeinto /usr/X11R6/lib
+ doexe usr/X11R6/lib/libXvMCNVIDIA.so.${PV}
+
+ # Includes
+ insinto ${NV_ROOT}/include
+ doins usr/include/GL/*.h
+
+ # Docs
+ dodoc usr/share/doc/*
+
+ # Not sure whether installing the .la file is neccessary;
+ # this is adopted from the `nvidia' ebuild
+ local ver1="`echo ${PV} |cut -d '.' -f 1`"
+ local ver2="`echo ${PV} |cut -d '.' -f 2`"
+ local ver3="`echo ${PV} |cut -d '.' -f 3`"
+ sed -e "s:\${PV}:${PV}:" \
+ -e "s:\${ver1}:${ver1}:" \
+ -e "s:\${ver2}:${ver2}:" \
+ -e "s:\${ver3}:${ver3}:" \
+ ${FILESDIR}/libGL.la.1 > ${D}/${NV_ROOT}/lib/libGL.la
+}
+
+pkg_preinst() {
+ #clean the dinamic libGL stuff's home to ensure
+ #we dont have stale libs floating around
+ if [ -d ${ROOT}/usr/lib/opengl/nvidia ]
+ then
+ rm -rf ${ROOT}/usr/lib/opengl/nvidia/*
+ fi
+ #make sure we nuke the old nvidia-glx's env.d file
+ if [ -e ${ROOT}/etc/env.d/09nvidia ]
+ then
+ rm -f ${ROOT}/etc/env.d/09nvidia
+ fi
+}
+
+pkg_postinst() {
+ #switch to the nvidia implementation
+ if [ "${ROOT}" = "/" ]
+ then
+ /usr/sbin/opengl-update nvidia
+ fi
+
+ einfo
+ einfo "To use the Nvidia GLX, run \"opengl-update nvidia\""
+ einfo
+}
+
diff --git a/media-video/nvidia-kernel/ChangeLog b/media-video/nvidia-kernel/ChangeLog
index 110ae7d9765e..f78b974844b9 100644
--- a/media-video/nvidia-kernel/ChangeLog
+++ b/media-video/nvidia-kernel/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for media-video/nvidia-kernel
# Copyright 2002-2003 Gentoo Technologies, Inc.; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-video/nvidia-kernel/ChangeLog,v 1.40 2003/07/14 22:10:42 azarah Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-video/nvidia-kernel/ChangeLog,v 1.41 2003/07/18 21:43:03 tester Exp $
+
+*nvidia-kernel-1.0.4180 (18 Jul 2003)
+
+ 18 Jul 2003; Olivier Crete <tester@gentoo.org>
+ nvidia-kernel-1.0.4180.ebuild:
+ Added amd64 version of the driver
14 Jul 2003; Martin Schlemmer <azarah@gentoo.org>
nvidia-kernel-1.0.4363-r3.ebuild,
diff --git a/media-video/nvidia-kernel/Manifest b/media-video/nvidia-kernel/Manifest
index 61f89d7a527a..911374492aa6 100644
--- a/media-video/nvidia-kernel/Manifest
+++ b/media-video/nvidia-kernel/Manifest
@@ -1,30 +1,32 @@
-MD5 f5ac20e245dd77f0555ffef3f1a1f2f4 ChangeLog 8565
+MD5 cdcf177830becdf3c2cb628e1d6a6749 nvidia-kernel-1.0.4363-r2.ebuild 4180
MD5 04b1f361d40708ab81631bea5e46a632 nvidia-kernel-1.0.2880-r1.ebuild 1970
+MD5 0646bd1f1f1109063862d1475aaccab4 nvidia-kernel-1.0.4349-r2.ebuild 3702
MD5 5177ed76121fb4bc1aa220c62319d196 nvidia-kernel-1.0.2960-r1.ebuild 2081
+MD5 fdbebc5ee28fcdccc9e6bf714e7319b3 nvidia-kernel-1.0.4180.ebuild 3873
MD5 16a9003f79bea31eeec6f03ae64cd8ef nvidia-kernel-1.0.3123-r2.ebuild 3229
MD5 fb3a9bb943c61b9b3b43cd73fc9d24ca nvidia-kernel-1.0.4191-r2.ebuild 3867
-MD5 cdcf177830becdf3c2cb628e1d6a6749 nvidia-kernel-1.0.4363-r2.ebuild 4180
-MD5 0646bd1f1f1109063862d1475aaccab4 nvidia-kernel-1.0.4349-r2.ebuild 3702
MD5 2be980ccf2a1f169e14e80d8887e42a5 nvidia-kernel-1.0.4363-r3.ebuild 4206
-MD5 441b29e8f10b6620c4dd4fc01528f172 files/NVIDIA_kernel-1.0-3123-2.5-module.diff 5569
-MD5 4057597a09dd795c93ce8088d6f023bb files/NVIDIA_kernel-1.0-3123-2.5-tl-pa.diff 11858
+MD5 e5c6423a145ac2234bc834f3817ec450 ChangeLog 8723
MD5 059b3ddf8944dce6c9184d11d15abd71 files/NVIDIA_kernel-1.0-3123-2.5-tl.diff 31614
-MD5 2533aa51a645ec25c96a389110230298 files/NVIDIA_kernel-1.0-3123-2.5.54.diff 858
-MD5 f38a4afc671446ad293a46b0046c0aec files/NVIDIA_kernel-1.0-3123-pa.diff 10825
-MD5 7f987ae6384103d87f323d834bba87a1 files/NVIDIA_kernel-1.0-4191-2.5-tl.diff 39065
MD5 57f69061f52fd98e20c7d62882af2757 files/NVIDIA_kernel-1.0-4191-2.5.54.diff 1228
+MD5 441b29e8f10b6620c4dd4fc01528f172 files/NVIDIA_kernel-1.0-3123-2.5-module.diff 5569
MD5 6d8e159e5bdeb520091874050594b706 files/NVIDIA_kernel-1.0-4191-2.5.63.diff 814
+MD5 259cdc102f465d8a3dbb4169ac1ba194 files/digest-nvidia-kernel-1.0.4180 74
+MD5 089e6829e7e8497a603ba9dc9563a722 files/nvidia 30
+MD5 7f987ae6384103d87f323d834bba87a1 files/NVIDIA_kernel-1.0-4191-2.5-tl.diff 39065
MD5 ef31d4cc1ef62e1c3b2336d984cf6496 files/digest-nvidia-kernel-1.0.2880-r1 74
MD5 15c10778db607715e60a461e09d9f54c files/digest-nvidia-kernel-1.0.2960-r1 1122
+MD5 4057597a09dd795c93ce8088d6f023bb files/NVIDIA_kernel-1.0-3123-2.5-tl-pa.diff 11858
MD5 5ba2848379bbce2f85d8442c01c0291d files/digest-nvidia-kernel-1.0.3123-r2 74
+MD5 2533aa51a645ec25c96a389110230298 files/NVIDIA_kernel-1.0-3123-2.5.54.diff 858
MD5 854b5c292ec300d7105dbd54385840f6 files/digest-nvidia-kernel-1.0.4191-r2 74
-MD5 56ebaa3ba92e9db848baea746a6aef1a files/digest-nvidia-kernel-1.0.4363-r3 74
MD5 c66873e3c55fd472cc99da1b74499c03 files/digest-nvidia-kernel-1.0.4349-r2 74
-MD5 089e6829e7e8497a603ba9dc9563a722 files/nvidia 30
-MD5 b6a9c4bdd3961980af4a70f57485d708 files/nvidia-1.1 441
MD5 56ebaa3ba92e9db848baea746a6aef1a files/digest-nvidia-kernel-1.0.4363-r2 74
+MD5 56ebaa3ba92e9db848baea746a6aef1a files/digest-nvidia-kernel-1.0.4363-r3 74
+MD5 f38a4afc671446ad293a46b0046c0aec files/NVIDIA_kernel-1.0-3123-pa.diff 10825
+MD5 b6a9c4bdd3961980af4a70f57485d708 files/nvidia-1.1 441
MD5 31565678620709b117139345323051fd files/1.0.4349/NVIDIA_kernel-1.0-4349-2.5-20030402.diff 70350
MD5 439563bcf7fa96c91361226fae454e0e files/1.0.4349/NVIDIA_kernel-1.0-4349-2.5.68.diff 1467
-MD5 c8b6a9308eb71e5679a7b036128a4d84 files/1.0.4363/NVIDIA_kernel-1.0-4363-highpmd.diff 1328
-MD5 e08e015c157458037c079e0259cf16a6 files/1.0.4363/NVIDIA_kernel-1.0-4363-2.5-20030614.diff 74562
MD5 55a418e3a16875434624b975592c82dc files/1.0.4363/NVIDIA_kernel-1.0-4363-2.5-20030714.diff 79479
+MD5 e08e015c157458037c079e0259cf16a6 files/1.0.4363/NVIDIA_kernel-1.0-4363-2.5-20030614.diff 74562
+MD5 c8b6a9308eb71e5679a7b036128a4d84 files/1.0.4363/NVIDIA_kernel-1.0-4363-highpmd.diff 1328
diff --git a/media-video/nvidia-kernel/files/digest-nvidia-kernel-1.0.4180 b/media-video/nvidia-kernel/files/digest-nvidia-kernel-1.0.4180
new file mode 100644
index 000000000000..a495b2dd0646
--- /dev/null
+++ b/media-video/nvidia-kernel/files/digest-nvidia-kernel-1.0.4180
@@ -0,0 +1 @@
+MD5 5f75fd0504fc0a8a2666c5a2c43e3a97 NVIDIA_kernel-1.0-4180.tar.gz 642956
diff --git a/media-video/nvidia-kernel/nvidia-kernel-1.0.4180.ebuild b/media-video/nvidia-kernel/nvidia-kernel-1.0.4180.ebuild
new file mode 100644
index 000000000000..d7087bae6550
--- /dev/null
+++ b/media-video/nvidia-kernel/nvidia-kernel-1.0.4180.ebuild
@@ -0,0 +1,133 @@
+# Copyright 1999-2003 Gentoo Technologies, Inc.
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-video/nvidia-kernel/nvidia-kernel-1.0.4180.ebuild,v 1.1 2003/07/18 21:43:03 tester Exp $
+
+inherit eutils
+
+# Make sure Portage does _NOT_ strip symbols. Need both lines for
+# Portage 1.8.9+
+DEBUG="yes"
+RESTRICT="nostrip"
+
+NV_V="${PV/1.0./1.0-}"
+NV_PACKAGE="NVIDIA_kernel-${NV_V}"
+S="${WORKDIR}/${NV_PACKAGE}"
+DESCRIPTION="Linux kernel module for the NVIDIA's X driver"
+SRC_URI="http://download.nvidia.com/XFree86_40/${NV_V}/${NV_PACKAGE}.tar.gz"
+HOMEPAGE="http://www.nvidia.com/"
+
+# The slow needs to be set to $KV to prevent unmerges of
+# modules for other kernels.
+LICENSE="NVIDIA"
+SLOT="${KV}"
+KEYWORDS="amd64 -x86 -ppc -sparc -alpha -hppa -mips -arm"
+
+DEPEND="virtual/linux-sources
+ >=sys-apps/portage-1.9.10"
+RDEPEND=${DEPEND}
+IUSE=""
+
+pkg_setup() {
+ if [ ! -f /proc/mtrr ]
+ then
+ eerror "This version needs MTRR support for most chipsets!"
+ eerror "Please enable MTRR support in your kernel config, found at:"
+ eerror
+ eerror " Processor type and features -> [*] MTRR (Memory Type Range Register) support"
+ eerror
+ eerror "and recompile your kernel ..."
+ die "MTRR support not detected!"
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+
+ # Next section applies patches for linux-2.5 kernel, or if
+ # linux-2.4, the page_alloc.c patch courtesy of NVIDIA Corporation.
+ # All these are from:
+ #
+ # http://www.minion.de/nvidia/
+ #
+ # Many thanks to Christian Zander <zander@minion.de> for bringing
+ # these to us, and being so helpful to select which to use.
+ # The patches should close bugs #9704 & #15722.
+
+ local KV_major="`uname -r | cut -d. -f1`"
+ local KV_minor="`uname -r | cut -d. -f2`"
+ local KV_micro="`uname -r | cut -d. -f3 | sed -e 's:[^0-9].*::'`"
+
+ cd ${S}
+ if [ "${KV_major}" -eq 2 -a "${KV_minor}" -eq 4 ] && \
+ [ -r /usr/src/linux/mm/rmap.c ]
+ then
+ einfo "Detected rmap enabled kernel."
+ EPATCH_SINGLE_MSG="Applying rmap patch for kernel 2.4..." \
+ epatch ${FILESDIR}/${NV_PACKAGE}-2.5-tl.diff
+
+ elif [ "${KV_major}" -eq 2 -a "${KV_minor}" -eq 5 ]
+ then
+ EPATCH_SINGLE_MSG="Applying tasklet patch for kernel 2.5..." \
+ epatch ${FILESDIR}/${NV_PACKAGE}-2.5-tl.diff
+
+ if [ "${KV_micro}" -ge 54 ]
+ then
+ EPATCH_SINGLE_MSG="Applying module_loader_no_common_sections patch..." \
+ epatch ${FILESDIR}/${NV_PACKAGE}-2.5.54.diff
+ fi
+ if [ "${KV_micro}" -ge 63 ]
+ then
+ EPATCH_SINGLE_MSG="Applying missing_modversion.h patch..." \
+ epatch ${FILESDIR}/${NV_PACKAGE}-2.5.63.diff
+ fi
+ fi
+}
+
+src_compile() {
+ # Portage should determine the version of the kernel sources
+ check_KV
+ # IGNORE_CC_MISMATCH disables a sanity check that's needed when gcc has been
+ # updated but the running kernel is still compiled with an older gcc. This is
+ # needed for chrooted building, where the sanity check detects the gcc of the
+ # kernel outside the chroot rather than within.
+ make IGNORE_CC_MISMATCH="yes" KERNDIR="/usr/src/linux" \
+ clean nvidia.o || die
+}
+
+src_install() {
+ # The driver goes into the standard modules location
+ insinto /lib/modules/${KV}/video
+ doins nvidia.o
+
+ # Add the aliases
+ insinto /etc/modules.d
+ newins ${FILESDIR}/nvidia-1.1 nvidia
+
+ # Docs
+ dodoc ${S}/README
+
+ # The device creation script
+ into /
+ newsbin ${S}/makedevices.sh NVmakedevices.sh
+}
+
+pkg_postinst() {
+ if [ "${ROOT}" = "/" ]
+ then
+ # Update module dependency
+ [ -x /usr/sbin/update-modules ] && /usr/sbin/update-modules
+ if [ ! -e /dev/.devfsd ] && [ -x /sbin/NVmakedevices.sh ]
+ then
+ /sbin/NVmakedevices.sh >/dev/null 2>&1
+ fi
+ fi
+
+ echo
+ einfo "If you are not using devfs, loading the module automatically at"
+ einfo "boot up, you need to add \"nvidia\" to your /etc/modules.autoload."
+ echo
+ ewarn "Please note that the driver name changed from \"NVdriver\""
+ ewarn "to \"nvidia.o\"."
+ echo
+}
+