# ChangeLog for x11-drivers/nvidia-drivers
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/ChangeLog,v 1.309 2011/11/15 09:06:50 chainsaw Exp $
+# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/ChangeLog,v 1.310 2011/11/30 16:35:07 cardoe Exp $
+
+ 30 Nov 2011; Doug Goldstein <cardoe@gentoo.org>
+ -nvidia-drivers-270.41.19.ebuild, -nvidia-drivers-285.05.09.ebuild:
+ Remove older releases
15 Nov 2011; Tony Vroon <chainsaw@gentoo.org> nvidia-drivers-96.43.20.ebuild,
nvidia-drivers-173.14.31.ebuild, nvidia-drivers-285.05.09-r1.ebuild:
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA1
-
AUX 09nvidia 61 RMD160 b69c3282ba6195112e312fe34bdcb12544aef8ca SHA1 05dd043f66f53409dfe511636d92a339edb4c765 SHA256 14702d6726cc9f0ad832a3cc90059999eb956f9e3a35397cb63cfa6347b33e39
AUX 195.30-unified-arch.patch 1525 RMD160 9872c270b4bb3d3010af3f2b83798631562c8d8f SHA1 06330376e9a25e3317a4bfe12f74af17e56f3448 SHA256 b6224e213820c698315a8645204d992b779f31e8c45c025e740bc189dc1f9bae
AUX 256.35-unified-arch.patch 1380 RMD160 2612cad105f442d4232b99e3054124e8037860bb SHA1 d82433c0b3520c87e05f1013a59b243ec65ebe97 SHA256 5e84bb51e0f9b3ceba270d53ad2a739dc534861df9acd6ab6852670f5a1357d7
AUX nvidia-drivers-260.19.44-2.6.39.patch 591 RMD160 8e53d800b86c380da9e9c978957a4d1b7f749fe4 SHA1 39be99b92fb16a71347fb8fb39301241550a1958 SHA256 dc9478bb4ff12d820f82bb13a8d7f956456ea97217ba89e6619f1c8d72127be3
DIST NVIDIA-FreeBSD-x86-173.14.30.tar.gz 17992540 RMD160 9f064bb71e2cb65ed386c7e40d7ae55c10548837 SHA1 089448c56ec85334917119712a241d463045ffa5 SHA256 9e59d02ffadb4ea8dd57e07f60c1e1c0b7267c86ec3fc22bd1a86a884a2bb0a3
DIST NVIDIA-FreeBSD-x86-173.14.31.tar.gz 17991684 RMD160 b7171b05847400a1f7a008bc9b46ea061a9f765d SHA1 d7603732598990c3c22e39643e7021da5a57a57c SHA256 98699bc8dc1dad86cebc2ed067b4fc5cd37b8540e897bb218f38ac80c4b4d875
-DIST NVIDIA-FreeBSD-x86-270.41.19.tar.gz 28488689 RMD160 ec517f435d4b265f4236d680572a43d823be8b33 SHA1 264b8aaa5c9b71b5ea37d4367bae12464bb931e7 SHA256 352b3a666d7b799082896e82da6228eb61158dc1b9722a4f63ffe474b27b4750
DIST NVIDIA-FreeBSD-x86-275.09.07.tar.gz 30304023 RMD160 aaa3ad3339fa1450612d8f7995f4407a976f1cc9 SHA1 8ff6558a019aa28bb894db1275a9a96490cd4fd4 SHA256 d5d119c2f066539da0f2d1926193f6bc2bfbf2a1dcdff77322a23b42c5df91d9
DIST NVIDIA-FreeBSD-x86-275.28.tar.gz 30478616 RMD160 123a2e8cb3b783ddd6fa055d04e9a791ca90c165 SHA1 141ea0ad39c7d1ed8f768b270015c9e20cb092ee SHA256 5c11f7c1792476e8ac9b2e3a6f0bac4b9eff206972f0f4c1566fbcc4c7da918e
DIST NVIDIA-FreeBSD-x86-285.05.09.tar.gz 30697710 RMD160 e08981374a67a8e9e9bff42d5cbb5f5ecef0568c SHA1 d3e4cb6cac7af0392d0f294cf67b029456a48100 SHA256 d3ad51145cd57c70678ee659112a0973187b1b02e3062addadd0fe094b3c46fb
DIST NVIDIA-FreeBSD-x86-96.43.20.tar.gz 14060884 RMD160 2323ef0e85c4383558ea61ff4906b28f85a5952c SHA1 1d7397eaf1e42866595144af550a1df84369fd80 SHA256 e75fce272e72644d53e6ad3c0957fe173735a4b621726ce227ba8ecf9bd9c5cf
DIST NVIDIA-Linux-x86-173.14.30-pkg0.run 13407793 RMD160 8c0acf5738db9aeac079a128083437aec859878b SHA1 924a04cdcc30df27dca59f7fd20bfc371622c49b SHA256 ecb2ff94ca1b2a7498bc1fc37383194cfafa4198644308428ad7c09f2273f554
DIST NVIDIA-Linux-x86-173.14.31-pkg0.run 13407481 RMD160 87f5bfb9aee83c3edb41894df540840a9eec343d SHA1 470e19fdfa75f18522745de285e256808fe14d48 SHA256 e855a62f16a9d0eff1bf470a8fcedd48cd1b718e969ad5ebe89a557d039d1924
-DIST NVIDIA-Linux-x86-270.41.19.run 29652783 RMD160 cf60d4ec6d8134285f97f8a76ebed7dd7e9a3a97 SHA1 5b5eb7b2650059b17537ed4b9d646a6dbd46d6a8 SHA256 a8c4aee97e3cb5bf9cd589b6245eeb633d20bae5420646384d48d568230994b1
DIST NVIDIA-Linux-x86-275.09.07.run 30930605 RMD160 3543dd353b488f501899ce37ea034eb0dd1a98c7 SHA1 068b007bb08603689ada3ebb342dc87849f50b7c SHA256 27d1b2073c11bd56e423ed80bd22773f1f282c39ab3b76773144cfa680a1ff0c
DIST NVIDIA-Linux-x86-275.28.run 31102995 RMD160 d70becaa6fe2b58948519fc65c890edaa4559a70 SHA1 d747febac267a7dd39832af3dc579209626b9a74 SHA256 ba4ff7a7a3a5d4242621f9a104f64d4ab573619fcad7adf4657f82ab417553ea
DIST NVIDIA-Linux-x86-285.05.09.run 33592492 RMD160 e5fb559c3eb6f928649a94bfd73d80d0b1561dd3 SHA1 e42112d15ba217fc1c16afbae45f0493f795966c SHA256 ce03fa99b62081b52bd5dae3594ac5942413ed530cda3d76a82f4ab0afd36f96
DIST NVIDIA-Linux-x86-96.43.20-pkg0.run 10323541 RMD160 8e1a56ea7992018a405214aaa857cd932d7c3274 SHA1 714632bf918eaae50d46e9a4a5252ebbe9e6cfb1 SHA256 bc778062cf745ee4916de77a702f702312d33eeb3b6f379b63e4366fa5197517
DIST NVIDIA-Linux-x86_64-173.14.30-pkg2.run 18967055 RMD160 167137380c8f75530498c00302c80cb15adb4adf SHA1 93f10be314021adebcc5c0e675e0d83653adceb3 SHA256 aebf3655337d813d4a0cd779ac6b1fa5d3fee26b00188bad66914cd3f876a556
DIST NVIDIA-Linux-x86_64-173.14.31-pkg2.run 18967067 RMD160 729f5e12e4c7ed26f9445ec2981aec3b9f5f83e5 SHA1 155f1951897a274a0c693912015e049d0d4cbec1 SHA256 c56cfe43c4fa95102d099e4f1c4e75e58b57d73b4b36a858d54a2a339aad56d9
-DIST NVIDIA-Linux-x86_64-270.41.19.run 49632218 RMD160 cc0bed4c9196d1ae53a926237a4c1029ce22427a SHA1 ad325e32e51d0f286f084c9b06298ec3aa2864d5 SHA256 4d7131f07e739abc787d69696ca4ac52df2fc0b338405ffd474288c2a4a1e7a6
DIST NVIDIA-Linux-x86_64-275.09.07.run 51646025 RMD160 ea9bd2a3e960234a9a9e69a6ada31d2bb5939eff SHA1 b40418b7cd17694873007c547dac36b7078f76ab SHA256 747c09b0a0a8d60e1b5fee49fb1ea07ee5812f8e85a87b2403011af6de58164d
DIST NVIDIA-Linux-x86_64-275.28.run 51855215 RMD160 9f4d65c0a88bac60dd2389a53ae95d8b4b9365da SHA1 957a5fd0f4d43ba8cee72d765e9076c43fbc0be1 SHA256 fc1dfded42d21b08f40fa7f50589c6c0c4922cc0d30af71bf721ab8682b00648
DIST NVIDIA-Linux-x86_64-285.05.09.run 56674677 RMD160 e178cc5109bbf254c80eb123acd6276bf34d7790 SHA1 26c99d119f39a9201943a4f44cdc110988ec2349 SHA256 7159a1f7e898b50dd49ea2273ac6facb870546ad5496bf70c6fbe1642d2c4970
DIST NVIDIA-Linux-x86_64-96.43.20-pkg2.run 14572507 RMD160 51d5838d1c0e63a1abf479d155e4df3a854d98f6 SHA1 b5ab8b3e9f06418720971187d53837db90af5f8a SHA256 562107a262e250b836966e29851628f6162ee2857d53252221c780d9b201de18
EBUILD nvidia-drivers-173.14.30.ebuild 15341 RMD160 d11c47b7571d5e93da0365c064cb1bd399eadc49 SHA1 f92c475e600d7d4e68debe2425cb026b505a7264 SHA256 590f2b2d8fe546c2183704b761becc718ec294e05d6b91db66a89377bf4cf9c3
EBUILD nvidia-drivers-173.14.31.ebuild 15349 RMD160 4b6bb92018d892a9fa1e8cad2131461cf427456f SHA1 7f43732a54f0e735e9bedb07a842edd6020c27a5 SHA256 bf8cc37e2f1c88d459f98cbe8d0241dc96ef1e8013ae79625f744208ab5a0e23
-EBUILD nvidia-drivers-270.41.19.ebuild 16568 RMD160 a65dd5065686c22f61cfce4dccf455118bdd9606 SHA1 c2a6bda5d1d36c9aac18346ff89a59b3e5c73ad8 SHA256 8732c38fb129a6a5e8bcd973a9472a4cc90d6a0e14926dcacccc4ddf6989f986
EBUILD nvidia-drivers-275.09.07.ebuild 16568 RMD160 376521daaf880dfe86d13dee9cba5fdf219f9656 SHA1 902ebf6d52c757e79ebbdb4ddb5b88884a93186b SHA256 fb216db92851c9c78111d48078a80cd5c58afc23d64289efc6215d95550f6249
EBUILD nvidia-drivers-275.28.ebuild 16579 RMD160 1ae3cf165bf7c001e11755ccc778e531474a0b17 SHA1 750dd92aa3017a4937a02624200c217c6c3ff9eb SHA256 22548bb964b0228a15a55df830db881cb53433bb9256851e37618a294bda5ee2
EBUILD nvidia-drivers-285.05.09-r1.ebuild 17329 RMD160 d1f66a9c3cd35a467985fca3f99e7d0a224d3360 SHA1 882c5e3a9be547280e99ed14fefaa4b05d0d5aff SHA256 618f91d34a8d361c44f803ee0ba0fab898d4b46a14f2f1e717ceb6de04cfa42b
-EBUILD nvidia-drivers-285.05.09.ebuild 17329 RMD160 50af860b2d353228c3d629b76e417367f1e5c1c8 SHA1 a5d4fafb063965f86903cc860e80a5ace1ea6afd SHA256 2707d0f4ac60908eebcef4526e82693e2f4cdf694bfd4ac473f1770aa44c16db
EBUILD nvidia-drivers-290.06.ebuild 17095 RMD160 d1e0e22f51104a58c4e6117a461c03c505a4a375 SHA1 7fd677034dcb8bd596b6dcf8d12cbc493ae36894 SHA256 b2e364f68fa5c01c25925f7d8ce27d8629449ce4a7d2c505862be1ec47075acb
EBUILD nvidia-drivers-96.43.19.ebuild 15643 RMD160 191d8bc638f28a713ad4aee08808ac9b41fbe6c5 SHA1 9dbee7e6497f06235325ba25cb245ba971a9bd53 SHA256 c05c182e870bd8b0363259edcf08d6c464696fb6221e9aeb4680664d171e1f8e
EBUILD nvidia-drivers-96.43.20.ebuild 15587 RMD160 f208eda8038ec2e43e5d3e1cc74e797c5687a0f4 SHA1 a10a5a94f834147b6e12fda79f96f4fefd9532d8 SHA256 aa905ebff4b7d11f8ca650970c26305b4cedaacb0a0e54d95e986fc4274c56e4
-MISC ChangeLog 66295 RMD160 12e02b61dcbba53e5228a963929c98fe508d4684 SHA1 9193a287971e65dff9772058e2c13adfe263fec5 SHA256 4beca9e18c607b4255a8dfdb019d8269f7d36f54e27476028dfc0ca052f691f7
+MISC ChangeLog 66438 RMD160 b58456da1c85d62e6c15c4f7f6281443891b3f19 SHA1 d53db95a19a31ca75ec96043246a266ba4f8e434 SHA256 35ceb10c3fa99e9c63dd6167fd3f0fd485a9180a5501b07414a7ced1155e6fc4
MISC metadata.xml 528 RMD160 9724ce985619926e8c0d1a53bccd927ce9bbf9fc SHA1 3ced88c2bfed6fee774fae8ddf3b71ceb8cd0b8e SHA256 3651e308046ad88e101ed9d59fd0cd1adc82bfcc25f4f70738936466174e6264
------BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.18 (GNU/Linux)
-
-iEYEARECAAYFAk7CK78ACgkQp5vW4rUFj5oVzQCgraCk8+qw2X3aK9s64LWxgqIp
-UREAnAx452sOqycUYe/jOL3u69k68wyr
-=1TEH
------END PGP SIGNATURE-----
+++ /dev/null
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/nvidia-drivers-270.41.19.ebuild,v 1.5 2011/07/31 13:06:28 maekke Exp $
-
-EAPI="2"
-
-inherit eutils multilib versionator linux-mod flag-o-matic nvidia-driver
-
-X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
-AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
-X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
-
-DESCRIPTION="NVIDIA X11 driver and GLX libraries"
-HOMEPAGE="http://www.nvidia.com/"
-SRC_URI="x86? ( ftp://download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
- amd64? ( ftp://download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
- x86-fbsd? ( ftp://download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )"
-
-LICENSE="NVIDIA"
-SLOT="0"
-KEYWORDS="-* amd64 x86 ~x86-fbsd"
-IUSE="acpi custom-cflags gtk multilib kernel_linux"
-RESTRICT="strip"
-EMULTILIB_PKG="true"
-
-COMMON="<x11-base/xorg-server-1.10.99
- kernel_linux? ( >=sys-libs/glibc-2.6.1 )
- multilib? ( app-emulation/emul-linux-x86-xlibs )
- >=app-admin/eselect-opengl-1.0.9
- !<media-video/nvidia-settings-256.52"
-DEPEND="${COMMON}
- kernel_linux? ( virtual/linux-sources )"
-RDEPEND="${COMMON}
- x11-libs/libXvMC
- acpi? ( sys-power/acpid )"
-PDEPEND=">=x11-libs/libvdpau-0.3-r1
- gtk? ( media-video/nvidia-settings )"
-
-QA_TEXTRELS_x86="
- usr/lib/libOpenCL.so.1.0.0
- usr/lib/libXvMCNVIDIA.so.${PV}
- usr/lib/libcuda.so.${PV}
- usr/lib/libnvcuvid.so.${PV}
- usr/lib/libnvidia-cfg.so.${PV}
- usr/lib/libnvidia-compiler.so.${PV}
- usr/lib/libnvidia-glcore.so.${PV}
- usr/lib/libnvidia-ml.so.${PV}
- usr/lib/libvdpau_nvidia.so.${PV}
- usr/lib/opengl/nvidia/extensions/libglx.so.${PV}
- usr/lib/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV}
- usr/lib/xorg/modules/drivers/nvidia_drv.so"
-
-QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko
- usr/lib/opengl/nvidia/lib/libGL.so.1
- usr/lib/libnvidia-glcore.so.1
- usr/lib/libnvidia-cfg.so.1
- usr/lib/libnvidia-ml.so.1
- usr/lib/opengl/nvidia/extensions/libglx.so.1
- usr/lib/xorg/modules/drivers/nvidia_drv.so"
-
-QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV}
- usr/lib32/libnvidia-glcore.so.${PV}
- usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib32/libcuda.so.${PV}
- usr/lib32/libvdpau_nvidia.so.${PV}
- usr/lib32/libOpenCL.so.1.0.0
- usr/lib32/libnvidia-compiler.so.${PV}"
-
-QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib/libnvidia-glcore.so.${PV}
- usr/lib/opengl/nvidia/extensions/libglx.so.${PV}
- usr/lib64/libXvMCNVIDIA.so.${PV}
- usr/lib/libXvMCNVIDIA.a:NVXVMC.o
- usr/lib/libnvidia-compiler.so.${PV}
- usr/lib/libvdpau_nvidia.so.${PV}
- usr/lib/libcuda.so.${PV}
- usr/lib/libOpenCL.so.1.0.0"
-
-QA_EXECSTACK_amd64="usr/lib32/libnvidia-glcore.so.${PV}
- usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib32/libnvidia-compiler.so.${PV}
- usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV}
- usr/lib32/libvdpau_nvidia.so.${PV}
- usr/lib32/libcuda.so.${PV}
- usr/lib32/libOpenCL.so.1.0.0
- usr/lib64/libnvidia-compiler.so.${PV}
- usr/lib64/libXvMCNVIDIA.a:NVXVMC.o
- usr/lib64/libnvidia-cfg.so.${PV}
- usr/lib64/libnvidia-ml.so.${PV}
- usr/lib64/libvdpau_nvidia.so.${PV}
- usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV}
- usr/lib64/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib64/libnvidia-glcore.so.${PV}
- usr/lib64/opengl/nvidia/extensions/libglx.so.${PV}
- usr/lib64/libXvMCNVIDIA.so.${PV}
- usr/lib64/libcuda.so.${PV}
- usr/lib64/libOpenCL.so.1.0.0
- usr/lib64/xorg/modules/drivers/nvidia_drv.so
- usr/bin/nvidia-smi
- usr/bin/nvidia-xconfig
- usr/bin/nvidia-settings"
-
-QA_WX_LOAD_x86="usr/lib/libnvidia-glcore.so.${PV}
- usr/lib/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib/opengl/nvidia/extensions/libglx.so.${PV}
- usr/lib/libXvMCNVIDIA.a
- usr/lib64/libXvMCNVIDIA.so.${PV}"
-
-QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib32/libnvidia-glcore.so.${PV}
- usr/lib64/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib64/libnvidia-glcore.so.${PV}
- usr/lib64/opengl/nvidia/extensions/libglx.so.${PV}
- usr/lib64/libXvMCNVIDIA.so.${PV}"
-
-QA_SONAME_x86="usr/lib/libnvidia-compiler.so.${PV}"
-
-QA_SONAME_amd64="usr/lib64/libnvidia-compiler.so.${PV}
- usr/lib32/libnvidia-compiler.so.${PV}"
-
-QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV}
- usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib32/libnvidia-glcore.so.${PV}
- usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV}
- usr/lib32/libvdpau_nvidia.so.${PV}
- usr/lib32/libOpenCL.so.1.0.0
- usr/lib32/libnvidia-compiler.so.${PV}
- usr/lib64/libXvMCNVIDIA.so.${PV}
- usr/lib64/libcuda.so.${PV}
- usr/lib64/libnvidia-cfg.so.${PV}
- usr/lib64/libnvidia-glcore.so.${PV}
- usr/lib64/libnvidia-ml.so.${PV}
- usr/lib64/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV}
- usr/lib64/opengl/nvidia/extensions/libglx.so.${PV}
- usr/lib64/xorg/modules/drivers/nvidia_drv.so
- usr/lib64/libvdpau_nvidia.so.${PV}
- usr/lib64/libOpenCL.so.1.0.0
- usr/lib64/libnvidia-compiler.so.${PV}
- usr/lib64/libnvcuvid.so.${PV}
- usr/bin/nvidia-smi
- usr/bin/nvidia-xconfig
- usr/bin/nvidia-settings"
-
-QA_DT_HASH_x86="usr/lib/libcuda.so.${PV}
- usr/lib/libnvidia-cfg.so.${PV}
- usr/lib/libnvidia-glcore.so.${PV}
- usr/lib/libnvidia-ml.so.${PV}
- usr/lib/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV}
- usr/lib/opengl/nvidia/extensions/libglx.so.${PV}
- usr/lib/xorg/modules/drivers/nvidia_drv.so
- usr/lib/libXvMCNVIDIA.so.${PV}
- usr/lib/libvdpau_nvidia.so.${PV}
- usr/lib/libOpenCL.so.1.0.0
- usr/lib/libnvidia-compiler.so.${PV}
- usr/lib/libnvcuvid.so.${PV}
- usr/bin/nvidia-smi
- usr/bin/nvidia-xconfig
- usr/bin/nvidia-settings"
-
-S="${WORKDIR}/"
-
-mtrr_check() {
- ebegin "Checking for MTRR support"
- linux_chkconfig_present MTRR
- eend $?
-
- if [[ $? -ne 0 ]] ; then
- 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
-}
-
-lockdep_check() {
- if linux_chkconfig_present LOCKDEP; then
- eerror "You've enabled LOCKDEP -- lock tracking -- in the kernel."
- eerror "Unfortunately, this option exports the symbol "
- eerror "'lockdep_init_map' as GPL-only which will prevent "
- eerror "${P} from compiling."
- eerror "Please make sure the following options have been unset:"
- eerror
- eerror " Kernel hacking --->"
- eerror " [ ] Lock debugging: detect incorrect freeing of live locks"
- eerror " [ ] Lock debugging: prove locking correctness"
- eerror " [ ] Lock usage statistics"
- eerror "in 'menuconfig'"
- die "LOCKDEP enabled"
- fi
-}
-
-pkg_setup() {
- # try to turn off distcc and ccache for people that have a problem with it
- export DISTCC_DISABLE=1
- export CCACHE_DISABLE=1
-
- 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 kernel_linux; then
- linux-mod_pkg_setup
- MODULE_NAMES="nvidia(video:${S}/kernel)"
- BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
- SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC)"
- mtrr_check
- lockdep_check
- fi
-
- # On BSD userland it wants real make command
- use userland_BSD && MAKE="$(get_bmake)"
-
- export _POSIX2_VERSION="199209"
-
- # Since Nvidia ships 3 different series of drivers, we need to give the user
- # some kind of guidance as to what version they should install. This tries
- # to point the user in the right direction but can't be perfect. check
- # nvidia-driver.eclass
- nvidia-driver-check-warning
-
- # set variables to where files are in the package structure
- if use kernel_FreeBSD; then
- NV_DOC="${S}/doc"
- NV_EXEC="${S}/obj"
- NV_LIB="${S}/obj"
- NV_SRC="${S}/src"
- NV_MAN="${S}/x11/man"
- NV_X11="${S}/obj"
- NV_X11_DRV="${NV_X11}"
- NV_X11_EXT="${NV_X11}"
- NV_SOVER=1
- elif use kernel_linux; then
- NV_DOC="${S}"
- NV_EXEC="${S}"
- NV_LIB="${S}"
- NV_SRC="${S}/kernel"
- NV_MAN="${S}"
- NV_X11="${S}"
- NV_X11_DRV="${NV_X11}"
- NV_X11_EXT="${NV_X11}"
- NV_SOVER=${PV}
- else
- die "Could not determine proper NVIDIA package"
- fi
-}
-
-src_unpack() {
- if use kernel_linux && kernel_is lt 2 6 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
-
- if ! use x86-fbsd; then
- cd "${S}"
- unpack_makeself
- else
- unpack ${A}
- fi
-}
-
-src_prepare() {
- # Please add a brief description for every added patch
- use x86-fbsd && cd doc
-
- if use kernel_linux; then
- # Quiet down warnings the user does not need to see
- sed -i \
- -e 's:-Wsign-compare::g' \
- "${NV_SRC}"/Makefile.kbuild
-
- epatch "${FILESDIR}"/256.35-unified-arch.patch
-
- # If you set this then it's your own fault when stuff breaks :)
- use custom-cflags && sed -i "s:-O:${CFLAGS}:" "${NV_SRC}"/Makefile.*
-
- # If greater than 2.6.5 use M= instead of SUBDIR=
- convert_to_m "${NV_SRC}"/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.
-
- cd "${NV_SRC}"
- if use x86-fbsd; then
- MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
- LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
- elif use kernel_linux; then
- linux-mod_src_compile
- fi
-}
-
-src_install() {
- if use kernel_linux; then
- linux-mod_src_install
-
- VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)"
- if [ -z "$VIDEOGROUP" ]; then
- eerror "Failed to determine the video group gid."
- die "Failed to determine the video group gid."
- fi
-
- # Add the aliases
- [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR"
- sed -e 's:PACKAGE:'${PF}':g' \
- -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \
- "${WORKDIR}"/nvidia
- insinto /etc/modprobe.d
- newins "${WORKDIR}"/nvidia nvidia.conf || die
- elif use x86-fbsd; then
- insinto /boot/modules
- doins "${WORKDIR}/${NV_PACKAGE}/src/nvidia.kld" || die
-
- exeinto /boot/modules
- doexe "${WORKDIR}/${NV_PACKAGE}/src/nvidia.ko" || die
- fi
-
- # NVIDIA kernel <-> userspace driver config lib
- dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \
- die "failed to install libnvidia-cfg"
- dosym /usr/$(get_libdir)/libnvidia-cfg.so.${NV_SOVER} \
- /usr/$(get_libdir)/libnvidia-cfg.so || \
- die "failed to create libnvidia-cfg.so symlink"
-
- # NVIDIA monitoring library
- dolib.so ${NV_LIB}/libnvidia-ml.so.${NV_SOVER} || \
- die "failed to install libnvidia-ml"
- dosym /usr/$(get_libdir)/libnvidia-ml.so.${NV_SOVER} \
- /usr/$(get_libdir)/libnvidia-ml.so || \
- die "failed to create libnvidia-ml.so symlink"
-
- # NVIDIA video decode <-> CUDA
- dolib.so ${NV_LIB}/libnvcuvid.so.${NV_SOVER} || \
- die "failed to install libnvcuvid.so"
- dosym /usr/$(get_libdir)/libnvcuvid.so.${NV_SOVER} \
- /usr/$(get_libdir)/libnvcuvid.so || \
- die "failed to create libnvcuvid.so symlink"
-
- # Xorg DDX driver
- insinto /usr/$(get_libdir)/xorg/modules/drivers
- doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so"
-
- # Xorg GLX driver
- insinto /usr/$(get_libdir)/opengl/nvidia/extensions
- doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \
- die "failed to install libglx.so"
- dosym /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so.${NV_SOVER} \
- /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \
- die "failed to create libglx.so symlink"
-
- # XvMC driver
- dolib.a ${NV_X11}/libXvMCNVIDIA.a || \
- die "failed to install libXvMCNVIDIA.so"
- dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \
- die "failed to install libXvMCNVIDIA.so"
- dosym libXvMCNVIDIA.so.${NV_SOVER} /usr/$(get_libdir)/libXvMCNVIDIA.so || \
- die "failed to create libXvMCNVIDIA.so symlink"
-
- # OpenCL ICD for NVIDIA
- if use kernel_linux; then
- dodir /etc/OpenCL/vendors
- insinto /etc/OpenCL/vendors
- doins nvidia.icd
- fi
-
- # Documentation
- dohtml ${NV_DOC}/html/*
- if use x86-fbsd; then
- dodoc "${NV_DOC}/README"
- doman "${NV_MAN}/nvidia-xconfig.1"
- use gtk && doman "${NV_MAN}/nvidia-settings.1"
- else
- # Docs
- newdoc "${NV_DOC}/README.txt" README
- dodoc "${NV_DOC}/NVIDIA_Changelog"
- doman "${NV_MAN}/nvidia-smi.1.gz"
- doman "${NV_MAN}/nvidia-xconfig.1.gz"
- use gtk && doman "${NV_MAN}/nvidia-settings.1.gz"
- fi
-
- # Helper Apps
- dobin ${NV_EXEC}/nvidia-xconfig || die
- if use gtk; then
- dobin ${NV_EXEC}/nvidia-settings || die
- fi
- dobin ${NV_EXEC}/nvidia-bug-report.sh || die
- if use kernel_linux; then
- dobin ${NV_EXEC}/nvidia-smi || die
- fi
-
- # Desktop entries for nvidia-settings
- if use gtk; then
- sed -e 's:__UTILS_PATH__:/usr/bin:' \
- -e 's:__PIXMAP_PATH__:/usr/share/pixmaps:' \
- -i "${NV_EXEC}/nvidia-settings.desktop"
- domenu ${NV_EXEC}/nvidia-settings.desktop
-
- doicon ${NV_EXEC}/nvidia-settings.png
- fi
-
- if has_multilib_profile ; then
- local OABI=${ABI}
- for ABI in $(get_install_abis) ; do
- src_install-libs
- done
- ABI=${OABI}
- unset OABI
- else
- src_install-libs
- fi
-
- is_final_abi || die "failed to iterate through all ABIs"
-}
-
-# Install nvidia library:
-# the first parameter is the place where to install it
-# the second parameter is the base name of the library
-# the third parameter is the provided soversion
-donvidia() {
- dodir $1
- exeinto $1
-
- libname=$(basename $2)
-
- doexe $2.$3 || die "failed to install $2"
- dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2"
- [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1
-}
-
-src_install-libs() {
- local inslibdir=$(get_libdir)
- local NV_ROOT="/usr/${inslibdir}/opengl/nvidia"
- local libdir= sover=
-
- if use kernel_linux; then
- if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then
- libdir=32
- else
- libdir=.
- fi
- sover=${PV}
- else
- libdir=obj
- # on FreeBSD it has just .1 suffix
- sover=1
- fi
-
- # The GLX libraries
- donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover}
- donvidia /usr/${inslibdir} ${libdir}/libnvidia-glcore.so ${sover}
- if use x86-fbsd; then
- donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover}
- else
- donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover}
- fi
-
- # VDPAU
- donvidia /usr/${inslibdir} ${libdir}/libvdpau_nvidia.so ${sover}
-
- # CUDA & OpenCL
- if use kernel_linux; then
- donvidia /usr/${inslibdir} ${libdir}/libcuda.so ${sover}
- donvidia /usr/${inslibdir} ${libdir}/libnvidia-compiler.so ${sover}
- donvidia /usr/${inslibdir} ${libdir}/libOpenCL.so 1.0.0
- dosym libOpenCL.so.1 /usr/${inslibdir}/libOpenCL.so
- fi
-}
-
-pkg_preinst() {
- if use kernel_linux; then
- linux-mod_pkg_postinst
- fi
-
- # Clean the dynamic 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 kernel_linux; then
- linux-mod_pkg_postinst
- fi
-
- # Switch to the nvidia implementation
- eselect opengl set --use-old nvidia
-
- echo
- elog "You must be in the video group to use the NVIDIA device"
- elog "For more info, read the docs at"
- elog "http://www.gentoo.org/doc/en/nvidia-guide.xml#doc_chap3_sect6"
- elog
-
- elog "This ebuild installs a kernel module and X driver. Both must"
- elog "match explicitly in their version. This means, if you restart"
- elog "X, you must modprobe -r nvidia before starting it back up"
- elog
-
- elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\""
- elog
- elog "NVIDIA has requested that any bug reports submitted have the"
- elog "output of /usr/bin/nvidia-bug-report.sh included."
- elog
- elog "To work with compiz, you must enable the AddARGBGLXVisuals option."
- elog
- elog "If you are having resolution problems, try disabling DynamicTwinView."
- elog
-
- if ! use gtk; then
- elog "USE=gtk controls whether the nvidia-settings application"
- elog "is installed. If you would like to use it, enable that"
- elog "flag and re-emerge this ebuild. media-video/nvidia-settings"
- elog "no longer installs nvidia-settings but only installs the"
- elog "associated user space libraries."
- fi
-}
-
-pkg_postrm() {
- if use kernel_linux; then
- linux-mod_pkg_postrm
- fi
- eselect opengl set --use-old xorg-x11
-}
+++ /dev/null
-# Copyright 1999-2011 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/nvidia-drivers-285.05.09.ebuild,v 1.4 2011/10/27 21:05:03 mr_bones_ Exp $
-
-EAPI="2"
-
-inherit eutils multilib versionator linux-mod flag-o-matic nvidia-driver
-
-X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
-AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
-X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
-
-DESCRIPTION="NVIDIA X11 driver and GLX libraries"
-HOMEPAGE="http://www.nvidia.com/"
-SRC_URI="x86? ( ftp://download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
- amd64? ( ftp://download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
- x86-fbsd? ( ftp://download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )"
-
-LICENSE="NVIDIA"
-SLOT="0"
-KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
-IUSE="acpi custom-cflags gtk multilib kernel_linux"
-RESTRICT="strip"
-EMULTILIB_PKG="true"
-
-# While this release does officially support xorg-server 1.11, it has poor
-# performance characteristics for many users. see bug #275612 & bug #385669
-# as well as http://lists.x.org/archives/xorg-devel/2011-October/026050.html
-COMMON="<x11-base/xorg-server-1.10.99
- kernel_linux? ( >=sys-libs/glibc-2.6.1 )
- multilib? ( app-emulation/emul-linux-x86-xlibs )
- >=app-admin/eselect-opengl-1.0.9
- !<media-video/nvidia-settings-256.52"
-DEPEND="${COMMON}
- kernel_linux? ( virtual/linux-sources )"
-RDEPEND="${COMMON}
- x11-libs/libXvMC
- acpi? ( sys-power/acpid )"
-PDEPEND=">=x11-libs/libvdpau-0.3-r1
- gtk? ( media-video/nvidia-settings )"
-
-QA_TEXTRELS_x86="
- usr/lib/libOpenCL.so.1.0.0
- usr/lib/libXvMCNVIDIA.so.${PV}
- usr/lib/libcuda.so.${PV}
- usr/lib/libnvcuvid.so.${PV}
- usr/lib/libnvidia-cfg.so.${PV}
- usr/lib/libnvidia-compiler.so.${PV}
- usr/lib/libnvidia-glcore.so.${PV}
- usr/lib/libnvidia-ml.so.${PV}
- usr/lib/libvdpau_nvidia.so.${PV}
- usr/lib/opengl/nvidia/extensions/libglx.so.${PV}
- usr/lib/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV}
- usr/lib/xorg/modules/drivers/nvidia_drv.so"
-
-QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko
- usr/lib/opengl/nvidia/lib/libGL.so.1
- usr/lib/libnvidia-glcore.so.1
- usr/lib/libnvidia-cfg.so.1
- usr/lib/libnvidia-ml.so.1
- usr/lib/opengl/nvidia/extensions/libglx.so.1
- usr/lib/xorg/modules/drivers/nvidia_drv.so"
-
-QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV}
- usr/lib32/libnvidia-glcore.so.${PV}
- usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib32/libcuda.so.${PV}
- usr/lib32/libvdpau_nvidia.so.${PV}
- usr/lib32/libOpenCL.so.1.0.0
- usr/lib32/libnvidia-compiler.so.${PV}"
-
-QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib/libnvidia-glcore.so.${PV}
- usr/lib/opengl/nvidia/extensions/libglx.so.${PV}
- usr/lib64/libXvMCNVIDIA.so.${PV}
- usr/lib/libXvMCNVIDIA.a:NVXVMC.o
- usr/lib/libnvidia-compiler.so.${PV}
- usr/lib/libvdpau_nvidia.so.${PV}
- usr/lib/libcuda.so.${PV}
- usr/lib/libOpenCL.so.1.0.0"
-
-QA_EXECSTACK_amd64="usr/lib32/libnvidia-glcore.so.${PV}
- usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib32/libnvidia-compiler.so.${PV}
- usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV}
- usr/lib32/libvdpau_nvidia.so.${PV}
- usr/lib32/libcuda.so.${PV}
- usr/lib32/libOpenCL.so.1.0.0
- usr/lib64/libnvidia-compiler.so.${PV}
- usr/lib64/libXvMCNVIDIA.a:NVXVMC.o
- usr/lib64/libnvidia-cfg.so.${PV}
- usr/lib64/libnvidia-ml.so.${PV}
- usr/lib64/libvdpau_nvidia.so.${PV}
- usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV}
- usr/lib64/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib64/libnvidia-glcore.so.${PV}
- usr/lib64/opengl/nvidia/extensions/libglx.so.${PV}
- usr/lib64/libXvMCNVIDIA.so.${PV}
- usr/lib64/libcuda.so.${PV}
- usr/lib64/libOpenCL.so.1.0.0
- usr/lib64/xorg/modules/drivers/nvidia_drv.so
- usr/bin/nvidia-smi
- usr/bin/nvidia-xconfig
- usr/bin/nvidia-settings"
-
-QA_WX_LOAD_x86="usr/lib/libnvidia-glcore.so.${PV}
- usr/lib/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib/opengl/nvidia/extensions/libglx.so.${PV}
- usr/lib/libXvMCNVIDIA.a
- usr/lib64/libXvMCNVIDIA.so.${PV}"
-
-QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib32/libnvidia-glcore.so.${PV}
- usr/lib64/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib64/libnvidia-glcore.so.${PV}
- usr/lib64/opengl/nvidia/extensions/libglx.so.${PV}
- usr/lib64/libXvMCNVIDIA.so.${PV}"
-
-QA_SONAME_x86="usr/lib/libnvidia-compiler.so.${PV}"
-
-QA_SONAME_amd64="usr/lib64/libnvidia-compiler.so.${PV}
- usr/lib32/libnvidia-compiler.so.${PV}"
-
-QA_DT_HASH_amd64="usr/lib32/libcuda.so.${PV}
- usr/lib32/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib32/libnvidia-glcore.so.${PV}
- usr/lib32/opengl/nvidia/lib/libnvidia-tls.so.${PV}
- usr/lib32/libvdpau_nvidia.so.${PV}
- usr/lib32/libOpenCL.so.1.0.0
- usr/lib32/libnvidia-compiler.so.${PV}
- usr/lib64/libXvMCNVIDIA.so.${PV}
- usr/lib64/libcuda.so.${PV}
- usr/lib64/libnvidia-cfg.so.${PV}
- usr/lib64/libnvidia-glcore.so.${PV}
- usr/lib64/libnvidia-ml.so.${PV}
- usr/lib64/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib64/opengl/nvidia/lib/libnvidia-tls.so.${PV}
- usr/lib64/opengl/nvidia/extensions/libglx.so.${PV}
- usr/lib64/xorg/modules/drivers/nvidia_drv.so
- usr/lib64/libvdpau_nvidia.so.${PV}
- usr/lib64/libOpenCL.so.1.0.0
- usr/lib64/libnvidia-compiler.so.${PV}
- usr/lib64/libnvcuvid.so.${PV}
- usr/bin/nvidia-smi
- usr/bin/nvidia-xconfig
- usr/bin/nvidia-settings"
-
-QA_DT_HASH_x86="usr/lib/libcuda.so.${PV}
- usr/lib/libnvidia-cfg.so.${PV}
- usr/lib/libnvidia-glcore.so.${PV}
- usr/lib/libnvidia-ml.so.${PV}
- usr/lib/opengl/nvidia/lib/libGL.so.${PV}
- usr/lib/opengl/nvidia/lib/libnvidia-tls.so.${PV}
- usr/lib/opengl/nvidia/extensions/libglx.so.${PV}
- usr/lib/xorg/modules/drivers/nvidia_drv.so
- usr/lib/libXvMCNVIDIA.so.${PV}
- usr/lib/libvdpau_nvidia.so.${PV}
- usr/lib/libOpenCL.so.1.0.0
- usr/lib/libnvidia-compiler.so.${PV}
- usr/lib/libnvcuvid.so.${PV}
- usr/bin/nvidia-smi
- usr/bin/nvidia-xconfig
- usr/bin/nvidia-settings"
-
-S="${WORKDIR}/"
-
-mtrr_check() {
- ebegin "Checking for MTRR support"
- linux_chkconfig_present MTRR
- eend $?
-
- if [[ $? -ne 0 ]] ; then
- 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
-}
-
-lockdep_check() {
- if linux_chkconfig_present LOCKDEP; then
- eerror "You've enabled LOCKDEP -- lock tracking -- in the kernel."
- eerror "Unfortunately, this option exports the symbol "
- eerror "'lockdep_init_map' as GPL-only which will prevent "
- eerror "${P} from compiling."
- eerror "Please make sure the following options have been unset:"
- eerror
- eerror " Kernel hacking --->"
- eerror " [ ] Lock debugging: detect incorrect freeing of live locks"
- eerror " [ ] Lock debugging: prove locking correctness"
- eerror " [ ] Lock usage statistics"
- eerror "in 'menuconfig'"
- die "LOCKDEP enabled"
- fi
-}
-
-pkg_setup() {
- # try to turn off distcc and ccache for people that have a problem with it
- export DISTCC_DISABLE=1
- export CCACHE_DISABLE=1
-
- 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 kernel_linux; then
- linux-mod_pkg_setup
- MODULE_NAMES="nvidia(video:${S}/kernel)"
- BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \
- SYSOUT=${KV_OUT_DIR} CC=$(tc-getBUILD_CC)"
- mtrr_check
- lockdep_check
- fi
-
- # On BSD userland it wants real make command
- use userland_BSD && MAKE="$(get_bmake)"
-
- export _POSIX2_VERSION="199209"
-
- # Since Nvidia ships 3 different series of drivers, we need to give the user
- # some kind of guidance as to what version they should install. This tries
- # to point the user in the right direction but can't be perfect. check
- # nvidia-driver.eclass
- nvidia-driver-check-warning
-
- # set variables to where files are in the package structure
- if use kernel_FreeBSD; then
- NV_DOC="${S}/doc"
- NV_EXEC="${S}/obj"
- NV_LIB="${S}/obj"
- NV_SRC="${S}/src"
- NV_MAN="${S}/x11/man"
- NV_X11="${S}/obj"
- NV_X11_DRV="${NV_X11}"
- NV_X11_EXT="${NV_X11}"
- NV_SOVER=1
- elif use kernel_linux; then
- NV_DOC="${S}"
- NV_EXEC="${S}"
- NV_LIB="${S}"
- NV_SRC="${S}/kernel"
- NV_MAN="${S}"
- NV_X11="${S}"
- NV_X11_DRV="${NV_X11}"
- NV_X11_EXT="${NV_X11}"
- NV_SOVER=${PV}
- else
- die "Could not determine proper NVIDIA package"
- fi
-}
-
-src_unpack() {
- if use kernel_linux && kernel_is lt 2 6 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
-
- if ! use x86-fbsd; then
- cd "${S}"
- unpack_makeself
- else
- unpack ${A}
- fi
-}
-
-src_prepare() {
- # Please add a brief description for every added patch
- use x86-fbsd && cd doc
-
- if use kernel_linux; then
- # Quiet down warnings the user does not need to see
- sed -i \
- -e 's:-Wsign-compare::g' \
- "${NV_SRC}"/Makefile.kbuild
-
- epatch "${FILESDIR}"/256.35-unified-arch.patch
-
- # If you set this then it's your own fault when stuff breaks :)
- use custom-cflags && sed -i "s:-O:${CFLAGS}:" "${NV_SRC}"/Makefile.*
-
- # If greater than 2.6.5 use M= instead of SUBDIR=
- convert_to_m "${NV_SRC}"/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.
-
- cd "${NV_SRC}"
- if use x86-fbsd; then
- MAKE="$(get_bmake)" CFLAGS="-Wno-sign-compare" emake CC="$(tc-getCC)" \
- LD="$(tc-getLD)" LDFLAGS="$(raw-ldflags)" || die
- elif use kernel_linux; then
- linux-mod_src_compile
- fi
-}
-
-src_install() {
- if use kernel_linux; then
- linux-mod_src_install
-
- VIDEOGROUP="$(egetent group video | cut -d ':' -f 3)"
- if [ -z "$VIDEOGROUP" ]; then
- eerror "Failed to determine the video group gid."
- die "Failed to determine the video group gid."
- fi
-
- # Add the aliases
- [ -f "${FILESDIR}/nvidia-169.07" ] || die "nvidia missing in FILESDIR"
- sed -e 's:PACKAGE:'${PF}':g' \
- -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \
- "${WORKDIR}"/nvidia
- insinto /etc/modprobe.d
- newins "${WORKDIR}"/nvidia nvidia.conf || die
- elif use x86-fbsd; then
- insinto /boot/modules
- doins "${WORKDIR}/${NV_PACKAGE}/src/nvidia.kld" || die
-
- exeinto /boot/modules
- doexe "${WORKDIR}/${NV_PACKAGE}/src/nvidia.ko" || die
- fi
-
- # NVIDIA kernel <-> userspace driver config lib
- dolib.so ${NV_LIB}/libnvidia-cfg.so.${NV_SOVER} || \
- die "failed to install libnvidia-cfg"
- dosym libnvidia-cfg.so.${NV_SOVER} \
- /usr/$(get_libdir)/libnvidia-cfg.so.1 || \
- die "failed to create libnvidia-cfg.so symlink"
- dosym libnvidia-cfg.so.1 \
- /usr/$(get_libdir)/libnvidia-cfg.so || \
- die "failed to create libnvidia-cfg.so symlink"
-
- # NVIDIA monitoring library
- dolib.so ${NV_LIB}/libnvidia-ml.so.${NV_SOVER} || \
- die "failed to install libnvidia-ml"
- dosym libnvidia-ml.so.${NV_SOVER} \
- /usr/$(get_libdir)/libnvidia-ml.so.1 || \
- die "failed to create libnvidia-ml.so symlink"
- dosym libnvidia-ml.so.1 \
- /usr/$(get_libdir)/libnvidia-ml.so || \
- die "failed to create libnvidia-ml.so symlink"
-
- # NVIDIA video decode <-> CUDA
- dolib.so ${NV_LIB}/libnvcuvid.so.${NV_SOVER} || \
- die "failed to install libnvcuvid.so"
- dosym libnvcuvid.so.${NV_SOVER} \
- /usr/$(get_libdir)/libnvcuvid.so.1 || \
- die "failed to create libnvcuvid.so symlink"
- dosym libnvcuvid.so.1 \
- /usr/$(get_libdir)/libnvcuvid.so || \
- die "failed to create libnvcuvid.so symlink"
-
- # Xorg DDX driver
- insinto /usr/$(get_libdir)/xorg/modules/drivers
- doins ${NV_X11_DRV}/nvidia_drv.so || die "failed to install nvidia_drv.so"
-
- # Xorg GLX driver
- insinto /usr/$(get_libdir)/opengl/nvidia/extensions
- doins ${NV_X11_EXT}/libglx.so.${NV_SOVER} || \
- die "failed to install libglx.so"
- dosym libglx.so.${NV_SOVER} \
- /usr/$(get_libdir)/opengl/nvidia/extensions/libglx.so || \
- die "failed to create libglx.so symlink"
-
- # XvMC driver
- dolib.a ${NV_X11}/libXvMCNVIDIA.a || \
- die "failed to install libXvMCNVIDIA.so"
- dolib.so ${NV_X11}/libXvMCNVIDIA.so.${NV_SOVER} || \
- die "failed to install libXvMCNVIDIA.so"
- dosym libXvMCNVIDIA.so.${NV_SOVER} \
- /usr/$(get_libdir)/libXvMCNVIDIA.so.1 || \
- die "failed to create libXvMCNVIDIA.so symlink"
- dosym libXvMCNVIDIA.so.1 /usr/$(get_libdir)/libXvMCNVIDIA.so || \
- die "failed to create libXvMCNVIDIA.so symlink"
- dosym libXvMCNVIDIA.so.${NV_SOVER} \
- /usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \
- die "failed to create libXvMCNVIDIA_dynamic.so symlink"
-
- # OpenCL ICD for NVIDIA
- if use kernel_linux; then
- dodir /etc/OpenCL/vendors
- insinto /etc/OpenCL/vendors
- doins nvidia.icd
- fi
-
- # Documentation
- dohtml ${NV_DOC}/html/*
- if use x86-fbsd; then
- dodoc "${NV_DOC}/README"
- doman "${NV_MAN}/nvidia-xconfig.1"
- use gtk && doman "${NV_MAN}/nvidia-settings.1"
- else
- # Docs
- newdoc "${NV_DOC}/README.txt" README
- dodoc "${NV_DOC}/NVIDIA_Changelog"
- doman "${NV_MAN}/nvidia-smi.1.gz"
- doman "${NV_MAN}/nvidia-xconfig.1.gz"
- use gtk && doman "${NV_MAN}/nvidia-settings.1.gz"
- fi
-
- # Helper Apps
- dobin ${NV_EXEC}/nvidia-xconfig || die
- if use gtk; then
- dobin ${NV_EXEC}/nvidia-settings || die
- fi
- dobin ${NV_EXEC}/nvidia-bug-report.sh || die
- if use kernel_linux; then
- dobin ${NV_EXEC}/nvidia-smi || die
- fi
-
- # Desktop entries for nvidia-settings
- if use gtk; then
- sed -e 's:__UTILS_PATH__:/usr/bin:' \
- -e 's:__PIXMAP_PATH__:/usr/share/pixmaps:' \
- -i "${NV_EXEC}/nvidia-settings.desktop"
- domenu ${NV_EXEC}/nvidia-settings.desktop
-
- doicon ${NV_EXEC}/nvidia-settings.png
- fi
-
- if has_multilib_profile ; then
- local OABI=${ABI}
- for ABI in $(get_install_abis) ; do
- src_install-libs
- done
- ABI=${OABI}
- unset OABI
- else
- src_install-libs
- fi
-
- is_final_abi || die "failed to iterate through all ABIs"
-}
-
-# Install nvidia library:
-# the first parameter is the place where to install it
-# the second parameter is the base name of the library
-# the third parameter is the provided soversion
-donvidia() {
- dodir $1
- exeinto $1
-
- libname=$(basename $2)
-
- doexe $2.$3 || die "failed to install $2"
- dosym ${libname}.$3 $1/${libname} || die "failed to symlink $2"
- [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1
-}
-
-src_install-libs() {
- local inslibdir=$(get_libdir)
- local NV_ROOT="/usr/${inslibdir}/opengl/nvidia"
- local libdir= sover=
-
- if use kernel_linux; then
- if has_multilib_profile && [[ ${ABI} == "x86" ]] ; then
- libdir=32
- else
- libdir=.
- fi
- sover=${PV}
- else
- libdir=obj
- # on FreeBSD it has just .1 suffix
- sover=1
- fi
-
- # The GLX libraries
- donvidia ${NV_ROOT}/lib ${libdir}/libGL.so ${sover}
- donvidia /usr/${inslibdir} ${libdir}/libnvidia-glcore.so ${sover}
- if use x86-fbsd; then
- donvidia ${NV_ROOT}/lib ${libdir}/libnvidia-tls.so ${sover}
- else
- donvidia ${NV_ROOT}/lib ${libdir}/tls/libnvidia-tls.so ${sover}
- fi
-
- # VDPAU
- donvidia /usr/${inslibdir} ${libdir}/libvdpau_nvidia.so ${sover}
-
- # CUDA & OpenCL
- if use kernel_linux; then
- donvidia /usr/${inslibdir} ${libdir}/libcuda.so ${sover}
- donvidia /usr/${inslibdir} ${libdir}/libnvidia-compiler.so ${sover}
- donvidia /usr/${inslibdir} ${libdir}/libOpenCL.so 1.0.0
- dosym libOpenCL.so.1 /usr/${inslibdir}/libOpenCL.so
- fi
-}
-
-pkg_preinst() {
- if use kernel_linux; then
- linux-mod_pkg_postinst
- fi
-
- # Clean the dynamic 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 kernel_linux; then
- linux-mod_pkg_postinst
- fi
-
- # Switch to the nvidia implementation
- eselect opengl set --use-old nvidia
-
- echo
- elog "You must be in the video group to use the NVIDIA device"
- elog "For more info, read the docs at"
- elog "http://www.gentoo.org/doc/en/nvidia-guide.xml#doc_chap3_sect6"
- elog
-
- elog "This ebuild installs a kernel module and X driver. Both must"
- elog "match explicitly in their version. This means, if you restart"
- elog "X, you must modprobe -r nvidia before starting it back up"
- elog
-
- elog "To use the NVIDIA GLX, run \"eselect opengl set nvidia\""
- elog
- elog "NVIDIA has requested that any bug reports submitted have the"
- elog "output of /usr/bin/nvidia-bug-report.sh included."
- elog
- elog "To work with compiz, you must enable the AddARGBGLXVisuals option."
- elog
- elog "If you are having resolution problems, try disabling DynamicTwinView."
- elog
-
- if ! use gtk; then
- elog "USE=gtk controls whether the nvidia-settings application"
- elog "is installed. If you would like to use it, enable that"
- elog "flag and re-emerge this ebuild. media-video/nvidia-settings"
- elog "no longer installs nvidia-settings but only installs the"
- elog "associated user space libraries."
- fi
-}
-
-pkg_postrm() {
- if use kernel_linux; then
- linux-mod_pkg_postrm
- fi
- eselect opengl set --use-old xorg-x11
-}