X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=autogen.sh;h=d3fb066d3e1933a9acd2b631452ccff48c7b8df6;hb=64195589dcdc59acb90f341f03dc3f207bed6c83;hp=c298ddee64fda3d0cc2e6afeb6b811259021aa9d;hpb=a11062b2d9716dffa537906a03ce0f57b71ef656;p=~andy%2Fgtk diff --git a/autogen.sh b/autogen.sh index c298ddee6..d3fb066d3 100755 --- a/autogen.sh +++ b/autogen.sh @@ -1,52 +1,117 @@ #!/bin/sh # Run this to generate all the initial makefiles, etc. +srcdir=`dirname $0` +test -z "$srcdir" && srcdir=. + +ORIGDIR=`pwd` +cd $srcdir +PROJECT=Gtk+ +TEST_TYPE=-d +FILE=gdk + DIE=0 -(autoconf --version) < /dev/null > /dev/null 2>&1 || { +have_libtool=false +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.5*|2.2*) + have_libtool=true + ;; + esac +fi +if $have_libtool ; then : ; else echo - echo "You must have autoconf installed to compile GTK+." - echo "Download the appropriate package for your distribution," - echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/" + 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 http://ftp.gnu.org/gnu/libtool/" DIE=1 -} +fi -(libtool --version) < /dev/null > /dev/null 2>&1 || { +(gtkdocize --version) < /dev/null > /dev/null 2>&1 || { echo - echo "You must have libtool installed to compile GTK+." - echo "Get ftp://alpha.gnu.org/gnu/libtool-1.0h.tar.gz" - echo "(or a newer version if it is available)" + 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 } -(automake --version) < /dev/null > /dev/null 2>&1 || { +(autoconf --version) < /dev/null > /dev/null 2>&1 || { echo - echo "You must have automake installed to compile GTK+." - echo "Get ftp://ftp.cygnus.com/pub/home/tromey/automake-1.2d.tar.gz" - echo "(or a newer version if it is available)" + echo "You must have autoconf installed to compile $PROJECT." + echo "Install the appropriate package for your distribution," + echo "or get the source tarball at http://ftp.gnu.org/gnu/autoconf/" DIE=1 } +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.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 + if test "$DIE" -eq 1; then exit 1 fi -(test -d gtk && test -d glib) || { - echo "You must run this script in the top-level GTK+ directory" +test $TEST_TYPE $FILE || { + echo "You must run this script in the top-level $PROJECT directory" 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 -for i in glib . -do - echo processing $i - (cd $i; aclocal; automake; autoconf) -done -./configure "$@" +if test -z "$ACLOCAL_FLAGS"; then -echo -echo "Now type 'make' to compile GTK+." + acdir=`$ACLOCAL --print-ac-dir` + m4list="glib-2.0.m4 glib-gettext.m4" + + for file in $m4list + do + if [ ! -f "$acdir/$file" ]; then + echo "WARNING: aclocal's directory is $acdir, but..." + echo " no file $acdir/$file" + echo " You may see fatal macro warnings below." + echo " If these files are installed in /some/dir, set the ACLOCAL_FLAGS " + echo " environment variable to \"-I /some/dir\", or install" + echo " $acdir/$file." + echo "" + fi + done +fi + +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 + +$ACLOCAL $ACLOCAL_FLAGS || exit $? + +libtoolize --force || exit $? +gtkdocize || exit $? + +autoheader || exit $? + +$AUTOMAKE --add-missing || exit $? +autoconf || exit $? +cd $ORIGDIR || exit $? + +if test -z "$AUTOGEN_SUBDIR_MODE"; then + $srcdir/configure --enable-maintainer-mode $AUTOGEN_CONFIGURE_ARGS "$@" || exit $? + + echo + echo "Now type 'make' to compile $PROJECT." +fi