X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=autogen.sh;h=b9b81f6d76441307c0a87eacefd64e33a0539079;hb=e54ae72e5fac6f750c3f7972c74bb42b57f3a049;hp=d52fbe1dfbec0278137fec8e63acafa895449747;hpb=27de1486ca34aaad446adb798d71a77d6f6304da;p=lyx.git diff --git a/autogen.sh b/autogen.sh index d52fbe1dfb..b9b81f6d76 100755 --- a/autogen.sh +++ b/autogen.sh @@ -1,41 +1,124 @@ #!/bin/sh -ACLOCAL=aclocal -AUTOHEADER=autoheader -AUTOMAKE="automake -a -c --foreign" -AUTOCONF=autoconf +ACLOCAL="aclocal -I m4 -I config" +AUTOHEADER="autoheader" +AUTOMAKE="automake --add-missing --copy --foreign" +AUTOCONF="autoconf" + +# Discover what version of automake we are using. +automake_version=`$AUTOMAKE --version 2>/dev/null | head -n 1` + +test "$automake_version" != "" && { + echo "Using $automake_version" +} || { + echo "LyX requires automake >= 1.5" + exit 1 +} + +case $automake_version in + *' '1.[5-9]*|*' '1.10*) + ;; + *) + + echo "This automake version is not supported by LyX." + echo "LyX only supports automake 1.5 to 1.10." + exit 1 + ;; +esac + +# Discover what version of autoconf we are using. +autoversion=`$AUTOCONF --version 2>/dev/null | head -n 1` + +test "$autoversion" != "" && { + echo "Using $autoversion" +} || { + echo "LyX requires autoconf >= 2.52" + exit 1 +} + +case $autoversion in + *' '2.5[2-9]|*' '2.60[ab]|*' '2.6[0-1]) + ;; + *) + echo "This autoconf version is not supported by LyX." + echo "LyX only supports autoconf 2.52-2.61." + exit 1 + ;; +esac + +echo -n "Locating GNU m4... " +GNUM4= +for prog in $M4 gm4 gnum4 m4; do + # continue if $prog generates error (e.g. does not exist) + ( $prog --version ) < /dev/null > /dev/null 2>&1 + if test $? -ne 0 ; then continue; fi + + # /dev/null input prevents a hang of the script for some m4 compilers (e.g. on FreeBSD) + case `$prog --version < /dev/null 2>&1` in + *GNU*) GNUM4=$prog + break ;; + esac +done +if test x$GNUM4 = x ; then + echo "not found." + exit 1 +else + echo `which $GNUM4` +fi + +# Delete old cache directories. +# automake will stop if their contents was created by an earlier version. +rm -rf autom4te.cache # Generate the Makefiles and configure files -if ( aclocal --version ) /dev/null 2>&1; then - echo "Building macros." - $ACLOCAL ; (cd lib/reLyX; $ACLOCAL ) +if ( $ACLOCAL --version ) < /dev/null > /dev/null 2>&1; then + echo "Building macros..." + for dir in . ; do + echo " $dir" + ( cd $dir ; $ACLOCAL ) + done + echo "done." else echo "aclocal not found -- aborting" - exit + exit 1 fi -if ( autoheader --version ) /dev/null 2>&1; then - echo "Building config header template" - $AUTOHEADER +if ( $AUTOHEADER --version ) < /dev/null > /dev/null 2>&1; then + echo "Building config header template..." + for dir in . ; do + echo " $dir" + ( cd $dir ; $AUTOHEADER ) + done + echo "done." else echo "autoheader not found -- aborting" - exit + exit 1 fi -if ( $AUTOMAKE --version ) /dev/null 2>&1; then - echo "Building Makefile templates" - $AUTOMAKE ; (cd lib/reLyX ; $AUTOMAKE ) +if ( $AUTOMAKE --version ) < /dev/null > /dev/null 2>&1; then + echo "Building Makefile templates..." + for dir in . ; do + echo " $dir" + ( cd $dir ; $AUTOMAKE ) + done + echo "done." else echo "automake not found -- aborting" - exit + exit 1 fi -if ( $AUTOCONF --version ) /dev/null 2>&1; then - echo "Building configure" - $AUTOCONF ; ( cd lib/reLyX ; $AUTOCONF ) - echo 'run "./configure ; make"' +if ( $AUTOCONF --version ) < /dev/null > /dev/null 2>&1; then + echo "Building configure..." + for dir in . ; do + echo " $dir" + ( cd $dir ; $AUTOCONF ) + done + echo "done." else echo "autoconf not found -- aborting" - exit + exit 1 fi +echo +echo 'run "./configure ; make"' +echo