+download_and_build_tarball() {
+ local TARGET=$1
+ local KERNEL_FILE=$2
+
+ local SRPM=kernel-${lnxmaj}-${lnxrel}.src.rpm
+
+ echo "Downloading http://ftp.lustre.org/kernels/$TARGET/old/$SRPM..."
+ if ! wget -nv "http://ftp.lustre.org/kernels/$TARGET/old/$SRPM" \
+ -O "$KERNELDIR/$SRPM" ; then
+ fatal 1 "Could not download target $TARGET's kernel SRPM $SRPM from ftp.lustre.org."
+ fi
+
+ if [ "$TARGET" = "rhel-2.6" ]; then
+ RPMTOPDIR=$(mktemp -d $KERNELDIR/rpm_XXXXXX)
+ mkdir $RPMTOPDIR/BUILD/
+ rpm -ivh $KERNELDIR/$SRPM --define "_topdir $RPMTOPDIR" || \
+ { rm -rf $RPMTOPDIR; fatal 1 "Error installing kernel SRPM."; }
+ $RPMBUILD -bp --nodeps --target i686 $RPMTOPDIR/SPECS/kernel-2.6.spec --define "_topdir $RPMTOPDIR"
+ pushd $RPMTOPDIR/BUILD/kernel-${lnxmaj}/linux-${lnxmaj} && {
+ make mrproper
+ cp configs/kernel-${lnxmaj}-i686-smp.config .config
+ make nonint_oldconfig > /dev/null
+ make include/linux/version.h
+ rm -f .config
+ cd ..
+ tar cjf $KERNEL_FILE linux-${lnxmaj}
+ }
+ popd
+ rm -rf $RPMTOPDIR
+ fi
+}
+