lyx_mirror/autogen.sh
Lars Gullik Bjønnes 5458081c09 proof of concept l10n for ui menus
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@922 a592a061-630c-0410-9148-cb99ea01b6c8
2000-07-26 07:09:53 +00:00

113 lines
3.5 KiB
Bash
Executable File

#!/bin/sh
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/gnome/gtk.m4 config/gnome/aclocal-include.m4 config/gnome/gnome-print-check.m4 config/gnome/compiler-flags.m4 config/gnome/gnome-pthread-check.m4 config/gnome/curses.m4 config/gnome/gnome-support.m4 config/gnome/gnome-bonobo-check.m4 config/gnome/gnome-undelfs.m4 config/gnome/gnome-common.m4 config/gnome/gnome-vfs.m4 config/gnome/gnome-fileutils.m4 config/gnome/gnome-x-checks.m4 config/gnome/gnome-ghttp-check.m4 config/gnome/gnome-xml-check.m4 config/gnome/gnome-gnorba-check.m4 config/gnome/gnome.m4 config/gnome/gnome-guile-checks.m4 config/gnome/gperf-check.m4 config/gnome/gnome-libgtop-check.m4 config/gnome/linger.m4 config/gnome/gnome-objc-checks.m4 config/gnome/need-declaration.m4 config/gnome/gnome-orbit-check.m4 config/gnome/gtk--.m4 config/gnome/gnome--.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..."
grep -i -E "submenu|item|optitem" < lib/ui/default.ui | cut -d '"' -f 2 | 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 -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 -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 -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 -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.
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 -n "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 -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