summaryrefslogtreecommitdiffstats
path: root/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild
diff options
context:
space:
mode:
Diffstat (limited to 'system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild')
-rw-r--r--system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild48
1 files changed, 35 insertions, 13 deletions
diff --git a/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild b/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild
index 0ca0f5b0a3..ff10dd4520 100644
--- a/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild
+++ b/system/nvidia-legacy390-kernel/nvidia-legacy390-kernel.SlackBuild
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
# Slackware build script for nvidia-legacy390-kernel
@@ -25,12 +25,13 @@
# Thanks to Robby Workman for suggestions to improve this script.
-# see nvidia-driver/changelog.txt
+cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=nvidia-legacy390-kernel
-VERSION=${VERSION:-390.129}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-390.157}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
+PKGTYPE=${PKGTYPE:-tgz}
KERNEL=${KERNEL:-$(uname -r)}
KERNELPATH=${KERNELPATH:-/lib/modules/${KERNEL}/build}
@@ -49,21 +50,24 @@ fi
if [ "$ARCH" = "i586" ]; then
TARGET="x86"
- SRCSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
TARGET="x86"
- SRCSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
TARGET="x86_64"
fi
-unset ARCH
-
SRCNAM=NVIDIA-Linux-$TARGET-${VERSION}
-CWD=$(pwd)
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PRGNAM-$PKGVER-$ARCH-$BUILD$TAG.$PKGTYPE"
+ exit 0
+fi
+
TMP=${TMP:-/tmp/SBo}
-PKG=${PKG:-$TMP/package-$PRGNAM}
+PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
rm -rf $PKG
@@ -79,8 +83,26 @@ 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 {} \;
-(cd kernel || exit 1
- make SYSSRC=$KERNELPATH module || exit 1
+(
+ unset ARCH
+ cd kernel || exit 1
+
+# Patches for kernel 6.6.x
+ if [ "${KERNEL66:-no}" = "yes" ]; then
+ patch -p1 < $CWD/patches/kernel-6.2.patch
+ patch -p1 < $CWD/patches/kernel-6.3.patch
+ if [ "$TARGET" = "x86_64" ]; then
+ patch -p1 < $CWD/patches/kernel-6.3_64.patch
+ fi
+ patch -p1 < $CWD/patches/kernel-6.4.patch
+ patch -p1 < $CWD/patches/kernel-6.5.patch
+ patch -p1 < $CWD/patches/kernel-6.6.patch
+ fi
+
+# CC=${CC:-gcc} suppresses an otherwise harmless "compiler mismatch"
+# message. If you custom-build your kernel with clang,
+# then pass CC=clang to this script.
+ CC=${CC:-gcc} make SYSSRC=$KERNELPATH module || exit 1
)
mkdir -p $PKG/lib/modules/$KERNEL/kernel/drivers/video
@@ -107,4 +129,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-$ARCH-$BUILD$TAG.$PKGTYPE