#!/bin/sh TMP=/tmp CWD=`pwd` PKG=/tmp/package-kernel # Fill this stuff in: KERNNAME=huge VERSION=${VERSION:-2.6.21.5} ARCH=${ARCH:-i486} BUILD=${BUILD:-2_slack12.0} # 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/i386/boot/bzImage fi if [ -r $CWD/System.map.gz ]; then gzip -d $CWD/System.map.gz elif [ -r $CWD/System.map.bz2 ]; then bzip2 -d $CWD/System.map.bz2 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}-$ARCH-$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}-$ARCH-$BUILD.tgz # Clean up the extra stuff: if [ "$1" = "--cleanup" ]; then rm -rf $PKG fi