diff options
author | Justin Clift <jclift@redhat.com> | 2013-03-08 19:29:33 +0000 |
---|---|---|
committer | Anand Avati <avati@redhat.com> | 2013-03-11 13:59:01 -0700 |
commit | 69f17838000424a209a928fbdc0e608dfaf271d6 (patch) | |
tree | 2ceb0504a4e640ab2abc4db02f51f679bffc49b8 /autogen.sh | |
parent | 930c4ada674804a8e5d2d90e0184437afdf2d7a0 (diff) |
Add autogen.sh dependency checks and nicer output.
Change-Id: I5c740d81765559fae022d0ab9dfe34988e46612e
BUG: 919898
Signed-off-by: Justin Clift <jclift@redhat.com>
Reviewed-on: http://review.gluster.org/4651
Reviewed-by: Kaleb KEITHLEY <kkeithle@redhat.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Jeff Darcy <jdarcy@redhat.com>
Diffstat (limited to 'autogen.sh')
-rwxr-xr-x | autogen.sh | 91 |
1 files changed, 86 insertions, 5 deletions
diff --git a/autogen.sh b/autogen.sh index ca69d462491..2e2bd517025 100755 --- a/autogen.sh +++ b/autogen.sh @@ -1,8 +1,89 @@ #!/bin/sh -aclocal -I ./contrib/aclocal -autoheader -(libtoolize --automake --copy --force || glibtoolize --automake --copy --force) -autoconf -automake --add-missing --copy --foreign +echo +echo ... GlusterFS autogen ... +echo + +## Check all dependencies are present +MISSING="" + +# Check for aclocal +env aclocal --version > /dev/null 2>&1 +if [ $? -eq 0 ]; then + ACLOCAL=aclocal +else + MISSING="$MISSING aclocal" +fi + +# Check for autoconf +env autoconf --version > /dev/null 2>&1 +if [ $? -eq 0 ]; then + AUTOCONF=autoconf +else + MISSING="$MISSING autoconf" +fi + +# Check for autoheader +env autoheader --version > /dev/null 2>&1 +if [ $? -eq 0 ]; then + AUTOHEADER=autoheader +else + MISSING="$MISSING autoheader" +fi + +# Check for automake +env automake --version > /dev/null 2>&1 +if [ $? -eq 0 ]; then + AUTOMAKE=automake +else + MISSING="$MISSING automake" +fi + +# Check for libtoolize or glibtoolize +env libtoolize --version > /dev/null 2>&1 +if [ $? = 0 ]; then + # libtoolize was found, so use it + TOOL=libtoolize +else + # libtoolize wasn't found, so check for glibtoolize + env glibtoolize --version > /dev/null 2>&1 + if [ $? = 0 ]; then + TOOL=glibtoolize + else + MISSING="$MISSING libtoolize/glibtoolize" + fi +fi + +## If dependencies are missing, warn the user and abort +if [ "x$MISSING" != "x" ]; then + echo "Aborting." + echo + echo "The following build tools are missing:" + echo + for pkg in $MISSING; do + echo " * $pkg" + done + echo + echo "Please install them and try again." + echo + exit 1 +fi + +## Do the autogeneration +echo Running ${ACLOCAL}... +$ACLOCAL -I ./contrib/aclocal +echo Running ${AUTOHEADER}... +$AUTOHEADER +echo Running ${TOOL}... +$TOOL --automake --copy --force +echo Running ${AUTOCONF}... +$AUTOCONF +echo Running ${AUTOMAKE}... +$AUTOMAKE --add-missing --copy --foreign + +# Run autogen in the argp-standalone sub-directory cd argp-standalone;./autogen.sh + +# Instruct user on next steps +echo +echo "Please proceed with configuring, compiling, and installing." |