-clean_linux()
-{
- [ -d linux ] || return 0
- echo "Cleaning linux..."
- [ -L linux ] && rm -rf $(readlink linux)
- rm -rf linux
-}
-
-prep_kernel_build()
-{
- # make .spec file
- ENABLE_INIT_SCRIPTS=""
- sed \
- -e "s^@BASE_ARCHS@^$BASE_ARCHS^g" \
- -e "s^@BIGMEM_ARCHS@^$BIGMEM_ARCHS^g" \
- -e "s^@BIGSMP_ARCHS@^$BIGSMP_ARCHS^g" \
- -e "s^@BOOT_ARCHS@^$BOOT_ARCHS^g" \
- -e "s^@CONFIGURE_FLAGS@^$CONFIGURE_FLAGS^g" \
- -e "s^@ENABLE_INIT_SCRIPTS@^$ENABLE_INIT_SCRIPTS^g" \
- -e "s^@JENSEN_ARCHS@^$BOOT_ARCHS^g" \
- -e "s^@KERNEL_EXTRA_VERSION@^$EXTRA_VERSION^g" \
- -e "s^@KERNEL_EXTRA_VERSION_DELIMITER@^$EXTRA_VERSION_DELIMITER^g" \
- -e "s^@KERNEL_RELEASE@^${EXTRA_VERSION//-/_}^g" \
- -e "s^@KERNEL_SOURCE@^$KERNEL^g" \
- -e "s^@KERNEL_VERSION@^$VERSION^g" \
- -e "s^@LINUX26@^$LINUX26^g" \
- -e "s^@LUSTRE_SOURCE@^${LUSTRE##*/}^g" \
- -e "s^@LUSTRE_TARGET@^$TARGET^g" \
- -e "s^@PSERIES64_ARCHS@^$PSERIES64_ARCHS^g" \
- -e "s^@RHBUILD@^$RHBUILD^g" \
- -e "s^@SMP_ARCHS@^$SMP_ARCHS^g" \
- -e "s^@SUSEBUILD@^$SUSEBUILD^g" \
- -e "s^@UP_ARCHS@^$UP_ARCHS^g" \
- < $TOPDIR/lustre/build/lustre-kernel-2.4.spec.in \
- > lustre-kernel-2.4.spec
- [ -d SRPMS ] || mkdir SRPMS
- [ -d RPMS ] || mkdir RPMS
- [ -d BUILD ] || mkdir BUILD
- [ -d SOURCES ] || mkdir SOURCES
- for script in linux-{rhconfig.h,merge-config.awk,merge-modules.awk} \
- suse-{functions.sh,post.sh,postun.sh,trigger-script.sh.in} \
- sles8-{pre,post,postun,update_{INITRD_MODULES,rcfile_setting}}.sh ; do
- cp $TOPDIR/lustre/build/$script SOURCES
- done
- cp "$LUSTRE" "$KERNEL_FILE" SOURCES
- if [ "$EXTERNAL_PATCHES" -a -d "$EXTERNAL_PATCHES" ] ; then
- tar zcf SOURCES/external-patches.tar.gz -C "$EXTERNAL_PATCHES" series targets patches kernel_configs
- else
- touch SOURCES/external-patches.tar.gz
- fi
-}
-
-clean_lustre()
-{
- [ -d lustre ] || return 0
- echo "Cleaning Lustre..."
- [ -L lustre ] && rm -rf $(readlink lustre)
- rm -rf lustre
-}
-
-build_kernel()
-{
- echo "Building kernel + Lustre RPMs for: $BUILD_ARCHS..."
- targets=
- for arch in $BUILD_ARCHS ; do
- targets="--target $arch $targets"
- done
-
- local rpmbuildopt='-bb'
-# if $NORPM; then
-# rpmbuildopt='-bc'
-# echo NORPM mode. Only compiling.
-# echo "XXX: need to fix lmake - add options to do rpmbuild -bc instead of -bb"
-# fi
-
- $RPMBUILD $targets $rpmbuildopt lustre-kernel-2.4.spec \
- --define "_tmppath $TMPDIR" \
- --define "_topdir $TOPDIR" || \
- fatal 1 "Error building rpms for $BUILD_ARCHS."
-
- if (( $DO_SRC )) ; then
- $RPMBUILD -bs lustre-kernel-2.4.spec \
- --define "_tmppath $TMPDIR" \
- --define "_topdir $TOPDIR" || \
- fatal 1 "Error building .src.rpm."
- fi
-
- ( $(skeep_ldiskfs_rpm $TAG) ) && return
-
- pushd $TOPDIR/BUILD/lustre*/ldiskfs || return 255
- make dist
- if [ "$?" != "0" ] ; then
- popd
- return 255
- fi
- cp lustre-ldiskfs*.tar.gz $TOPDIR/SOURCES
-
- gen_lustre_version
-
- local ldiskfs_spec=lustre-ldiskfs.spec
- [ -f "$ldiskfs_spec" ] && sed \
- -e "s^Release: .*$^Release: $LUSTRE_EXTRA_VERSION^" \
- < $ldiskfs_spec \
- > ../lustre-ldiskfs.spec
-
- $RPMBUILD $targets $rpmbuildopt ../lustre-ldiskfs.spec \
- --define "_tmppath /var/tmp" \
- --define "_topdir $TOPDIR"
- if [ "$?" != "0" ] ; then
- popd
- return 255
- fi
-
- if (( $DO_SRC )) ; then
- $RPMBUILD -bs ../lustre-ldiskfs.spec \
- --define "_tmppath /var/tmp" \
- --define "_topdir $TOPDIR"
- if [ "$?" != "0" ] ; then
- popd
- return 255
- fi
- fi
- popd
-}
-
-build_lustre()
-{
- [ -d SRPMS ] || mkdir SRPMS
- [ -d RPMS ] || mkdir RPMS
- [ -d BUILD ] || mkdir BUILD
- [ -d SOURCES ] || mkdir SOURCES