autogen.sh 3.32 KB
Newer Older
Owen Taylor's avatar
Owen Taylor committed
1 2 3
#!/bin/sh
# Run this to generate all the initial makefiles, etc.

4 5 6
srcdir=`dirname $0`
test -z "$srcdir" && srcdir=.

7 8
ORIGDIR=`pwd`
cd $srcdir
9 10
PROJECT=GLib
TEST_TYPE=-f
11
FILE=glib/glib.h
12

Owen Taylor's avatar
Owen Taylor committed
13 14
DIE=0

15
have_libtool=false
16 17
if libtoolize --version < /dev/null > /dev/null 2>&1 ; then
	libtool_version=`libtoolize --version | sed 's/^[^0-9]*\([0-9.][0-9.]*\).*/\1/'`
18
	case $libtool_version in
19
	    1.4*|1.5*|2.2*)
20 21 22 23 24 25 26 27
		have_libtool=true
		;;
	esac
fi
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,"
28
	echo "or get the source tarball at http://ftp.gnu.org/gnu/libtool/"
29 30 31
	DIE=1
fi

32 33 34 35 36 37 38 39
(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 ftp://ftp.gnome.org/pub/GNOME/sources/gtk-doc/"
	DIE=1
}

Owen Taylor's avatar
Owen Taylor committed
40 41
(autoconf --version) < /dev/null > /dev/null 2>&1 || {
	echo
42
	echo "You must have autoconf installed to compile $PROJECT."
43 44
	echo "Install the appropriate package for your distribution,"
	echo "or get the source tarball at http://ftp.gnu.org/gnu/autoconf/"
Owen Taylor's avatar
Owen Taylor committed
45 46 47
	DIE=1
}

Matthias Clasen's avatar
Matthias Clasen committed
48 49 50 51
if automake-1.11 --version < /dev/null > /dev/null 2>&1 ; then
    AUTOMAKE=automake-1.11
    ACLOCAL=aclocal-1.11
else if automake-1.10 --version < /dev/null > /dev/null 2>&1 ; then
Matthias Clasen's avatar
Matthias Clasen committed
52 53
    AUTOMAKE=automake-1.10
    ACLOCAL=aclocal-1.10
Matthias Clasen's avatar
Matthias Clasen committed
54 55 56
else if automake-1.9 --version < /dev/null > /dev/null 2>&1 ; then
    AUTOMAKE=automake-1.9
    ACLOCAL=aclocal-1.9
Matthias Clasen's avatar
Matthias Clasen committed
57
else
Owen Taylor's avatar
Owen Taylor committed
58
	echo
Matthias Clasen's avatar
Matthias Clasen committed
59
	echo "You must have automake 1.9.x, 1.10.x or 1.11.x installed to compile $PROJECT."
60 61
	echo "Install the appropriate package for your distribution,"
	echo "or get the source tarball at http://ftp.gnu.org/gnu/automake/"
Owen Taylor's avatar
Owen Taylor committed
62
	DIE=1
63
fi
Matthias Clasen's avatar
Matthias Clasen committed
64
fi
Matthias Clasen's avatar
Matthias Clasen committed
65
fi
Owen Taylor's avatar
Owen Taylor committed
66 67 68 69 70

if test "$DIE" -eq 1; then
	exit 1
fi

71 72
test $TEST_TYPE $FILE || {
	echo "You must run this script in the top-level $PROJECT directory"
Owen Taylor's avatar
Owen Taylor committed
73 74 75
	exit 1
}

76 77 78 79 80
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
Owen Taylor's avatar
Owen Taylor committed
81 82
fi

83 84
rm -rf autom4te.cache

85 86 87 88 89
# 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

90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
if [ ! -d build ]; then
  if [ -x "`which svn`" ]; then
    echo
    echo "=============================================================="
    echo "  your checkout doesn't contain build/."
    echo "      fetching it from http://svn.gnome.org/svn/build/trunk/"
    echo "=============================================================="
    echo

    svn checkout http://svn.gnome.org/svn/build/trunk/ build
  else
    echo
    echo 'warning: build/ directory is missing and no "svn" to fetch it!'
    echo
  fi
fi

107
$ACLOCAL $ACLOCAL_FLAGS || exit $?
108

109 110
libtoolize --force || exit $?
gtkdocize || exit $?
Tim Janik's avatar
Tim Janik committed
111

112
autoheader || exit $?
113

114 115 116
$AUTOMAKE --add-missing || exit $?
autoconf || exit $?
cd $ORIGDIR || exit $?
Tim Janik's avatar
Tim Janik committed
117

118
if test -z "$AUTOGEN_SUBDIR_MODE"; then
119
        $srcdir/configure --enable-maintainer-mode $AUTOGEN_CONFIGURE_ARGS "$@" || exit $?
Owen Taylor's avatar
Owen Taylor committed
120

121 122
        echo 
        echo "Now type 'make' to compile $PROJECT."
123
fi