]> git.donarmstrong.com Git - lilypond.git/blobdiff - stepmake/autogen.sh
* GNUmakefile.in: config.h message fix.
[lilypond.git] / stepmake / autogen.sh
index db1218f170c26810184e2391821cd344f35346f4..36d6b4939ff9eb10f10577314e3449466910a05a 100755 (executable)
@@ -2,20 +2,32 @@
 # Run this to generate configure and initial GNUmakefiles
 
 srcdir=`dirname $0`
-DIE=0
 
-(autoconf --version) < /dev/null > /dev/null 2>&1 || {
-  echo
-  echo "ERROR: You must have \`autoconf' installed to."
-  echo "Download the appropriate package for your distribution,"
-  echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
-  DIE=1
-}
-
-if test "$DIE" -eq 1; then
-  exit 1
+if [ stepmake/autogen.sh -nt autogen.sh ]; then
+    echo "stepmake/autogen.sh is newer. Copying file." 
+    cp -f stepmake/autogen.sh autogen.sh
+    exec ./autogen.sh
 fi
 
+# Be paranoid: check for autoconf >= 2.50
+# Some setups have both autoconf 2.13 and 2.5x available through
+# a wrapper script: /usr/bin/autoconf.
+# This wrapper may incorrectly autoselect autoconf 2.50, but it
+# advertises itself as autoconf 2.13.
+# If you have such a setup, invoke this script as:
+#   autoconf=autoconf2.50 ./autogen.sh
+for i in autoconf2.50 autoconf-2.50 autoconf  false; do
+  version=`$i --version 2>/dev/null | head -1 | awk '{print $NF}' | awk -F. '{print $1 * 100 + $2}'`
+  if test "0$version" -ge 250; then
+    autoconf=$i
+    break
+  fi
+done
+
+if test -z "$autoconf"; then
+    echo "ERROR: Please install autoconf 2.50 or newer"
+    exit 1
+fi
 
 if test -z "$*"; then
   echo "WARNING: I am going to run \`configure' with no arguments."
@@ -31,7 +43,7 @@ do
   (
       cd $dr
       echo "Running autoconf ..."
-      autoconf
+      $autoconf
   )
 done