system/nvidia-driver: Updated for version 260.19.29.

Signed-off-by: dsomero <xgizzmo@slackbuilds.org>
This commit is contained in:
Heinz Wiesinger 2011-01-09 12:44:22 -05:00 committed by Robby Workman
parent a6112d0b9b
commit a7d9001ae2
4 changed files with 97 additions and 85 deletions

View File

@ -33,7 +33,6 @@ and remove all links created by nvidia-switch before.
If you forget to do this, you'll have to do the switch manually, or xorg
won't work on next startup. Here are the affected files:
/usr/lib/libGL.so.1.2
/usr/include/GL/{gl.h glx.h glxext.h glext.h}
/usr/lib/xorg/modules/extensions/{libglx.so libglx.la}
This also requires the nvidia-kernel and libvdpau package from SlackBuilds.org.

View File

@ -2,7 +2,7 @@
# Slackware build script for nvidia-driver
# Copyright 2007-2010 Heinz Wiesinger, Amsterdam, The Netherlands
# Copyright 2007-2011 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@ -25,7 +25,7 @@
# Thanks to Robby Workman for suggestions to improve this script.
PRGNAM=nvidia-driver
VERSION=256.44
VERSION=260.19.29
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@ -43,14 +43,17 @@ PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
TARGET="x86"
SRCSUFFIX=""
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
TARGET="x86"
SRCSUFFIX=""
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
TARGET="x86_64"
SRCSUFFIX="-no-compat32"
LIBDIRSUFFIX="64"
@ -67,6 +70,12 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf nvidia-installer-$VERSION
tar xvf $CWD/nvidia-installer-$VERSION.tar.bz2
rm -rf nvidia-settings-$VERSION
tar xvf $CWD/nvidia-settings-$VERSION.tar.bz2
rm -rf nvidia-xconfig-$VERSION
tar xvf $CWD/nvidia-xconfig-$VERSION.tar.bz2
rm -rf $SRCNAM
sh $CWD/$SRCNAM.run --extract-only
cd $SRCNAM
@ -74,9 +83,8 @@ chown -R root:root .
chmod -R u+w,go+r-w,a-s .
mkdir -p $PKG/usr/lib$LIBDIRSUFFIX/xorg/modules/{drivers,extensions} \
$PKG/usr/include/{CL,cuda,GL} $PKG/etc/OpenCL/vendors/ \
$PKG/usr/lib$LIBDIRSUFFIX/{tls,vdpau} $PKG/usr/{bin,man/man1,sbin} \
$PKG/usr/share/{applications,pixmaps}
$PKG/etc/OpenCL/vendors/ $PKG/usr/lib$LIBDIRSUFFIX/{tls,vdpau} \
$PKG/usr/{bin,man/man1,sbin} $PKG/usr/share/{applications,pixmaps}
install -m 755 nvidia_drv.so $PKG/usr/lib$LIBDIRSUFFIX/xorg/modules/drivers/
install -m 755 libglx.so.$VERSION \
@ -94,32 +102,14 @@ install -m 755 libOpenCL.so.1.0.0 $PKG/usr/lib$LIBDIRSUFFIX/
install -m 755 libnvidia-cfg.so.$VERSION $PKG/usr/lib$LIBDIRSUFFIX/
install -m 755 libnvidia-compiler.so.$VERSION $PKG/usr/lib$LIBDIRSUFFIX/
for i in glxext.h glext.h gl.h glx.h; do
install -m 644 $i $PKG/usr/include/GL/$i-nvidia
done
for i in cuda.h cudaGL.h cudaVDPAU.h; do
install -m 644 $i $PKG/usr/include/cuda/$i
done
for i in cl.h cl_gl.h cl_platform.h; do
install -m 644 $i $PKG/usr/include/CL/$i
done
install -m 644 nvidia.icd $PKG/etc/OpenCL/vendors/
# # Next come the apps
for i in nvidia-installer nvidia-xconfig nvidia-settings \
nvidia-smi nvidia-bug-report.sh; do
for i in nvidia-smi nvidia-bug-report.sh; do
install -m 755 $i $PKG/usr/bin/
done
install -m 644 nvidia-settings.desktop $PKG/usr/share/applications/
install -m 644 nvidia-settings.png $PKG/usr/share/pixmaps/
for i in *.1.gz; do
install -m 644 $i $PKG/usr/man/man1/$i
done
install -m 644 nvidia-smi.1.gz $PKG/usr/man/man1/
# symlinks
cd $PKG/usr/lib$LIBDIRSUFFIX
@ -144,6 +134,52 @@ cd $PKG/usr/lib$LIBDIRSUFFIX/xorg/modules
ln -sf libnvidia-wfb.so.$VERSION libnvidia-wfb.so.1
cd -
# Compiling nvidia-installer from source
cd $TMP/nvidia-installer-$VERSION
chown -R root:root .
chmod -R u+w,go+r-w,a-s .
CFLAGS="$SLKCFLAGS" \
LDFLAGS="-lz" \
make
install -m 755 _out/Linux_$TARGET/nvidia-installer $PKG/usr/bin/
install -m 644 _out/Linux_$TARGET/nvidia-installer.1.gz $PKG/usr/man/man1/
cd -
# Compiling nvidia-settings from source
cd $TMP/nvidia-settings-$VERSION
chown -R root:root .
chmod -R u+w,go+r-w,a-s .
cd src/libXNVCtrl
make clean
CFLAGS="$SLKCFLAGS" \
make
cd ../../
CFLAGS="$SLKCFLAGS" \
make
install -m 755 _out/Linux_$TARGET/nvidia-settings $PKG/usr/bin/
install -m 644 _out/Linux_$TARGET/nvidia-settings.1.gz $PKG/usr/man/man1/
install -m 644 doc/nvidia-settings.desktop $PKG/usr/share/applications/
install -m 644 doc/nvidia-settings.png $PKG/usr/share/pixmaps/
cd ../
# Compiling nvidia-xconfig from source
cd $TMP/nvidia-xconfig-$VERSION
chown -R root:root .
chmod -R u+w,go+r-w,a-s .
CFLAGS="$SLKCFLAGS" \
make
install -m 755 _out/Linux_$TARGET/nvidia-xconfig $PKG/usr/bin/
install -m 644 _out/Linux_$TARGET/nvidia-xconfig.1.gz $PKG/usr/man/man1/
cd -
# Self written bash script which I use to switch between nvidia and nv.
# It is now also used by doinst.sh to switch to the nvidia-driver right
# after installation.
@ -158,8 +194,11 @@ sed -i "s|__UTILS_PATH__|/usr/bin|" \
$PKG/usr/share/applications/nvidia-settings.desktop
sed -i "s|__PIXMAP_PATH__|/usr/share/pixmaps|" \
$PKG/usr/share/applications/nvidia-settings.desktop
sed -i "s|__NVIDIA_SETTINGS_DESKTOP_CATEGORIES__|Application;Settings;|" \
$PKG/usr/share/applications/nvidia-settings.desktop
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cd $TMP/$SRCNAM
cp -a LICENSE NVIDIA_Changelog README.txt html $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README.Slackware
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild

