diff options
author | Eric Hameleers <alien@slackware.com> | 2021-07-03 15:49:42 +0000 |
---|---|---|
committer | Eric Hameleers <alien@slackware.com> | 2021-07-03 15:49:42 +0000 |
commit | afbfe7cf790aada5181671e9334bc66c1f06f704 (patch) | |
tree | a76e7dcaf0031831883422820a00c1563ee3b9b4 | |
parent | 441cdd72be9cbeace5c7bf9612e705fb4b4ce596 (diff) | |
download | asb-afbfe7cf790aada5181671e9334bc66c1f06f704.tar.gz asb-afbfe7cf790aada5181671e9334bc66c1f06f704.tar.xz |
nvidia-kernel: refreshed for Slackware-current
-rwxr-xr-x | nvidia-kernel/build/nvidia-kernel.SlackBuild | 49 |
1 files changed, 23 insertions, 26 deletions
diff --git a/nvidia-kernel/build/nvidia-kernel.SlackBuild b/nvidia-kernel/build/nvidia-kernel.SlackBuild index 239c9c93..fa30f42c 100755 --- a/nvidia-kernel/build/nvidia-kernel.SlackBuild +++ b/nvidia-kernel/build/nvidia-kernel.SlackBuild @@ -3,7 +3,8 @@ # Slackware build script for nvidia-kernel # Copyright 2007-2011 Heinz Wiesinger, Amsterdam, The Netherlands -# Copyright 2012-2015 Edward W. Koenig, Vancouver, WA, USA +# Copyright 2012-2019 Edward W. Koenig, Vancouver, WA, USA +# Updates cpyright 2020 Lenard Spencer, Orlando, FL, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -28,8 +29,8 @@ # see nvidia-driver/changelog.txt PRGNAM=nvidia-kernel -VERSION=${VERSION:-352.79} -BUILD=${BUILD:-2} +VERSION=${VERSION:-460.73.01} +BUILD=${BUILD:-1} TAG=${TAG:-alien} KERNEL=${KERNEL:-$(uname -r)} @@ -41,20 +42,17 @@ PKGVER=${VERSION}_$(echo $KERNEL | tr - _) if [ -z "$ARCH" ]; then case "$( uname -m )" in - i?86) ARCH=i486 ;; + i?86) ARCH=i586 ;; arm*) ARCH=arm ;; *) ARCH=$( uname -m ) ;; esac fi -if [ "$ARCH" = "i486" ]; then - TARGET="x86" - SRCSUFFIX="" -elif [ "$ARCH" = "i686" ]; then - TARGET="x86" - SRCSUFFIX="" -elif [ "$ARCH" = "x86_64" ]; then +if [ "$ARCH" = "x86_64" ]; then TARGET="x86_64" +else + echo "$ARCH is not supported." + exit 1 fi unset ARCH @@ -72,6 +70,14 @@ cd $TMP || exit 1 rm -rf $SRCNAM sh $CWD/$SRCNAM.run --extract-only || exit 1 cd $SRCNAM || exit 1 + +# Compatibility for linux 5.13: +if [ "$(echo $KERNEL |cut -d. -f1,2)" == "5.13" ]; then + cd kernel + cat $CWD/patches/kernel-5.13-use-atomic-state.patch | patch -p1 --verbose || exit 1 + cd - 1>/dev/null +fi + chown -R root:root . find -L . \ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \ @@ -79,30 +85,21 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; -# Nvidia removed uvm module from 32-bit (cd kernel || exit 1 make SYSSRC=$KERNELPATH module || exit 1 - if [ "$ARCH" = "x86_64" ]; then - cd uvm - make SYSSRC=$KERNELPATH module || exit 1 - fi ) mkdir -p $PKG/lib/modules/$KERNEL/kernel/drivers/video install -m 0664 kernel/nvidia.ko $PKG/lib/modules/$KERNEL/kernel/drivers/video/ -if [ "$ARCH" = "x86_64" ]; then - install -m 0664 kernel/uvm/nvidia-uvm.ko $PKG/lib/modules/$KERNEL/kernel/drivers/video/ +install -m 0664 kernel/nvidia-modeset.ko $PKG/lib/modules/$KERNEL/kernel/drivers/video/ +install -m 0664 kernel/nvidia-drm.ko $PKG/lib/modules/$KERNEL/kernel/drivers/video/ +# 32-bit doesn't have nvidia-uvm +if [ "$TARGET" = "x86_64" ]; then + install -m 0664 kernel/nvidia-uvm.ko $PKG/lib/modules/$KERNEL/kernel/drivers/video/ fi -# Make sure the X is specified to automagically load the -# correct driver, since I always forget. You can remove -# this file if you have an equivilent entry in /etc/X11/xorg.d - mkdir -p $PKG/usr/share/X11/xorg.conf.d/ cat $TMP/$SRCNAM/nvidia-drm-outputclass.conf > $PKG/usr/share/X11/xorg.conf.d/10-nvidia.conf -# OutputClass not available until xorg > 1.16 so fix this up a bit -sed -i "s|OutputClass|Device|" $PKG/usr/share/X11/xorg.conf.d/10-nvidia.conf -sed -i "s|Match|# Match|" $PKG/usr/share/X11/xorg.conf.d/10-nvidia.conf mkdir -p $PKG/usr/doc/$PRGNAM-$PKGVER cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$PKGVER/$PRGNAM.SlackBuild @@ -112,4 +109,4 @@ cat $CWD/slack-desc > $PKG/install/slack-desc sed "s%@KERNEL@%$KERNEL%" $CWD/doinst.sh > $PKG/install/doinst.sh cd $PKG -/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$PKGVER-$TARGET-$BUILD$TAG.${PKGTYPE:-tgz} +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$PKGVER-$TARGET-$BUILD$TAG.${PKGTYPE:-txz} |