]> git.lyx.org Git - lyx.git/blobdiff - autogen.sh
This is a dummy commit for posting the real changelog for the the last
[lyx.git] / autogen.sh
index 997cb75362ab8bab9ea9dbdfd0d49baa4ee0f9ae..da8b6aa655b94b22d1c2771e692ec4bf36c9b023 100755 (executable)
@@ -1,79 +1,92 @@
 #!/bin/sh
 
-ACLOCAL=aclocal
-AUTOHEADER=autoheader
-AUTOMAKE="automake -a -c --foreign"
-AUTOCONF=autoconf
+ACLOCAL="aclocal -I m4 -I config"
+AUTOHEADER="autoheader"
+AUTOMAKE="automake --add-missing --copy --foreign"
+AUTOCONF="autoconf"
+
+# Discover what version of automake we are using.
+automake_version=`$AUTOMAKE --version 2>/dev/null | head -n 1`
+
+test "$automake_version" != "" && {
+    echo "Using $automake_version"
+} || {
+    echo "LyX requires automake >= 1.8"
+    exit 1
+}
+
+case $automake_version in
+    *' '1.[8-9]*|*' '1.1[01]*)
+       ;;
+    *)
+
+       echo "This automake version is not supported by LyX."
+       echo "LyX only supports automake 1.8 to 1.11."
+       exit 1
+       ;;
+esac
+
+# Discover what version of autoconf we are using.
+autoversion=`$AUTOCONF --version 2>/dev/null | head -n 1`
+
+test "$autoversion" != "" && {
+    echo "Using $autoversion"
+} || {
+    echo "LyX requires autoconf >= 2.59c"
+    exit 1
+}
+
+
+case $autoversion in
+    *' '2.59[cd]|*' '2.60[ab]|*' '2.6[0-5])
+       ;;
+    *)
+       echo "This autoconf version is not supported by LyX."
+       echo "LyX only supports autoconf 2.59c-2.65."
+       exit 1
+       ;;
+esac
+
+# Delete old cache directories.
+# automake will stop if their contents was created by an earlier version.
+rm -rf autom4te.cache
 
 # Generate the Makefiles and configure files
-if ( aclocal --version ) </dev/null > /dev/null 2>&1; then
-       echo "Building macros."
-       $ACLOCAL ; (cd lib/reLyX; $ACLOCAL )
+echo "Building macros..."
+if ( $ACLOCAL --version ) < /dev/null > /dev/null 2>&1; then
+       $ACLOCAL
 else
        echo "aclocal not found -- aborting"
-       exit
+       exit 1
 fi
 
-if ( autoheader --version ) </dev/null > /dev/null 2>&1; then
-       echo "Building config header template"
+echo "Building config header template..."
+if ( $AUTOHEADER --version ) < /dev/null > /dev/null 2>&1; then
        $AUTOHEADER
 else
        echo "autoheader not found -- aborting"
-       exit
+       exit 1
 fi
 
-if ( $AUTOMAKE --version ) </dev/null > /dev/null 2>&1; then
-       echo "Building Makefile templates"
-       $AUTOMAKE ; (cd lib/reLyX ; $AUTOMAKE )
+echo "Building Makefile templates..."
+if ( $AUTOMAKE --version ) < /dev/null > /dev/null 2>&1; then
+       $AUTOMAKE
 else
        echo "automake not found -- aborting"
-       exit
+       exit 1
 fi
 
-if ( $AUTOCONF --version ) </dev/null > /dev/null 2>&1; then
-       echo "Building configure"
-       $AUTOCONF ; ( cd lib/reLyX ; $AUTOCONF )
-       echo 'run "./configure ; make"'
+echo "Building configure..."
+if ( $AUTOCONF --version ) < /dev/null > /dev/null 2>&1; then
+       $AUTOCONF
 else
        echo "autoconf not found -- aborting"
-       exit
+       exit 1
 fi
 
-# Autogenerate lib/configure.m4. We need GNU m4 for that and thus have
-# to try several ones.  
-ok=no
-for prog in $M4 gm4 gnum4 m4 ; do
-  case `$prog --help < /dev/null 2>&1 | grep traditional` in
-    *traditional*) echo "Building lib/configure"
-                  rm -f lib/configure
-                  $prog lib/configure.m4 >lib/configure
-                  chmod a+x lib/configure
-                  ok=yes
-                  break ;;
-    *) ;;
-  esac
-done
-if test $ok = no ; then
-    echo "GNU m4 not found -- aborting"
-    exit
-fi
+echo "Building po/POTFILES.in..."
+make -s -f po/Rules-lyx srcdir=po top_srcdir=. po/POTFILES.in
 
-echo "Creating POTFILES.in..."
-cat <<EOF > tmppot
-#
-# This file is automatically generated by autogen.sh. This command was
-# used to extract the files from the sources:
-#
-# grep -E "_\(\".*\"\)" \`find src -name \*.[hHC]\` | \\
-# awk 'BEGIN {FS= ":"} {print $1}' | sort | uniq
-#
-# This must be done when standing in lyx/
-#
-# This is all the files that contains internationalization strings.
-
-EOF
-
-grep -E "_\(\".*\"\)" `find src -name \*.[hHC]` | \
-awk 'BEGIN {FS= ":"} {print $1}' | sort -f -d | uniq >> tmppot
-mv tmppot po/POTFILES.in
-echo "done"
+echo
+echo 'run "./configure ; make"'
+echo