# ChangeLog for x11-drivers/nvidia-drivers
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/ChangeLog,v 1.41 2007/03/07 23:14:54 wolf31o2 Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/ChangeLog,v 1.42 2007/03/13 22:40:40 eradicator Exp $
+
+*nvidia-drivers-1.0.9755-r1 (13 Mar 2007)
+*nvidia-drivers-1.0.9746-r1 (13 Mar 2007)
+*nvidia-drivers-1.0.9631-r1 (13 Mar 2007)
+*nvidia-drivers-1.0.8776-r1 (13 Mar 2007)
+
+ 13 Mar 2007; Jeremy Huddleston <eradicator@gentoo.org>
+ +nvidia-drivers-1.0.8776-r1.ebuild, -nvidia-drivers-1.0.9631.ebuild,
+ +nvidia-drivers-1.0.9631-r1.ebuild, -nvidia-drivers-1.0.9746.ebuild,
+ +nvidia-drivers-1.0.9746-r1.ebuild, -nvidia-drivers-1.0.9755.ebuild,
+ +nvidia-drivers-1.0.9755-r1.ebuild:
+ Install libnvidia-cfg.so. Fixes bug #114893.
*nvidia-drivers-1.0.9755 (07 Mar 2007)
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
AUX 09nvidia 61 RMD160 b69c3282ba6195112e312fe34bdcb12544aef8ca SHA1 05dd043f66f53409dfe511636d92a339edb4c765 SHA256 14702d6726cc9f0ad832a3cc90059999eb956f9e3a35397cb63cfa6347b33e39
MD5 c3afc69f917a783ebd53cf2de38065dc files/09nvidia 61
RMD160 b69c3282ba6195112e312fe34bdcb12544aef8ca files/09nvidia 61
DIST NVIDIA-Linux-x86_64-1.0-9631-pkg2.run 10233636 RMD160 5e9c501fbfad27686651f64705854552be6c3f0c SHA1 add85f7b7d47c6657c1b53bbe6f8da0e1da0a1d7 SHA256 009d6e4171fa18580264ce0ace92c1c68f0702f009837f1214d77b6948223375
DIST NVIDIA-Linux-x86_64-1.0-9746-pkg2.run 11743919 RMD160 b3a050ea487e627cdf2e9ba8dab8a178be6d0bfc SHA1 eee24a1db159c4cadc367f1ab2ed8306e23c89fe SHA256 22f9f09a5ceca852c20f12690ac396738f26e150713b2e56cbb42e752454abf9
DIST NVIDIA-Linux-x86_64-1.0-9755-pkg2.run 11768823 RMD160 dbc5f34410294de21cadcd17216c45000a0464a1 SHA1 28fb1ac0948a583e8c760b541e19614f3f6ba0d4 SHA256 eaa467d3cde6fe61feb0cbe911316742e03e841d18a94c531caffa42457be785
+EBUILD nvidia-drivers-1.0.8776-r1.ebuild 12797 RMD160 3643ad530e9ed311c49370ace592ae8bf336c201 SHA1 da5bcbbd096dcbc0de51b8e9232b46d49858253e SHA256 1ea640a5cd38b648f3ba780a7326c1aa350dd23076c8790bb95e39ec496b9f49
+MD5 7c3abf53fff7f1914657c5899beff430 nvidia-drivers-1.0.8776-r1.ebuild 12797
+RMD160 3643ad530e9ed311c49370ace592ae8bf336c201 nvidia-drivers-1.0.8776-r1.ebuild 12797
+SHA256 1ea640a5cd38b648f3ba780a7326c1aa350dd23076c8790bb95e39ec496b9f49 nvidia-drivers-1.0.8776-r1.ebuild 12797
EBUILD nvidia-drivers-1.0.8776.ebuild 12566 RMD160 6adb3d6125f9a5c0fd91eedc11d77ac00a860a32 SHA1 6494df0921efa8aa658e7d60d094ff9d1f1e300e SHA256 91caffa37522a218e870c24bef26610a7374d256dd88081c6ad480d838ed2cee
MD5 4e6a40725afd521a3ba3e61f2d01947f nvidia-drivers-1.0.8776.ebuild 12566
RMD160 6adb3d6125f9a5c0fd91eedc11d77ac00a860a32 nvidia-drivers-1.0.8776.ebuild 12566
SHA256 91caffa37522a218e870c24bef26610a7374d256dd88081c6ad480d838ed2cee nvidia-drivers-1.0.8776.ebuild 12566
-EBUILD nvidia-drivers-1.0.9631.ebuild 12736 RMD160 6b890e1267834855833cddf7e659e7fe2f243353 SHA1 205711922d6c130c0cc89b4492d37d7c37a0afb1 SHA256 3b628a32e07f3a8ede5991671b39a57970eb9e2c420d658a305cf74cec610941
-MD5 3aee2fd9a25fa9f30e91ab5151ef1f31 nvidia-drivers-1.0.9631.ebuild 12736
-RMD160 6b890e1267834855833cddf7e659e7fe2f243353 nvidia-drivers-1.0.9631.ebuild 12736
-SHA256 3b628a32e07f3a8ede5991671b39a57970eb9e2c420d658a305cf74cec610941 nvidia-drivers-1.0.9631.ebuild 12736
-EBUILD nvidia-drivers-1.0.9746.ebuild 12894 RMD160 a76b9c27d6564f4ae69032bebf5526d66b7ef0f5 SHA1 add4bf3eb6b28ce0422e4e8fb67cbf37a771073d SHA256 b3ed12222f2d01aa3a53291fc04b428b76771c9a2feed6c6bdd072b721339658
-MD5 321dfa791dd193e0aaad1e5f362f4afb nvidia-drivers-1.0.9746.ebuild 12894
-RMD160 a76b9c27d6564f4ae69032bebf5526d66b7ef0f5 nvidia-drivers-1.0.9746.ebuild 12894
-SHA256 b3ed12222f2d01aa3a53291fc04b428b76771c9a2feed6c6bdd072b721339658 nvidia-drivers-1.0.9746.ebuild 12894
-EBUILD nvidia-drivers-1.0.9755.ebuild 12894 RMD160 c0d725dc21279704468b8122998f980717eab3c6 SHA1 14575ed90bd2b5722a957c8dff7e8391f3a678d4 SHA256 19e2a63c71a12e71930f9317d6e8be914abfe7cbba9bf6a10a9ecb41740af5a8
-MD5 360860a1c311b38f689b17fc3ec41236 nvidia-drivers-1.0.9755.ebuild 12894
-RMD160 c0d725dc21279704468b8122998f980717eab3c6 nvidia-drivers-1.0.9755.ebuild 12894
-SHA256 19e2a63c71a12e71930f9317d6e8be914abfe7cbba9bf6a10a9ecb41740af5a8 nvidia-drivers-1.0.9755.ebuild 12894
-MISC ChangeLog 9360 RMD160 4c044a2fc5a280028ae73673cb3ce61cea69d68c SHA1 0fc6a8f6233b0e3c6537585d187e981347064393 SHA256 c90cc615212351124b1c897e5addd30de02e516c5132a50b03f4ae2406418937
-MD5 37e59d3fd02b5e46ab193d120e6cce7f ChangeLog 9360
-RMD160 4c044a2fc5a280028ae73673cb3ce61cea69d68c ChangeLog 9360
-SHA256 c90cc615212351124b1c897e5addd30de02e516c5132a50b03f4ae2406418937 ChangeLog 9360
+EBUILD nvidia-drivers-1.0.9631-r1.ebuild 13015 RMD160 ebf7f624d3a168651ad3463db5386e4edc103be8 SHA1 a1ba09c5dc02fbd0e4db76ae47d8ef38ac4f3591 SHA256 9a498a2dc05874b449b33ea955029e23aa6218c9c51ab7f837a7bd7a1203e8ee
+MD5 86546399dd13d654df4f333c1038ae67 nvidia-drivers-1.0.9631-r1.ebuild 13015
+RMD160 ebf7f624d3a168651ad3463db5386e4edc103be8 nvidia-drivers-1.0.9631-r1.ebuild 13015
+SHA256 9a498a2dc05874b449b33ea955029e23aa6218c9c51ab7f837a7bd7a1203e8ee nvidia-drivers-1.0.9631-r1.ebuild 13015
+EBUILD nvidia-drivers-1.0.9746-r1.ebuild 13173 RMD160 0de8878202148fa4cfd6f299492b2ffd7b3e2ec9 SHA1 42bbb567065d188484d2f5c3c08fe8ae21c8666d SHA256 4160900ef7aca0430af7e6f7fa3ecd20d31af6b1996937cdb4482bf925aaf5f8
+MD5 51b9bd18029477a6c7df79ac42777a97 nvidia-drivers-1.0.9746-r1.ebuild 13173
+RMD160 0de8878202148fa4cfd6f299492b2ffd7b3e2ec9 nvidia-drivers-1.0.9746-r1.ebuild 13173
+SHA256 4160900ef7aca0430af7e6f7fa3ecd20d31af6b1996937cdb4482bf925aaf5f8 nvidia-drivers-1.0.9746-r1.ebuild 13173
+EBUILD nvidia-drivers-1.0.9755-r1.ebuild 13173 RMD160 0655282de6c32f3c2da7a9982585cb18d131bd1a SHA1 203baf041dfa929df41433f2d9fee2208cedabd6 SHA256 99da8571b99fccca2c341e46f43709d8ae9a07e03e62e92542b80d4b15d26339
+MD5 10e78501abd84e2a2cc3929d993818e9 nvidia-drivers-1.0.9755-r1.ebuild 13173
+RMD160 0655282de6c32f3c2da7a9982585cb18d131bd1a nvidia-drivers-1.0.9755-r1.ebuild 13173
+SHA256 99da8571b99fccca2c341e46f43709d8ae9a07e03e62e92542b80d4b15d26339 nvidia-drivers-1.0.9755-r1.ebuild 13173
+MISC ChangeLog 9888 RMD160 536cecd925cf4453ef83e9e6a495833798fd8d46 SHA1 8bd325f00e0455de9857433ab36a1a6a7ddb816e SHA256 2d3d591e38a723a64eb65b29976aaa4b51ad68d54b3f4f239e2a6585dd46e99b
+MD5 0a7b200b2688a034372b2f93d0a0b13f ChangeLog 9888
+RMD160 536cecd925cf4453ef83e9e6a495833798fd8d46 ChangeLog 9888
+SHA256 2d3d591e38a723a64eb65b29976aaa4b51ad68d54b3f4f239e2a6585dd46e99b ChangeLog 9888
MISC metadata.xml 302 RMD160 66c75d5895f747b8ce5af0f80b90af8fea1d07d7 SHA1 47dde751e4e0c833a65f32e106e594f449fe58a2 SHA256 0aa0f01ad14674164a2898387b83ded31b2b67a12757165debe6b03ee2fd692f
MD5 643cec14f7f1dda9a26f163853dbf080 metadata.xml 302
RMD160 66c75d5895f747b8ce5af0f80b90af8fea1d07d7 metadata.xml 302
MD5 352fa2d75a4a3f1244165817cdbf61d4 files/digest-nvidia-drivers-1.0.8776 867
RMD160 073fc276016fc837371f3c321bd76786bc68ca19 files/digest-nvidia-drivers-1.0.8776 867
SHA256 9a2c001f4a7d6b6461ae0ed151c958442f1bc15f7c4515f499d876a503d41f92 files/digest-nvidia-drivers-1.0.8776 867
-MD5 e40c59778a2bc692817308df81ae2d1c files/digest-nvidia-drivers-1.0.9631 870
-RMD160 3f03d5b9e447512ed9a1fd6eefbc6d013c7b9c14 files/digest-nvidia-drivers-1.0.9631 870
-SHA256 7d920f7b6cae52a27fa4c0e9194e1e96565862955c2ceba136327bb92564c748 files/digest-nvidia-drivers-1.0.9631 870
-MD5 288c8bcf08292abe4f7ec43168890bf4 files/digest-nvidia-drivers-1.0.9746 873
-RMD160 030aedf4c386fb0df0568fb35f62a36db9697901 files/digest-nvidia-drivers-1.0.9746 873
-SHA256 7a5e7a36e96d0a168150703a0d7c9d5d6604a66046b50d9a81a34f3066bf0c2d files/digest-nvidia-drivers-1.0.9746 873
-MD5 b5eee0015ba9c577cc726a3d2c12ae31 files/digest-nvidia-drivers-1.0.9755 873
-RMD160 f8491760b7f68c1ab846c55517131773f14e0c83 files/digest-nvidia-drivers-1.0.9755 873
-SHA256 8950b102eca59ec72c39db57778a0c47ea65f8bd29abe4c00307fd8bfd64afd3 files/digest-nvidia-drivers-1.0.9755 873
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.3 (GNU/Linux)
-
-iD8DBQFF9dnf8bi6rjpTunYRAqyaAJ9Uwk9lS35wT9WMvxnqX9g+YRYvUwCg2DB+
-kR5Kuzi80ZiZTPHZY5UPVOI=
-=lz8P
------END PGP SIGNATURE-----
+MD5 352fa2d75a4a3f1244165817cdbf61d4 files/digest-nvidia-drivers-1.0.8776-r1 867
+RMD160 073fc276016fc837371f3c321bd76786bc68ca19 files/digest-nvidia-drivers-1.0.8776-r1 867
+SHA256 9a2c001f4a7d6b6461ae0ed151c958442f1bc15f7c4515f499d876a503d41f92 files/digest-nvidia-drivers-1.0.8776-r1 867
+MD5 d7a99a9c9bda4ad4a38a89f85ec56048 files/digest-nvidia-drivers-1.0.9631-r1 626
+RMD160 ae9433e5ed3dbefa216fdb5dd0f8aac2dcd98efc files/digest-nvidia-drivers-1.0.9631-r1 626
+SHA256 b68a1920a1e24626d091ada4079cdda6f3370339b3c55bc71035e9ad9e0e2923 files/digest-nvidia-drivers-1.0.9631-r1 626
+MD5 f0a21dd7d35560a492fd4570447029a3 files/digest-nvidia-drivers-1.0.9746-r1 712
+RMD160 8999d64d6ce813e8c77934e751ffbe574f02cde3 files/digest-nvidia-drivers-1.0.9746-r1 712
+SHA256 9d1b0adc44d93eec1c41cc2326d100d0552cb898cdb78464044966f32ae5ada8 files/digest-nvidia-drivers-1.0.9746-r1 712
+MD5 b5eee0015ba9c577cc726a3d2c12ae31 files/digest-nvidia-drivers-1.0.9755-r1 873
+RMD160 f8491760b7f68c1ab846c55517131773f14e0c83 files/digest-nvidia-drivers-1.0.9755-r1 873
+SHA256 8950b102eca59ec72c39db57778a0c47ea65f8bd29abe4c00307fd8bfd64afd3 files/digest-nvidia-drivers-1.0.9755-r1 873
--- /dev/null
+MD5 6a8bb2e699a967b6b20dc24a96bf363d NVIDIA-FreeBSD-x86-1.0-8776.tar.gz 9448963
+RMD160 d646e511978ac77fddb6600eabdfc1ea32146e00 NVIDIA-FreeBSD-x86-1.0-8776.tar.gz 9448963
+SHA256 404f25862031d8f3036de33d2a0fafc3c54821a9a08832c1c1616c145d93baa5 NVIDIA-FreeBSD-x86-1.0-8776.tar.gz 9448963
+MD5 93ad45fe7b974a5a80348e1890f9b7c9 NVIDIA-Linux-x86-1.0-8776-pkg0.run 6479231
+RMD160 296dcc76c43fd65105f8d0c6f99295ee983b8872 NVIDIA-Linux-x86-1.0-8776-pkg0.run 6479231
+SHA256 0b25f9e407ea513cac8d600054d2dc28ca2e407caa535510210ad9fa5f45e8dc NVIDIA-Linux-x86-1.0-8776-pkg0.run 6479231
+MD5 9ff6453fd65a4fff758b36e34afa5141 NVIDIA-Linux-x86_64-1.0-8776-pkg2.run 9982646
+RMD160 5cba53392aa0fd27231d01883679e1a1dba7ee34 NVIDIA-Linux-x86_64-1.0-8776-pkg2.run 9982646
+SHA256 6fc8dedf782fdfe408dc0196531c301bb3bafac6878520537807118f3a2f9384 NVIDIA-Linux-x86_64-1.0-8776-pkg2.run 9982646
-MD5 d560b1e7d5b0209da7aa32526cdda921 NVIDIA-FreeBSD-x86-1.0-9631.tar.gz 9667093
RMD160 2034f9086ad44ae222199e4949195dffc67274f1 NVIDIA-FreeBSD-x86-1.0-9631.tar.gz 9667093
SHA256 2b467da57bc3bb8e2216ce3d02909cf077da045ebcf294474b784cb521a5d550 NVIDIA-FreeBSD-x86-1.0-9631.tar.gz 9667093
-MD5 b0d721c962c4df1a028ae18416d7e862 NVIDIA-Linux-x86-1.0-9631-pkg0.run 6581907
RMD160 7fc0b394e0a9fbb772e43136528dbd3c2b7ac81e NVIDIA-Linux-x86-1.0-9631-pkg0.run 6581907
SHA256 d1a54248d55f2aecab735e40ae060928670a766a98dd652b2245ebd68085ca5a NVIDIA-Linux-x86-1.0-9631-pkg0.run 6581907
-MD5 64b88c6f405e7f2dd1607c0062c0c1f3 NVIDIA-Linux-x86_64-1.0-9631-pkg2.run 10233636
RMD160 5e9c501fbfad27686651f64705854552be6c3f0c NVIDIA-Linux-x86_64-1.0-9631-pkg2.run 10233636
SHA256 009d6e4171fa18580264ce0ace92c1c68f0702f009837f1214d77b6948223375 NVIDIA-Linux-x86_64-1.0-9631-pkg2.run 10233636
-MD5 d6dd2fad4f6e05980c2fbb591b06fb99 NVIDIA-FreeBSD-x86-1.0-9746.tar.gz 11152524
RMD160 8fe06d1a3af528c6fae9f94ff0e612d42e034ecd NVIDIA-FreeBSD-x86-1.0-9746.tar.gz 11152524
SHA256 cf8be89d537423c0acc294e57cb659dae94463f6347f63c32b1de39c8051a5a7 NVIDIA-FreeBSD-x86-1.0-9746.tar.gz 11152524
-MD5 575f988468f2c34a302da3d21e282689 NVIDIA-Linux-x86-1.0-9746-pkg0.run 7733466
RMD160 7968dba12e86ecf93470d2aa1442be0ca04c4bb0 NVIDIA-Linux-x86-1.0-9746-pkg0.run 7733466
SHA256 11dd3fa562bb4695a65e69b45634b91d3fa6ab7181be5f0448afd3c7efce0756 NVIDIA-Linux-x86-1.0-9746-pkg0.run 7733466
MD5 c0afc66e1c21a9a54ba6719b8edd3166 NVIDIA-Linux-x86_64-1.0-9746-pkg2.run 11743919
--- /dev/null
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/nvidia-drivers-1.0.8776-r1.ebuild,v 1.1 2007/03/13 22:40:40 eradicator Exp $
+
+inherit eutils multilib versionator linux-mod
+
+NV_V="${PV/1.0./1.0-}"
+X86_NV_PACKAGE="NVIDIA-Linux-x86-${NV_V}"
+AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${NV_V}"
+X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${NV_V}"
+
+DESCRIPTION="NVIDIA X11 driver and GLX libraries"
+HOMEPAGE="http://www.nvidia.com/"
+SRC_URI="x86? ( ftp://download.nvidia.com/XFree86/Linux-x86/${NV_V}/${X86_NV_PACKAGE}-pkg0.run )
+ amd64? ( http://download.nvidia.com/XFree86/Linux-x86_64/${NV_V}/${AMD64_NV_PACKAGE}-pkg2.run )
+ x86-fbsd? ( http://download.nvidia.com/freebsd/${NV_V}/${X86_FBSD_NV_PACKAGE}.tar.gz )"
+
+LICENSE="NVIDIA"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
+IUSE=""
+RESTRICT="nostrip multilib-pkg-force"
+
+DEPEND="kernel_linux? ( virtual/linux-sources )"
+RDEPEND="kernel_linux? ( virtual/modutils )
+ x11-base/xorg-server
+ media-libs/mesa
+ app-admin/eselect-opengl
+ kernel_FreeBSD? ( !media-video/nvidia-freebsd )
+ !app-emulation/emul-linux-x86-nvidia
+ !x11-drivers/nvidia-legacy-drivers"
+
+QA_TEXTRELS_x86="usr/lib/xorg/libXvMCNVIDIA.so.${PV}
+ usr/lib/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib/opengl/nvidia/tls/libnvidia-tls.so.${PV}
+ usr/lib/opengl/nvidia/no-tls/libnvidia-tls.so.${PV}
+ usr/lib/libXvMCNVIDIA.so.${PV}
+ usr/lib/xorg/modules/drivers/nvidia_drv.so
+ usr/lib/opengl/nvidia/extensions/libglx.so"
+
+QA_WX_LOAD_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib/opengl/nvidia/extensions/libglx.so"
+
+QA_TEXTRELS_amd64="usr/lib64/xorg/libXvMCNVIDIA.so.${PV}
+ usr/lib64/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib64/opengl/nvidia/tls/libnvidia-tls.so.${PV}
+ usr/lib64/opengl/nvidia/no-tls/libnvidia-tls.so.${PV}
+ usr/lib64/libXvMCNVIDIA.so.${PV}
+ usr/lib64/xorg/modules/drivers/nvidia_drv.so
+ usr/lib64/opengl/nvidia/extensions/libglx.so
+ usr/lib32/xorg/libXvMCNVIDIA.so.${PV}
+ usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib32/opengl/nvidia/tls/libnvidia-tls.so.${PV}
+ usr/lib32/opengl/nvidia/no-tls/libnvidia-tls.so.${PV}
+ usr/lib32/libXvMCNVIDIA.so.${PV}
+ usr/lib32/xorg/modules/drivers/nvidia_drv.so
+ usr/lib32/opengl/nvidia/extensions/libglx.so"
+
+QA_WX_LOAD_amd64="usr/lib64/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib64/opengl/nvidia/extensions/libglx.so
+ usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib32/opengl/nvidia/extensions/libglx.so"
+
+export _POSIX2_VERSION="199209"
+
+if use x86; then
+ PKG_V="-pkg0"
+ NV_PACKAGE="${X86_NV_PACKAGE}"
+elif use amd64; then
+ PKG_V="-pkg2"
+ NV_PACKAGE="${AMD64_NV_PACKAGE}"
+elif use x86-fbsd; then
+ PKG_V=""
+ NV_PACKAGE="${X86_FBSD_NV_PACKAGE}"
+fi
+
+S="${WORKDIR}/${NV_PACKAGE}${PKG_V}/usr/src/nv"
+
+# On BSD userland it wants real make command
+MAKE="make"
+
+mtrr_check() {
+ ebegin "Checking for MTRR support"
+ linux_chkconfig_present MTRR
+ eend $?
+
+ if [[ $? -ne 0 ]] ; 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"
+ eerror " [*] MTRR (Memory Type Range Register) support"
+ eerror
+ eerror "and recompile your kernel ..."
+ die "MTRR support not detected!"
+ fi
+}
+
+pkg_setup() {
+ if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then
+ eerror "This ebuild doesn't currently support changing your default abi."
+ die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
+ fi
+
+ if ! use x86-fbsd; then
+ linux-mod_pkg_setup
+ MODULE_NAMES="nvidia(video:${S})"
+ BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} SYSOUT=${KV_OUT_DIR}"
+ mtrr_check
+ fi
+}
+
+src_unpack() {
+ local NV_PATCH_PREFIX="${FILESDIR}/${PV}/NVIDIA-${PV}"
+
+ if ! use x86-fbsd; then
+ if [[ ${KV_MINOR} -eq 6 && ${KV_PATCH} -lt 7 ]] ; then
+ echo
+ ewarn "Your kernel version is ${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}"
+ ewarn "This is not officially supported for ${P}. It is likely you"
+ ewarn "will not be able to compile or use the kernel module."
+ ewarn "It is recommended that you upgrade your kernel to a version >= 2.6.7"
+ echo
+ ewarn "DO NOT file bug reports for kernel versions less than 2.6.7 as they will be ignored."
+ fi
+ fi
+
+ if ! use x86-fbsd; then
+ cd ${WORKDIR}
+ bash ${DISTDIR}/${NV_PACKAGE}${PKG_V}.run --extract-only
+ else
+ unpack ${A}
+ fi
+
+ # Patches go below here, add breif description
+ use x86-fbsd \
+ && cd "${WORKDIR}/${NV_PACKAGE}${PKG_V}/doc" \
+ || cd "${WORKDIR}/${NV_PACKAGE}${PKG_V}"
+ # Use the correct defines to make gtkglext build work
+ epatch ${FILESDIR}/NVIDIA_glx-defines.patch
+ # Use some more sensible gl headers and make way for new glext.h
+ epatch ${FILESDIR}/NVIDIA_glx-glheader.patch
+
+ if ! use x86-fbsd; then
+ # Zander kernel patches
+ # None yet.
+
+ # Quiet down warnings the user do not need to see
+ sed -i \
+ -e 's:-Wpointer-arith::g' \
+ -e 's:-Wsign-compare::g' \
+ ${S}/Makefile.kbuild
+
+ # If you set this then it's your own fault when stuff breaks :)
+ [[ -n ${USE_CRAZY_OPTS} ]] && sed -i "s:-O:${CFLAGS}:" Makefile.*
+
+ # If greater than 2.6.5 use M= instead of SUBDIR=
+ cd ${S}; convert_to_m Makefile.kbuild
+
+ # Patch the Makefile to not warn about nvidia-installer
+# epatch ${FILESDIR}/NVIDIA_glx-makefile.patch
+
+ # Patch for kernel 2.6.19 from Daniel Drake <dsd@gentoo.org>
+ epatch ${FILESDIR}/NVIDIA_kernel-2.6.19.patch
+ fi
+}
+
+src_compile() {
+ # This is already the default on Linux, as there's no toplevel Makefile, but
+ # on FreeBSD there's one and triggers the kernel module build, as we install
+ # it by itself, pass this.
+ if use x86-fbsd; then
+ cd "${WORKDIR}/${NV_PACKAGE}${PKG_V}/src"
+ MAKE="$(get_bmake)" emake CC="$(tc-getCC)" LD="$(tc-getLD)"
+ else
+ linux-mod_src_compile
+ fi
+}
+
+src_install() {
+ local MLTEST=$(type dyn_unpack)
+
+ cd ${WORKDIR}/${NV_PACKAGE}${PKG_V}
+
+ if ! use x86-fbsd; then
+ linux-mod_src_install
+
+ # Add the aliases
+ sed -e 's:\${PACKAGE}:'${PF}':g' ${FILESDIR}/nvidia > ${WORKDIR}/nvidia
+ insinto /etc/modules.d
+ newins ${WORKDIR}/nvidia nvidia
+ else
+ insinto /boot/modules
+ doins "${WORKDIR}/${X86_FBSD_NV_PACKAGE}/src/nvidia.kld"
+
+ exeinto /boot/modules
+ doexe "${WORKDIR}/${X86_FBSD_NV_PACKAGE}/src/nvidia.ko"
+ fi
+
+ if [[ "${MLTEST/set_abi}" == "${MLTEST}" ]] && has_multilib_profile ; then
+ local OABI=${ABI}
+ for ABI in $(get_install_abis) ; do
+ src_install-libs
+ done
+ ABI=${OABI}
+ unset OABI
+ elif use amd64 ; then
+ src_install-libs lib32 $(get_multilibdir)
+ src_install-libs lib $(get_libdir)
+
+ rm -rf ${D}/usr/$(get_multilibdir)/opengl/nvidia/include
+ rm -rf ${D}/usr/$(get_multilibdir)/opengl/nvidia/extensions
+ else
+ src_install-libs
+ fi
+
+ is_final_abi || return 0
+
+ if ! use x86-fbsd; then
+ # Docs, remove nvidia-settings as provided by media-video/nvidia-settings
+ newdoc usr/share/doc/README.txt README
+ dodoc usr/share/doc/Copyrights usr/share/doc/NVIDIA_Changelog
+ dodoc usr/share/doc/XF86Config.sample
+ dohtml usr/share/doc/html/*
+ else
+ dodoc doc/README doc/README.Linux doc/XF86Config.sample
+ fi
+
+ # nVidia want bug reports using this script
+ exeinto /usr/bin
+ doexe usr/bin/nvidia-bug-report.sh
+}
+
+# Install nvidia library:
+# the first parameter is the place where to install it
+# the second paramis the base name of the library
+# the third parameter is the provided soversion
+donvidia() {
+ dodir $1
+ exeinto $1
+
+ libname=$(basename $2)
+
+ doexe $2.$3
+ dosym ${libname}.$3 $1/${libname}
+
+ [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1
+}
+
+src_install-libs() {
+ local pkglibdir=lib
+ local inslibdir=$(get_libdir)
+
+ if [[ ${#} -eq 2 ]] ; then
+ pkglibdir=${1}
+ inslibdir=${2}
+ elif has_multilib_profile && [[ ${ABI} == "x86" ]] ; then
+ pkglibdir=lib32
+ fi
+
+ local usrpkglibdir=usr/${pkglibdir}
+ local libdir=usr/X11R6/${pkglibdir}
+ local drvdir=${libdir}/modules/drivers
+ local extdir=${libdir}/modules/extensions
+ local incdir=usr/include/GL
+ local sover=${PV}
+ local NV_ROOT="/usr/${inslibdir}/opengl/nvidia"
+ local NO_TLS_ROOT="${NV_ROOT}/no-tls"
+ local TLS_ROOT="${NV_ROOT}/tls"
+ local X11_LIB_DIR="/usr/${inslibdir}/xorg"
+
+ if ! has_version x11-base/xorg-server ; then
+ X11_LIB_DIR="/usr/${inslibdir}"
+ fi
+
+ if use x86-fbsd; then
+ # on FreeBSD everything is on obj/
+ pkglibdir=obj
+ usrpkglibdir=obj
+ x11pkglibdir=obj
+ drvdir=obj
+ extdir=obj
+
+ # don't ask me why the headers are there.. glxext.h is missing
+ incdir=doc
+
+ # on FreeBSD it has just .1 suffix
+ sover=1
+ fi
+
+ # The GLX libraries
+ donvidia ${NV_ROOT}/lib ${usrpkglibdir}/libGL.so ${sover}
+ donvidia ${NV_ROOT}/lib ${usrpkglibdir}/libGLcore.so ${sover}
+
+ dodir ${NO_TLS_ROOT}
+ donvidia ${NO_TLS_ROOT} ${usrpkglibdir}/libnvidia-tls.so ${sover}
+
+ if ! use x86-fbsd; then
+ donvidia ${TLS_ROOT} ${usrpkglibdir}/tls/libnvidia-tls.so ${sover}
+ fi
+
+ if want_tls ; then
+ dosym ../tls/libnvidia-tls.so ${NV_ROOT}/lib
+ dosym ../tls/libnvidia-tls.so.1 ${NV_ROOT}/lib
+ dosym ../tls/libnvidia-tls.so.${sover} ${NV_ROOT}/lib
+ else
+ dosym ../no-tls/libnvidia-tls.so ${NV_ROOT}/lib
+ dosym ../no-tls/libnvidia-tls.so.1 ${NV_ROOT}/lib
+ dosym ../no-tls/libnvidia-tls.so.${sover} ${NV_ROOT}/lib
+ fi
+
+ if ! use x86-fbsd; then
+ # Not sure whether installing the .la file is neccessary;
+ # this is adopted from the `nvidia' ebuild
+ local ver1=$(get_version_component_range 1)
+ local ver2=$(get_version_component_range 2)
+ local ver3=$(get_version_component_range 3)
+ sed -e "s:\${PV}:${PV}:" \
+ -e "s:\${ver1}:${ver1}:" \
+ -e "s:\${ver2}:${ver2}:" \
+ -e "s:\${ver3}:${ver3}:" \
+ -e "s:\${libdir}:${inslibdir}:" \
+ ${FILESDIR}/libGL.la-r2 > ${D}/${NV_ROOT}/lib/libGL.la
+ fi
+
+ exeinto ${X11_LIB_DIR}/modules/drivers
+
+ [[ -f ${drvdir}/nvidia_drv.so ]] && \
+ doexe ${drvdir}/nvidia_drv.so
+
+ insinto /usr/${inslibdir}
+ [[ -f ${libdir}/libXvMCNVIDIA.a ]] && \
+ doins ${libdir}/libXvMCNVIDIA.a
+ exeinto /usr/${inslibdir}
+ # fix Bug 131315
+ [[ -f ${libdir}/libXvMCNVIDIA.so.${PV} ]] && \
+ doexe ${libdir}/libXvMCNVIDIA.so.${PV} && \
+ dosym libXvMCNVIDIA.so.${PV} \
+ /usr/${inslibdir}/libXvMCNVIDIA.so
+
+ exeinto ${NV_ROOT}/extensions
+ [[ -f ${extdir}/libglx.so.${sover} ]] && \
+ newexe ${extdir}/libglx.so.${sover} libglx.so
+
+ # Includes
+ insinto ${NV_ROOT}/include
+ doins ${incdir}/*.h
+}
+
+pkg_preinst() {
+ # Can we make up our minds ?!?!?
+ local NV_D=${D}
+
+ if ! has_version x11-base/xorg-server ; then
+ for dir in lib lib32 lib64 ; do
+ if [[ -d ${NV_D}/usr/${dir}/xorg ]] ; then
+ mv ${NV_D}/usr/${dir}/xorg/* ${NV_D}/usr/${dir}
+ rmdir ${NV_D}/usr/${dir}/xorg
+ fi
+ done
+ fi
+
+ # 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() {
+ if ! use x86-fbsd; then
+ linux-mod_pkg_postinst
+ fi
+
+ #switch to the nvidia implementation
+ eselect opengl set --use-old nvidia
+
+ echo
+ elog "To use the Nvidia GLX, run \"eselect opengl set nvidia\""
+ echo
+ elog "You may also be interested in media-video/nvidia-settings"
+ echo
+ elog "nVidia has requested that any bug reports submitted have the"
+ elog "output of /usr/bin/nvidia-bug-report.sh included."
+ echo
+ elog "If you are having resolution problems, try disabling DynamicTwinView."
+ echo
+}
+
+want_tls() {
+ # For uclibc or anything non glibc, return false
+ has_version sys-libs/glibc || return 1
+
+ # Old versions of glibc were lt/no-tls only
+ has_version '<sys-libs/glibc-2.3.2' && return 1
+
+ local valid_chost="true"
+ if use x86 ; then
+ case ${CHOST/-*} in
+ i486|i586|i686) ;;
+ *) valid_chost="false"
+ esac
+ fi
+
+ [[ ${valid_chost} == "false" ]] && return 1
+
+ # If we've got nptl, we've got tls
+ built_with_use sys-libs/glibc nptl && return 0
+
+ # 2.3.5 turned off tls for linuxthreads glibc on i486 and i586
+ if use x86 && has_version '>=sys-libs/glibc-2.3.5' ; then
+ case ${CHOST/-*} in
+ i486|i586) return 1 ;;
+ esac
+ fi
+
+ # These versions built linuxthreads version to support tls, too
+ has_version '>=sys-libs/glibc-2.3.4.20040619-r2' && return 0
+
+ return 1
+}
+
+pkg_postrm() {
+ if ! use x86-fbsd; then
+ linux-mod_pkg_postrm
+ fi
+ eselect opengl set --use-old xorg-x11
+}
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/nvidia-drivers-1.0.9631.ebuild,v 1.5 2007/03/12 22:53:09 vapier Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/nvidia-drivers-1.0.9631-r1.ebuild,v 1.1 2007/03/13 22:40:40 eradicator Exp $
inherit eutils multilib versionator linux-mod flag-o-matic
--- /dev/null
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/nvidia-drivers-1.0.9746-r1.ebuild,v 1.1 2007/03/13 22:40:40 eradicator Exp $
+
+inherit eutils multilib versionator linux-mod flag-o-matic
+
+NV_V="${PV/1.0./1.0-}"
+X86_NV_PACKAGE="NVIDIA-Linux-x86-${NV_V}"
+AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${NV_V}"
+X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${NV_V}"
+
+DESCRIPTION="NVIDIA X11 driver and GLX libraries"
+HOMEPAGE="http://www.nvidia.com/"
+SRC_URI="x86? ( http://us.download.nvidia.com/XFree86/Linux-x86/${NV_V}/${X86_NV_PACKAGE}-pkg0.run )
+ amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/${NV_V}/${AMD64_NV_PACKAGE}-pkg2.run )
+ x86-fbsd? ( http://us.download.nvidia.com/freebsd/${NV_V}/${X86_FBSD_NV_PACKAGE}.tar.gz )"
+
+LICENSE="NVIDIA"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
+IUSE=""
+RESTRICT="strip multilib-pkg-force"
+
+DEPEND="kernel_linux? ( virtual/linux-sources )"
+RDEPEND="kernel_linux? ( virtual/modutils )
+ x11-base/xorg-server
+ media-libs/mesa
+ app-admin/eselect-opengl
+ kernel_FreeBSD? ( !media-video/nvidia-freebsd )
+ !app-emulation/emul-linux-x86-nvidia
+ !x11-drivers/nvidia-legacy-drivers"
+
+QA_TEXTRELS_x86="usr/lib/xorg/libXvMCNVIDIA.so.${PV}
+ usr/lib/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib/opengl/nvidia/tls/libnvidia-tls.so.${PV}
+ usr/lib/opengl/nvidia/no-tls/libnvidia-tls.so.${PV}
+ usr/lib/libXvMCNVIDIA.so.${PV}
+ usr/lib/xorg/modules/drivers/nvidia_drv.so
+ usr/lib/opengl/nvidia/extensions/libglx.so"
+
+QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko
+ usr/lib/opengl/nvidia/lib/libGL.so.1
+ usr/lib/opengl/nvidia/lib/libGLcore.so.1
+ usr/lib/opengl/nvidia/no-tls/libnvidia-tls.so.1
+ usr/lib/opengl/nvidia/extensions/libglx.so
+ usr/lib/xorg/modules/drivers/nvidia_drv.so"
+
+QA_WX_LOAD_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib/opengl/nvidia/extensions/libglx.so"
+
+QA_TEXTRELS_amd64="usr/lib64/xorg/libXvMCNVIDIA.so.${PV}
+ usr/lib64/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib64/opengl/nvidia/tls/libnvidia-tls.so.${PV}
+ usr/lib64/opengl/nvidia/no-tls/libnvidia-tls.so.${PV}
+ usr/lib64/libXvMCNVIDIA.so.${PV}
+ usr/lib64/xorg/modules/drivers/nvidia_drv.so
+ usr/lib64/opengl/nvidia/extensions/libglx.so
+ usr/lib32/xorg/libXvMCNVIDIA.so.${PV}
+ usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib32/opengl/nvidia/tls/libnvidia-tls.so.${PV}
+ usr/lib32/opengl/nvidia/no-tls/libnvidia-tls.so.${PV}
+ usr/lib32/libXvMCNVIDIA.so.${PV}
+ usr/lib32/xorg/modules/drivers/nvidia_drv.so
+ usr/lib32/opengl/nvidia/extensions/libglx.so"
+
+QA_WX_LOAD_amd64="usr/lib64/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib64/opengl/nvidia/extensions/libglx.so
+ usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
+ usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV}
+ usr/lib32/opengl/nvidia/extensions/libglx.so"
+
+export _POSIX2_VERSION="199209"
+
+if use x86; then
+ PKG_V="-pkg0"
+ NV_PACKAGE="${X86_NV_PACKAGE}"
+elif use amd64; then
+ PKG_V="-pkg2"
+ NV_PACKAGE="${AMD64_NV_PACKAGE}"
+elif use x86-fbsd; then
+ PKG_V=""
+ NV_PACKAGE="${X86_FBSD_NV_PACKAGE}"
+fi
+
+S="${WORKDIR}/${NV_PACKAGE}${PKG_V}/usr/src/nv"
+
+# On BSD userland it wants real make command
+MAKE="make"
+
+mtrr_check() {
+ ebegin "Checking for MTRR support"
+ linux_chkconfig_present MTRR
+ eend $?
+
+ if [[ $? -ne 0 ]] ; 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"
+ eerror " [*] MTRR (Memory Type Range Register) support"
+ eerror
+ eerror "and recompile your kernel ..."
+ die "MTRR support not detected!"
+ fi
+}
+
+pkg_setup() {
+ if use amd64 && has_multilib_profile && [ "${DEFAULT_ABI}" != "amd64" ]; then
+ eerror "This ebuild doesn't currently support changing your default abi."
+ die "Unexpected \${DEFAULT_ABI} = ${DEFAULT_ABI}"
+ fi
+
+ if ! use x86-fbsd; then
+ linux-mod_pkg_setup
+ MODULE_NAMES="nvidia(video:${S})"
+ BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} SYSOUT=${KV_OUT_DIR}"
+ mtrr_check
+ fi
+}
+
+src_unpack() {
+ local NV_PATCH_PREFIX="${FILESDIR}/${PV}/NVIDIA-${PV}"
+
+ if ! use x86-fbsd; then
+ if [[ ${KV_MINOR} -eq 6 && ${KV_PATCH} -lt 7 ]] ; then
+ echo
+ ewarn "Your kernel version is ${KV_MAJOR}.${KV_MINOR}.${KV_PATCH}"
+ ewarn "This is not officially supported for ${P}. It is likely you"
+ ewarn "will not be able to compile or use the kernel module."
+ ewarn "It is recommended that you upgrade your kernel to a version >= 2.6.7"
+ echo
+ ewarn "DO NOT file bug reports for kernel versions less than 2.6.7 as they will be ignored."
+ fi
+ fi
+
+ if ! use x86-fbsd; then
+ cd "${WORKDIR}"
+ bash ${DISTDIR}/${NV_PACKAGE}${PKG_V}.run --extract-only
+ else
+ unpack ${A}
+ fi
+
+ # Patches go below here, add breif description
+ use x86-fbsd \
+ && cd "${WORKDIR}/${NV_PACKAGE}${PKG_V}/doc" \
+ || cd "${WORKDIR}/${NV_PACKAGE}${PKG_V}"
+ # Use the correct defines to make gtkglext build work
+ epatch "${FILESDIR}"/NVIDIA_glx-defines.patch
+ # Use some more sensible gl headers and make way for new glext.h
+ epatch "${FILESDIR}"/NVIDIA_glx-glheader.patch
+
+ if ! use x86-fbsd; then
+ # Quiet down warnings the user do not need to see
+ sed -i \
+ -e 's:-Wpointer-arith::g' \
+ -e 's:-Wsign-compare::g' \
+ "${S}"/Makefile.kbuild
+
+ # If you set this then it's your own fault when stuff breaks :)
+ [[ -n ${USE_CRAZY_OPTS} ]] && sed -i "s:-O:${CFLAGS}:" Makefile.*
+
+ # If greater than 2.6.5 use M= instead of SUBDIR=
+ cd "${S}"; convert_to_m Makefile.kbuild
+ fi
+}
+
+src_compile() {
+ # This is already the default on Linux, as there's no toplevel Makefile, but
+ # on FreeBSD there's one and triggers the kernel module build, as we install
+ # it by itself, pass this.
+ if use x86-fbsd; then
+ cd "${WORKDIR}/${NV_PACKAGE}${PKG_V}/src"
+ echo LDFLAGS="$(raw-ldflags)"
+ MAKE="$(get_bmake)" emake CC="$(tc-getCC)" LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
+ else
+ linux-mod_src_compile
+ fi
+}
+
+src_install() {
+ local MLTEST=$(type dyn_unpack)
+
+ cd "${WORKDIR}"/${NV_PACKAGE}${PKG_V}
+
+ if ! use x86-fbsd; then
+ linux-mod_src_install
+
+ # Add the aliases
+ sed -e 's:\${PACKAGE}:'${PF}':g' "${FILESDIR}"/nvidia > "${WORKDIR}"/nvidia
+ insinto /etc/modules.d
+ newins "${WORKDIR}"/nvidia nvidia || die
+ else
+ insinto /boot/modules
+ doins "${WORKDIR}/${X86_FBSD_NV_PACKAGE}/src/nvidia.kld"
+
+ exeinto /boot/modules
+ doexe "${WORKDIR}/${X86_FBSD_NV_PACKAGE}/src/nvidia.ko"
+ fi
+
+ if [[ "${MLTEST/set_abi}" == "${MLTEST}" ]] && has_multilib_profile ; then
+ local OABI=${ABI}
+ for ABI in $(get_install_abis) ; do
+ src_install-libs
+ done
+ ABI=${OABI}
+ unset OABI
+ elif use amd64 ; then
+ src_install-libs lib32 $(get_multilibdir)
+ src_install-libs lib $(get_libdir)
+
+ rm -rf "${D}"/usr/$(get_multilibdir)/opengl/nvidia/include
+ rm -rf "${D}"/usr/$(get_multilibdir)/opengl/nvidia/extensions
+ else
+ src_install-libs
+ fi
+
+ is_final_abi || return 0
+
+ if ! use x86-fbsd; then
+ # Docs, remove nvidia-settings as provided by media-video/nvidia-settings
+ newdoc usr/share/doc/README.txt README
+ dodoc usr/share/doc/Copyrights usr/share/doc/NVIDIA_Changelog
+ dodoc usr/share/doc/XF86Config.sample
+ dohtml usr/share/doc/html/*
+ # nVidia want bug reports using this script
+ dobin usr/bin/nvidia-bug-report.sh
+ else
+ dodoc doc/{README,XF86Config.sample,Copyrights}
+ dohtml doc/html/*
+ fi
+}
+
+# Install nvidia library:
+# the first parameter is the place where to install it
+# the second paramis the base name of the library
+# the third parameter is the provided soversion
+donvidia() {
+ dodir $1
+ exeinto $1
+
+ libname=$(basename $2)
+
+ doexe $2.$3
+ dosym ${libname}.$3 $1/${libname}
+
+ [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1
+}
+
+src_install-libs() {
+ local pkglibdir=lib
+ local inslibdir=$(get_libdir)
+
+ if [[ ${#} -eq 2 ]] ; then
+ pkglibdir=${1}
+ inslibdir=${2}
+ elif has_multilib_profile && [[ ${ABI} == "x86" ]] ; then
+ pkglibdir=lib32
+ fi
+
+ local usrpkglibdir=usr/${pkglibdir}
+ local libdir=usr/X11R6/${pkglibdir}
+ local modules=${libdir}/modules
+ local drvdir=${modules}/drivers
+ local extdir=${modules}/extensions
+ local incdir=usr/include/GL
+ local sover=${PV}
+ local NV_ROOT="/usr/${inslibdir}/opengl/nvidia"
+ local NO_TLS_ROOT="${NV_ROOT}/no-tls"
+ local TLS_ROOT="${NV_ROOT}/tls"
+ local X11_LIB_DIR="/usr/${inslibdir}/xorg"
+
+ if ! has_version x11-base/xorg-server ; then
+ X11_LIB_DIR="/usr/${inslibdir}"
+ fi
+
+ if use x86-fbsd; then
+ # on FreeBSD everything is on obj/
+ pkglibdir=obj
+ usrpkglibdir=obj
+ x11pkglibdir=obj
+ drvdir=obj
+ extdir=obj
+
+ # don't ask me why the headers are there.. glxext.h is missing
+ incdir=doc
+
+ # on FreeBSD it has just .1 suffix
+ sover=1
+ fi
+
+ # The GLX libraries
+ donvidia ${NV_ROOT}/lib ${usrpkglibdir}/libGL.so ${sover}
+ donvidia ${NV_ROOT}/lib ${usrpkglibdir}/libGLcore.so ${sover}
+
+ dodir ${NO_TLS_ROOT}
+ donvidia ${NO_TLS_ROOT} ${usrpkglibdir}/libnvidia-tls.so ${sover}
+
+ if ! use x86-fbsd; then
+ donvidia ${TLS_ROOT} ${usrpkglibdir}/tls/libnvidia-tls.so ${sover}
+ fi
+
+ if want_tls ; then
+ dosym ../tls/libnvidia-tls.so ${NV_ROOT}/lib
+ dosym ../tls/libnvidia-tls.so.1 ${NV_ROOT}/lib
+ dosym ../tls/libnvidia-tls.so.${sover} ${NV_ROOT}/lib
+ else
+ dosym ../no-tls/libnvidia-tls.so ${NV_ROOT}/lib
+ dosym ../no-tls/libnvidia-tls.so.1 ${NV_ROOT}/lib
+ dosym ../no-tls/libnvidia-tls.so.${sover} ${NV_ROOT}/lib
+ fi
+
+ if ! use x86-fbsd; then
+ # Not sure whether installing the .la file is neccessary;
+ # this is adopted from the `nvidia' ebuild
+ local ver1=$(get_version_component_range 1)
+ local ver2=$(get_version_component_range 2)
+ local ver3=$(get_version_component_range 3)
+ sed -e "s:\${PV}:${PV}:" \
+ -e "s:\${ver1}:${ver1}:" \
+ -e "s:\${ver2}:${ver2}:" \
+ -e "s:\${ver3}:${ver3}:" \
+ -e "s:\${libdir}:${inslibdir}:" \
+ "${FILESDIR}"/libGL.la-r2 > "${D}"/${NV_ROOT}/lib/libGL.la
+ fi
+
+ exeinto ${X11_LIB_DIR}/modules/drivers
+
+ [[ -f ${drvdir}/nvidia_drv.so ]] && \
+ doexe ${drvdir}/nvidia_drv.so
+
+ insinto /usr/${inslibdir}
+ [[ -f ${libdir}/libXvMCNVIDIA.a ]] && \
+ doins ${libdir}/libXvMCNVIDIA.a
+ exeinto /usr/${inslibdir}
+ # fix Bug 131315
+ [[ -f ${libdir}/libXvMCNVIDIA.so.${PV} ]] && \
+ doexe ${libdir}/libXvMCNVIDIA.so.${PV} && \
+ dosym libXvMCNVIDIA.so.${PV} \
+ /usr/${inslibdir}/libXvMCNVIDIA.so
+
+ exeinto ${NV_ROOT}/extensions
+ [[ -f ${modules}/libnvidia-wfb.so.${sover} ]] && \
+ newexe ${modules}/libnvidia-wfb.so.${sover} libwfb.so
+ [[ -f ${extdir}/libglx.so.${sover} ]] && \
+ newexe ${extdir}/libglx.so.${sover} libglx.so
+
+ # Includes
+ insinto ${NV_ROOT}/include
+ doins ${incdir}/*.h
+}
+
+pkg_preinst() {
+ # Can we make up our minds ?!?!?
+ local NV_D=${D}
+
+ if ! has_version x11-base/xorg-server ; then
+ for dir in lib lib32 lib64 ; do
+ if [[ -d ${NV_D}/usr/${dir}/xorg ]] ; then
+ mv ${NV_D}/usr/${dir}/xorg/* ${NV_D}/usr/${dir}
+ rmdir ${NV_D}/usr/${dir}/xorg
+ fi
+ done
+ fi
+
+ # 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() {
+ if ! use x86-fbsd; then
+ linux-mod_pkg_postinst
+ fi
+
+ #switch to the nvidia implementation
+ eselect opengl set --use-old nvidia
+
+ echo
+ elog "To use the Nvidia GLX, run \"eselect opengl set nvidia\""
+ echo
+ einfo "You may also be interested in media-video/nvidia-settings"
+ echo
+ elog "nVidia has requested that any bug reports submitted have the"
+ elog "output of /usr/bin/nvidia-bug-report.sh included."
+ echo
+ elog "To work with compiz, you must enable the AddARGBGLXVisuals option."
+ echo
+ elog "If you are having resolution problems, try disabling DynamicTwinView."
+ echo
+}
+
+want_tls() {
+ # For uclibc or anything non glibc, return false
+ has_version sys-libs/glibc || return 1
+
+ # Old versions of glibc were lt/no-tls only
+ has_version '<sys-libs/glibc-2.3.2' && return 1
+
+ local valid_chost="true"
+ if use x86 ; then
+ case ${CHOST/-*} in
+ i486|i586|i686) ;;
+ *) valid_chost="false"
+ esac
+ fi
+
+ [[ ${valid_chost} == "false" ]] && return 1
+
+ # If we've got nptl, we've got tls
+ built_with_use sys-libs/glibc nptl && return 0
+
+ # 2.3.5 turned off tls for linuxthreads glibc on i486 and i586
+ if use x86 && has_version '>=sys-libs/glibc-2.3.5' ; then
+ case ${CHOST/-*} in
+ i486|i586) return 1 ;;
+ esac
+ fi
+
+ # These versions built linuxthreads version to support tls, too
+ has_version '>=sys-libs/glibc-2.3.4.20040619-r2' && return 0
+
+ return 1
+}
+
+pkg_postrm() {
+ if ! use x86-fbsd; then
+ linux-mod_pkg_postrm
+ fi
+ eselect opengl set --use-old xorg-x11
+}