From 1b687fbaefedda9ba25ca5aaa0c3fc8450da95ff Mon Sep 17 00:00:00 2001 From: Sami Kerola Date: Mon, 26 Sep 2011 22:27:34 +0200 Subject: [PATCH] build-sys: sensible errors when autogen.sh requirements are is missing I tested the build on several "new" linux installs that didn't yet have any development tools beyond gcc. On those systems the following error messages were received: ./autogen.sh: line 46: libtoolize: command not found ./autogen.sh: line 47: test: =: unary operator expected This commit also removes few unnecessary empty lines, and makes all shell variables to be wrote in caps & quoted properly. Cc: Jim Warner Signed-off-by: Sami Kerola --- autogen.sh | 51 +++++++++++++++++++-------------------------------- 1 file changed, 19 insertions(+), 32 deletions(-) diff --git a/autogen.sh b/autogen.sh index b842ba0f..b42f57b6 100755 --- a/autogen.sh +++ b/autogen.sh @@ -3,57 +3,47 @@ # Helps generate autoconf/automake stuff, when code is checked # out from SCM. -srcdir=`dirname $0` -test -z "$srcdir" && srcdir=. +SRCDIR=$(dirname ${0}) +test -z "${SRCDIR}" && SRCDIR=. -THEDIR=`pwd` -cd $srcdir +THEDIR=$(pwd) +cd ${SRCDIR} DIE=0 test -f top.c || { - echo echo "You must run this script in the top-level procps-ng directory" - echo DIE=1 } -(autoconf --version) < /dev/null > /dev/null 2>&1 || { - echo +(autoconf --version) < /dev/null > /dev/null || { echo "You must have autoconf installed to generate procps-ng build system." - echo DIE=1 } -(autoheader --version) < /dev/null > /dev/null 2>&1 || { - echo +(autoheader --version) < /dev/null > /dev/null || { echo "You must have autoheader installed to generate procps-ng build system." echo "The autoheader command is part of the GNU autoconf package." - echo DIE=1 } -(libtool --version) < /dev/null > /dev/null 2>&1 || { - echo +(libtool --version) < /dev/null > /dev/null || { echo "You must have libtool-2 installed to generate procps-ng build system." - echo DIE=1 } -(automake --version) < /dev/null > /dev/null 2>&1 || { - echo +(automake --version) < /dev/null > /dev/null || { echo "You must have automake installed to generate procps-ng build system." - echo DIE=1 } -ltver=$(libtoolize --version | awk '/^libtoolize/ { print $4 }') -test ${ltver##2.} = "$ltver" && { - echo "You must have libtool version >= 2.x.x, but you have $ltver." +LTVER=$(libtoolize --version | awk '/^libtoolize/ { print $4 }') +LTVER=${LTVER:-"none"} +test ${LTVER##2.} = "${LTVER}" && { + echo "You must have libtoolize version >= 2.x.x, but you have ${LTVER}." DIE=1 } -if test "$DIE" -eq 1; then +if test ${DIE} -ne 0; then exit 1 fi -echo echo "Generate build-system by:" echo " aclocal: $(aclocal --version | head -1)" echo " autoconf: $(autoconf --version | head -1)" @@ -64,15 +54,12 @@ echo " libtoolize: $(libtoolize --version | head -1)" rm -rf autom4te.cache set -e -libtoolize --force $LT_OPTS -aclocal -I m4 $AL_OPTS -autoconf $AC_OPTS -autoheader $AH_OPTS +libtoolize --force ${LT_OPTS} +aclocal -I m4 ${AL_OPTS} +autoconf ${AC_OPTS} +autoheader ${AH_OPTS} -automake --add-missing $AM_OPTS - -cd $THEDIR +automake --add-missing ${AM_OPTS} echo -echo "Now type '$srcdir/configure' and 'make' to compile." -echo +echo "Now type '${SRCDIR}/configure' and 'make' to compile."