mirror of
https://github.com/pentoo/pentoo-overlay
synced 2026-04-27 01:03:18 +02:00
nvidia-drivers: fixes from upstream and submitted upstream
This commit is contained in:
parent
8a90ca0f17
commit
b63f4ddcc3
5 changed files with 35 additions and 104 deletions
|
|
@ -1,9 +1,7 @@
|
|||
AUX 256.35-unified-arch.patch 1380 RMD160 2612cad105f442d4232b99e3054124e8037860bb SHA1 d82433c0b3520c87e05f1013a59b243ec65ebe97 SHA256 5e84bb51e0f9b3ceba270d53ad2a739dc534861df9acd6ab6852670f5a1357d7
|
||||
AUX 295.33-unified-arch.patch 1512 RMD160 6ea7cb06cb9bb363307b854070c4f9de6364b73c SHA1 8815c380240d899c0b4416d299a5769ae18f9be4 SHA256 c0bd056c2d1db22c8b020f26debb7642426e9fd509b643b4823ac61da1a3c26c
|
||||
AUX 99-nvidia.rules 182 RMD160 e980b7220f39b860c2170f0a3ac8b34d1a9802d9 SHA1 e28281fe9460357cced829b77e7c645f8116fcac SHA256 b2f00f871af7e5ff0d0958a4d8c1ae1264bd3d6757cbc3038f05dbb90415c3fb
|
||||
AUX 99-nvidia.rules 182 RMD160 ed5bf84617bf858b6cbcf987793f814a981cbbf0 SHA1 add1b5a09d898121a3c8ba6b311347947750c7e7 SHA256 c96e763077b5b54d33715364018edac83dd77ee0369a619cad60d85bca3e9203
|
||||
AUX nvidia-169.07 639 RMD160 8baddb6fd1bf7f0e2688870a78e8ace051d62e3f SHA1 b30487ba2a24a6b1359d1fd831eeb1705060953c SHA256 a8c4860f008d53776fda7a17b59524f271236559af688e9a2c9845cbbcba1577
|
||||
AUX nvidia_control.sh 31 RMD160 6ca0a5092792c25ca498dca44783b34f09e11e41 SHA1 ffd668f3081c84d7563914cc7d9a9eff88f00abb SHA256 b31dcb0f4c761108173c7a7df47d8690c5ed514fd859a4de83da45f9d51b4a27
|
||||
DIST NVIDIA-FreeBSD-x86-295.33.tar.gz 32039170 RMD160 903f6c98fe6a682675d06cabea51013c57d8e360 SHA1 9543ad0c7d604742fb0a030b7b46d8e3e58fd14c SHA256 e3f8052fdac78defafcef495febea2a77f820f2c4c9ecbe47fb92bf630321afc
|
||||
DIST NVIDIA-Linux-x86-295.33.run 34675369 RMD160 a595dfbfdff7ff4b058e574ef1ef26d55afa8a6b SHA1 0168ee6c29d6841429cb9b58283a5061e497cbc2 SHA256 90a866c9c2f3904bc25b7a5829f8b40a419e60a79ad13c980b48d3bf89625a47
|
||||
DIST NVIDIA-Linux-x86_64-295.33.run 58435170 RMD160 3e406b9db7ffa2bc0f0984f37e74bfba290f7cf6 SHA1 56fb5bc4f5f2498fe8227f2d48a3ba0bb93885d5 SHA256 4e939bac1ebc03c6439969d638540b99900b0fe4e4799b4186e5ff9521d37b73
|
||||
EBUILD nvidia-drivers-295.33.ebuild 18282 RMD160 cb68b396da99f7a37b8a0f0e65cc5c64cffb0667 SHA1 4fb40e64100ce6343b636a54093673abed82fe85 SHA256 3e70af6f4072ce21ae35b247325a9b2defc3a6b9fed82b45f4357d5bf3d1cb17
|
||||
EBUILD nvidia-drivers-295.33.ebuild 18261 RMD160 6e5dd085ba9ae3cd089c2212d1d1a4873cc2807f SHA1 2a41677ee9b4cec83a92dcc2947bccf367ea30d2 SHA256 fe9ee9e9ebc4dc68188316d13d8e3957e6afaf4a0b8945cbb3d91e4df3c061dc
|
||||
|
|
|
|||
|
|
@ -1,31 +0,0 @@
|
|||
Add support for the 'x86' unified kernel arch in conftest.sh
|
||||
|
||||
--- NVIDIA-Linux-x86-256.25/kernel/conftest.sh
|
||||
+++ NVIDIA-Linux-x86-256.25/kernel/conftest.sh
|
||||
@@ -101,7 +101,7 @@ build_cflags() {
|
||||
|
||||
if [ "$OUTPUT" != "$SOURCES" ]; then
|
||||
MACH_CFLAGS="-I$HEADERS/asm-$ARCH/mach-default"
|
||||
- if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]; then
|
||||
+ if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" -o "$ARCH" = "x86" ]; then
|
||||
MACH_CFLAGS="$MACH_CFLAGS -I$HEADERS/asm-x86/mach-default"
|
||||
MACH_CFLAGS="$MACH_CFLAGS -I$SOURCES/arch/x86/include/asm/mach-default"
|
||||
fi
|
||||
@@ -110,7 +110,7 @@ build_cflags() {
|
||||
fi
|
||||
else
|
||||
MACH_CFLAGS="-I$HEADERS/asm/mach-default"
|
||||
- if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]; then
|
||||
+ if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" -o "$ARCH" = "x86" ]; then
|
||||
MACH_CFLAGS="$MACH_CFLAGS -I$HEADERS/asm-x86/mach-default"
|
||||
MACH_CFLAGS="$MACH_CFLAGS -I$SOURCES/arch/x86/include/asm/mach-default"
|
||||
fi
|
||||
@@ -121,7 +121,7 @@ build_cflags() {
|
||||
|
||||
CFLAGS="$BASE_CFLAGS $MACH_CFLAGS $OUTPUT_CFLAGS -I$HEADERS $AUTOCONF_CFLAGS"
|
||||
|
||||
- if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]; then
|
||||
+ if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" -o "$ARCH" = "x86" ]; then
|
||||
CFLAGS="$CFLAGS -I$SOURCES/arch/x86/include"
|
||||
fi
|
||||
if [ -n "$BUILD_PARAMS" ]; then
|
||||
|
|
@ -1,31 +0,0 @@
|
|||
Add support for the 'x86' unified kernel arch in conftest.sh
|
||||
|
||||
--- NVIDIA-Linux-x86-295.33/kernel/conftest.sh
|
||||
+++ NVIDIA-Linux-x86-295.33/kernel/conftest.sh
|
||||
@@ -101,7 +101,7 @@
|
||||
|
||||
if [ "$OUTPUT" != "$SOURCES" ]; then
|
||||
MACH_CFLAGS="-I$HEADERS/asm-$ARCH/mach-default"
|
||||
- if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]; then
|
||||
+ if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" -o "$ARCH" = "x86" ]; then
|
||||
MACH_CFLAGS="$MACH_CFLAGS -I$HEADERS/asm-x86/mach-default"
|
||||
MACH_CFLAGS="$MACH_CFLAGS -I$SOURCES/arch/x86/include/asm/mach-default"
|
||||
elif [ "$ARCH" = "ARMv7" ]; then
|
||||
@@ -112,7 +112,7 @@
|
||||
fi
|
||||
else
|
||||
MACH_CFLAGS="-I$HEADERS/asm/mach-default"
|
||||
- if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]; then
|
||||
+ if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" -o "$ARCH" = "x86" ]; then
|
||||
MACH_CFLAGS="$MACH_CFLAGS -I$HEADERS/asm-x86/mach-default"
|
||||
MACH_CFLAGS="$MACH_CFLAGS -I$SOURCES/arch/x86/include/asm/mach-default"
|
||||
elif [ "$ARCH" = "ARMv7" ]; then
|
||||
@@ -125,7 +125,7 @@
|
||||
|
||||
CFLAGS="$BASE_CFLAGS $MACH_CFLAGS $OUTPUT_CFLAGS -I$HEADERS $AUTOCONF_CFLAGS"
|
||||
|
||||
- if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]; then
|
||||
+ if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" -o "$ARCH" = "x86" ]; then
|
||||
CFLAGS="$CFLAGS -I$SOURCES/arch/x86/include -I$SOURCES/arch/x86/include/generated"
|
||||
elif [ "$ARCH" = "ARMv7" ]; then
|
||||
CFLAGS="$CFLAGS -I$SOURCES/arch/arm/include -I$SOURCES/arch/arm/include/generated"
|
||||
|
|
@ -1,3 +1,3 @@
|
|||
ACTION=="add", DEVPATH=="/module/nvidia", SUBSYSTEM=="module", RUN+="/usr/bin/nvidia-smi"
|
||||
ACTION=="add", DEVPATH=="/module/nvidia", SUBSYSTEM=="module", RUN+="/opt/bin/nvidia-smi"
|
||||
|
||||
ACTION=="remove", DEVPATH=="/module/nvidia", SUBSYSTEM=="module", RUN+="nvidia_control.sh"
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/nvidia-drivers-295.33.ebuild,v 1.1 2012/03/23 16:17:12 cardoe Exp $
|
||||
# $Header: /var/cvsroot/gentoo-x86/x11-drivers/nvidia-drivers/nvidia-drivers-295.33.ebuild,v 1.2 2012/03/26 18:11:12 cardoe Exp $
|
||||
|
||||
EAPI="2"
|
||||
|
||||
|
|
@ -19,7 +19,7 @@ SRC_URI="x86? ( http://us.download.nvidia.com/XFree86/Linux-x86/${PV}/${X86_NV_P
|
|||
LICENSE="NVIDIA"
|
||||
SLOT="0"
|
||||
KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
|
||||
IUSE="acpi custom-cflags gtk multilib pentoo kernel_linux"
|
||||
IUSE="acpi custom-cflags gtk multilib kernel_linux"
|
||||
RESTRICT="strip"
|
||||
EMULTILIB_PKG="true"
|
||||
|
||||
|
|
@ -213,6 +213,11 @@ 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/')"
|
||||
mtrr_check
|
||||
lockdep_check
|
||||
fi
|
||||
|
|
@ -283,14 +288,6 @@ src_prepare() {
|
|||
-e 's:-Wsign-compare::g' \
|
||||
"${NV_SRC}"/Makefile.kbuild
|
||||
|
||||
#updated patch stoled from https://bugs.gentoo.org/show_bug.cgi?id=376527 due to bitrot on a FAILED BUILD
|
||||
epatch "${FILESDIR}"/295.33-unified-arch.patch
|
||||
|
||||
# Fix building with Linux 3.3.x wrt #408841
|
||||
sed -i \
|
||||
-e '/CFLAGS="$CFLAGS/s:-I$SOURCES/arch/x86/include:& -I$OUTPUT/arch/x86/include/generated:' \
|
||||
kernel/conftest.sh || die
|
||||
|
||||
# If you set this then it's your own fault when stuff breaks :)
|
||||
use custom-cflags && sed -i "s:-O:${CFLAGS}:" "${NV_SRC}"/Makefile.*
|
||||
|
||||
|
|
@ -333,15 +330,15 @@ src_install() {
|
|||
"${WORKDIR}"/nvidia
|
||||
insinto /etc/modprobe.d
|
||||
newins "${WORKDIR}"/nvidia nvidia.conf || die
|
||||
# udev rule for people who use their nvidia for cuda/opencl only
|
||||
if use pentoo; then
|
||||
insinto /lib/udev
|
||||
doins "${FILESDIR}"/nvidia_control.sh
|
||||
fowners root:${VIDEOGROUP} /lib/udev/nvidia_control.sh
|
||||
fperms 0750 /lib/udev/nvidia_control.sh
|
||||
insinto /lib/udev/rules.d
|
||||
doins "${FILESDIR}"/99-nvidia.rules
|
||||
fi
|
||||
|
||||
#closes bug #376527 for missing device nodes when not using nvidia for X
|
||||
insinto /lib/udev
|
||||
doins "${FILESDIR}"/nvidia_control.sh
|
||||
fowners root:${VIDEOGROUP} /lib/udev/nvidia_control.sh
|
||||
fperms 0750 /lib/udev/nvidia_control.sh
|
||||
insinto /lib/udev/rules.d
|
||||
doins "${FILESDIR}"/99-nvidia.rules
|
||||
|
||||
elif use x86-fbsd; then
|
||||
insinto /boot/modules
|
||||
doins "${WORKDIR}/${NV_PACKAGE}/src/nvidia.kld" || die
|
||||
|
|
@ -429,14 +426,14 @@ src_install() {
|
|||
|
||||
# Helper Apps
|
||||
exeinto /opt/bin/
|
||||
dobin ${NV_EXEC}/nvidia-xconfig || die
|
||||
dobin ${NV_EXEC}/nvidia-debugdump || die
|
||||
doexe ${NV_EXEC}/nvidia-xconfig || die
|
||||
doexe ${NV_EXEC}/nvidia-debugdump || die
|
||||
if use gtk; then
|
||||
dobin ${NV_EXEC}/nvidia-settings || die
|
||||
doexe ${NV_EXEC}/nvidia-settings || die
|
||||
fi
|
||||
dobin ${NV_EXEC}/nvidia-bug-report.sh || die
|
||||
doexe ${NV_EXEC}/nvidia-bug-report.sh || die
|
||||
if use kernel_linux; then
|
||||
dobin ${NV_EXEC}/nvidia-smi || die
|
||||
doexe ${NV_EXEC}/nvidia-smi || die
|
||||
fi
|
||||
|
||||
# Desktop entries for nvidia-settings
|
||||
|
|
@ -519,9 +516,7 @@ src_install-libs() {
|
|||
}
|
||||
|
||||
pkg_preinst() {
|
||||
if use kernel_linux; then
|
||||
linux-mod_pkg_postinst
|
||||
fi
|
||||
use kernel_linux && linux-mod_pkg_preinst
|
||||
|
||||
# Clean the dynamic libGL stuff's home to ensure
|
||||
# we dont have stale libs floating around
|
||||
|
|
@ -535,13 +530,11 @@ pkg_preinst() {
|
|||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if use kernel_linux; then
|
||||
linux-mod_pkg_postinst
|
||||
fi
|
||||
use kernel_linux && linux-mod_pkg_postinst
|
||||
|
||||
# Switch to the nvidia implementation
|
||||
eselect opengl set --use-old nvidia
|
||||
eselect opencl set --use-old nvidia
|
||||
"${ROOT}"/usr/bin/eselect opengl set --use-old nvidia
|
||||
"${ROOT}"/usr/bin/eselect opencl set --use-old nvidia
|
||||
|
||||
echo
|
||||
elog "You must be in the video group to use the NVIDIA device"
|
||||
|
|
@ -575,9 +568,11 @@ pkg_postinst() {
|
|||
fi
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
if use kernel_linux; then
|
||||
linux-mod_pkg_postrm
|
||||
fi
|
||||
eselect opengl set --use-old xorg-x11
|
||||
pkg_prerm() {
|
||||
"${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
use kernel_linux && linux-mod_pkg_postrm
|
||||
"${ROOT}"/usr/bin/eselect opengl set --use-old xorg-x11
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue