]> git.lyx.org Git - lyx.git/blobdiff - po/Makefile.in.in
move floatlist to textclass
[lyx.git] / po / Makefile.in.in
index 3b778981937a085bd9cde3cc9bb70f703f429077..5fee5f919e17450551c5128c6fe8b12934d3034e 100644 (file)
@@ -1,23 +1,18 @@
 # Makefile for program source directory in GNU NLS utilities package.
-# Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
+# Copyright (C) 1995-1997, 2000, 2001 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
 #
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+# This file file be copied and used freely without restrictions.  It can
+# be used in projects which are not available under the GNU Public License
+# but which still want to provide support for the GNU gettext functionality.
+# Please note that the actual code is *not* freely available.
 
 PACKAGE = @PACKAGE@
 VERSION = @VERSION@
 
+# These two variables depend on the location of this directory.
+subdir = po
+top_builddir = ..
+
 SHELL = /bin/sh
 @SET_MAKE@
 
@@ -27,51 +22,48 @@ VPATH = @srcdir@
 
 prefix = @prefix@
 exec_prefix = @exec_prefix@
-datadir = $(prefix)/@DATADIRNAME@
+datadir = @datadir@
 localedir = $(datadir)/locale
-gnulocaledir = $(prefix)/share/locale
-gettextsrcdir = $(prefix)/share/gettext/po
-subdir = po
+gettextsrcdir = $(datadir)/gettext/po
 
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
-MKINSTALLDIRS = $(top_srcdir)/@MKINSTALLDIRS@
+MKINSTALLDIRS = @MKINSTALLDIRS@
+mkinstalldirs = $(SHELL) `case "$(MKINSTALLDIRS)" in /*) echo "$(MKINSTALLDIRS)" ;; *) echo "$(top_builddir)/$(MKINSTALLDIRS)" ;; esac`
 
 CC = @CC@
-GENCAT = @GENCAT@
-GMSGFMT = PATH=../src:$$PATH @GMSGFMT@
+GMSGFMT = @GMSGFMT@
 MSGFMT = @MSGFMT@
-XGETTEXT = PATH=../src:$$PATH @XGETTEXT@
-MSGMERGE = PATH=../src:$$PATH msgmerge
+XGETTEXT = @XGETTEXT@
+MSGMERGE = msgmerge
 
 DEFS = @DEFS@
 CFLAGS = @CFLAGS@
 CPPFLAGS = @CPPFLAGS@
 
-INCLUDES = -I../src -I$(top_srcdir)/intl
+INCLUDES = -I.. -I$(top_srcdir)/intl
 
 COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
 
-SOURCES = cat-id-tbl.c
 POFILES = @POFILES@
 GMOFILES = @GMOFILES@
 DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(PACKAGE).pot \
-stamp-cat-id $(POFILES) $(GMOFILES) $(SOURCES)
+$(POFILES) $(GMOFILES)
+
+POTFILE_IN_DEPS = $(shell find $(top_srcdir)/src -name Makefile.am)
 
 POTFILES = \
 
 CATALOGS = @CATALOGS@
-CATOBJEXT = @CATOBJEXT@
-INSTOBJEXT = @INSTOBJEXT@
 
 .SUFFIXES:
-.SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat
+.SUFFIXES: .c .o .po .pox .gmo .mo
 
 .c.o:
        $(COMPILE) $<
 
 .po.pox:
-       $(MAKE) $(PACKAGE).pot
+       $(MAKE) $(srcdir)/$(PACKAGE).pot
        $(MSGMERGE) $< $(srcdir)/$(PACKAGE).pot -o $*.pox
 
 .po.mo:
@@ -79,100 +71,57 @@ INSTOBJEXT = @INSTOBJEXT@
 
 .po.gmo:
        file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \
-       && case "$(GMSGFMT)" in \
-       */msgfmt) rm -f $$file && $(GMSGFMT) -o $$file $<;; \
+         && case "$(GMSGFMT)" in \
+              */msgfmt) rm -f $$file && $(GMSGFMT) --statistics -o $$file $<;; \
               *) touch $$file ;; \
-       esac
-
-.po.cat:
-       sed -f ../intl/po2msg.sed < $< > $*.msg \
-         && rm -f $@ && $(GENCAT) $@ $*.msg
+            esac
 
 
 all: all-@USE_NLS@
 
-all-yes: $(srcdir)/cat-id-tbl.c $(CATALOGS)
+all-yes: $(CATALOGS)
 all-no:
 
-$(srcdir)/$(PACKAGE).pot: $(POTFILES)
-       $(XGETTEXT) --default-domain=$(PACKAGE) --directory=$(top_srcdir) \
-         --add-comments --keyword=_ --keyword=N_ \
-         --files-from=$(srcdir)/POTFILES.in
-       rm -f $(srcdir)/$(PACKAGE).pot
-       mv $(PACKAGE).po $(srcdir)/$(PACKAGE).pot
-
-$(srcdir)/cat-id-tbl.c: $(srcdir)/stamp-cat-id; @:
-$(srcdir)/stamp-cat-id: $(srcdir)/$(PACKAGE).pot
-       rm -f cat-id-tbl.tmp
-       sed -f ../intl/po2tbl.sed $(srcdir)/$(PACKAGE).pot \
-               | sed -e "s/@PACKAGE NAME@/$(PACKAGE)/" > cat-id-tbl.tmp
-       if cmp -s cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; then \
-         rm cat-id-tbl.tmp; \
-       else \
-         echo cat-id-tbl.c changed; \
-         rm -f $(srcdir)/cat-id-tbl.c; \
-         mv cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; \
-       fi
-       cd $(srcdir) && rm -f stamp-cat-id && echo timestamp > stamp-cat-id
+# Note: Target 'all' must not depend on target '$(srcdir)/$(PACKAGE).pot',
+# otherwise packages like GCC can not be built if only parts of the source
+# have been downloaded.
 
+$(srcdir)/$(PACKAGE).pot: $(POTFILES) $(srcdir)/POTFILES.in $(top_srcdir)/src/ext_l10n.h
+       $(XGETTEXT) --default-domain=$(PACKAGE) --directory=$(top_srcdir) \
+         --escape --add-comments --keyword=_ --keyword=N_ \
+         --files-from=$(srcdir)/POTFILES.in \
+       && test ! -f $(PACKAGE).po \
+          || ( rm -f $(srcdir)/$(PACKAGE).pot \
+               && mv $(PACKAGE).po $(srcdir)/$(PACKAGE).pot )
 
 install: install-exec install-data
 install-exec:
 install-data: install-data-@USE_NLS@
-install-data-no: all
-install-data-yes: all
-       if test -r $(MKINSTALLDIRS); then \
-         $(MKINSTALLDIRS) $(datadir); \
+       if test "$(PACKAGE)" = "gettext"; then \
+         $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \
+         $(INSTALL_DATA) $(srcdir)/Makefile.in.in \
+                         $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
        else \
-         $(top_srcdir)/mkinstalldirs $(datadir); \
+         ; \
        fi
+install-data-no: all
+install-data-yes: all
+       $(mkinstalldirs) $(DESTDIR)$(datadir)
        @catalogs='$(CATALOGS)'; \
        for cat in $$catalogs; do \
          cat=`basename $$cat`; \
-         case "$$cat" in \
-           *.gmo) destdir=$(gnulocaledir);; \
-           *)     destdir=$(localedir);; \
-         esac; \
-         lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
-         dir=$$destdir/$$lang/LC_MESSAGES; \
-         if test -r $(MKINSTALLDIRS); then \
-           $(MKINSTALLDIRS) $$dir; \
-         else \
-           $(top_srcdir)/mkinstalldirs $$dir; \
-         fi; \
+         lang=`echo $$cat | sed 's/\.gmo$$//'`; \
+         dir=$(localedir)/$$lang/LC_MESSAGES; \
+         $(mkinstalldirs) $(DESTDIR)$$dir; \
          if test -r $$cat; then \
