[gxml] * rewrite autogen.sh, modeled after libfolks
- From: Richard Hans Schwarting <rschwart src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gxml] * rewrite autogen.sh, modeled after libfolks
- Date: Wed, 22 Aug 2012 07:37:40 +0000 (UTC)
commit 45958903f1a146c6cd291e7cf2e1e8dc8ca1a641
Author: Richard Schwarting <aquarichy gmail com>
Date: Wed Aug 22 03:28:21 2012 -0400
* rewrite autogen.sh, modeled after libfolks
ChangeLog | 2 -
INSTALL | 8 ---
autogen.sh | 155 +++++----------------------------------------------
test/wscript_build | 15 -----
4 files changed, 16 insertions(+), 164 deletions(-)
---
diff --git a/autogen.sh b/autogen.sh
index d4437e3..51be53e 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -1,11 +1,12 @@
#!/bin/sh
-# Run this to generate all the initial makefiles, etc.
+
+# Run this to generate all the initial makefiles, etc. You'll want to
+# make sure that you have Makefile.am and configure.ac already.
srcdir=`dirname $0`
test -z "$srcdir" && srcdir=.
-DIE=0
-
+# Set paths if GNOME2_DIR is set
if [ -n "$GNOME2_DIR" ]; then
ACLOCAL_FLAGS="-I $GNOME2_DIR/share/aclocal $ACLOCAL_FLAGS"
LD_LIBRARY_PATH="$GNOME2_DIR/lib:$LD_LIBRARY_PATH"
@@ -14,144 +15,20 @@ if [ -n "$GNOME2_DIR" ]; then
export LD_LIBRARY_PATH
fi
-(test -f $srcdir/configure.ac) || {
- echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
- echo " top-level package directory"
- exit 1
-}
-
-(autoconf --version) < /dev/null > /dev/null 2>&1 || {
- echo
- echo "**Error**: You must have \`autoconf' installed."
- echo "Download the appropriate package for your distribution,"
- echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
- DIE=1
-}
-
-(grep "^IT_PROG_INTLTOOL" $srcdir/configure.ac >/dev/null) && {
- (intltoolize --version) < /dev/null > /dev/null 2>&1 || {
- echo
- echo "**Error**: You must have \`intltool' installed."
- echo "You can get it from:"
- echo " ftp://ftp.gnome.org/pub/GNOME/"
- DIE=1
- }
-}
-
-(grep "^AM_PROG_XML_I18N_TOOLS" $srcdir/configure.ac >/dev/null) && {
- (xml-i18n-toolize --version) < /dev/null > /dev/null 2>&1 || {
- echo
- echo "**Error**: You must have \`xml-i18n-toolize' installed."
- echo "You can get it from:"
- echo " ftp://ftp.gnome.org/pub/GNOME/"
- DIE=1
- }
-}
-
-(grep "^LT_INIT" $srcdir/configure.ac >/dev/null) && {
- (libtool --version) < /dev/null > /dev/null 2>&1 || {
- echo
- echo "**Error**: You must have \`libtool' installed."
- echo "You can get it from: ftp://ftp.gnu.org/pub/gnu/"
- DIE=1
- }
-}
-
-(grep "^AM_GLIB_GNU_GETTEXT" $srcdir/configure.ac >/dev/null) && {
- (grep "sed.*POTFILES" $srcdir/configure.ac) > /dev/null || \
- (glib-gettextize --version) < /dev/null > /dev/null 2>&1 || {
- echo
- echo "**Error**: You must have \`glib' installed."
- echo "You can get it from: ftp://ftp.gtk.org/pub/gtk"
- DIE=1
- }
-}
-
-(automake --version) < /dev/null > /dev/null 2>&1 || {
- echo
- echo "**Error**: You must have \`automake' installed."
- echo "You can get it from: ftp://ftp.gnu.org/pub/gnu/"
- DIE=1
- NO_AUTOMAKE=yes
-}
-
-
-# if no automake, don't bother testing for aclocal
-test -n "$NO_AUTOMAKE" || (aclocal --version) < /dev/null > /dev/null 2>&1 || {
- echo
- echo "**Error**: Missing \`aclocal'. The version of \`automake'"
- echo "installed doesn't appear recent enough."
- echo "You can get automake from ftp://ftp.gnu.org/pub/gnu/"
- DIE=1
-}
-
-if test "$DIE" -eq 1; then
- exit 1
-fi
-
-if test -z "$*"; then
- echo "**Warning**: I am going to run \`configure' with no arguments."
- echo "If you wish to pass any to it, please specify them on the"
- echo \`$0\'" command line."
- echo
-fi
-
-case $CC in
-xlc )
- am_opt=--include-deps;;
-esac
-
-for coin in `find $srcdir -path $srcdir/CVS -prune -o -name configure.ac -print`
-do
- dr=`dirname $coin`
- if test -f $dr/NO-AUTO-GEN; then
- echo skipping $dr -- flagged as no auto-gen
- else
- echo processing $dr
- ( cd $dr
-
- aclocalinclude="$ACLOCAL_FLAGS"
+# TODO: consider adding specifying automake and aclocal version here ala libfolks
- if grep "^AM_GLIB_GNU_GETTEXT" configure.ac >/dev/null; then
- echo "Creating $dr/aclocal.m4 ..."
- test -r $dr/aclocal.m4 || touch $dr/aclocal.m4
- echo "Running glib-gettextize... Ignore non-fatal messages."
- echo "no" | glib-gettextize --force --copy
- echo "Making $dr/aclocal.m4 writable ..."
- test -r $dr/aclocal.m4 && chmod u+w $dr/aclocal.m4
- fi
- if grep "^IT_PROG_INTLTOOL" configure.ac >/dev/null; then
- echo "Running intltoolize..."
- intltoolize --copy --force --automake
- fi
- if grep "^AM_PROG_XML_I18N_TOOLS" configure.ac >/dev/null; then
- echo "Running xml-i18n-toolize..."
- xml-i18n-toolize --copy --force --automake
- fi
- if grep "^LT_INIT" configure.ac >/dev/null; then
- if test -z "$NO_LIBTOOLIZE" ; then
- echo "Running libtoolize..."
- libtoolize --force --copy
- fi
- fi
- echo "Running aclocal $aclocalinclude ..."
- aclocal $aclocalinclude
- if grep "^A[CM]_CONFIG_HEADER" configure.ac >/dev/null; then
- echo "Running autoheader..."
- autoheader
- fi
- echo "Running automake --gnu $am_opt ..."
- automake --add-missing --gnu $am_opt
- echo "Running autoconf ..."
- autoconf
- )
- fi
-done
+autoreconf -i -f
+intltoolize --force --copy --automake
+# presumably, this will obvious our tests for:
+# srcdir, autoconf, intltool, xml-i18n-toolize (opt), libtool, glib (gettext), automake, aclocal
+# TODO: test that disabling any of these results in autoreconf and intltoolize handling it
+# gracefully or re-add checks
-if test x$NOCONFIGURE = x; then
- echo Running $srcdir/configure "$@" ...
- $srcdir/configure "$@" \
- && echo Now type \`make\' to compile. || exit 1
+# Run ./configure
+if [ -z "$NOCONFIGURE" ]; then
+ echo Running $srcdir/configure "$@" ...
+ $srcdir/configure "$@" \
+ && echo Now type \`make\' to compile. || exit 1
else
echo Skipping configure process.
fi
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]