[x11-drivers/nvidia-*] bump to 304.132 and include nvidia-settings
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
DIST NVIDIA-FreeBSD-x86-304.131.tar.gz 34782985 SHA256 d9d350de797d0db58ed82d73569766d8e914b0410f0f9fc78aac098fdcd31027 SHA512 45581bee7f9172ff3c45fd40a27ddc39b2fb32772706b769414c69f86b03eaed3fd9567e7e455cf2b3d330f6f981fe3c439f20f5be77b3116530f43daf4d17a2 WHIRLPOOL 50179ab5dfa900ae97aee0e9217ea78d2f60cb30d5f05fd9a21f384ee9376d1fefdf84aa5bdd997c2ea99188e7a22ce10dff1ae484f7b47954e0afb90b0c4f14
|
||||
DIST NVIDIA-FreeBSD-x86-304.132.tar.gz 34782140 SHA256 c411d1d290a8ed0cf379c8e18fcdc0934905d0762a52a3e2e330cbff6e8ef250 SHA512 fc23e02ca8c72b0cfadbfb9f08e26fa1ed6b2dcfc660b40eede718a44134dc7e75163c79319471c60ed7e7316405966ba132926f115c7241706936eb7cc6b685 WHIRLPOOL f23076cb78a79d8b38eeb081fc83a2fad163cad9d80f59d83e67d528ab7ecc3265809e032eb3e8a34533c825d420bc734149a29d21e1ebbe1f1787bfb923f5de
|
||||
DIST NVIDIA-FreeBSD-x86-340.96.tar.gz 59678354 SHA256 dda243ed9b36e29162b1c97b987b9ca82ef7fcff4635ac78443fdb06739ec22e SHA512 dacd14a41c16bff9d26a00084c96af3fb9472fdb00832ca36f4737fb8c741e1eb89f1d6d015c3dee051482aef23631fecbad645e17014e53ee51644d4aa4b51f WHIRLPOOL d55d10682a086b6dcfb72e67f028731afd1f4a5ee2d96d6288f1a0c8eead51927b7454fff793d0b4c57d273fd5b00a9207004b14b4e6f66ab8f106ab5c68518c
|
||||
DIST NVIDIA-FreeBSD-x86-340.98.tar.gz 59690529 SHA256 eaf7b3ff2daaca269638c912044bf6129fb6e274674466d274f6ecb4b84a80f2 SHA512 7e8cedf27417c63913f5a3cb77da590bfad23780d9123bff0ce4528302f1b328d3a0eac121e49b83b05ff0a8e4f09f40dc8268f4b6da7fff493e41edbef0407c WHIRLPOOL 96b0e43694db20c1bf2c0c1614b13807a106ceece42a23410939ac108d29054780194bbc8d68865e25863e7cb19ccbd2321694fc739c25998817bfb04775bd3b
|
||||
DIST NVIDIA-FreeBSD-x86-361.45.11.tar.gz 64946814 SHA256 cd6452c3eae43d27de768e2c74672de8d56c1a0f522aa9f67e75e6a4c3741008 SHA512 5b095dec23b5c58ae0b74172f56f39ac35065fefd627c91f82508623205ff4d2e5dab08f4ef1a086f4821950e6108b0cffc3ce50d310d1b2f524178fb8866967 WHIRLPOOL b18fc830dcd705e0b53741e592690deb9cee3e3bd3b6af354dfbf150d910d87c84d48060dfeae8fcba64cab8e51971fed87c0fd5a1526a66f8eb6ccefa26e2e3
|
||||
@@ -6,6 +7,7 @@ DIST NVIDIA-FreeBSD-x86-364.19.tar.gz 65807198 SHA256 5096640e9ad8a774fa76d0b64d
|
||||
DIST NVIDIA-FreeBSD-x86-367.27.tar.gz 62605521 SHA256 906038b40f46b2a5c8915b57aaeb0432eb4e60f6d156845e6e2afd49ec9d78b8 SHA512 166bd578b5536772e81f05f411e1bbdd2d9cd81f7210e96a388eff758bd1bb714fbf5dc2f3e4204e08e7555558e74901d6ad96607ee9c7b32ca4fe0b0cf373b5 WHIRLPOOL a31e9fe0e5817f1232a2dba8719110e9404f9b2feee4e0d6fe49ec50b63fd24852863670f0c36de357c9ed357738c30d1951e8fb1e6f40b5b2f8a1e2c7a8dc84
|
||||
DIST NVIDIA-FreeBSD-x86-370.28.tar.gz 58718517 SHA256 52193b15b4ca822b029f860eed4d00270c925f5d24f7bb511a5b7bbea696d58c SHA512 83ffb19069cc240f8836d808a5eb02c142e7ad923fc2e3049a3b316acc12df070d42dfdc5a8a8e1411ccc9fba0bfa4ed84f457435e985434cd86ae966a63a3f4 WHIRLPOOL b1bec4d5e34ea39c3b1b44adcf85b7392cef39517979d32bc800e48a79a57cfb5f1ca5ff82bc302aa67ed12094782e09ab146f021a9c04e18430034a5ab341a9
|
||||
DIST NVIDIA-FreeBSD-x86_64-304.131.tar.gz 35812363 SHA256 e10aa34f4aeb6981c0bc6762f37e6ad57de52b45c7322d0caef9781c1a43858a SHA512 0df69d11c79cfd66f40f5adf091f9c3ad494b89fbe9200a1a01fef8cb2d2591ffdeb703d82a263e050384d39ef81af3a717ac24716f96b1fd8386d1758bcf45b WHIRLPOOL a7e01ac4646d52229efb1d22df9b4db98bfd6bc30c79fc4c65273001b1cd09c4db823a0141a060f8c53926ae23a33fe66e27aec805879228d64bf3f45aa66bcd
|
||||
DIST NVIDIA-FreeBSD-x86_64-304.132.tar.gz 35810728 SHA256 baedb1901f679b1d2449c49302f3abdb90ac9a85935e3ff3b0968a32089b719c SHA512 4ee6c66efc3b77d7421904ab04c621ed7374d657d0406988a3a1c4b352c092f42ed6394951247d58cbfb54b07e67ed7d02040d6eff136ab57749db813167904c WHIRLPOOL b9f5ef7d63847f76212dfc3d0dba738cb9ea9f42881becaf9c41de31858c95b4c90911eed296c5c266a4cff7dba33f09dbdbdf9e6e731e9b3f13dce7e4346d33
|
||||
DIST NVIDIA-FreeBSD-x86_64-340.96.tar.gz 60536275 SHA256 b67962a4433dd1fa86cde038bb244a547f5ed6c242febc348d618886b7715d09 SHA512 1e33f062d4414011406466c1c91c70e8280ee27542bfe2e2037be82cb1186ece661be5c53ac7160f6d912ee0e02411145c9a6d06861d89d5c5abdd493032cfa5 WHIRLPOOL 63e0d843f5c3de210c9f880efada84dc08456b64e0e746a037272ec2988ce00b09f9033cedca45279aa79b80e2edef1b81dc261415e6fdf0701c62409b50e7f5
|
||||
DIST NVIDIA-FreeBSD-x86_64-340.98.tar.gz 60539385 SHA256 c2b8c7681c214de4c29fb1d8b9a5a9d17e371350dfa14dd583bc3072fb692f61 SHA512 389b1682344262b6c44e33176c712f0c0c02abef4dc0d44d923add5aee105728639c7479a3e0800687fc876e7f8184216b5518ea24e9e2b969b26ce8c9533bd8 WHIRLPOOL 20815ace25c4ba38b0bfe5ad2231e8b649135667c7d3800027d0ffdcca279dcdb093088219a2e458a2779556c8e0883af074a9e02c0239bfe2c40fa06e65ddcd
|
||||
DIST NVIDIA-FreeBSD-x86_64-361.45.11.tar.gz 61732026 SHA256 777998f128e599b5d96fff6b40204cbc0adf79610e18ef63f753f3b1ccee326e SHA512 bbf8255aec4dc716d41671cc3e5f503c897b9faa6851cef9c571497e58dbbbc26e07e4361019d387cc7bec3d75010cdfd562f87baa64ba5689c48d42fe0cd4e8 WHIRLPOOL 030c6122c2c4746814719f9fa9d2691c55d98c2b775764a763ee6be1c774a658cca09e7cfe7ff2d846cd957e965dbe0968cb75758e916e2ae205d5afe4b50205
|
||||
@@ -13,6 +15,7 @@ DIST NVIDIA-FreeBSD-x86_64-364.19.tar.gz 62553892 SHA256 3b691c259b2a85da49d16ce
|
||||
DIST NVIDIA-FreeBSD-x86_64-367.27.tar.gz 59357230 SHA256 dea9bf156229b9353e033fa3cf02685c14e539d959d7c2759f233ad1f707f2d2 SHA512 3eb129723317d277c0788b966709369c382035e287e4e14000fae09b98bc12359e5218205a86abcb08894978343f3185986d643df3ceeb81b35ba475bb16b99f WHIRLPOOL a33ae3d01d953b090e169e651ff9cc478d91ea21753cbd4c806dc08898edbd078d191d91ae1f7d46dea8ba931bc63f722bb88e728e31cf98a7681c1d806bd1a5
|
||||
DIST NVIDIA-FreeBSD-x86_64-370.28.tar.gz 57905860 SHA256 5087a93af8aaab6cff35ba60c9d67b4249827f6b7681abaaa571a20784a54552 SHA512 40637d64a0ee5029bb1c5ad7a590c5be61253ef6283c4217666768ad8601d7f51ef0d8705c8711f65c3d0a5a5721490813220c5f9186c6d2d12baf5d9c11122e WHIRLPOOL 361648788b7efb9e550b3e67d2e6022e31dab29f5660c42a1b6c961fe4638216fb8785814ee9fa1636fc39c39afce7caffbdc24fcf8bbd14e4eec5b5eeaeb1eb
|
||||
DIST NVIDIA-Linux-x86-304.131.run 40893199 SHA256 d2554bb6f7867e7762d0ecedcac5bde7de0634e43b952bf466323ea8b4032da8 SHA512 3e67c40648554dc49472081eee88ae982c3b235b3346e4d9e7fb5ae33ec5f10ed088da804ac7d8bd1565995df3861f12b3560030cd3a19339a2d35768b0a943e WHIRLPOOL 88e9cc0270a4fc64ed8475a217c7c8c50e6ea21fe14b5b5beb16f494bd62bf5ada2f47e26e5380dd3d0bc678091e29f0e26937eef1ee3c7bdc5805153201bae3
|
||||
DIST NVIDIA-Linux-x86-304.132.run 40910791 SHA256 d460f6ab63cc8c1f9fb89a344ad0f3ee1a90e7078b4edba78d86433e66bfd927 SHA512 70a6ed74a93ac2a1acec5eab5078dfe05fab66c6264d67f3238a6b28af7b39f7205e237214bac4ee5d2366e8c6a4a63dfc8dc113e9e977ee2387c5c8c63ccc8f WHIRLPOOL 69b24a57d906b37cc87f081209712f92eb2e7df27a2a030c51a1ef7bda607dd404b57d1fc008ee3d1ad3b81c176da1806e7b591d00a0894f2a0273ebd494e4dd
|
||||
DIST NVIDIA-Linux-x86-340.96.run 38720587 SHA256 c40e2778cd1ab036a76e1896fe2f77c4aa7baa215dbbdb11a2f4c5f05e1a478e SHA512 c6306a101b7dc6298eb02290fb7792f624b8b16b1449b5d58148617017e8fdb87f1838f99b225103bf6a81c60a3246de9a27eab89608f099273a1c3d1c0003da WHIRLPOOL d772a20a9c7badf695ca3572db3c0b7e5507926297e6f950965294ac30ae2d8f206ba5c4c229087fd7cba88427eb0e41fb3dd1a28c4f2c8c23fa70b27002180c
|
||||
DIST NVIDIA-Linux-x86-340.98.run 38664575 SHA256 7d18bac3f570d72e3aae9dd2b74f53f9aa7b07bd5b1c2d3d1a9ae2f8104752e0 SHA512 ecb3b7ab216bbcc606cb540a317dfc572dcb7d26ec84f1ff744451ec367ceffc73ae75ebc269aedba1850d3bac0d946b8b2fcc5929d7a3c27aae4fd3032a37e6 WHIRLPOOL a473566a76dace7d35fcc81a51a00ca70f24da9aaac3b1dfbc94c375a77a6be0dea9b7535d7dcbf57191e6ac04276c5e78c0e9decfa6fdbaf5d4f9d8e6a552f5
|
||||
DIST NVIDIA-Linux-x86-361.45.11.run 48922605 SHA256 eb9a980ae048241a9c3e94b6907d78cbfa5c95fec771f1d5fec7ff04ff3adb0c SHA512 2f1cd2f7d284eb36fdd126ec714d22776aaeead13718ee9a0364a31e4cf1a2c85097eab118b058aef1aa3df0649704a3bd5cdcc8dc3b51d25ee21acb91ebdc49 WHIRLPOOL 786f963c8af4f70f38614b06aec6504877f63b3697ef6fc051d52c685152b904ed4ee7e1244e92b50a3d1f06cb9e6cbdae6fadb272b1f0f25e91980b70cb449f
|
||||
@@ -20,6 +23,7 @@ DIST NVIDIA-Linux-x86-364.19.run 50074922 SHA256 9f891d4b22c43c9094b59af5c8474e2
|
||||
DIST NVIDIA-Linux-x86-367.27.run 44740794 SHA256 faa7c0f73c04a6d343a3952d264ec56fdf816cc6bf2a1c1bb95726401e99654b SHA512 54302f0de936a859561b756989ff84f73afe41dfb89ed680ee3df3c46b0de9d57eaf2d07876dea0eb1154fbc1a716d4d3e693cb7eaa7ab325b4bbee569ddb709 WHIRLPOOL b46005fa221f0e9b466168530ff08271c63d72a29ef1dea2831215aebd7b4f8dc2947d1f56f1fe490e4d809ed337f7f9116f0263f187dbb7f3d347378367a552
|
||||
DIST NVIDIA-Linux-x86-370.28.run 44189522 SHA256 6323254ccf2a75d7ced1374a76ca56778689d0d8a9819e4ee5378ea3347b9835 SHA512 2df8b3d1064073c8b793287994fe0648625d095f3434b7b67531e19632cbad318994df90b55de18aa457d55a1374b35d64a646564259995d3f2197c48737921c WHIRLPOOL 85a089c833311abdc06bbc1fc68cd5ff8ed43dd5e5887d340dc854f905ae741de0ae4343d024259f493dd668075096c460bc1f93c1795d2befb81dd3c4a4983a
|
||||
DIST NVIDIA-Linux-x86_64-304.131.run 69415084 SHA256 74b7ec1c31dac03ee7c3e04612cadb9cbaa01ef4c796c27a0a649f7d32dccd0b SHA512 ddfa1f23600821dcae17ddb735b615d67504c4e276d9b41813e0f8d7690fbdf48f79644ee4c9e5449ce22a31460734cf325fc83975e0b48a0379a85cd4ef747d WHIRLPOOL fc08c2337a1b80b0444dbc914f7d17441995e4965c435028194050df9f5ec1606cdfb5bf11e56f79a736e04cf0755b296017fe79629c5ded18a72093b8689bce
|
||||
DIST NVIDIA-Linux-x86_64-304.132.run 69426739 SHA256 69aed9ede0a6a8c645e20b9825adeafbb985056af48b68a7ff7ea4b76a7ffde4 SHA512 f71c9a5020de48fe166176bf6420a0d85b525ecf70ac1c819fd9f846af0f6d048399bda6059a36eed11561fcb10387a7d00132fa91839d618278cee2f3ad0dbf WHIRLPOOL 6b4e567f8a97ac251f9a71be11615eb405d238b8a9514cbd646f8a693d7f08f37179aa9ca93f3d6cfca5e6b53a936ec90f61717fa39db1d0708bb0880a450d1c
|
||||
DIST NVIDIA-Linux-x86_64-340.96.run 69824601 SHA256 a7553a5749679994642ef0262906e6431dce354c03052151d9821d29dad7470d SHA512 6ffa4567ef6f5e09bcd50760b87baa2abe6a6ed1fbc280319101cc6582f2a381c36ab3fd1b4d74bcb5748adc3b82881618673ef77e5fe1a74c19a657774bcd87 WHIRLPOOL 823488bf9e338fee314d84c7ad2af6556548b94437c98094ca42911d74f19b5f44ee9809bb112a244016dadfdb372232365a355a4d40eaf685f5e0fa13868b58
|
||||
DIST NVIDIA-Linux-x86_64-340.98.run 69984344 SHA256 c800991c80fc844c9a80466edb7ae854b4e67314515988c4d016e15d1d0a3f67 SHA512 969595e1fb2c729f3fde45411d650bb437c221b5102341bd138f5be0e2a90e87d9ad534820ea168f1af5f981af5d1e8cf564a62db495580c054f0f80b0cc5c8a WHIRLPOOL 23f9672a2bf47284294538a6d25758031d9ad0e5af7791a56b8c2add9cc00982ca5b76859c710c6f56a7dfb39b2f3d2b35c77e0e95c70587f7fd01e712b6ab68
|
||||
DIST NVIDIA-Linux-x86_64-361.45.11.run 86205078 SHA256 61d84f683027dc3bc1addd3235f8e988ffdeae1d13e9a05f144b322e9bbf16a7 SHA512 45f72a4e6a1abd3ec1c25f5b6947e55a9aba7f0d0618eab7252020d945f5adc5bff6b65459acea99f0ebd9f9bba926f847456ff2aa9f38c30cb58df94e3535cf WHIRLPOOL 66b6dd40246bdbc1f708f2ff09c628e4fe7c1bacbe1a6a9dca931dc73c86e8a82091e7db64e5f336427dbd5e4ac47c9079e2501c39f6a5b543fa53d1826badef
|
||||
|
||||
@@ -0,0 +1,193 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=4
|
||||
|
||||
inherit eutils flag-o-matic linux-info linux-mod multilib nvidia-driver \
|
||||
portability toolchain-funcs unpacker user versionator
|
||||
|
||||
X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
|
||||
AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
|
||||
X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
|
||||
AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
|
||||
|
||||
DESCRIPTION="NVIDIA GPUs kernel drivers"
|
||||
HOMEPAGE="http://www.nvidia.com/"
|
||||
SRC_URI="x86? ( http://us.download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
|
||||
amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
|
||||
amd64-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
|
||||
x86-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )"
|
||||
|
||||
LICENSE="NVIDIA"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd"
|
||||
IUSE="acpi custom-cflags multilib kernel_FreeBSD kernel_linux pax_kernel tools X"
|
||||
RESTRICT="strip"
|
||||
|
||||
DEPEND="
|
||||
kernel_linux? (
|
||||
virtual/linux-sources
|
||||
virtual/pkgconfig
|
||||
)"
|
||||
RDEPEND="~x11-drivers/nvidia-userspace-${PV}
|
||||
multilib? ( ~x11-drivers/nvidia-userspace-${PV}[multilib] )
|
||||
~x11-drivers/nvidia-userspace-${PV}[tools=]
|
||||
~x11-drivers/nvidia-userspace-${PV}[X=]"
|
||||
PDEPEND=""
|
||||
|
||||
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() {
|
||||
# Kernel features/options to check for
|
||||
CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
|
||||
use x86 && CONFIG_CHECK+=" ~HIGHMEM"
|
||||
|
||||
# Now do the above checks
|
||||
use kernel_linux && check_extra_config
|
||||
}
|
||||
|
||||
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 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)"
|
||||
# linux-mod_src_compile calls set_arch_to_kernel, which
|
||||
# sets the ARCH to x86 but NVIDIA's wrapping Makefile
|
||||
# expects x86_64 or i386 and then converts it to x86
|
||||
# later on in the build process
|
||||
BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
|
||||
fi
|
||||
|
||||
# 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
|
||||
use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
|
||||
use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
|
||||
NV_SRC="${S}/src"
|
||||
NV_SOVER=1
|
||||
elif use kernel_linux; then
|
||||
NV_SRC="${S}/kernel"
|
||||
NV_SOVER=${PV}
|
||||
else
|
||||
die "Could not determine proper NVIDIA package"
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if ! use kernel_FreeBSD; then
|
||||
cd "${S}"
|
||||
unpack_makeself
|
||||
else
|
||||
unpack ${A}
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Please add a brief description for every added patch
|
||||
|
||||
if use kernel_linux; then
|
||||
if kernel_is lt 2 6 9 ; then
|
||||
eerror "You must build this against 2.6.9 or higher kernels."
|
||||
fi
|
||||
|
||||
# If greater than 2.6.5 use M= instead of SUBDIR=
|
||||
convert_to_m "${NV_SRC}"/Makefile.kbuild
|
||||
fi
|
||||
if use pax_kernel; then
|
||||
ewarn "Using PAX patches is not supported. You will be asked to"
|
||||
ewarn "use a standard kernel should you have issues. Should you"
|
||||
ewarn "need support with these patches, contact the PaX team."
|
||||
epatch "${FILESDIR}"/nvidia-drivers-pax-const.patch
|
||||
epatch "${FILESDIR}"/nvidia-drivers-pax-usercopy.patch
|
||||
fi
|
||||
cat <<- EOF > "${S}"/nvidia.icd
|
||||
/usr/$(get_libdir)/libnvidia-opencl.so
|
||||
EOF
|
||||
|
||||
# Linux 4.6 support
|
||||
epatch "${FILESDIR}/${PN}-304-4.6.patch"
|
||||
|
||||
# Allow user patches so they can support RC kernels and whatever else
|
||||
epatch_user
|
||||
}
|
||||
|
||||
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 kernel_FreeBSD; 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
|
||||
elif use kernel_FreeBSD; then
|
||||
if use x86-fbsd; then
|
||||
insinto /boot/modules
|
||||
doins "${S}/src/nvidia.kld" || die
|
||||
fi
|
||||
|
||||
exeinto /boot/modules
|
||||
doexe "${S}/src/nvidia.ko" || die
|
||||
fi
|
||||
|
||||
is_final_abi || die "failed to iterate through all ABIs"
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
use kernel_linux && linux-mod_pkg_preinst
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
use kernel_linux && linux-mod_pkg_postinst
|
||||
|
||||
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 package 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
|
||||
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
use kernel_linux && linux-mod_pkg_postrm
|
||||
}
|
||||
@@ -1,4 +1,5 @@
|
||||
DIST NVIDIA-FreeBSD-x86-304.131.tar.gz 34782985 SHA256 d9d350de797d0db58ed82d73569766d8e914b0410f0f9fc78aac098fdcd31027 SHA512 45581bee7f9172ff3c45fd40a27ddc39b2fb32772706b769414c69f86b03eaed3fd9567e7e455cf2b3d330f6f981fe3c439f20f5be77b3116530f43daf4d17a2 WHIRLPOOL 50179ab5dfa900ae97aee0e9217ea78d2f60cb30d5f05fd9a21f384ee9376d1fefdf84aa5bdd997c2ea99188e7a22ce10dff1ae484f7b47954e0afb90b0c4f14
|
||||
DIST NVIDIA-FreeBSD-x86-304.132.tar.gz 34782140 SHA256 c411d1d290a8ed0cf379c8e18fcdc0934905d0762a52a3e2e330cbff6e8ef250 SHA512 fc23e02ca8c72b0cfadbfb9f08e26fa1ed6b2dcfc660b40eede718a44134dc7e75163c79319471c60ed7e7316405966ba132926f115c7241706936eb7cc6b685 WHIRLPOOL f23076cb78a79d8b38eeb081fc83a2fad163cad9d80f59d83e67d528ab7ecc3265809e032eb3e8a34533c825d420bc734149a29d21e1ebbe1f1787bfb923f5de
|
||||
DIST NVIDIA-FreeBSD-x86-340.96.tar.gz 59678354 SHA256 dda243ed9b36e29162b1c97b987b9ca82ef7fcff4635ac78443fdb06739ec22e SHA512 dacd14a41c16bff9d26a00084c96af3fb9472fdb00832ca36f4737fb8c741e1eb89f1d6d015c3dee051482aef23631fecbad645e17014e53ee51644d4aa4b51f WHIRLPOOL d55d10682a086b6dcfb72e67f028731afd1f4a5ee2d96d6288f1a0c8eead51927b7454fff793d0b4c57d273fd5b00a9207004b14b4e6f66ab8f106ab5c68518c
|
||||
DIST NVIDIA-FreeBSD-x86-340.98.tar.gz 59690529 SHA256 eaf7b3ff2daaca269638c912044bf6129fb6e274674466d274f6ecb4b84a80f2 SHA512 7e8cedf27417c63913f5a3cb77da590bfad23780d9123bff0ce4528302f1b328d3a0eac121e49b83b05ff0a8e4f09f40dc8268f4b6da7fff493e41edbef0407c WHIRLPOOL 96b0e43694db20c1bf2c0c1614b13807a106ceece42a23410939ac108d29054780194bbc8d68865e25863e7cb19ccbd2321694fc739c25998817bfb04775bd3b
|
||||
DIST NVIDIA-FreeBSD-x86-361.45.11.tar.gz 64946814 SHA256 cd6452c3eae43d27de768e2c74672de8d56c1a0f522aa9f67e75e6a4c3741008 SHA512 5b095dec23b5c58ae0b74172f56f39ac35065fefd627c91f82508623205ff4d2e5dab08f4ef1a086f4821950e6108b0cffc3ce50d310d1b2f524178fb8866967 WHIRLPOOL b18fc830dcd705e0b53741e592690deb9cee3e3bd3b6af354dfbf150d910d87c84d48060dfeae8fcba64cab8e51971fed87c0fd5a1526a66f8eb6ccefa26e2e3
|
||||
@@ -6,6 +7,7 @@ DIST NVIDIA-FreeBSD-x86-364.19.tar.gz 65807198 SHA256 5096640e9ad8a774fa76d0b64d
|
||||
DIST NVIDIA-FreeBSD-x86-367.27.tar.gz 62605521 SHA256 906038b40f46b2a5c8915b57aaeb0432eb4e60f6d156845e6e2afd49ec9d78b8 SHA512 166bd578b5536772e81f05f411e1bbdd2d9cd81f7210e96a388eff758bd1bb714fbf5dc2f3e4204e08e7555558e74901d6ad96607ee9c7b32ca4fe0b0cf373b5 WHIRLPOOL a31e9fe0e5817f1232a2dba8719110e9404f9b2feee4e0d6fe49ec50b63fd24852863670f0c36de357c9ed357738c30d1951e8fb1e6f40b5b2f8a1e2c7a8dc84
|
||||
DIST NVIDIA-FreeBSD-x86-370.28.tar.gz 58718517 SHA256 52193b15b4ca822b029f860eed4d00270c925f5d24f7bb511a5b7bbea696d58c SHA512 83ffb19069cc240f8836d808a5eb02c142e7ad923fc2e3049a3b316acc12df070d42dfdc5a8a8e1411ccc9fba0bfa4ed84f457435e985434cd86ae966a63a3f4 WHIRLPOOL b1bec4d5e34ea39c3b1b44adcf85b7392cef39517979d32bc800e48a79a57cfb5f1ca5ff82bc302aa67ed12094782e09ab146f021a9c04e18430034a5ab341a9
|
||||
DIST NVIDIA-FreeBSD-x86_64-304.131.tar.gz 35812363 SHA256 e10aa34f4aeb6981c0bc6762f37e6ad57de52b45c7322d0caef9781c1a43858a SHA512 0df69d11c79cfd66f40f5adf091f9c3ad494b89fbe9200a1a01fef8cb2d2591ffdeb703d82a263e050384d39ef81af3a717ac24716f96b1fd8386d1758bcf45b WHIRLPOOL a7e01ac4646d52229efb1d22df9b4db98bfd6bc30c79fc4c65273001b1cd09c4db823a0141a060f8c53926ae23a33fe66e27aec805879228d64bf3f45aa66bcd
|
||||
DIST NVIDIA-FreeBSD-x86_64-304.132.tar.gz 35810728 SHA256 baedb1901f679b1d2449c49302f3abdb90ac9a85935e3ff3b0968a32089b719c SHA512 4ee6c66efc3b77d7421904ab04c621ed7374d657d0406988a3a1c4b352c092f42ed6394951247d58cbfb54b07e67ed7d02040d6eff136ab57749db813167904c WHIRLPOOL b9f5ef7d63847f76212dfc3d0dba738cb9ea9f42881becaf9c41de31858c95b4c90911eed296c5c266a4cff7dba33f09dbdbdf9e6e731e9b3f13dce7e4346d33
|
||||
DIST NVIDIA-FreeBSD-x86_64-340.96.tar.gz 60536275 SHA256 b67962a4433dd1fa86cde038bb244a547f5ed6c242febc348d618886b7715d09 SHA512 1e33f062d4414011406466c1c91c70e8280ee27542bfe2e2037be82cb1186ece661be5c53ac7160f6d912ee0e02411145c9a6d06861d89d5c5abdd493032cfa5 WHIRLPOOL 63e0d843f5c3de210c9f880efada84dc08456b64e0e746a037272ec2988ce00b09f9033cedca45279aa79b80e2edef1b81dc261415e6fdf0701c62409b50e7f5
|
||||
DIST NVIDIA-FreeBSD-x86_64-340.98.tar.gz 60539385 SHA256 c2b8c7681c214de4c29fb1d8b9a5a9d17e371350dfa14dd583bc3072fb692f61 SHA512 389b1682344262b6c44e33176c712f0c0c02abef4dc0d44d923add5aee105728639c7479a3e0800687fc876e7f8184216b5518ea24e9e2b969b26ce8c9533bd8 WHIRLPOOL 20815ace25c4ba38b0bfe5ad2231e8b649135667c7d3800027d0ffdcca279dcdb093088219a2e458a2779556c8e0883af074a9e02c0239bfe2c40fa06e65ddcd
|
||||
DIST NVIDIA-FreeBSD-x86_64-361.45.11.tar.gz 61732026 SHA256 777998f128e599b5d96fff6b40204cbc0adf79610e18ef63f753f3b1ccee326e SHA512 bbf8255aec4dc716d41671cc3e5f503c897b9faa6851cef9c571497e58dbbbc26e07e4361019d387cc7bec3d75010cdfd562f87baa64ba5689c48d42fe0cd4e8 WHIRLPOOL 030c6122c2c4746814719f9fa9d2691c55d98c2b775764a763ee6be1c774a658cca09e7cfe7ff2d846cd957e965dbe0968cb75758e916e2ae205d5afe4b50205
|
||||
@@ -13,6 +15,7 @@ DIST NVIDIA-FreeBSD-x86_64-364.19.tar.gz 62553892 SHA256 3b691c259b2a85da49d16ce
|
||||
DIST NVIDIA-FreeBSD-x86_64-367.27.tar.gz 59357230 SHA256 dea9bf156229b9353e033fa3cf02685c14e539d959d7c2759f233ad1f707f2d2 SHA512 3eb129723317d277c0788b966709369c382035e287e4e14000fae09b98bc12359e5218205a86abcb08894978343f3185986d643df3ceeb81b35ba475bb16b99f WHIRLPOOL a33ae3d01d953b090e169e651ff9cc478d91ea21753cbd4c806dc08898edbd078d191d91ae1f7d46dea8ba931bc63f722bb88e728e31cf98a7681c1d806bd1a5
|
||||
DIST NVIDIA-FreeBSD-x86_64-370.28.tar.gz 57905860 SHA256 5087a93af8aaab6cff35ba60c9d67b4249827f6b7681abaaa571a20784a54552 SHA512 40637d64a0ee5029bb1c5ad7a590c5be61253ef6283c4217666768ad8601d7f51ef0d8705c8711f65c3d0a5a5721490813220c5f9186c6d2d12baf5d9c11122e WHIRLPOOL 361648788b7efb9e550b3e67d2e6022e31dab29f5660c42a1b6c961fe4638216fb8785814ee9fa1636fc39c39afce7caffbdc24fcf8bbd14e4eec5b5eeaeb1eb
|
||||
DIST NVIDIA-Linux-x86-304.131.run 40893199 SHA256 d2554bb6f7867e7762d0ecedcac5bde7de0634e43b952bf466323ea8b4032da8 SHA512 3e67c40648554dc49472081eee88ae982c3b235b3346e4d9e7fb5ae33ec5f10ed088da804ac7d8bd1565995df3861f12b3560030cd3a19339a2d35768b0a943e WHIRLPOOL 88e9cc0270a4fc64ed8475a217c7c8c50e6ea21fe14b5b5beb16f494bd62bf5ada2f47e26e5380dd3d0bc678091e29f0e26937eef1ee3c7bdc5805153201bae3
|
||||
DIST NVIDIA-Linux-x86-304.132.run 40910791 SHA256 d460f6ab63cc8c1f9fb89a344ad0f3ee1a90e7078b4edba78d86433e66bfd927 SHA512 70a6ed74a93ac2a1acec5eab5078dfe05fab66c6264d67f3238a6b28af7b39f7205e237214bac4ee5d2366e8c6a4a63dfc8dc113e9e977ee2387c5c8c63ccc8f WHIRLPOOL 69b24a57d906b37cc87f081209712f92eb2e7df27a2a030c51a1ef7bda607dd404b57d1fc008ee3d1ad3b81c176da1806e7b591d00a0894f2a0273ebd494e4dd
|
||||
DIST NVIDIA-Linux-x86-340.96.run 38720587 SHA256 c40e2778cd1ab036a76e1896fe2f77c4aa7baa215dbbdb11a2f4c5f05e1a478e SHA512 c6306a101b7dc6298eb02290fb7792f624b8b16b1449b5d58148617017e8fdb87f1838f99b225103bf6a81c60a3246de9a27eab89608f099273a1c3d1c0003da WHIRLPOOL d772a20a9c7badf695ca3572db3c0b7e5507926297e6f950965294ac30ae2d8f206ba5c4c229087fd7cba88427eb0e41fb3dd1a28c4f2c8c23fa70b27002180c
|
||||
DIST NVIDIA-Linux-x86-340.98.run 38664575 SHA256 7d18bac3f570d72e3aae9dd2b74f53f9aa7b07bd5b1c2d3d1a9ae2f8104752e0 SHA512 ecb3b7ab216bbcc606cb540a317dfc572dcb7d26ec84f1ff744451ec367ceffc73ae75ebc269aedba1850d3bac0d946b8b2fcc5929d7a3c27aae4fd3032a37e6 WHIRLPOOL a473566a76dace7d35fcc81a51a00ca70f24da9aaac3b1dfbc94c375a77a6be0dea9b7535d7dcbf57191e6ac04276c5e78c0e9decfa6fdbaf5d4f9d8e6a552f5
|
||||
DIST NVIDIA-Linux-x86-361.45.11.run 48922605 SHA256 eb9a980ae048241a9c3e94b6907d78cbfa5c95fec771f1d5fec7ff04ff3adb0c SHA512 2f1cd2f7d284eb36fdd126ec714d22776aaeead13718ee9a0364a31e4cf1a2c85097eab118b058aef1aa3df0649704a3bd5cdcc8dc3b51d25ee21acb91ebdc49 WHIRLPOOL 786f963c8af4f70f38614b06aec6504877f63b3697ef6fc051d52c685152b904ed4ee7e1244e92b50a3d1f06cb9e6cbdae6fadb272b1f0f25e91980b70cb449f
|
||||
@@ -20,12 +23,14 @@ DIST NVIDIA-Linux-x86-364.19.run 50074922 SHA256 9f891d4b22c43c9094b59af5c8474e2
|
||||
DIST NVIDIA-Linux-x86-367.27.run 44740794 SHA256 faa7c0f73c04a6d343a3952d264ec56fdf816cc6bf2a1c1bb95726401e99654b SHA512 54302f0de936a859561b756989ff84f73afe41dfb89ed680ee3df3c46b0de9d57eaf2d07876dea0eb1154fbc1a716d4d3e693cb7eaa7ab325b4bbee569ddb709 WHIRLPOOL b46005fa221f0e9b466168530ff08271c63d72a29ef1dea2831215aebd7b4f8dc2947d1f56f1fe490e4d809ed337f7f9116f0263f187dbb7f3d347378367a552
|
||||
DIST NVIDIA-Linux-x86-370.28.run 44189522 SHA256 6323254ccf2a75d7ced1374a76ca56778689d0d8a9819e4ee5378ea3347b9835 SHA512 2df8b3d1064073c8b793287994fe0648625d095f3434b7b67531e19632cbad318994df90b55de18aa457d55a1374b35d64a646564259995d3f2197c48737921c WHIRLPOOL 85a089c833311abdc06bbc1fc68cd5ff8ed43dd5e5887d340dc854f905ae741de0ae4343d024259f493dd668075096c460bc1f93c1795d2befb81dd3c4a4983a
|
||||
DIST NVIDIA-Linux-x86_64-304.131.run 69415084 SHA256 74b7ec1c31dac03ee7c3e04612cadb9cbaa01ef4c796c27a0a649f7d32dccd0b SHA512 ddfa1f23600821dcae17ddb735b615d67504c4e276d9b41813e0f8d7690fbdf48f79644ee4c9e5449ce22a31460734cf325fc83975e0b48a0379a85cd4ef747d WHIRLPOOL fc08c2337a1b80b0444dbc914f7d17441995e4965c435028194050df9f5ec1606cdfb5bf11e56f79a736e04cf0755b296017fe79629c5ded18a72093b8689bce
|
||||
DIST NVIDIA-Linux-x86_64-304.132.run 69426739 SHA256 69aed9ede0a6a8c645e20b9825adeafbb985056af48b68a7ff7ea4b76a7ffde4 SHA512 f71c9a5020de48fe166176bf6420a0d85b525ecf70ac1c819fd9f846af0f6d048399bda6059a36eed11561fcb10387a7d00132fa91839d618278cee2f3ad0dbf WHIRLPOOL 6b4e567f8a97ac251f9a71be11615eb405d238b8a9514cbd646f8a693d7f08f37179aa9ca93f3d6cfca5e6b53a936ec90f61717fa39db1d0708bb0880a450d1c
|
||||
DIST NVIDIA-Linux-x86_64-340.96.run 69824601 SHA256 a7553a5749679994642ef0262906e6431dce354c03052151d9821d29dad7470d SHA512 6ffa4567ef6f5e09bcd50760b87baa2abe6a6ed1fbc280319101cc6582f2a381c36ab3fd1b4d74bcb5748adc3b82881618673ef77e5fe1a74c19a657774bcd87 WHIRLPOOL 823488bf9e338fee314d84c7ad2af6556548b94437c98094ca42911d74f19b5f44ee9809bb112a244016dadfdb372232365a355a4d40eaf685f5e0fa13868b58
|
||||
DIST NVIDIA-Linux-x86_64-340.98.run 69984344 SHA256 c800991c80fc844c9a80466edb7ae854b4e67314515988c4d016e15d1d0a3f67 SHA512 969595e1fb2c729f3fde45411d650bb437c221b5102341bd138f5be0e2a90e87d9ad534820ea168f1af5f981af5d1e8cf564a62db495580c054f0f80b0cc5c8a WHIRLPOOL 23f9672a2bf47284294538a6d25758031d9ad0e5af7791a56b8c2add9cc00982ca5b76859c710c6f56a7dfb39b2f3d2b35c77e0e95c70587f7fd01e712b6ab68
|
||||
DIST NVIDIA-Linux-x86_64-361.45.11.run 86205078 SHA256 61d84f683027dc3bc1addd3235f8e988ffdeae1d13e9a05f144b322e9bbf16a7 SHA512 45f72a4e6a1abd3ec1c25f5b6947e55a9aba7f0d0618eab7252020d945f5adc5bff6b65459acea99f0ebd9f9bba926f847456ff2aa9f38c30cb58df94e3535cf WHIRLPOOL 66b6dd40246bdbc1f708f2ff09c628e4fe7c1bacbe1a6a9dca931dc73c86e8a82091e7db64e5f336427dbd5e4ac47c9079e2501c39f6a5b543fa53d1826badef
|
||||
DIST NVIDIA-Linux-x86_64-364.19.run 87961023 SHA256 7b8680a815ac74d5b3a7e3d38113b05ed1e2ce781575e966c27f68457aaf694e SHA512 c02fea3eb0404e9f17eb6fdef43008c09653239b884fc599d3639f50a36b8d2708539c429e4b3be96d509c83ce5416145add7f152a3f08cada555617e9fcf1fc WHIRLPOOL 40c19fb5bfbc3a6b2c631e7768a04af9b250b4e8845adbf40b6408e2e7c6bb5b2b3142760387995c83450490e26591029d44aa8a6ee7a7b39a50128c7e4211af
|
||||
DIST NVIDIA-Linux-x86_64-367.27.run 76945324 SHA256 7b84583f8ed90b2b97ed4f9bbafac2b054da285fb94b37cfaadc5741cb442571 SHA512 d1aac4eb2e805054463cb974e4a4acf96a0404bf75de37188ccd0bd5a88916d003941b70f695216dee543b12779a38787c9675bbe03803ae15d6a48d1013ee28 WHIRLPOOL 8b71552e91eb37f1a3f6c0a11987471ef366fa97b4c580535ed35c8b650d3cb58ada09c5d1b4cdf803c5bdc3720df2f69c9e44153088861f2c78b55836559b7d
|
||||
DIST NVIDIA-Linux-x86_64-370.28.run 76690360 SHA256 90aa3c186e45b39e6fc0064ab8dbda8bcc897cb61d2e7b7cb30b4ec9a4b39239 SHA512 931476f92a63d142478b2d6b3da4031769fd3b93aee2387800a78b1354b59a5fb5e4e293436b6b4c246627d51c0f55d140ab230de385cb1567bc8b25518eb741 WHIRLPOOL ce866c38291d2ab4aeeff05654a0e61196129f77baea5af93ddbc22fab9574ba39cc05d58020ea2407cc7342f0bcf5c2702d42290f4cc3b53c9e04fb7c617413
|
||||
DIST nvidia-settings-304.132.tar.bz2 1480097 SHA256 53b86952ec29b32bdcc838199c3db802a5affd58e348f68ac9f4931ae0e2021f SHA512 512db744830b31ded109047e0c736dd18ae01cdea2b94099d06b7f30a31274fa4fd689b286a1e12768ac618fc4d38be9eb7c0d58b1f0a3e2b67ae4a133cec97d WHIRLPOOL adce5fce462119dfa1569c4b2241f1129ae2659ae8964a9556d730bcda246c7db08b6e6b14ae644df8e3fcc990f84c9585b4ecb9617e26833fb70babd447c606
|
||||
DIST nvidia-settings-340.98.tar.bz2 1549627 SHA256 6ee6c8d7a86f03696ce0464dccd8a01a4f04b732989ae2658dee3c5b9cff9a0f SHA512 dc1dc39b59d591a2211dded2a6379da63f3678e38fa9f5e9ea7f0bb9368fc00085c50bad817d90f52d29f5247ac93350af0262d06bd32beef259234511e7c251 WHIRLPOOL 4bc4cbd883c86206dd03690f7c41778655b7db731c04f342713b1bd4b93f906fd5598f8c1afee8bb14236998940edd6497dc430add095961ba76735532176d40
|
||||
DIST nvidia-settings-361.45.11.tar.bz2 1571904 SHA256 f209f277d7164351c5c1310552b90a2b969f033dcccd98b3e40f95e959c7416f SHA512 c0ee694f645559e476a65e12894af3e49ea042f2928244ee5f34c3898ec6018c515ce24f3567a771df6f8056647a992af433896c30ab448d5d6df666d6c40e69 WHIRLPOOL 1d14c3a4ccd89d320b6940e031503c2442a8039a32f9720e3b378019eb5147208b8dbaea6b8e55534bb16917f49e89cd870188c6eba167b9fd30fdcc4ba119b8
|
||||
DIST nvidia-settings-364.19.tar.bz2 1573005 SHA256 fe8e9cc4d0ade9caaf51109e7e5287d1cbea111e73fae56f6c1b36ff8e55c370 SHA512 5274d908df284bc0ad2f7e6dd62c4052b2d0445e36dc84007bcb7c4e2382a8e9a4439e3507c229e96461031e1f3207911e659ddc73eea847052fa98b677f82c0 WHIRLPOOL dc93fc3635ff78b0a74d717a825ac630d38779f280c0d611fe43ff69adfda116c2363cb88cac1035d0169038ff4f82e51cd1b741cb5394e8e285cf5fe72ef046
|
||||
|
||||
@@ -0,0 +1,438 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=5
|
||||
|
||||
MULTILIB_COMPAT=( abi_x86_{32,64} )
|
||||
inherit eutils flag-o-matic linux-info linux-mod multilib nvidia-driver \
|
||||
portability toolchain-funcs unpacker user versionator udev
|
||||
|
||||
X86_NV_PACKAGE="NVIDIA-Linux-x86-${PV}"
|
||||
AMD64_NV_PACKAGE="NVIDIA-Linux-x86_64-${PV}"
|
||||
X86_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86-${PV}"
|
||||
AMD64_FBSD_NV_PACKAGE="NVIDIA-FreeBSD-x86_64-${PV}"
|
||||
|
||||
DESCRIPTION="NVIDIA X11 userspace libraries and applications"
|
||||
HOMEPAGE="http://www.nvidia.com/"
|
||||
SRC_URI="x86? ( http://us.download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}.run )
|
||||
amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}.run )
|
||||
amd64-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86_64/${PV}/${AMD64_FBSD_NV_PACKAGE}.tar.gz )
|
||||
x86-fbsd? ( http://us.download.nvidia.com/XFree86/FreeBSD-x86/${PV}/${X86_FBSD_NV_PACKAGE}.tar.gz )
|
||||
tools? ( ftp://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-${PV}.tar.bz2 )"
|
||||
|
||||
LICENSE="NVIDIA"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* ~amd64 ~x86 ~amd64-fbsd ~x86-fbsd"
|
||||
IUSE="acpi multilib kernel_FreeBSD kernel_linux +tools +X"
|
||||
RESTRICT="strip"
|
||||
EMULTILIB_PKG="true"
|
||||
|
||||
COMMON="app-eselect/eselect-opencl
|
||||
kernel_linux? ( >=sys-libs/glibc-2.6.1 )
|
||||
tools? (
|
||||
dev-libs/atk
|
||||
dev-libs/glib:2
|
||||
x11-libs/gdk-pixbuf
|
||||
x11-libs/gtk+:2
|
||||
x11-libs/libX11
|
||||
x11-libs/libXext
|
||||
x11-libs/pango[X]
|
||||
x11-libs/pangox-compat
|
||||
)
|
||||
X? (
|
||||
>=app-eselect/eselect-opengl-1.0.9
|
||||
)
|
||||
"
|
||||
DEPEND="${COMMON}"
|
||||
# Note: do not add !>nvidia-userspace-ver or !<nvidia-userspace-ver
|
||||
# because it would cause pkg_postrm to set the wrong opengl implementation
|
||||
RDEPEND="${COMMON}
|
||||
X? ( x11-libs/libXvMC )
|
||||
acpi? ( sys-power/acpid )
|
||||
tools? ( !media-video/nvidia-settings )
|
||||
X? (
|
||||
<x11-base/xorg-server-1.18.99:=
|
||||
x11-libs/libXvMC
|
||||
multilib? (
|
||||
>=x11-libs/libX11-1.6.2[abi_x86_32]
|
||||
>=x11-libs/libXext-1.3.2[abi_x86_32]
|
||||
)
|
||||
)"
|
||||
PDEPEND="X? ( >=x11-libs/libvdpau-0.3-r1 )"
|
||||
|
||||
REQUIRED_USE="tools? ( X )"
|
||||
QA_PREBUILT="opt/* usr/lib*"
|
||||
S="${WORKDIR}/"
|
||||
|
||||
pkg_pretend() {
|
||||
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
|
||||
|
||||
# Kernel features/options to check for
|
||||
CONFIG_CHECK="~ZONE_DMA ~MTRR ~SYSVIPC ~!LOCKDEP"
|
||||
use x86 && CONFIG_CHECK+=" ~HIGHMEM"
|
||||
|
||||
# Now do the above checks
|
||||
use kernel_linux && check_extra_config
|
||||
}
|
||||
|
||||
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 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)"
|
||||
# linux-mod_src_compile calls set_arch_to_kernel, which
|
||||
# sets the ARCH to x86 but NVIDIA's wrapping Makefile
|
||||
# expects x86_64 or i386 and then converts it to x86
|
||||
# later on in the build process
|
||||
BUILD_FIXES="ARCH=$(uname -m | sed -e 's/i.86/i386/')"
|
||||
fi
|
||||
|
||||
# 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
|
||||
use x86-fbsd && S="${WORKDIR}/${X86_FBSD_NV_PACKAGE}"
|
||||
use amd64-fbsd && S="${WORKDIR}/${AMD64_FBSD_NV_PACKAGE}"
|
||||
NV_DOC="${S}/doc"
|
||||
NV_OBJ="${S}/obj"
|
||||
NV_SRC="${S}/src"
|
||||
NV_MAN="${S}/x11/man"
|
||||
NV_X11="${S}/obj"
|
||||
NV_SOVER=1
|
||||
elif use kernel_linux; then
|
||||
NV_DOC="${S}"
|
||||
NV_OBJ="${S}"
|
||||
NV_SRC="${S}/kernel"
|
||||
NV_MAN="${S}"
|
||||
NV_X11="${S}"
|
||||
NV_SOVER=${PV}
|
||||
else
|
||||
die "Could not determine proper NVIDIA package"
|
||||
fi
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
if ! use kernel_FreeBSD; then
|
||||
cd "${S}"
|
||||
unpack_makeself
|
||||
else
|
||||
unpack ${A}
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# Please add a brief description for every added patch
|
||||
cat <<- EOF > "${S}"/nvidia.icd
|
||||
/usr/$(get_libdir)/libnvidia-opencl.so
|
||||
EOF
|
||||
|
||||
# Allow user patches so they can support RC kernels and whatever else
|
||||
epatch_user
|
||||
}
|
||||
|
||||
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 tools; then
|
||||
emake -C "${S}"/nvidia-settings-${PV}/src/libXNVCtrl clean
|
||||
emake -C "${S}"/nvidia-settings-${PV}/src/libXNVCtrl \
|
||||
AR="$(tc-getAR)" \
|
||||
CC="$(tc-getCC)" \
|
||||
RANLIB="$(tc-getRANLIB)" \
|
||||
libXNVCtrl.a
|
||||
emake -C "${S}"/nvidia-settings-${PV}/src \
|
||||
AR="$(tc-getAR)" \
|
||||
CC="$(tc-getCC)" \
|
||||
LD="$(tc-getCC)" \
|
||||
LIBDIR="$(get_libdir)" \
|
||||
NVML_ENABLED=0 \
|
||||
NV_USE_BUNDLED_LIBJANSSON=0 \
|
||||
NV_VERBOSE=1 \
|
||||
RANLIB="$(tc-getRANLIB)" \
|
||||
STRIP_CMD=true
|
||||
fi
|
||||
}
|
||||
|
||||
# Install nvidia library:
|
||||
# the first parameter is the library to install
|
||||
# the second parameter is the provided soversion
|
||||
# the third parameter is the target directory if its not /usr/lib
|
||||
donvidia() {
|
||||
# Full path to library minus SOVER
|
||||
MY_LIB="$1"
|
||||
|
||||
# SOVER to use
|
||||
MY_SOVER="$2"
|
||||
|
||||
# Where to install
|
||||
MY_DEST="$3"
|
||||
|
||||
if [[ -z "${MY_DEST}" ]]; then
|
||||
MY_DEST="/usr/$(get_libdir)"
|
||||
action="dolib.so"
|
||||
else
|
||||
exeinto ${MY_DEST}
|
||||
action="doexe"
|
||||
fi
|
||||
|
||||
# Get just the library name
|
||||
libname=$(basename $1)
|
||||
|
||||
# Install the library with the correct SOVER
|
||||
${action} ${MY_LIB}.${MY_SOVER} || \
|
||||
die "failed to install ${libname}"
|
||||
|
||||
# If SOVER wasn't 1, then we need to create a .1 symlink
|
||||
if [[ "${MY_SOVER}" != "1" ]]; then
|
||||
dosym ${libname}.${MY_SOVER} \
|
||||
${MY_DEST}/${libname}.1 || \
|
||||
die "failed to create ${libname} symlink"
|
||||
fi
|
||||
|
||||
# Always create the symlink from the raw lib to the .1
|
||||
dosym ${libname}.1 \
|
||||
${MY_DEST}/${libname} || \
|
||||
die "failed to create ${libname} symlink"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
if use kernel_linux; then
|
||||
# Add the aliases
|
||||
# This file is tweaked with the appropriate video group in
|
||||
# pkg_postinst, see bug #491414
|
||||
newins "${FILESDIR}"/nvidia-169.07 nvidia.conf
|
||||
|
||||
# Ensures that our device nodes are created when not using X
|
||||
exeinto "$(get_udevdir)"
|
||||
doexe "${FILESDIR}"/nvidia-udev.sh
|
||||
udev_newrules "${FILESDIR}"/nvidia.udev-rule 99-nvidia.rules
|
||||
|
||||
elif use kernel_FreeBSD; then
|
||||
if use x86-fbsd; then
|
||||
insinto /boot/modules
|
||||
doins "${S}/src/nvidia.kld" || die
|
||||
fi
|
||||
|
||||
exeinto /boot/modules
|
||||
doexe "${S}/src/nvidia.ko" || die
|
||||
fi
|
||||
|
||||
# NVIDIA kernel <-> userspace driver config lib
|
||||
donvidia ${NV_OBJ}/libnvidia-cfg.so ${NV_SOVER}
|
||||
|
||||
if use kernel_linux; then
|
||||
# NVIDIA video decode <-> CUDA
|
||||
donvidia ${NV_OBJ}/libnvcuvid.so ${NV_SOVER}
|
||||
fi
|
||||
|
||||
if use X; then
|
||||
# Xorg DDX driver
|
||||
insinto /usr/$(get_libdir)/xorg/modules/drivers
|
||||
doins ${NV_X11}/nvidia_drv.so || die "failed to install nvidia_drv.so"
|
||||
|
||||
# Xorg GLX driver
|
||||
donvidia ${NV_X11}/libglx.so ${NV_SOVER} \
|
||||
/usr/$(get_libdir)/opengl/nvidia/extensions
|
||||
|
||||
# XvMC driver
|
||||
dolib.a ${NV_X11}/libXvMCNVIDIA.a || \
|
||||
die "failed to install libXvMCNVIDIA.so"
|
||||
donvidia ${NV_X11}/libXvMCNVIDIA.so ${NV_SOVER}
|
||||
dosym libXvMCNVIDIA.so.${NV_SOVER} \
|
||||
/usr/$(get_libdir)/libXvMCNVIDIA_dynamic.so.1 || \
|
||||
die "failed to create libXvMCNVIDIA_dynamic.so symlink"
|
||||
fi
|
||||
|
||||
# OpenCL ICD for NVIDIA
|
||||
if use kernel_linux; then
|
||||
insinto /etc/OpenCL/vendors
|
||||
doins nvidia.icd
|
||||
donvidia ${NV_OBJ}/libnvidia-opencl.so ${NV_SOVER}
|
||||
fi
|
||||
|
||||
# Documentation
|
||||
dohtml ${NV_DOC}/html/*
|
||||
if use kernel_FreeBSD; then
|
||||
dodoc "${NV_DOC}/README"
|
||||
use X && doman "${NV_MAN}/nvidia-xconfig.1"
|
||||
use tools && 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"
|
||||
use X && doman "${NV_MAN}/nvidia-xconfig.1.gz"
|
||||
use tools && doman "${NV_MAN}/nvidia-settings.1.gz"
|
||||
doman "${NV_MAN}/nvidia-cuda-proxy-control.1.gz"
|
||||
fi
|
||||
|
||||
# Helper Apps
|
||||
exeinto /opt/bin/
|
||||
if use X; then
|
||||
doexe ${NV_OBJ}/nvidia-xconfig || die
|
||||
fi
|
||||
|
||||
if use kernel_linux ; then
|
||||
doexe ${NV_OBJ}/nvidia-debugdump || die
|
||||
doexe ${NV_OBJ}/nvidia-cuda-proxy-control || die
|
||||
doexe ${NV_OBJ}/nvidia-cuda-proxy-server || die
|
||||
doexe ${NV_OBJ}/nvidia-smi || die
|
||||
newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
|
||||
fi
|
||||
|
||||
dobin ${NV_OBJ}/nvidia-bug-report.sh
|
||||
|
||||
# Desktop entries for nvidia-settings
|
||||
if use tools ; then
|
||||
emake -C "${S}"/nvidia-settings-${PV}/src/ \
|
||||
DESTDIR="${D}" \
|
||||
LIBDIR="${D}/usr/$(get_libdir)" \
|
||||
PREFIX=/usr \
|
||||
NV_USE_BUNDLED_LIBJANSSON=0 \
|
||||
install
|
||||
|
||||
if use static-libs; then
|
||||
dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
|
||||
|
||||
insinto /usr/include/NVCtrl
|
||||
doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
|
||||
fi
|
||||
|
||||
# There is no icon in the FreeBSD tarball.
|
||||
use kernel_FreeBSD || \
|
||||
doicon ${NV_OBJ}/nvidia-settings.png
|
||||
|
||||
domenu "${FILESDIR}"/nvidia-settings.desktop
|
||||
|
||||
exeinto /etc/X11/xinit/xinitrc.d
|
||||
newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
|
||||
fi
|
||||
|
||||
if has_multilib_profile && use multilib ; 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"
|
||||
|
||||
# GNOME3 gnome-terminal redraw bug workaround,
|
||||
# see: https://bugzilla.gnome.org/show_bug.cgi?id=664858
|
||||
doenvd "${FILESDIR}/90mutter-disable-culling"
|
||||
}
|
||||
|
||||
src_install-libs() {
|
||||
local inslibdir=$(get_libdir)
|
||||
local GL_ROOT="/usr/$(get_libdir)/opengl/nvidia/lib"
|
||||
local CL_ROOT="/usr/$(get_libdir)/OpenCL/vendors/nvidia"
|
||||
local libdir=${NV_OBJ}
|
||||
|
||||
if use kernel_linux && has_multilib_profile && \
|
||||
[[ ${ABI} == "x86" ]] ; then
|
||||
libdir=${NV_OBJ}/32
|
||||
fi
|
||||
|
||||
if use X; then
|
||||
# The GLX libraries
|
||||
donvidia ${libdir}/libGL.so ${NV_SOVER} ${GL_ROOT}
|
||||
donvidia ${libdir}/libnvidia-glcore.so ${NV_SOVER}
|
||||
if use kernel_FreeBSD; then
|
||||
donvidia ${libdir}/libnvidia-tls.so ${NV_SOVER} ${GL_ROOT}
|
||||
else
|
||||
donvidia ${libdir}/tls/libnvidia-tls.so ${NV_SOVER} ${GL_ROOT}
|
||||
fi
|
||||
|
||||
# VDPAU
|
||||
donvidia ${libdir}/libvdpau_nvidia.so ${NV_SOVER}
|
||||
fi
|
||||
|
||||
# NVIDIA monitoring library
|
||||
if use kernel_linux ; then
|
||||
donvidia ${libdir}/libnvidia-ml.so ${NV_SOVER}
|
||||
fi
|
||||
|
||||
# CUDA & OpenCL
|
||||
if use kernel_linux; then
|
||||
donvidia ${libdir}/libcuda.so ${NV_SOVER}
|
||||
donvidia ${libdir}/libnvidia-compiler.so ${NV_SOVER}
|
||||
donvidia ${libdir}/libOpenCL.so 1.0.0 ${CL_ROOT}
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# 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
|
||||
|
||||
local videogroup="$(getent group video | cut -d ':' -f 3)"
|
||||
if [ -n "${videogroup}" ]; then
|
||||
sed -i -e "s:PACKAGE:${PF}:g" \
|
||||
-e "s:27:${videogroup}:" "${ROOT}"/etc/modprobe.d/nvidia.conf
|
||||
else
|
||||
eerror "Failed to determine the video group gid."
|
||||
die "Failed to determine the video group gid."
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Switch to the nvidia implementation
|
||||
use X && "${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
|
||||
"${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
|
||||
|
||||
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 "To use the NVIDIA GLX, run \"eselect opengl set nvidia\""
|
||||
elog
|
||||
elog "To use the NVIDIA CUDA/OpenCL, run \"eselect opencl set nvidia\""
|
||||
elog
|
||||
elog "NVIDIA has requested that any bug reports submitted have the"
|
||||
elog "output of /opt/bin/nvidia-bug-report.sh included."
|
||||
elog
|
||||
if ! use X; then
|
||||
elog "You have elected to not install the X.org driver. Along with"
|
||||
elog "this the OpenGL libraries, XvMC, and VDPAU libraries were not"
|
||||
elog "installed. Additionally, once the driver is loaded your card"
|
||||
elog "and fan will run at max speed which may not be desirable."
|
||||
elog "Use the 'nvidia-smi' init script to have your card and fan"
|
||||
elog "speed scale appropriately."
|
||||
elog
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_prerm() {
|
||||
use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
use X && "${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
|
||||
}
|
||||
@@ -235,6 +235,7 @@ src_install() {
|
||||
dohtml ${NV_DOC}/html/*
|
||||
if use kernel_FreeBSD; then
|
||||
dodoc "${NV_DOC}/README"
|
||||
use tools && doman "${NV_MAN}/nvidia-settings.1"
|
||||
use X && doman "${NV_MAN}/nvidia-xconfig.1"
|
||||
else
|
||||
# Docs
|
||||
@@ -243,6 +244,7 @@ src_install() {
|
||||
doman "${NV_MAN}/nvidia-smi.1.gz"
|
||||
doman "${NV_MAN}/nvidia-cuda-mps-control.1.gz"
|
||||
use X && doman "${NV_MAN}/nvidia-xconfig.1.gz"
|
||||
use tools && doman "${NV_MAN}/nvidia-settings.1.gz"
|
||||
fi
|
||||
|
||||
# Helper Apps
|
||||
@@ -270,9 +272,40 @@ src_install() {
|
||||
newinitd "${FILESDIR}/nvidia-smi.init" nvidia-smi
|
||||
fi
|
||||
|
||||
exeinto /usr/bin/
|
||||
doexe ${NV_OBJ}/nvidia-bug-report.sh
|
||||
if use tools; then
|
||||
emake -C "${S}"/nvidia-settings-${PV}/src/ \
|
||||
DESTDIR="${D}" \
|
||||
LIBDIR="${D}/usr/$(get_libdir)" \
|
||||
PREFIX=/usr \
|
||||
NV_USE_BUNDLED_LIBJANSSON=0 \
|
||||
install
|
||||
|
||||
if use static-libs; then
|
||||
dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a
|
||||
|
||||
insinto /usr/include/NVCtrl
|
||||
doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h
|
||||
fi
|
||||
|
||||
insinto /usr/share/nvidia/
|
||||
doins nvidia-application-profiles-${PV}-key-documentation
|
||||
|
||||
insinto /etc/nvidia
|
||||
newins \
|
||||
nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc
|
||||
|
||||
# There is no icon in the FreeBSD tarball.
|
||||
use kernel_FreeBSD || \
|
||||
doicon ${NV_OBJ}/nvidia-settings.png
|
||||
|
||||
domenu "${FILESDIR}"/nvidia-settings.desktop
|
||||
|
||||
exeinto /etc/X11/xinit/xinitrc.d
|
||||
newexe "${FILESDIR}"/95-nvidia-settings-r1 95-nvidia-settings
|
||||
|
||||
fi
|
||||
|
||||
dobin ${NV_OBJ}/nvidia-bug-report.sh
|
||||
if has_multilib_profile && use multilib ; then
|
||||
local OABI=${ABI}
|
||||
for ABI in $(get_install_abis) ; do
|
||||
|
||||
Reference in New Issue
Block a user