# vim:expandtab:shiftwidth=4:softtabstop=4:tabstop=4:
DEVEL_KERNEL_TYPE="source"
+RPM_HELPERS_DIR="/usr/lib/rpm"
prepare_and_build_srpm() {
# now build it
if ! $RPMBUILD $rpmbuildopt $targets \
--define "_topdir $TOPDIR" \
- $TOPDIR/SOURCES/kernel-$RPMSMPTYPE.spec >&2; then
+ $TOPDIR/SOURCES/kernel-$RPMSMPTYPE.spec 2>&1; 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/SOURCES/kernel-source.spec >&2; then
+ $TOPDIR/SOURCES/kernel-source.spec 2>&1; then
fatal 1 "Failed to build kernel source RPM"
fi
echo kernel${lustre}-${rpmsmptype}-${lnxmaj}${lnxmin}/linux-${lnxmaj}
}
-find_linux_devel_paths() {
- local path="$1"
+resolve_arch() {
+ local arch="$1"
+ # because we build an i686 kernel, we need to know if the arch we are
+ # resolving for is for the patched or patchless kernel (which is i586)
+ # we really should be building an i586 kernel to match what Novell does
+ local for_patchless=${2:-true}
+ local canonical=${3:-false}
+
+ case $arch in
+ ppc64) arch=powerpc
+ ;;
+ i?86) if $canonical; then
+ arch=i386
+ elif $(eval $for_patchless); then
+ arch=i586
+ fi
+ ;;
+ esac
+
+ echo "$arch"
- LINUX=$path/usr/src/linux-${lnxmaj}${lnxmin}${delimiter}${lnxrel##${lnxmin#.}-}
+}
- local objects=$TARGET_ARCH/$RPMSMPTYPE
- if [ -d $path/usr/src/linux-${lnxmaj}${lnxmin}${delimiter}${lnxrel##${lnxmin#.}-}-obj/powerpc ]; then
- objects="powerpc/$TARGET_ARCH"
- elif [ $TARGET_ARCH == 'i686' ]; then
- objects="i386/$RPMSMPTYPE"
- fi
+find_linux_devel_paths() {
+ local path="$1"
- LINUXOBJ=$path/usr/src/linux-${lnxmaj}${lnxmin}${delimiter}${lnxrel##${lnxmin#.}-}-obj/$objects
+ LINUX=$path/usr/src/linux-${lnxmaj}${lnxmin}-${lnxrel}
+ LINUXOBJ=$path/usr/src/linux-${lnxmaj}${lnxmin}-${lnxrel}-obj/$(resolve_arch $TARGET_ARCH $PATCHLESS)/$RPMSMPTYPE
+ # XXX this has been commented out in th rhel5 build file for a while
+ # as it says there, it's probably not needed anymore and can be deleted
+ #LINUXRELEASE=$(find_linux_release "$LINUXOBJ")
+ #if [ -z "$LINUXRELEASE" ]; then
+ # echo "Failed to find linux release in $LINUXOBJ"
+ # return 255
+ #fi
- LINUXRELEASE=$(find_linux_release ${LINUXOBJ:-$LINUX})
- if [ -z "$LINUXRELEASE" ]; then
- echo "Failed to find linux release in ${LINUXOBJ:-$LINUX}"
- RC=255
- fi
+ return 0
}
mcpu_rpmbuild_opt() {
echo "--define \'jobs $(/usr/bin/getconf _NPROCESSORS_ONLN)\'"
return 0
}
-