diff options
author | 2008-05-08 21:05:06 -0400 | |
---|---|---|
committer | 2008-05-08 21:05:06 -0400 | |
commit | 2aa4f753fc24d8b6bc050f48ab6f36bedbe3ec3f (patch) | |
tree | 17dfee6c94fd58d84eebbd6ea8cf2db11d902315 | |
parent | Add the beta nvidia-driver from upstream (diff) | |
download | halcy0n-2aa4f753fc24d8b6bc050f48ab6f36bedbe3ec3f.tar.gz halcy0n-2aa4f753fc24d8b6bc050f48ab6f36bedbe3ec3f.tar.bz2 halcy0n-2aa4f753fc24d8b6bc050f48ab6f36bedbe3ec3f.zip |
This is in the main tree now, so removing from here
-rw-r--r-- | x11-drivers/nvidia-drivers/Manifest | 10 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/files/NVIDIA_glx-defines.patch | 11 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/files/NVIDIA_glx-glheader.patch | 13 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/files/NVIDIA_i2c-hwmon.patch | 17 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/files/libGL.la-r2 | 32 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/files/nvidia | 40 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/files/nvidia-169.07 | 14 | ||||
-rw-r--r-- | x11-drivers/nvidia-drivers/nvidia-drivers-173.08.ebuild | 509 |
8 files changed, 0 insertions, 646 deletions
diff --git a/x11-drivers/nvidia-drivers/Manifest b/x11-drivers/nvidia-drivers/Manifest deleted file mode 100644 index f257f0b..0000000 --- a/x11-drivers/nvidia-drivers/Manifest +++ /dev/null @@ -1,10 +0,0 @@ -AUX NVIDIA_glx-defines.patch 437 RMD160 7cc38de0663c51d9e3718f02035a940a5d31e53c SHA1 eef9bcae32d4e00133b205e27ce766488d5c6cdb SHA256 0007f3d962edb87da4788ce58869679c1b10f28223a6bf1c23696fede57305da -AUX NVIDIA_glx-glheader.patch 380 RMD160 ee9a10cfbed10d5711f58a80553ffebeea5853bf SHA1 72abfedb9dfb7dae7dc23a5701d3e00282fef2c0 SHA256 f630e24067bf6199a64f8fe8c5d6fc158cb4b153bda65ffc3f97b36a9cb08faf -AUX NVIDIA_i2c-hwmon.patch 669 RMD160 812e7081d8f31116031edb0d8eb9c570b09caf89 SHA1 b0f132851cb1a7d8bdd9f205b4f187fcaf9e87d8 SHA256 0aaa05e1167bd722e00fcb90bd9853413ceb4ce3b00b308c314330f47c82f21a -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 -DIST NVIDIA-FreeBSD-x86-173.08.tar.gz 15735811 RMD160 44c9844105f2c29f725316d51d385fd025fb85ae SHA1 53b6e783c181c83f817cd3f7a794584875a6d074 SHA256 bf77023363065fe1ba090847d8bdcb37f5c0a984cd7ce28ec522594b30a74ba1 -DIST NVIDIA-Linux-x86-173.08-pkg0.run 11489268 RMD160 e82578df8fdf08d615e6c03d9b2f41730e694358 SHA1 319cb2d6a82249922b42c187ad6f0e25b5691a0b SHA256 931dadcf7aacdb6378f03d5bb25b9a133e9f6119774bde27bfd11456acc5eb8d -DIST NVIDIA-Linux-x86_64-173.08-pkg2.run 17930205 RMD160 25b9d94f7a94a2e4ea5885f5717453454958d914 SHA1 09726ccfde1d2e543659be7464e5f0e45154def6 SHA256 d5bd59993971afe334e47704b43a057355b59104da6c522eca935da8b894bdf0 -EBUILD nvidia-drivers-173.08.ebuild 14893 RMD160 73064944c08320c69aff48b8f6da12218169bb92 SHA1 cea9bba43634756faf4ea4df85c66a30bdbfdd1d SHA256 795c7ae48538dc81c6b5ad7d99acaf98f0ed28040017d01596f52575b280a077 diff --git a/x11-drivers/nvidia-drivers/files/NVIDIA_glx-defines.patch b/x11-drivers/nvidia-drivers/files/NVIDIA_glx-defines.patch deleted file mode 100644 index da9933f..0000000 --- a/x11-drivers/nvidia-drivers/files/NVIDIA_glx-defines.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -ur NVIDIA_GLX-1.0-4191/usr/include/GL/glx.h NVIDIA_GLX-1.0-4191.new/usr/include/GL/glx.h ---- NVIDIA_GLX-1.0-4191/usr/include/GL/glx.h 2002-12-09 21:26:55.000000000 +0100 -+++ NVIDIA_GLX-1.0-4191.new/usr/include/GL/glx.h 2003-01-30 18:20:23.000000000 +0100 -@@ -39,6 +39,7 @@ - typedef XID GLXPixmap; - typedef XID GLXDrawable; - typedef XID GLXPbuffer; -+typedef XID GLXPbufferSGIX; - typedef XID GLXWindow; - typedef XID GLXFBConfigID; - diff --git a/x11-drivers/nvidia-drivers/files/NVIDIA_glx-glheader.patch b/x11-drivers/nvidia-drivers/files/NVIDIA_glx-glheader.patch deleted file mode 100644 index e0393e1..0000000 --- a/x11-drivers/nvidia-drivers/files/NVIDIA_glx-glheader.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- usr/include/GL/gl.g.orig 2004-07-17 19:56:59.789410584 +1000 -+++ usr/include/GL/gl.h 2004-07-17 19:59:08.844791184 +1000 -@@ -66,6 +66,10 @@ - typedef double GLclampd; - typedef void GLvoid; - -+/* Patching for some better defines in the global system */ -+#ifndef GL_GLEXT_LEGACY -+#include <GL/glext.h> -+#endif - - /*************************************************************/ - diff --git a/x11-drivers/nvidia-drivers/files/NVIDIA_i2c-hwmon.patch b/x11-drivers/nvidia-drivers/files/NVIDIA_i2c-hwmon.patch deleted file mode 100644 index f9fdc27..0000000 --- a/x11-drivers/nvidia-drivers/files/NVIDIA_i2c-hwmon.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- - usr/src/nv/nv-i2c.c | 4 ++++ - 1 file changed, 4 insertions(+) - ---- NVIDIA-Linux-x86-1.0-9746-pkg1.orig/usr/src/nv/nv-i2c.c 2006-12-15 19:32:58.000000000 +0100 -+++ NVIDIA-Linux-x86-1.0-9746-pkg1/usr/src/nv/nv-i2c.c 2007-01-06 16:50:48.000000000 +0100 -@@ -250,6 +250,10 @@ void* NV_API_CALL nv_i2c_add_adapter(nv_ - snprintf(pI2cAdapter->name, I2C_NAME_SIZE, - "NVIDIA i2c adapter %u at %x:%02x.%u", port, nv->bus, - nv->slot, PCI_FUNC(nvl->dev->devfn)); -+#ifdef I2C_CLASS_HWMON -+ if (port == 2) -+ pI2cAdapter->class = I2C_CLASS_HWMON; -+#endif - - // add our data to the structure - pI2cAdapter->algo_data = (void *)nv; diff --git a/x11-drivers/nvidia-drivers/files/libGL.la-r2 b/x11-drivers/nvidia-drivers/files/libGL.la-r2 deleted file mode 100644 index 863d184..0000000 --- a/x11-drivers/nvidia-drivers/files/libGL.la-r2 +++ /dev/null @@ -1,32 +0,0 @@ -# libGL.la - a libtool library file -# Generated by ltmain.sh - GNU libtool 1.4 (1.920 2001/04/24 23:26:18) -# -# Please DO NOT delete this file! -# It is necessary for linking the library. - -# The name that we can dlopen(3). -dlname='libGL.so.1' - -# Names of this library. -library_names='libGL.so.${PV} libGL.so.1 libGL.so' - -# The name of the static archive. -old_library='' - -# Libraries that this one depends upon. -dependency_libs='-L/usr/${libdir} -lm -lX11 -lXext -ldl' - -# Version information for libGL. -current=${ver1} -age=${ver2} -revision=${ver3} - -# Is this an already installed library? -installed=yes - -# Files to dlopen/dlpreopen -dlopen='' -dlpreopen='' - -# Directory that this library needs to be installed in: -libdir='/usr/${libdir}' diff --git a/x11-drivers/nvidia-drivers/files/nvidia b/x11-drivers/nvidia-drivers/files/nvidia deleted file mode 100644 index 7cf0f7c..0000000 --- a/x11-drivers/nvidia-drivers/files/nvidia +++ /dev/null @@ -1,40 +0,0 @@ -# Nvidia drivers support -alias char-major-195 nvidia -alias /dev/nvidiactl char-major-195 - -# To tweak the driver the following options can be used, note that -# you should be careful, as it could cause instability!! For more -# options see /usr/share/doc/PACKAGE/README -# -# To enable Side Band Adressing: NVreg_EnableAGPSBA=1 -# -# To enable Fast Writes: NVreg_EnableAGPFW=1 -# -# To enable both for instance, uncomment following line: -# -#options nvidia NVreg_EnableAGPSBA=1 NVreg_EnableAGPFW=1 -# If you have a mobile chip, you may need to enable this option -# if you have hard lockups when starting X. -# -# See: Appendix I. Configuring your laptop -# In /usr/share/doc/PACKAGE/README for full details -# -# Choose the appropriate value for NVreg_Mobile from the table: -# Value Meaning -# ---------- -------------------------------------------------- -# 0xFFFFFFFF let the kernel module autodetect the correct value -# 1 Dell laptops -# 2 non-Compal Toshiba laptops -# 3 all other laptops -# 4 Compal Toshiba laptops -# 5 Gateway laptops -# -#options nvidia NVreg_SoftEDIDs=0 NVreg_Mobile=3 - - -# !!! SECURITY WARNING !!! -# DO NOT MODIFY OR REMOVE THE DEVICE FILE RELATED OPTIONS UNLESS YOU KNOW -# WHAT YOU ARE DOING. -# ONLY ADD TRUSTED USERS TO THE VIDEO GROUP, THESE USERS MAY BE ABLE TO CRASH, -# COMPROMISE, OR IRREPARABLY DAMAGE THE MACHINE. -options nvidia NVreg_DeviceFileMode=432 NVreg_DeviceFileUID=0 NVreg_DeviceFileGID=VIDEOGID NVreg_ModifyDeviceFiles=1 diff --git a/x11-drivers/nvidia-drivers/files/nvidia-169.07 b/x11-drivers/nvidia-drivers/files/nvidia-169.07 deleted file mode 100644 index a96b0cd..0000000 --- a/x11-drivers/nvidia-drivers/files/nvidia-169.07 +++ /dev/null @@ -1,14 +0,0 @@ -# Nvidia drivers support -alias char-major-195 nvidia -alias /dev/nvidiactl char-major-195 - -# To tweak the driver the following options can be used, note that -# you should be careful, as it could cause instability!! For more -# options see /usr/share/doc/PACKAGE/README -# -# !!! SECURITY WARNING !!! -# DO NOT MODIFY OR REMOVE THE DEVICE FILE RELATED OPTIONS UNLESS YOU KNOW -# WHAT YOU ARE DOING. -# ONLY ADD TRUSTED USERS TO THE VIDEO GROUP, THESE USERS MAY BE ABLE TO CRASH, -# COMPROMISE, OR IRREPARABLY DAMAGE THE MACHINE. -options nvidia NVreg_DeviceFileMode=432 NVreg_DeviceFileUID=0 NVreg_DeviceFileGID=VIDEOGID NVreg_ModifyDeviceFiles=1 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-173.08.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-173.08.ebuild deleted file mode 100644 index f40a4c0..0000000 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-173.08.ebuild +++ /dev/null @@ -1,509 +0,0 @@ -# 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/nvidia-drivers-169.12.ebuild,v 1.2 2008/04/18 02:10:25 vapier Exp $ - -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? ( http://us.download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_PACKAGE}-pkg0.run ) - amd64? ( http://us.download.nvidia.com/XFree86/Linux-x86_64/${PV}/${AMD64_NV_PACKAGE}-pkg2.run ) - x86-fbsd? ( http://us.download.nvidia.com/freebsd/${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 - multilib? ( app-emulation/emul-linux-x86-xlibs ) - kernel_FreeBSD? ( !media-video/nvidia-freebsd ) - !app-emulation/emul-linux-x86-nvidia - !x11-drivers/nvidia-legacy-drivers" -DEPEND="${COMMON} - kernel_linux? ( virtual/linux-sources ) - app-admin/eselect-opengl" -RDEPEND="${COMMON} - kernel_linux? ( virtual/modutils ) - media-libs/mesa - acpi? ( sys-power/acpid )" -PDEPEND="gtk? ( media-video/nvidia-settings )" - -QA_TEXTRELS_x86="usr/lib/libXvMCNVIDIA.so.${PV} - usr/lib/opengl/nvidia/no-tls/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/tls/libnvidia-tls.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libnvidia-cfg.so.${PV} - usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so - usr/lib/xorg/modules/drivers/nvidia_drv.so - usr/lib/libcuda.so.${PV}" - -QA_TEXTRELS_x86_fbsd="boot/modules/nvidia.ko - usr/lib/opengl/nvidia/lib/libGL.so.1 - usr/lib/opengl/nvidia/lib/libGLcore.so.1 - usr/lib/opengl/nvidia/lib/libnvidia-cfg.so.1 - usr/lib/opengl/nvidia/no-tls/libnvidia-tls.so.1 - usr/lib/opengl/nvidia/extensions/libglx.so - usr/lib/xorg/modules/drivers/nvidia_drv.so" - -QA_TEXTRELS_amd64="usr/lib32/opengl/nvidia/tls/libnvidia-tls.so.${PV} - usr/lib32/opengl/nvidia/no-tls/libnvidia-tls.so.${PV} - usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib32/opengl/nvidia/lib/libnvidia-cfg.so.${PV} - usr/lib32/libcuda.so.${PV}" - -QA_EXECSTACK_x86="usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so" - -QA_EXECSTACK_amd64="usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/xorg/modules/drivers/nvidia_drv.so - usr/lib64/libXvMCNVIDIA.so.${PV} - usr/lib64/opengl/nvidia/tls/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/no-tls/libnvidia-tls.so.${PV} - usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libnvidia-cfg.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so - usr/bin/nvidia-xconfig" - -QA_WX_LOAD_x86="usr/lib/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib/opengl/nvidia/lib/libGL.so.${PV} - usr/lib/opengl/nvidia/extensions/libglx.so" - -QA_WX_LOAD_amd64="usr/lib32/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib32/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/lib/libGLcore.so.${PV} - usr/lib64/opengl/nvidia/lib/libGL.so.${PV} - usr/lib64/opengl/nvidia/extensions/libglx.so" - -if use x86; then - PKG_V="-pkg0" - NV_PACKAGE="${X86_NV_PACKAGE}" -elif use amd64; then - PKG_V="-pkg2" - NV_PACKAGE="${AMD64_NV_PACKAGE}" -elif use x86-fbsd; then - PKG_V="" - NV_PACKAGE="${X86_FBSD_NV_PACKAGE}" -fi - -S="${WORKDIR}/${NV_PACKAGE}${PKG_V}" - -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 -} - -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 -} - -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}/usr/src/nv)" - BUILD_PARAMS="IGNORE_CC_MISMATCH=yes V=1 SYSSRC=${KV_DIR} \ - SYSOUT=${KV_OUT_DIR} HOST_CC=$(tc-getBUILD_CC)" - mtrr_check - paravirt_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_SRC="${S}/src" - elif use kernel_linux; then - NV_DOC="${S}/usr/share/doc" - NV_EXEC="${S}/usr/bin" - NV_SRC="${S}/usr/src/nv" - 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 "${WORKDIR}" - bash "${DISTDIR}"/${NV_PACKAGE}${PKG_V}.run --extract-only - else - unpack ${A} - fi - - # Patches go below here, add brief description - cd "${S}" - use x86-fbsd && cd doc - - # Use the correct defines to make gtkglext build work - epatch "${FILESDIR}"/NVIDIA_glx-defines.patch - # Use some more sensible gl headers and make way for new glext.h - epatch "${FILESDIR}"/NVIDIA_glx-glheader.patch - - # allow on board sensors to work with lm_sensors - if use kernel_linux; then - epatch "${FILESDIR}"/NVIDIA_i2c-hwmon.patch - fi - - if use kernel_linux; then - # Quiet down warnings the user does not need to see - sed -i \ - -e 's:-Wpointer-arith::g' \ - -e 's:-Wsign-compare::g' \ - "${NV_SRC}"/Makefile.kbuild - - # If you set this then it's your own fault when stuff breaks :) - use custom-cflags && sed -i "s:-O:${CFLAGS}:" 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() { - local MLTEST=$(type dyn_unpack) - - cd "${S}" - - 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" ] || die "nvidia missing in FILESDIR" - sed -e 's:PACKAGE:'${PF}':g' \ - -e 's:VIDEOGID:'${VIDEOGROUP}':' "${FILESDIR}"/nvidia-169.07 > \ - "${WORKDIR}"/nvidia - insinto /etc/modules.d - doins "${WORKDIR}"/nvidia || 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 - - if has_multilib_profile ; then - local OABI=${ABI} - for ABI in $(get_install_abis) ; do - src_install-libs - done - ABI=${OABI} - unset OABI - elif use amd64 ; then - src_install-libs lib32 $(get_multilibdir) - src_install-libs lib $(get_libdir) - - rm -rf "${D}"/usr/$(get_multilibdir)/opengl/nvidia/include - rm -rf "${D}"/usr/$(get_multilibdir)/opengl/nvidia/extensions - else - src_install-libs - fi - - is_final_abi || return 0 - - # Documentation - dodoc "${NV_DOC}"/{XF86Config.sample,Copyrights} - dohtml "${NV_DOC}"/html/* - if use x86-fbsd; then - dodoc "${NV_DOC}/README" - else - # Docs - newdoc "${NV_DOC}/README.txt" README - dodoc "${NV_DOC}/NVIDIA_Changelog" - fi - - # Helper Apps - dobin ${NV_EXEC}/nvidia-xconfig || die - dobin ${NV_EXEC}/nvidia-bug-report.sh || die -} - -# 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 - dosym ${libname}.$3 $1/${libname} - - [[ $3 != "1" ]] && dosym ${libname}.$3 $1/${libname}.1 -} - -src_install-libs() { - local pkglibdir=lib - local inslibdir=$(get_libdir) - - if [[ ${#} -eq 2 ]] ; then - pkglibdir=${1} - inslibdir=${2} - elif has_multilib_profile && [[ ${ABI} == "x86" ]] ; then - pkglibdir=lib32 - fi - - local usrpkglibdir=usr/${pkglibdir} - local libdir=usr/X11R6/${pkglibdir} - local drvdir=${libdir}/modules/drivers - local extdir=${libdir}/modules/extensions - local incdir=usr/include/GL - local sover=${PV} - local NV_ROOT="/usr/${inslibdir}/opengl/nvidia" - local NO_TLS_ROOT="${NV_ROOT}/no-tls" - local TLS_ROOT="${NV_ROOT}/tls" - local X11_LIB_DIR="/usr/${inslibdir}/xorg" - - if 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 - - 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 -} - -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 -} - -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 most 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." - echo -} - -want_tls() { - # For uclibc or anything non glibc, return false - has_version sys-libs/glibc || return 1 - - # Old versions of glibc were lt/no-tls only - has_version '<sys-libs/glibc-2.3.2' && return 1 - - 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 -} - -pkg_postrm() { - if use kernel_linux; then - linux-mod_pkg_postrm - fi - eselect opengl set --use-old xorg-x11 -} |