]> git.lyx.org Git - lyx.git/blobdiff - autogen.sh
the export patch from Dekel
[lyx.git] / autogen.sh
index a4086511e776f8023aec670fc52046f66faa8462..ea2358ed909b59a4d6981a721b851a828436b4d9 100755 (executable)
@@ -4,60 +4,94 @@ ACLOCAL=aclocal
 AUTOHEADER=autoheader
 AUTOMAKE="automake -a -c --foreign"
 AUTOCONF=autoconf
+GNUM4=
+
+echo -n "Locating GNU m4... "
+for prog in $M4 gm4 gnum4 m4 ; do
+  case `$prog --version 2>&1` in
+    *GNU*) ok=yes
+           GNUM4=$prog
+          echo "found: $GNUM4"
+          break ;;
+    *) ;;
+  esac
+done
+if test x$ok = xno ; then
+    echo "not found."
+fi
+
+# Generate acinclude.m4
+echo -n "Generate acinclude.m4... "
+rm -f acinclude.m4 sigc++/acinclude.m4
+touch acinclude.m4
+for fil in config/lyxinclude.m4 config/libtool.m4 config/gettext.m4 config/lcmessage.m4 config/progtest.m4 config/sigc++.m4 config/kde.m4 config/gtk--.m4 config/gnome--.m4 config/gnome.m4 config/pspell.m4; do
+    cat $fil >> acinclude.m4
+done
+touch sigc++/acinclude.m4
+for fil in config/libtool.m4 ; do
+    cat $fil >> sigc++/acinclude.m4
+done
+echo "done."
+
+# Generate the ext_l10n.h
+echo -n "Generate the ext_l10n file..."
+rm -f src/ext_l10n.h
+# first the ui file(s)
+grep -i -E "submenu|item|optitem" < lib/ui/default.ui | cut -d '"' -f 2 | awk '{printf "_(\"%s\");\n", $0}' > src/ext_l10n.h
+# then the layout files
+cat lib/layouts/*.layout lib/layouts/*.inc | grep -i -E "[ ]*style .+$" | cut -d ' ' -f 2 | sort | uniq | awk '{printf "_(\"%s\");\n", $0}' >> src/ext_l10n.h
+echo "done."
 
 # 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 -n "Building macros... "
+       $ACLOCAL ; ( cd lib/reLyX; $ACLOCAL ) ; ( cd sigc++; $ACLOCAL ) 
+       echo "done."
 else
        echo "aclocal not found -- aborting"
        exit
 fi
 
 if ( autoheader --version ) </dev/null > /dev/null 2>&1; then
-       echo "Building config header template"
-       $AUTOHEADER
+       echo -n "Building config header template... "
+       $AUTOHEADER ; ( cd sigc++; $AUTOHEADER )
+       echo "done."
 else
        echo "autoheader not found -- aborting"
        exit
 fi
 
 if ( $AUTOMAKE --version ) </dev/null > /dev/null 2>&1; then
-       echo "Building Makefile templates"
-       $AUTOMAKE ; (cd lib/reLyX ; $AUTOMAKE )
+       echo -n "Building Makefile templates... "
+       $AUTOMAKE ; ( cd lib/reLyX ; $AUTOMAKE ) ; ( cd sigc++; $AUTOMAKE )
+       echo "done."
 else
        echo "automake not found -- aborting"
        exit
 fi
 
 if ( $AUTOCONF --version ) </dev/null > /dev/null 2>&1; then
-       echo "Building configure"
-       $AUTOCONF ; ( cd lib/reLyX ; $AUTOCONF )
-       echo 'run "./configure ; make"'
+       echo -n "Building configure... "
+       $AUTOCONF ; ( cd lib/reLyX ; $AUTOCONF ) ; ( cd sigc++; $AUTOCONF )
+       echo "done."
 else
        echo "autoconf not found -- aborting"
        exit
 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
-                  ok=yes
-                  break ;;
-    *) ;;
-  esac
-done
-if test $ok = no ; then
-    echo "GNU m4 not found -- aborting"
+# Autogenerate lib/configure.m4.
+if test x$GNUM4 != x ; then
+    echo -n "Building lib/configure ... "
+    rm -f lib/configure
+    $GNUM4 lib/configure.m4 > lib/configure
+    chmod a+x lib/configure
+    echo "done."
+else
+    echo "No GNU m4. Impossible to build lib/configure -- aborting"
     exit
 fi
 
-echo "Creating POTFILES.in..."
+echo -n "Creating POTFILES.in... "
 cat <<EOF > tmppot
 #
 # This file is automatically generated by autogen.sh. This command was
@@ -72,7 +106,11 @@ cat <<EOF > tmppot
 
 EOF
 
-grep -E "_\(\".*\"\)" `find src -name \*.[hHC]` | \
+grep -l -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