View File

@ -1,10 +1,22 @@
PRGNAM="nvidia-driver"
VERSION="256.44"
VERSION="260.19.29"
HOMEPAGE="http://www.nvidia.com"
DOWNLOAD="ftp://download.nvidia.com/XFree86/Linux-x86/256.44/NVIDIA-Linux-x86-256.44.run"
MD5SUM="cb61b75a305e78291db313dae39c625b"
DOWNLOAD_x86_64="ftp://download.nvidia.com/XFree86/Linux-x86_64/256.44/NVIDIA-Linux-x86_64-256.44-no-compat32.run"
MD5SUM_x86_64="19fdd60520df7f50ae7dbb24e473872b"
DOWNLOAD="ftp://download.nvidia.com/XFree86/Linux-x86/260.19.29/NVIDIA-Linux-x86-260.19.29.run \
ftp://download.nvidia.com/XFree86/nvidia-installer/nvidia-installer-260.19.29.tar.bz2 \
ftp://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-260.19.29.tar.bz2 \
ftp://download.nvidia.com/XFree86/nvidia-xconfig/nvidia-xconfig-260.19.29.tar.bz2"
MD5SUM="e982a05a85c68130acfe1d48086250e3 \
743cdfc95507f19ad71b80dbfe7826e9 \
39e66889a185c220ac582b38e05dfb6b \
4417c24d1187abec65ed42812f16a505"
DOWNLOAD_x86_64="ftp://download.nvidia.com/XFree86/Linux-x86_64/260.19.29/NVIDIA-Linux-x86_64-260.19.29-no-compat32.run \
ftp://download.nvidia.com/XFree86/nvidia-installer/nvidia-installer-260.19.29.tar.bz2 \
ftp://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-260.19.29.tar.bz2 \
ftp://download.nvidia.com/XFree86/nvidia-xconfig/nvidia-xconfig-260.19.29.tar.bz2"
MD5SUM_x86_64="0583668d86f7318d99def3ed3e1cc4bc \
743cdfc95507f19ad71b80dbfe7826e9 \
39e66889a185c220ac582b38e05dfb6b \
4417c24d1187abec65ed42812f16a505"
MAINTAINER="Heinz Wiesinger"
EMAIL="pprkut@liwjatan.at"
APPROVED="dsomero"

