]> Pileus Git - ~andy/gtk/blobdiff - autogen.sh
Bug 551355 – [PATCH] Make glib build with libtool 2.2
[~andy/gtk] / autogen.sh
index cfddfde67cd98030c1a5f438116f8139a1415d1c..d3fb066d3e1933a9acd2b631452ccff48c7b8df6 100755 (executable)
@@ -13,10 +13,10 @@ FILE=gdk
 DIE=0
 
 have_libtool=false
-if libtool --version < /dev/null > /dev/null 2>&1 ; then
-       libtool_version=`libtoolize --version |  libtoolize --version | sed 's/^[^0-9]*\([0-9.]\+\).*/\1/'`
+if libtoolize --version < /dev/null > /dev/null 2>&1 ; then
+       libtool_version=`libtoolize --version | sed 's/^[^0-9]*\([0-9.][0-9.]*\).*/\1/'`
        case $libtool_version in
-           1.4*)
+           1.4*|1.5*|2.2*)
                have_libtool=true
                ;;
        esac
@@ -25,34 +25,34 @@ if $have_libtool ; then : ; else
        echo
        echo "You must have libtool 1.4 installed to compile $PROJECT."
        echo "Install the appropriate package for your distribution,"
-       echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
+       echo "or get the source tarball at http://ftp.gnu.org/gnu/libtool/"
        DIE=1
 fi
 
+(gtkdocize --version) < /dev/null > /dev/null 2>&1 || {
+       echo
+       echo "You must have gtk-doc installed to compile $PROJECT."
+       echo "Install the appropriate package for your distribution,"
+       echo "or get the source tarball at http://ftp.gnome.org/pub/GNOME/sources/gtk-doc/"
+       DIE=1
+}
+
 (autoconf --version) < /dev/null > /dev/null 2>&1 || {
        echo
        echo "You must have autoconf installed to compile $PROJECT."
-       echo "libtool the appropriate package for your distribution,"
-       echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
+       echo "Install the appropriate package for your distribution,"
+       echo "or get the source tarball at http://ftp.gnu.org/gnu/autoconf/"
        DIE=1
 }
 
-have_automake=false
-if automake --version < /dev/null > /dev/null 2>&1 ; then
-       automake_version=`automake --version | grep 'automake (GNU automake)' | sed 's/^[^0-9]*\(.*\)/\1/'`
-       case $automake_version in
-          1.2*|1.3*|1.4) 
-               ;;
-          *)
-               have_automake=true
-               ;;
-       esac
-fi
-if $have_automake ; then : ; else
+if automake-1.7 --version < /dev/null > /dev/null 2>&1 ; then
+    AUTOMAKE=automake-1.7
+    ACLOCAL=aclocal-1.7
+else
        echo
-       echo "You must have automake 1.4-p1 installed to compile $PROJECT."
-       echo "Get ftp://ftp.gnu.org/pub/gnu/automake/automake-1.4-p1.tar.gz"
-       echo "(or a newer version if it is available)"
+       echo "You must have automake 1.7.x installed to compile $PROJECT."
+       echo "Install the appropriate package for your distribution,"
+       echo "or get the source tarball at http://ftp.gnu.org/gnu/automake/"
        DIE=1
 fi
 
@@ -65,19 +65,17 @@ test $TEST_TYPE $FILE || {
        exit 1
 }
 
-if test -z "$*"; then
-       echo "I am going to run ./configure with no arguments - if you wish "
-        echo "to pass any to it, please specify them on the $0 command line."
+if test -z "$AUTOGEN_SUBDIR_MODE"; then
+        if test -z "$*"; then
+                echo "I am going to run ./configure with no arguments - if you wish "
+                echo "to pass any to it, please specify them on the $0 command line."
+        fi
 fi
 
-case $CC in
-*xlc | *xlc\ * | *lcc | *lcc\ *) am_opt=--include-deps;;
-esac
-
 if test -z "$ACLOCAL_FLAGS"; then
 
-       acdir=`aclocal --print-ac-dir`
-        m4list="glib-2.0.m4 gettext.m4"
+       acdir=`$ACLOCAL --print-ac-dir`
+        m4list="glib-2.0.m4 glib-gettext.m4"
 
        for file in $m4list
        do
@@ -93,28 +91,27 @@ if test -z "$ACLOCAL_FLAGS"; then
        done
 fi
 
-echo "Running gettextize...  Ignore non-fatal messages."
-# Hmm, we specify --force here, since otherwise things dont'
-# get added reliably, but we don't want to overwrite intl
-# while making dist.
-echo "no" | gettextize --copy --force
+rm -rf autom4te.cache
+
+# README and INSTALL are required by automake, but may be deleted by clean
+# up rules. to get automake to work, simply touch these here, they will be
+# regenerated from their corresponding *.in files by ./configure anyway.
+touch README INSTALL
 
-#
-# Really bad hack
-echo "Munging po/Makefile.in.in"
-sed s%@PACKAGE@%@GETTEXT_PACKAGE@% < po/Makefile.in.in > po/Makefile.in.in.new
-mv po/Makefile.in.in.new po/Makefile.in.in
+$ACLOCAL $ACLOCAL_FLAGS || exit $?
 
-aclocal $ACLOCAL_FLAGS
+libtoolize --force || exit $?
+gtkdocize || exit $?
 
-# optionally feature autoheader
-(autoheader --version)  < /dev/null > /dev/null 2>&1 && autoheader
+autoheader || exit $?
 
-automake -a $am_opt
-autoconf
-cd $ORIGDIR
+$AUTOMAKE --add-missing || exit $?
+autoconf || exit $?
+cd $ORIGDIR || exit $?
 
-$srcdir/configure --enable-maintainer-mode "$@"
+if test -z "$AUTOGEN_SUBDIR_MODE"; then
+        $srcdir/configure --enable-maintainer-mode $AUTOGEN_CONFIGURE_ARGS "$@" || exit $?
 
-echo 
-echo "Now type 'make' to compile $PROJECT."
+        echo 
+        echo "Now type 'make' to compile $PROJECT."
+fi