--- /dev/null
+# vim:expandtab:shiftwidth=4:softtabstop=4:tabstop=4:
+
+DEVEL_KERNEL_TYPE="source"
+
+prepare_and_build_srpm() {
+
+ pushd $TOPDIR >/dev/null
+ # seems there is a bug (on Ubuntu at least) where all of the .specs
+ # are not put into SPECS
+ mv SOURCES/*.spec SPECS/
+
+ # generate our buildid
+ local buildid="lustre${EXTRA_VERSION##*_lustre}"
+
+ # do release specific spec editing
+ edit_specs
+
+ # XXX - need to flesh this out per the rhel5 method
+ local targets
+ for arch in $BUILD_ARCHS; do
+ targets="--target $arch $targets"
+ mkdir -p config/$(basearch $arch)
+ cp $CONFIG_FILE config/$(basearch $arch)/$RPMSMPTYPE
+ done
+
+ tar cjf SOURCES/config.tar.bz2 config
+ rm -rf config
+
+ # do we need any special rpm build options
+ local rpmbuildopt="-bb"
+ if $DO_SRC; then
+ rpmbuildopt="-ba"
+ fi
+
+ # XXX - ignore the kabi changes. need to figure out what this is really
+ # all about.
+ touch SOURCES/IGNORE-KABI-BADNESS
+
+
+# XXX testing speedup hack - never let an inspection pass without this
+# commented out! in fact it should be removed completely before a
+# landing.
+#if false; then
+ # now build it
+ if ! $RPMBUILD $rpmbuildopt $targets \
+ --define "_topdir $TOPDIR" \
+ $TOPDIR/SPECS/kernel-$RPMSMPTYPE.spec >&2; then
+ fatal 1 "Failed to build kernel RPM"
+ fi
+#fi
+
+ # for SLES, we also need to build the kernel-source rpm
+ if ! $RPMBUILD $rpmbuildopt $targets \
+ --define "_topdir $TOPDIR" \
+ $TOPDIR/SPECS/kernel-source.spec >&2; then
+ fatal 1 "Failed to build kernel source RPM"
+ fi
+
+}
+
+devel_kernel_name() {
+ local lustre=${1:-false}
+
+ if $lustre; then
+ echo "kernel-lustre-$DEVEL_KERNEL_TYPE"
+ else
+ echo "kernel-$DEVEL_KERNEL_TYPE"
+ fi
+
+}
+
+rpm_BUILD_kernel_dirname() {
+ local rpmsmptype="$1"
+ local lnxmaj="$2"
+ local lnxmin="$3"
+ local arch="$4"
+
+ echo kernel-lustre-${rpmsmptype}-${lnxmaj}${lnxmin}/linux-${lnxmaj}
+}