-           $(INSTALL_DATA) $$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \
-           echo "installing $$cat as $$dir/$(PACKAGE)$(INSTOBJEXT)"; \
+           $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
+           echo "installing $$cat as $(DESTDIR)$$dir/$(PACKAGE).mo"; \
          else \
-           $(INSTALL_DATA) $(srcdir)/$$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \
+           $(INSTALL_DATA) $(srcdir)/$$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \
            echo "installing $(srcdir)/$$cat as" \
-                "$$dir/$(PACKAGE)$(INSTOBJEXT)"; \
-         fi; \
-         if test -r $$cat.m; then \
-           $(INSTALL_DATA) $$cat.m $$dir/$(PACKAGE)$(INSTOBJEXT).m; \
-           echo "installing $$cat.m as $$dir/$(PACKAGE)$(INSTOBJEXT).m"; \
-         else \
-           if test -r $(srcdir)/$$cat.m ; then \
-             $(INSTALL_DATA) $(srcdir)/$$cat.m \
-               $$dir/$(PACKAGE)$(INSTOBJEXT).m; \
-             echo "installing $(srcdir)/$$cat as" \
-                  "$$dir/$(PACKAGE)$(INSTOBJEXT).m"; \
-           else \
-             true; \
-           fi; \
+                "$(DESTDIR)$$dir/$(PACKAGE).mo"; \
          fi; \
        done
-       if test "$(PACKAGE)" = "gettext"; then \
-         if test -r $(MKINSTALLDIRS); then \
-           $(MKINSTALLDIRS) $(gettextsrcdir); \
-         else \
-           $(top_srcdir)/mkinstalldirs $(gettextsrcdir); \
-         fi; \
-         $(INSTALL_DATA) $(srcdir)/Makefile.in.in \
-                         $(gettextsrcdir)/Makefile.in.in; \
-       else \
-         : ; \
-       fi
 
 # Define this as empty until I found a useful application.
 installcheck:
@@ -181,79 +130,92 @@ uninstall:
        catalogs='$(CATALOGS)'; \
        for cat in $$catalogs; do \
          cat=`basename $$cat`; \
-         lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
-         rm -f $(localedir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT); \
-         rm -f $(localedir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT).m; \
-         rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT); \
-         rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT).m; \
+         lang=`echo $$cat | sed 's/\.gmo$$//'`; \
+         rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(PACKAGE).mo; \
        done
-       rm -f $(gettextsrcdir)/po-Makefile.in.in
+       if test "$(PACKAGE)" = "gettext"; then \
+         rm -f $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \
+       else \
+         : ; \
+       fi
 
 check: all
 
-cat-id-tbl.o: ../intl/libgettext.h
-
 dvi info tags TAGS ID:
 
 mostlyclean:
-       rm -f core core.* *.pox $(PACKAGE).po *.old.po cat-id-tbl.tmp
+       rm -f core core.* *.pox $(PACKAGE).po *.new.po
        rm -fr *.o
 
 clean: mostlyclean
 
 distclean: clean
-       rm -f Makefile Makefile.in POTFILES *.mo *.msg *.cat *.cat.m
+       rm -f Makefile Makefile.in POTFILES *.mo
 
 maintainer-clean: distclean
        @echo "This command is intended for maintainers to use;"
        @echo "it deletes files that may require special tools to rebuild."
        rm -f $(GMOFILES)
 
-distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
-dist distdir: update-po $(DISTFILES)
+distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
+dist distdir:
+       $(MAKE) update-po
+       @$(MAKE) dist2
+# This is a separate target because 'update-po' must be executed before.
+dist2: $(DISTFILES)
        dists="$(DISTFILES)"; \
        for file in $$dists; do \
-         ln $(srcdir)/$$file $(distdir) 2> /dev/null \
-           || cp -p $(srcdir)/$$file $(distdir); \
+         if test -f $$file; then dir=.; else dir=$(srcdir); fi; \
+         cp -p $$dir/$$file $(distdir); \
        done
 
 update-po: Makefile
        $(MAKE) $(PACKAGE).pot
