Browse Source

Use environment variables for most used programs.
Run gettextize. Restore po/ChangeLog atfer that.
Parse gettextize output to copy gettext macros to gettext.m4.

Pavel Roskin 23 years ago
parent
commit
05fc61d657
1 changed files with 37 additions and 7 deletions
  1. 37 7
      autogen.sh

+ 37 - 7
autogen.sh

@@ -1,6 +1,13 @@
 #! /bin/sh
 # Run this to generate all the initial makefiles, etc.
 
+# Make it possible to specify path in the environment
+: ${AUTOCONF=autoconf}
+: ${AUTOHEADER=autoheader}
+: ${AUTOMAKE=automake}
+: ${ACLOCAL=aclocal}
+: ${GETTEXTIZE=gettextize}
+
 srcdir=`dirname $0`
 test -z "$srcdir" && srcdir=.
 
@@ -9,17 +16,40 @@ cd $srcdir
 
 : ${CVS=cvs}
 test -d macros || $CVS co -d macros gnome-common/macros || exit 1
-test -d intl || $CVS co -d intl gnome-common/intl || exit 1
 
-aclocal -I macros $ACLOCAL_FLAGS || exit 1
-autoheader || exit 1
-autoconf || exit 1
-automake -a || exit 1
+# Ensure that gettext is reasonably new.
+gettext_ver=`$GETTEXTIZE --version | sed -n '1s/^.* //p'`
+
+case $gettext_ver in
+  0.10.3[89]) ;;
+  *) echo "Don't use gettext other than versions 0.10.38 and 0.10.39"
+     exit 1;;
+esac
+
+rm -rf intl
+$GETTEXTIZE --copy --force >tmpout || exit 1
+rm -f po/ChangeLog
+mv po/ChangeLog~ po/ChangeLog
+
+# Ugly way to parse the instructions gettexize gives us.
+m4files="`cat tmpout | sed -n -e '/^Please/,/^from/s/^  *//p'`"
+fromdir=`cat tmpout | sed -n -e '/^Please/,/^from/s/^from the \([^ ]*\) .*$/\1/p'`
+rm tmpout
+rm -rf gettext.m4
+mkdir gettext.m4
+for i in $m4files; do
+  cp -f $fromdir/$i gettext.m4
+done
+
+$ACLOCAL -I macros -I gettext.m4 $ACLOCAL_FLAGS || exit 1
+$AUTOHEADER || exit 1
+$AUTOCONF || exit 1
+$AUTOMAKE -a || exit 1
 
 cd vfs/samba || exit 1
 date -u >include/stamp-h.in
-autoheader || exit 1
-autoconf || exit 1
+$AUTOHEADER || exit 1
+$AUTOCONF || exit 1
 ) || exit 1
 
 $srcdir/configure --cache-file=config.cache --enable-maintainer-mode "$@"