diff options
author | Doug Goldstein <cardoe@gentoo.org> | 2008-12-18 18:27:41 +0000 |
---|---|---|
committer | Doug Goldstein <cardoe@gentoo.org> | 2008-12-18 18:27:41 +0000 |
commit | f4b5653b624a7f853c4c710a0b6112bd7cb173e1 (patch) | |
tree | f07327fe4ed196159e37b0c98c6c8da6c474c35e | |
parent | Automated update of use.local.desc (diff) | |
download | historical-f4b5653b624a7f853c4c710a0b6112bd7cb173e1.tar.gz historical-f4b5653b624a7f853c4c710a0b6112bd7cb173e1.tar.bz2 historical-f4b5653b624a7f853c4c710a0b6112bd7cb173e1.zip |
Add eblits in the same fashion as sys-libs/glibc that contain commonly used code between all the different versions of nvidia-drivers
Package-Manager: portage-2.1.6.1/cvs/Linux 2.6.27-gentoo-r2 x86_64
-rw-r--r-- | x11-drivers/nvidia-drivers/ChangeLog | 9 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/Manifest | 13 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/files/eblits/donvidia.eblit | 21 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/files/eblits/mtrr_check.eblit | 19 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/files/eblits/paravirt_check.eblit | 20 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/files/eblits/src_install-libs.eblit | 116 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/files/eblits/want_tls.eblit | 33 |
7 files changed, 226 insertions, 5 deletions
diff --git a/x11-drivers/nvidia-drivers/ChangeLog b/x11-drivers/nvidia-drivers/ChangeLog index b2eb56e83985..95d1ce3f197d 100644 --- a/x11-drivers/nvidia-drivers/ChangeLog +++ b/x11-drivers/nvidia-drivers/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for x11-drivers/nvidia-drivers # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/ChangeLog,v 1.118 2008/12/17 01:00:23 cardoe Exp $ +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/ChangeLog,v 1.119 2008/12/18 18:27:41 cardoe Exp $ + + 18 Dec 2008; Doug Goldstein <cardoe@gentoo.org> + +files/eblits/donvidia.eblit, +files/eblits/mtrr_check.eblit, + +files/eblits/paravirt_check.eblit, +files/eblits/src_install-libs.eblit, + +files/eblits/want_tls.eblit: + Add eblits in the same fashion as sys-libs/glibc that contain commonly + used code between all the different versions of nvidia-drivers *nvidia-drivers-71.86.07 (17 Dec 2008) diff --git a/x11-drivers/nvidia-drivers/Manifest b/x11-drivers/nvidia-drivers/Manifest index 997b48b7d62b..123350895d07 100644 --- a/x11-drivers/nvidia-drivers/Manifest +++ b/x11-drivers/nvidia-drivers/Manifest @@ -9,6 +9,11 @@ AUX NVIDIA_i2c-hwmon.patch 669 RMD160 812e7081d8f31116031edb0d8eb9c570b09caf89 S AUX NVIDIA_kernel-169.12-2286310.diff 22442 RMD160 20d6473e2762d3fc5e65ccfeb529540ac50b1a71 SHA1 7e445a84b9d73ce7d6febbb04b1ebf8fee6d5ba2 SHA256 4cbd64d7606cbc759f903adabf050911da2a80415f1cef592efe5f2ecaaf2d4d AUX NVIDIA_kernel-173.08-2404825.diff 17473 RMD160 6ca02231d56a5f52275bff12b0f894b9992fe800 SHA1 b14349449aa59feb48b328e673d4e9efa6161948 SHA256 a1704f2acfdb59772df36e9677f792508e446b21f4465b743c9f1ed3bfc457d2 AUX NVIDIA_kernel-173.14.05-2419292.diff 18598 RMD160 f6874805f482776a47c87e18d9fa8545bb73b9bf SHA1 3941162a0f353a92b9c2db5ae10511ff73efbc92 SHA256 ad6c2da9a508fae7b8728628e1980319dc3c7f62694c34a80ddc0343a1361aec +AUX eblits/donvidia.eblit 695 RMD160 e83869944dfce52a62423412e6c22b4e4468bc3c SHA1 0c877bbe4402c2845f8f4353c9f2d8086d364fbc SHA256 d404dd7e5657d83ccf3687720fb978030a3716e47957fb8bb80dea3ed57b3672 +AUX eblits/mtrr_check.eblit 629 RMD160 a7f9090f419faa17e74b81346c4bb019a7700138 SHA1 edb9ba38de929a9a0406408701a454f514fe78ed SHA256 ae1b8fb37985fc3e42a4a776779b3fe3d70be2c826df5c3f99d03ba7209ca0b1 +AUX eblits/paravirt_check.eblit 667 RMD160 1f139facd25c4bdd75287c0f3097dd776e55da38 SHA1 9bc4f49678d8d53986f6e5264220e18c0b4b1457 SHA256 af909ba17ac471afbc900e42fd97b29892f5549993ff05bba6010fb7fd76c840 +AUX eblits/src_install-libs.eblit 3472 RMD160 3e00b70ea45c7fdf6ec6a48c121f56b8faae15da SHA1 ec4cb37556284846a24fcdd54cff1a4cd0ccc539 SHA256 6f301de374736cec316794bf1935a15de025b3c505981f24e06e3df75818ad6a +AUX eblits/want_tls.eblit 952 RMD160 4f33e6aef50032665d68654af1cfdbd9abc54195 SHA1 cf96ae8227913439526f0ab2ec984e5be6f3a1fd SHA256 e5ce767a2e9a5c0682e764b9ba42a20e721a093f4c0626605570c8b5e3afecd0 AUX libGL.la-r2 733 RMD160 479612ab30c04ca0683c7d9edaf9ab3de783e4a9 SHA1 88656b7e7234ade4f5564373fd6eb5c040167655 SHA256 4856e7a2c31763ade41c93a395f3e80a2705ac2ab4dbd73e5161cdba132f407b AUX nvidia 1510 RMD160 ca0d0e5375109d9edf682d9bdda743b7c693e4d4 SHA1 85cf9bff167dcc063ba61426523973e9598085f7 SHA256 b193cc3f6d6f39138720a2282d9f161fc8f2e8a15bc43d183a30eb879add06c5 AUX nvidia-169.07 639 RMD160 8baddb6fd1bf7f0e2688870a78e8ace051d62e3f SHA1 b30487ba2a24a6b1359d1fd831eeb1705060953c SHA256 a8c4860f008d53776fda7a17b59524f271236559af688e9a2c9845cbbcba1577 @@ -89,12 +94,12 @@ EBUILD nvidia-drivers-177.82.ebuild 15036 RMD160 5981d6636a23cf6a3afc0d3344170c9 EBUILD nvidia-drivers-71.86.06.ebuild 14138 RMD160 2f713727f51ed4fdcf8e94fa629b8892fe3266b1 SHA1 9ac9d3ccae0978327e782c1ba52f506326d565dc SHA256 ea06b4cf57144afe3a08d0a266e0beced197aa53b88464e76d2f4cde9d62c123 EBUILD nvidia-drivers-71.86.07.ebuild 14187 RMD160 9a52a2e665e9058b08762fde679f588d8c39da2a SHA1 b07f989ff64ea6fe59e1ec741e344ab1f08ca672 SHA256 f2adda772dad5338caebf0d882ea4eb6a6af1c6fe550e5866847d7e64233fe32 EBUILD nvidia-drivers-96.43.07.ebuild 14475 RMD160 35dc001755181bdda3e4d0c5be97879d579736a1 SHA1 c5b52dffd298e87c4cd78118bf5ada1f2af770d5 SHA256 07b82b5b503e61212104927ad79e4f75d082e39c0df807800bfaeb9e1874a98d -MISC ChangeLog 26710 RMD160 6a7bc951cf3767c5d65294607db7195dadade08c SHA1 929f22b1e5d22cc1e0030667d054cc751ab607a5 SHA256 fc0ccd805b0d663fcffb69f8ae0781bd40e6ee94db29de9e5e823ae8fb73a55b +MISC ChangeLog 27071 RMD160 5d110f076b1072b4c692c38135b4c0e9fb496e36 SHA1 17cff7a8426669b69e0c859f4d06b6c11b38985c SHA256 fbf4cc4ac6073bf5577e421a6c4eaa95430a1fc7166777b4e3541e4c54274e55 MISC metadata.xml 453 RMD160 4e3149a2f84395713739fb8706ac956a03f581e6 SHA1 7631f2686bf4b40f814aa19e99eb94493659cab2 SHA256 ebf76bf6d7f6494241970099567b3292bb1e10f98ebdb9045ecdf92a44599ae6 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) -iEYEARECAAYFAklITz0ACgkQoeSe8B0zEfz7/gCeMPdK0DSmfFrbbRS5VyV/N+94 -m40An1KWQEER63P2n7gPdFvOxTh+jECv -=CJGt +iEYEARECAAYFAklKli4ACgkQoeSe8B0zEfwfqQCeOCsesBO2vLGMV+/PyGrD4ZfD +pAkAnjtR8tbcCLm0AQi5edeQuk4w6kE0 +=WWzG -----END PGP SIGNATURE----- diff --git a/x11-drivers/nvidia-drivers/files/eblits/donvidia.eblit b/x11-drivers/nvidia-drivers/files/eblits/donvidia.eblit new file mode 100644 index 000000000000..75b39cfbd9ff --- /dev/null +++ b/x11-drivers/nvidia-drivers/files/eblits/donvidia.eblit @@ -0,0 +1,21 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/files/eblits/donvidia.eblit,v 1.1 2008/12/18 18:27:35 cardoe Exp $ + +# 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) + + # libnvidia-cfg.so is no longer supplied in lib32; step over it gracefully + if [ -e $2.$3 ] ; then + doexe $2.$3 + dosym ${libname}.$3 $1/${libname} + [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 + fi +} diff --git a/x11-drivers/nvidia-drivers/files/eblits/mtrr_check.eblit b/x11-drivers/nvidia-drivers/files/eblits/mtrr_check.eblit new file mode 100644 index 000000000000..b14df34b1094 --- /dev/null +++ b/x11-drivers/nvidia-drivers/files/eblits/mtrr_check.eblit @@ -0,0 +1,19 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/files/eblits/mtrr_check.eblit,v 1.1 2008/12/18 18:27:35 cardoe Exp $ + +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 +} diff --git a/x11-drivers/nvidia-drivers/files/eblits/paravirt_check.eblit b/x11-drivers/nvidia-drivers/files/eblits/paravirt_check.eblit new file mode 100644 index 000000000000..39c6c5755de2 --- /dev/null +++ b/x11-drivers/nvidia-drivers/files/eblits/paravirt_check.eblit @@ -0,0 +1,20 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/files/eblits/paravirt_check.eblit,v 1.1 2008/12/18 18:27:35 cardoe Exp $ + +paravirt_check() { + ebegin "Checking for Paravirtualized guest support" + linux_chkconfig_present PARAVIRT + + if [[ $? -eq 0 ]]; then + eerror "Please disable PARAVIRT in your kernel config, found at:" + eerror + eerror " Processor type and features" + eerror " [*] Paravirtualized guest support" + eerror + eerror "or XEN support" + eerror + eerror "and recompile your kernel .." + die "PARAVIRT support detected!" + fi +} diff --git a/x11-drivers/nvidia-drivers/files/eblits/src_install-libs.eblit b/x11-drivers/nvidia-drivers/files/eblits/src_install-libs.eblit new file mode 100644 index 000000000000..e48d11ce96d3 --- /dev/null +++ b/x11-drivers/nvidia-drivers/files/eblits/src_install-libs.eblit @@ -0,0 +1,116 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distribnuted under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/files/eblits/src_install-libs.eblit,v 1.1 2008/12/18 18:27:35 cardoe Exp $ +# +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 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} + + donvidia ${NV_ROOT}/lib ${usrpkglibdir}/libnvidia-cfg.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 + # Install the .la file for libtool, to prevent e.g. bug #176423 + [ -f "${FILESDIR}/libGL.la-r2" ] || die "libGL.la-r2 missing in FILESDIR" + 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 ${libdir}/modules/libnvidia-wfb.so.${sover} ]] && \ + newexe ${libdir}/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 + + #cuda + if [[ -f usr/include/cuda/cuda.h ]]; then + dodir /usr/include/cuda + insinto /usr/include/cuda + doins usr/include/cuda/*.h + + if [[ -f usr/${pkglibdir}/libcuda.so.${PV} ]]; then + dolib.so usr/${pkglibdir}/libcuda.so.${PV} + dosym libcuda.so.${PV} /usr/${inslibdir}/libcuda.so.1 + dosym libcuda.so.1 /usr/${inslibdir}/libcuda.so + fi + fi +} diff --git a/x11-drivers/nvidia-drivers/files/eblits/want_tls.eblit b/x11-drivers/nvidia-drivers/files/eblits/want_tls.eblit new file mode 100644 index 000000000000..4debb85d3a98 --- /dev/null +++ b/x11-drivers/nvidia-drivers/files/eblits/want_tls.eblit @@ -0,0 +1,33 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/files/eblits/want_tls.eblit,v 1.1 2008/12/18 18:27:35 cardoe Exp $ + +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 + + if use x86 ; then + case ${CHOST/-*} in + i486|i586|i686) ;; + *) return 1 ;; + esac + fi + + # If we've got nptl, we've got tls + built_with_use --missing true 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 +} |