-       PATH=`pwd`/../src:$$PATH; \
+       if test "$(PACKAGE)" = "gettext"; then PATH=`pwd`/../src:$$PATH; fi; \
        cd $(srcdir); \
-       catalogs='$(CATALOGS)'; \
+       catalogs='$(GMOFILES)'; \
        for cat in $$catalogs; do \
          cat=`basename $$cat`; \
-         lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \
-         mv $$lang.po $$lang.old.po; \
+         lang=`echo $$cat | sed 's/\.gmo$$//'`; \
          echo "$$lang:"; \
-         if $(MSGMERGE) $$lang.old.po $(PACKAGE).pot -o $$lang.po; then \
-           rm -f $$lang.old.po; \
+         if $(MSGMERGE) $$lang.po $(PACKAGE).pot -o $$lang.new.po; then \
+           mv -f $$lang.new.po $$lang.po; \
          else \
            echo "msgmerge for $$cat failed!"; \
-           rm -f $$lang.po; \
-           mv $$lang.old.po $$lang.po; \
+           rm -f $$lang.new.po; \
          fi; \
        done
+       $(MAKE) update-gmo
 
-POTFILES: POTFILES.in
-       ( if test 'x$(srcdir)' != 'x.'; then \
-           posrcprefix='$(top_srcdir)/'; \
-         else \
-           posrcprefix="../"; \
-         fi; \
-         rm -f $@-t $@ \
-           && (sed -e '/^#/d' -e '/^[  ]*$$/d' \
-                   -e "s@.*@   $$posrcprefix& \\\\@" < $(srcdir)/$@.in \
-               | sed -e '$$s/\\$$//') > $@-t \
-           && chmod a-w $@-t \
-           && mv $@-t $@ )
-
-Makefile: Makefile.in.in ../config.status POTFILES
-       cd .. \
+update-gmo: Makefile $(GMOFILES)
+       @:
+
+Makefile: Makefile.in.in $(top_builddir)/config.status POTFILES.in
+       cd $(top_builddir) \
          && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \
               $(SHELL) ./config.status
 
+${srcdir}/POTFILES.in: $(POTFILE_IN_DEPS)
+       rm -f $@-t \
+       && ( cd $(top_srcdir); \
+            grep -l "_(\".*\")" `find src -name \*.[hHC] -print` |\
+            sed -e '/xforms.forms/d' | \
+            sort -f -n | uniq ) > $@-t \
+       && echo "src/ext_l10n.h" >> $@-t \
+       && mv $@-t $@
+
+$(top_srcdir)/src/ext_l10n.h: $(top_srcdir)/lib/layouts/*.layout $(top_srcdir)/lib/layouts/*.inc $(top_srcdir)/lib/ui/default.ui $(top_srcdir)/lib/languages
+       sed < $(top_srcdir)/lib/ui/default.ui -n \
+               -e 's/.*[sS]ub[mM]enu[^"]*\("[^"]*"\).*/_(\1);/p' \
+               -e 's/.*[iI]tem[^"]*\("[^"]*"\).*/_(\1);/p' \
+               > $@
+       cat $(top_srcdir)/lib/layouts/*.layout $(top_srcdir)/lib/layouts/*.inc | \
+               sed -n -e 's/^[sS]tyle[ ]*\([^ ]*\)$$/_("\1");/p' | \
+               sort | uniq >> $@
+       sed < $(top_srcdir)/lib/languages -e '/^#/d' -e 's/[^"]*\("[A-Za-z0-9][^"]*"\).*/_(\1);/' >> $@
+       cat $(top_srcdir)/src/frontends/qt2/ui/*.ui | grep '<string>..*</string>' | \
+               sed 's,&amp;,\&,;s,^.*<string>,_(",;s,</string>,"),;' | uniq >> $@
+
 # Tell versions [3.59,3.63) of GNU make not to export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
 .NOEXPORT: