X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=autogen.sh;h=6edec5b0adfe9e9953204e34132fde4cf812da9a;hp=1fce0a455fc75dbe6868fadaace20be4c998bef7;hb=31197e43bca94d9fbb4ca2090b556d93c6c18542;hpb=147839e23d49551ba61319b0812a3ef7e36cc80a diff --git a/autogen.sh b/autogen.sh index 1fce0a4..6edec5b 100644 --- a/autogen.sh +++ b/autogen.sh @@ -1,9 +1,55 @@ #!/bin/sh -# install Lustre Git commit hooks by default - LU-2083 -for HOOK in commit-msg prepare-commit-msg; do - [ -e .git/hooks/$HOOK ] || ln -sf ../build/$HOOK .git/hooks/ +# NOTE: Please avoid bashisms (bash specific syntax) in this script + +# die a horrible death. All output goes to stderr. +# +die() +{ + echo "bootstrap failure: $*" + echo Aborting + exit 1 +} 1>&2 + +run_cmd() +{ + echo -n "Running $*" + eval "$@" || die "command exited with code $?" + echo +} + +echo "Checking for a complete tree..." +REQUIRED_DIRS="libcfs lnet lustre" +OPTIONAL_DIRS="snmp portals" +CONFIGURE_DIRS="libsysio" + +for dir in $REQUIRED_DIRS ; do + test -d "$dir" || \ + die "Your tree seems to be missing $dir. +Please read README.lustrecvs for details." + + ACLOCAL_FLAGS="$ACLOCAL_FLAGS -I $PWD/$dir/autoconf" +done +# optional directories for Lustre +for dir in $OPTIONAL_DIRS; do + if [ -d "$dir" ] ; then + ACLOCAL_FLAGS="$ACLOCAL_FLAGS -I $PWD/$dir/autoconf" + fi done -exec bash build/autogen.sh $@ +PWD_SAVE=$PWD +run_cmd "aclocal -I $PWD/config $ACLOCAL_FLAGS" +run_cmd "autoheader" +run_cmd "automake -a -c" +run_cmd autoconf + +# bootstrap in these directories +for dir in $CONFIGURE_DIRS; do + if [ -d $dir ] ; then + cd $dir + echo "bootstrapping in $dir..." + run_cmd "sh autogen.sh" + fi + cd $PWD_SAVE +done