diff --git a/autogen.sh b/autogen.sh index 086f077106..c4a7c1a6dc 100755 --- a/autogen.sh +++ b/autogen.sh @@ -1,259 +1,193 @@ #!/bin/sh # # License: GNU General Public License (GPL) # Copyright 2001 horms # (heavily mangled by alanr) # # bootstrap: set up the project and get it ready to make # # Basically, we run autoconf, automake and libtool in the # right way to get things set up for this environment. # # We also look and see if those tools are installed, and # tell you where to get them if they're not. # # Our goal is to not require dragging along anything # more than we need. If this doesn't work on your system, # (i.e., your /bin/sh is broken) send us a patch. # # This code loosely based on the corresponding named script in # enlightenment, and also on the sort-of-standard autoconf # bootstrap script. # Run this to generate all the initial makefiles, etc. testProgram() { cmd=$1 if [ -z "$cmd" ]; then return 1; fi arch=`uname -s` # Make sure the which is in an if-block... on some platforms it throws exceptions # # The ERR trap is not executed if the failed command is part # of an until or while loop, part of an if statement, part of a && # or || list. if which $cmd /dev/null 2>&1 then : else return 1 fi # The GNU standard is --version if $cmd --version /dev/null 2>&1 then return 0 fi # Maybe it suppports -V instead if $cmd -V /dev/null 2>&1 then return 0 fi # Nope, the program seems broken return 1 } -case "$*" in - --help) IsHelp=yes;; - -?) IsHelp=yes; set -- --help;; - *) IsHelp=no;; -esac - arch=`uname -s` # Disable the errors on FreeBSD until a fix can be found. if [ ! "$arch" = "FreeBSD" ]; then set -e # # All errors are fatal from here on out... # The shell will complain and exit on any "uncaught" error code. # # # And the trap will ensure sure some kind of error message comes out. # trap 'echo ""; echo "$0 exiting due to error (sorry!)." >&2' 0 fi -RC=0 - gnu="ftp://ftp.gnu.org/pub/gnu" -# Check for Autoconf -pkg="autoconf" -URL=$gnu/$pkg/ for command in autoconf autoconf213 autoconf253 autoconf259 do if testProgram $command == 1 then - : OK $pkg is installed autoconf=$command autoheader=`echo "$autoconf" | sed -e 's/autoconf/autoheader/'` autom4te=`echo "$autoconf" | sed -e 's/autoconf/autmo4te/'` autoreconf=`echo "$autoconf" | sed -e 's/autoconf/autoreconf/'` autoscan=`echo "$autoconf" | sed -e 's/autoconf/autoscan/'` autoupdate=`echo "$autoconf" | sed -e 's/autoconf/autoupdate/'` ifnames=`echo "$autoconf" | sed -e 's/autoconf/ifnames/'` fi done - -# Check to see if we got a valid command. -if - $autoconf --version /dev/null 2>&1 -then - echo "Autoconf package $autoconf found." -else - RC=$? - cat <<-!EOF >&2 - - You must have $pkg installed to compile the linux-ha package. - Download the appropriate package for your system, - or get the source tarball at: $URL - !EOF -fi - -# Create local copy so that the incremental updates will work. -rm -f ./autoconf -ln -s `which $autoconf` ./autoconf - -# Check for automake -pkg="automake" -URL=$gnu/$pkg/ for command in automake automake14 automake-1.4 automake15 automake-1.5 automake17 automake-1.7 automake19 automake-1.9 do if testProgram $command then : OK $pkg is installed automake=$command aclocal=`echo "$automake" | sed -e 's/automake/aclocal/'` - fi done -# Check to see if we got a valid command. -if - $automake --version /dev/null 2>&1 -then - echo "Automake package $automake found." -else - RC=$? - cat <<-!EOF >&2 - - You must have $pkg installed to compile the linux-ha package. - Download the appropriate package for your system, - or get the source tarball at: $URL - !EOF -fi - -# Create local copy so that the incremental updates will work. -rm -f ./automake -ln -s `which $automake` ./automake - -# Check for Libtool -pkg="libtool" for command in libtool libtool14 libtool15 glibtool do URL=$gnu/$pkg/ if testProgram $command then - : OK $pkg is installed libtool=$command libtoolize=`echo "$libtool" | sed -e 's/libtool/libtoolize/'` fi done -# Check to see if we got a valid command. -if - $libtool --version /dev/null 2>&1 -then - echo "Libtool package $libtool found." -else - RC=$? - cat <<-!EOF >&2 - - You must have $pkg installed to compile the linux-ha package. - Download the appropriate package for your system, - or get the source tarball at: $URL - !EOF +if [ -z $autoconf ]; then + echo You must have automake installed to compile the linux-ha package. + echo Download the appropriate package for your system, + echo or get the source tarball at: $gnu/autoconf/ + exit 1 + +elif [ -z $automake ]; then + echo You must have automake installed to compile the linux-ha package. + echo Download the appropriate package for your system, + echo or get the source tarball at: $gnu/automake/ + exit 1 + +elif [ -z $libtool ]; then + echo You must have automake installed to compile the linux-ha package. + echo Download the appropriate package for your system, + echo or get the source tarball at: $gnu/libtool/ + exit 1 fi -# Create local copy so that the incremental updates will work. -rm -f ./libtool -ln -s `which $libtool` ./libtool - -case $RC in - 0) ;; - *) exit $RC;; -esac - -case $IsHelp in - yes) $CONFIG "$@"; trap '' 0; exit 0;; -esac - oneline() { read x; echo "$x" } LT_version=`$libtool --version | oneline | sed -e 's%^[^0-9]*%%' -e s'% .*%%'` LT_majvers=`echo "$LT_version" | sed -e 's%\..*%%'` LT_minvers=`echo "$LT_version" | sed -e 's%^[^.]*\.%%' ` LT_minnum=`echo "$LT_minvers" | sed -e 's%[^0-9].*%%'` if [ $LT_majvers -lt 1 ] || [ $LT_majvers = 1 -a $LT_minnum -lt 4 ] then echo "Minimum version of libtool is 1.4. You have $LT_version installed." exit 1 fi -echo $aclocal $ACLOCAL_FLAGS -$aclocal $ACLOCAL_FLAGS - -# Create local copy so that the incremental updates will work. -rm -f ./autoheader +# Create local copies so that the incremental updates will work. +rm -f ./autoconf ./automake ./autoheader ./libtool +ln -s `which $libtool` ./libtool +ln -s `which $autoconf` ./autoconf +ln -s `which $automake` ./automake ln -s `which $autoheader` ./autoheader -if - echo $autoheader --version < /dev/null > /dev/null 2>&1 - $autoheader --version < /dev/null > /dev/null 2>&1 -then - echo $autoheader - $autoheader -fi +echo "$autoconf:\t" | tr '\n' ' ' +$autoconf --version | head -n 1 + +echo "$automake:\t" | tr '\n' ' ' +$automake --version | head -n 1 rm -rf libltdl libltdl.tar echo $libtoolize --ltdl --force --copy # Unset GREP_OPTIONS as any coloring can mess up the AC_CONFIG_AUX_DIR matching patterns GREP_OPTIONS= $libtoolize --ltdl --force --copy -echo $aclocal $ACLOCAL_FLAGS -$aclocal $ACLOCAL_FLAGS - # Emulate the old --ltdl-tar option... # If the libltdl directory is required we will unpack it later tar -cf libltdl.tar libltdl rm -rf libltdl +echo $aclocal $ACLOCAL_FLAGS +$aclocal $ACLOCAL_FLAGS + +echo $autoheader +$autoheader + echo $automake --add-missing --include-deps --copy $automake --add-missing --include-deps --copy echo $autoconf $autoconf test -f libtool.m4 || touch libtool.m4 test -f ltdl.m4 || touch ltdl.m4 echo Now run ./configure trap '' 0