JENSEN_ARCHS=
SMP_ARCHS=
BIGSMP_ARCHS=
+PSERIES64_ARCHS=
UP_ARCHS=
DATE=$(date)
USE_DATESTAMP=1
RPMBUILD=
+export CC=${CC:-gcc}
+
+# Readlink is not present on some older distributions: emulate it.
+readlink() {
+ local path=$1 ll
+
+ if [ -L "$path" ]; then
+ ll="$(LC_ALL=C ls -l "$path" 2> /dev/null)" &&
+ echo "${ll/* -> }"
+ else
+ return 1
+ fi
+}
+
cleanup()
{
true
if [ "$EXTRA_VERSION_save" ] ; then
EXTRA_VERSION="$EXTRA_VERSION_save"
elif ! (( $RELEASE )) ; then
+ #remove the @VERSION@ (lustre version)
+ EXTRA_VERSION=$(echo $EXTRA_VERSION | sed -e "s/\(.*_lustre\)\..*/\1/")
EXTRA_VERSION="${EXTRA_VERSION}-${TAG}.${TIMESTAMP}"
fi
# EXTRA_VERSION=${EXTRA_VERSION//-/_}
- ALL_ARCHS="$BASE_ARCHS $BIGMEM_ARCHS $BOOT_ARCHS $JENSEN_ARCHS $SMP_ARCHS $BIGSMP_ARCHS $UP_ARCHS"
+ ALL_ARCHS="$BASE_ARCHS $BIGMEM_ARCHS $BOOT_ARCHS $JENSEN_ARCHS $SMP_ARCHS $BIGSMP_ARCHS $PSERIES64_ARCHS $UP_ARCHS"
BUILD_ARCHS=
for arch in $(uniqify "$ALL_ARCHS") ; do
DATESTAMP=""
fi
- cvs -d "$CVSROOT" -qz3 co $DATESTAMP -r "$TAG" -d "$DIRNAME" lustre || \
- fatal 1 "There was an error checking out Lustre from CVS."
+ cvs -d "$CVSROOT" -qz3 co $DATESTAMP -d "$DIRNAME" lustre || \
+ fatal 1 "There was an error checking out toplevel Lustre from CVS."
+ pushd "$DIRNAME" > /dev/null
+ ./lustrecvs "$TAG" || \
+ fatal 1 "There was an error checking out Lustre/Portals/Build from CVS."
echo "Creating lustre tarball..."
- tar zcf "$DIRNAME.tar.gz" "$DIRNAME" \
- --exclude "CVS" --exclude "*~" --exclude ".cvsignore" || \
- fatal 1 "Could not create Lustre tarball."
- LUSTRE="$PWD/$DIRNAME.tar.gz"
+ sh autogen.sh || fatal 1 "There was an error running autogen.sh."
+ ./configure --disable-{modules,utils,liblustre,tests,doc} || \
+ fatal 1 "There was an error running ./configure to create makefiles."
+ make dist || fatal 1 "There was an error running 'make dist'."
+ popd > /dev/null
+ fname=`basename $DIRNAME/lustre-*.tar.gz`
+ cp $DIRNAME/$fname . || fatal 1 "There was an error copying lustre tarball."
+ LUSTRE="$PWD/$fname"
ln -sf "$DIRNAME" lustre
fi
}
rm -f linux/configs/*
copysuccess=0
for patchesdir in "$EXTERNAL_PATCHES" "lustre/lustre/kernel_patches" ; do
- cp -v $patchesdir/kernel_configs/kernel-${VERSION}-${TARGET}*.config linux/configs/ >/dev/null && copysuccess=1
+ [ "$patchesdir" ] && \
+ cp -v $patchesdir/kernel_configs/kernel-${VERSION}-${TARGET}*.config linux/configs/ >/dev/null && copysuccess=1
done
[ "$copysuccess" = "1" ] || \
fatal 1 "Error copying in kernel configs."
prep_build()
{
# make .spec file
- if [ -f /etc/init.d/functions -a -f /etc/sysconfig/network ] ; then
- ENABLE_INIT_SCRIPTS=""
- else
- ENABLE_INIT_SCRIPTS="# "
- fi
+ ENABLE_INIT_SCRIPTS=""
sed \
-e "s^@BASE_ARCHS@^$BASE_ARCHS^g" \
-e "s^@BIGMEM_ARCHS@^$BIGMEM_ARCHS^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" \
[ -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} ; do
+ 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
--define "_topdir $TOPDIR" || \
fatal 1 "Error building rpms for $arch."
- if (( $DO_SRC )) ; then
+ if false && (( $DO_SRC )) ; then
$RPMBUILD -bs lustre-kernel-2.4.spec \
--define "_topdir $TOPDIR" || \
fatal 1 "Error building .src.rpm."