X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=autogen.sh;h=0c74faebcadbde1603db9e18bda92995d619b722;hp=3f97995f56f5c863bb02e0a093af74be0efd2472;hb=293772bf7511dee41a1f3e842424678c1a6bf9e4;hpb=002cdf48fee7a59d13865ea9848671b588e86daf diff --git a/autogen.sh b/autogen.sh index 3f97995..0c74fae 100755 --- a/autogen.sh +++ b/autogen.sh @@ -20,11 +20,32 @@ set -e set -v -export AUTOMAKE='automake --foreign' -aclocal -libtoolize -autoreconf -i -pushd daemon -autoreconf -i -popd -./configure "$@" + +# Ensure that whenever we pull in a gnulib update or otherwise change to a +# different version (i.e., when switching branches), we also rerun ./bootstrap. +curr_status=.git-module-status +t=$(git submodule status|sed 's/^[ +-]//;s/ .*//') +if test "$t" = "$(cat $curr_status 2>/dev/null)"; then + : # good, it's up to date +else + echo running bootstrap... + ./bootstrap && echo "$t" > $curr_status +fi + +CONFIGUREDIR=. + +# Run configure in BUILDDIR if it's set +if [ ! -z "$BUILDDIR" ]; then + mkdir -p $BUILDDIR + cd $BUILDDIR + + CONFIGUREDIR=.. +fi + +# If no arguments were specified and configure has run before, use the previous +# arguments +if test $# == 0 && test -x ./config.status; then + ./config.status --recheck +else + $CONFIGUREDIR/configure "$@" +fi