]> git.donarmstrong.com Git - lilypond.git/blobdiff - autogen.sh
* tex/titledefs.tex: Replaced \ifx\blabla\undefined
[lilypond.git] / autogen.sh
index 0b9241673a999cdbdda5009a06f45545ad55cc57..f851875cab1db911e683eb93339d0d4b3a9240a0 100755 (executable)
@@ -1,42 +1,63 @@
 #!/bin/sh
-# WARNING WARNING WARNING
-# do not edit! this is autogen.sh, generated from stepmake/autogen.sh
-#!/bin/sh
 # Run this to generate configure and initial GNUmakefiles
 
 srcdir=`dirname $0`
-DIE=0
-
-# autoconf > 2.50 is not very common yet,
-# and disappointingly incompatible with the widely available 2.13
-version=`autoconf --version 2>/dev/null | awk '{print $3}'`
-if test "$version" != "2.13"; then
-  echo "ERROR: Please install autoconf 2.13"
-  exit 1
+
+
+if [ ! -f aclocal.m4 -o stepmake/aclocal.m4 -nt aclocal.m4 ]; then
+    echo "stepmake/aclocal.m4 is newer. Copying file." 
+    cp -f stepmake/aclocal.m4 aclocal.m4
 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
+if [ ! -f autogen.sh -o 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 -n 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
 
-for coin in `find $srcdir -name configure.in -print`
+for i in $srcdir/configure.in #`find $srcdir -name configure.in -print`
 do 
-  dr=`dirname $coin`
-  echo processing $dr
+  dir=`dirname $i`
+  echo processing $dir
   (
-      cd $dr
+      cd $dir
       echo "Running autoconf ..."
-      autoconf
+      $autoconf
   )
 done
 
 #conf_flags="--enable-maintainer-mode --enable-compile-warnings" #--enable-iso-c
-if test -z "$NOCONFIGURE"; then
-  echo Running $srcdir/configure $conf_flags "$@" ...
-  $srcdir/configure $conf_flags "$@"
-else
-  echo Skipping configure process.
+if test -n "$NOCONFIGURE"; then
+    echo Skipping configure process.
+    exit 0
+fi
+
+if test -z "$*"; then
+    echo "warning: about to run \`./configure' without arguments."
+    echo "arguments on the \`$0\'"
+    echo "command line will be passed to \`./configure'."
+    echo
 fi
+
+echo Running $srcdir/configure $conf_flags "$@" ...
+$srcdir/configure $conf_flags "$@"