View File

@ -1,6 +1,6 @@
#!/bin/sh
# Copyright 2007-2009 Heinz Wiesinger, Amsterdam, The Netherlands
# Copyright 2007-2011 Heinz Wiesinger, Amsterdam, The Netherlands
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@ -20,7 +20,7 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
# nvidia-switch utility 0.9.0
# nvidia-switch utility 0.9.1
#
# A tool to switch between nvidia-binary-driver and stock xorg-driver
# if both are installed in parallel.
@ -70,27 +70,18 @@ setup_link(){
incs(){
cd "$INC"
if [ "$2" = "cleanup" ]; then
CMD="mv"
THREE="$1"
else
CMD="ln -s"
THREE="$2"
fi
for i in glxext.h glext.h glx.h gl.h; do
if [ -L "$i" ]; then
rm -f "$i"
$CMD "$i-$THREE" "$i"
mv "$i-xorg" "$i"
elif [ -e "$i" ]; then
if [ "$2" = "cleanup" ]; then
rm -f "$i-$1"
else
mv "$i" "$i-$1"
ln -s "$i-$THREE" "$i"
if [ -e "$i-xorg" ]; then
rm -f "$i-xorg"
fi
else
$CMD "$i-$THREE" "$i"
if [ -e "$i-xorg" ]; then
mv "$i-xorg" "$i"
fi
fi
done
@ -259,23 +250,6 @@ check(){
fi
}
check_includes(){
if [ "$1" = "cleanup" ]; then
cleanup=""
cleanup2="exist"
else
cleanup="link"
cleanup2=""
fi
for i in glext.h glxext.h gl.h glx.h; do
check $INC $i $cleanup
check $INC $i-nvidia
check $INC $i-xorg $cleanup2
echo ""
done
}
check_glx(){
if [ "$1" = "xorg" ]; then
xorg="exist"
@ -350,8 +324,6 @@ check_gl(){
}
nvidia_check(){
check_includes
check_gl "nvidia"
check_glx
@ -360,8 +332,6 @@ nvidia_check(){
}
xorg_check(){
check_includes
check_gl
check_glx "xorg"
@ -370,8 +340,6 @@ xorg_check(){
}
cleanup_check(){
check_includes "cleanup"
check_gl
check_glx "cleanup"
@ -384,7 +352,7 @@ nvidia(){
echo "Make sure the nvidia driver is ENABLED in /etc/X11/xorg.conf."
echo "Otherwise, this may lead to improperly working drivers."
incs "xorg" "nvidia"
incs
lib_nvidia
libgl_nvidia
libs "nvidia"
@ -402,23 +370,17 @@ xorg(){
echo "Make sure the nvidia driver is DISABLED in /etc/X11/xorg.conf."
echo "Otherwise, this may lead to improperly working drivers."
libs_basic
libgl_xorg
libs ""
if [ "$1" = "cleanup" ]; then
incs "xorg" "cleanup"
libglx_xorg ""
else
incs "xorg" "xorg"
libglx_xorg "xorg"
fi
libs_basic
libgl_xorg
libs ""
if [ "$1" = "cleanup" ]; then
libglx_xorg ""
else
libglx_xorg "xorg"
fi
LD_NVIDIA="${LIB}/libGL.so.1.2"
nvidia_ldconfig $LD_NVIDIA "xorg"
LD_NVIDIA="${LIB}/libGL.so.1.2"
nvidia_ldconfig $LD_NVIDIA "xorg"
}
usage(){