Whamcloud - gitweb
src needs to be in the options list if it is going to be available for use.
[fs/lustre-release.git] / build / lbuild
index daeaa20..529b035 100755 (executable)
@@ -18,6 +18,7 @@ CONFIGURE_FLAGS=
 EXTERNAL_PATCHES=
 EXTRA_VERSION=
 STAGEDIR=
+TMPDIR=${TMPDIR:-"/var/tmp"}
 
 # from target file
 KERNEL=
@@ -215,7 +216,8 @@ check_options()
             | suse-2.4.21-2 \
             | rh-2.4 \
             | rhel-2.4 \
-            | sles-2.4)
+            | sles-2.4 \
+            | 2.6-patchless)
                 CANONICAL_TARGET="$TARGET"
                 ;;
     esac
@@ -301,8 +303,6 @@ load_target()
     . "$TARGET_FILE"
 
     [ "$KERNEL"  ] || fatal 1 "Target $TARGET did not specify a kernel."
-#    [ "$SERIES"  ] || fatal 1 "Target $TARGET did not specify a kernel patch series."
-#    [ "$CONFIG"  ] || fatal 1 "Target $TARGET did not specify a kernel config."
     [ "$VERSION" ] || fatal 1 "Target $TARGET did not specify a kernel version."
 
     if [ "$KERNELDIR" ] ; then
@@ -342,9 +342,13 @@ load_target()
     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}"
+        # if there is no patch series, then this is not a lustre specific
+        # kernel.  don't make it look like one
+        if [ -n "$SERIES" ]; then
+            #remove the @VERSION@ (lustre version)
+            EXTRA_VERSION=$(echo $EXTRA_VERSION | sed -e "s/\(.*_lustre\)\..*/\1/")
+            EXTRA_VERSION="${EXTRA_VERSION}-${TAG}.${TIMESTAMP}"
+        fi
     fi
     # EXTRA_VERSION=${EXTRA_VERSION//-/_}
 
@@ -392,7 +396,7 @@ unpack_lustre()
     DIRNAME="lustre-$TAG-$TIMESTAMP"
     if [ "$LUSTRE" ] ; then
         untar "$LUSTRE"
-        [ -d lustre ] || ln -sf lustre* lustre
+        [ -d lustre ] || ln -sf lustre-[0-9].[0-9]* lustre
     else
         if [ "$USE_DATESTAMP" ]; then
             DATESTAMP="-D '$DATE'"
@@ -542,11 +546,13 @@ build_kernel()
     done
 
     $RPMBUILD $targets -bb 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
@@ -572,6 +578,7 @@ build_lustre()
     ./configure "--with-linux=${LINUX}" ${CONFIGURE_FLAGS}
 
     $RPMBUILD $targets -bb build/lustre.spec \
+        --define "_tmppath $TMPDIR" \
         --define "_topdir $TOPDIR" || \
         fatal 1 "Error building rpms for $BUILD_ARCHS."
 
@@ -597,7 +604,7 @@ stage()
 
 [ -r ~/.lbuildrc ] && . ~/.lbuildrc
 
-options=$(getopt -o d:D:h -l disable-datestamp,external-patches:,extraversion:,kerneldir:,linux:,lustre:,nodownload,nosrc,publish,release,stage:,tag:,target:,target-archs:,with-linux: -- "$@")
+options=$(getopt -o d:D:h -l disable-datestamp,external-patches:,extraversion:,kerneldir:,linux:,lustre:,nodownload,nosrc,publish,release,src,stage:,tag:,target:,target-archs:,with-linux: -- "$@")
 
 if [ $? != 0 ] ; then
     usage 1
@@ -698,7 +705,6 @@ unpack_lustre
 # prep_build needs the .spec.in from the lustre source
 if [ -z "$LINUX" ] ; then
     load_target
-
     if (( $DO_SRC )) ; then
         unpack_linux
         patch_linux