slackware-current/source/k/packaging-x86/kernel-modules/kernel-modules.SlackBuild
Patrick J Volkerding 76fc4757ac Slackware 14.1
Mon Nov  4 17:08:47 UTC 2013
Slackware 14.1 x86_64 stable is released!

It's been another interesting release cycle here at Slackware bringing
new features like support for UEFI machines, updated compilers and
development tools, the switch from MySQL to MariaDB, and many more
improvements throughout the system.  Thanks to the team, the upstream
developers, the dedicated Slackware community, and everyone else who
pitched in to help make this release a reality.

The ISOs are off to be replicated, a 6 CD-ROM 32-bit set and a
dual-sided
32-bit/64-bit x86/x86_64 DVD.  Please consider supporting the Slackware
project by picking up a copy from store.slackware.com.  We're taking
pre-orders now, and offer a discount if you sign up for a subscription.

Have fun!  :-)
2018-05-31 22:57:36 +02:00

67 lines
2 KiB
Bash
Executable file

#!/bin/sh
CWD=`pwd`
TMP=${TMP:-/tmp}
PKG=$TMP/package-kernel-modules
VERSION=${VERSION:-3.10.17}
ARCH=${ARCH:-i686}
BUILD=${BUILD:-1}
if [ ! -d $TMP ]; then
mkdir -p $TMP
fi
rm -rf $PKG
mkdir -p $PKG
echo "Using /lib/modules/${VERSION}/"
echo "Make sure these are *ready*... compressed, or not."
echo "However you want 'em."
sleep 5
mkdir -p $PKG/lib/modules
cp -a /lib/modules/${VERSION} $PKG/lib/modules
mkdir -p $PKG/etc/rc.d
cat $CWD/rc.modules.new > $PKG/etc/rc.d/rc.modules-${VERSION}.new
chmod 755 $PKG/etc/rc.d/rc.modules-${VERSION}.new
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
# Write out the doinst.sh:
cat << EOF > $PKG/install/doinst.sh
config() {
NEW="\$1"
OLD="\$(dirname \$NEW)/\$(basename \$NEW .new)"
# If there's no config file by that name, mv it over:
if [ ! -r \$OLD ]; then
mv \$NEW \$OLD
elif [ "\$(cat \$OLD | md5sum)" = "\$(cat \$NEW | md5sum)" ]; then # toss the redundant copy
rm \$NEW
fi
# Otherwise, we leave the .new copy for the admin to consider...
}
config etc/rc.d/rc.modules-${VERSION}.new
# If rc.modules is a real file, back it up:
if [ -r etc/rc.d/rc.modules -a ! -L etc/rc.d/rc.modules ]; then
cp -a etc/rc.d/rc.modules etc/rc.d/rc.modules.bak
fi
## Now that -smp is default, we probably shouldn't be so paranoid about
## preserving existing symlinks as it causes a full install to point to
## the wrong rc.modules script. If you want your rc.modules to endure,
## copy it to rc.modules.local.
## Make rc.modules a symlink if it's not already, but do not replace
## an existing symlink. You'll have to decide to point at a new version
## of this script on your own...
#if [ ! -L etc/rc.d/rc.modules ]; then
# ( cd etc/rc.d ; rm -rf rc.modules )
# ( cd etc/rc.d ; ln -sf rc.modules-${VERSION} rc.modules )
#fi
# A good idea whenever kernel modules are added or changed:
if [ -x sbin/depmod ]; then
chroot . /sbin/depmod -a ${VERSION} 1> /dev/null 2> /dev/null
fi
EOF
cd $PKG
makepkg -l y -c n $TMP/kernel-modules-${VERSION}-$ARCH-$BUILD.txz