#!/bin/sh TMP=/tmp CWD=`pwd` PKG=/tmp/package-kernel # Fill this stuff in: KERNNAME=generic VERSION=${VERSION:-2.6.27.7} ARCH=${ARCH:-x86_64} BUILD=${BUILD:-1} DISTRO=${DISTRO:-slamd64} if [ $DISTRO = slackware ]; then PKGARCH=$ARCH else PKGARCH=${ARCH}_$DISTRO fi # First try to find the loot in the current dir, then look # in /usr/src/linux-$VERSION: if [ -r $CWD/bzImage ]; then KERNEL=$CWD/bzImage elif [ -r $CWD/vmlinuz ]; then KERNEL=$CWD/vmlinuz elif [ -r $CWD/vmlinuz* ]; then KERNEL=$CWD/vmlinuz* else KERNEL=/usr/src/linux-$VERSION/arch/x86_64/boot/bzImage fi if [ -r $CWD/System.map ]; then SYSMAP=$CWD/System.map elif [ -r $CWD/System.map* ]; then SYSMAP=$CWD/System.map* else SYSMAP=/usr/src/linux-$VERSION/System.map fi if [ -r $CWD/config ]; then CONFIG=$CWD/config elif [ -r $CWD/config* ]; then CONFIG=$CWD/config* elif [ -r $CWD/.config ]; then CONFIG=$CWD/.config else CONFIG=/usr/src/linux-$VERSION/.config fi cat << EOF Building kernel-$KERNNAME-$VERSION-$PKGARCH-$BUILD.tgz using these source files. Please check and then hit enter to make the package. KERNEL = $KERNEL SYSMAP = $SYSMAP CONFIG = $CONFIG EOF read junk; rm -rf $PKG mkdir -p $PKG mkdir -p $PKG/boot cp $KERNEL $PKG/boot/vmlinuz-$KERNNAME-$VERSION rdev -R $PKG/boot/vmlinuz-$KERNNAME-$VERSION 0 rdev -v $PKG/boot/vmlinuz-$KERNNAME-$VERSION -1 rdev -r $PKG/boot/vmlinuz-$KERNNAME-$VERSION 0 ( cd $PKG/boot ; ln -sf vmlinuz-$KERNNAME-$VERSION vmlinuz ) cp $SYSMAP $PKG/boot/System.map-$KERNNAME-$VERSION ( cd $PKG/boot ; ln -sf System.map-$KERNNAME-$VERSION System.map ) cp $CONFIG $PKG/boot/config-$KERNNAME-$VERSION ( cd $PKG/boot ; ln -sf config-$KERNNAME-$VERSION config ) mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc # Build the package: cd $PKG makepkg -l y -c n $TMP/kernel-$KERNNAME-$VERSION-$PKGARCH-$BUILD.tgz # Clean up the extra stuff: if [ "$1" = "--cleanup" ]; then rm -rf $PKG fi