| # Makefile for program source directory in GNU NLS utilities package. |
| # Copyright (C) 1995, 1996, 1997 by Ulrich Drepper <drepper@gnu.ai.mit.edu> |
| # Copyright (C) 2004-2008 Rodney Dawes <dobey.pwns@gmail.com> |
| # |
| # This file may be copied and used freely without restrictions. It may |
| # be used in projects which are not available under a GNU Public License, |
| # but which still want to provide support for the GNU gettext functionality. |
| # |
| # - Modified by Owen Taylor <otaylor@redhat.com> to use GETTEXT_PACKAGE |
| # instead of PACKAGE and to look for po2tbl in ./ not in intl/ |
| # |
| # - Modified by jacob berkman <jacob@ximian.com> to install |
| # Makefile.in.in and po2tbl.sed.in for use with glib-gettextize |
| # |
| # - Modified by Rodney Dawes <dobey.pwns@gmail.com> for use with intltool |
| # |
| # We have the following line for use by intltoolize: |
| # INTLTOOL_MAKEFILE |
| |
| GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ |
| PACKAGE = @PACKAGE@ |
| VERSION = @VERSION@ |
| |
| SHELL = @SHELL@ |
| |
| srcdir = @srcdir@ |
| top_srcdir = @top_srcdir@ |
| top_builddir = @top_builddir@ |
| VPATH = @srcdir@ |
| |
| prefix = @prefix@ |
| exec_prefix = @exec_prefix@ |
| datadir = @datadir@ |
| datarootdir = @datarootdir@ |
| libdir = @libdir@ |
| DATADIRNAME = @DATADIRNAME@ |
| itlocaledir = $(prefix)/$(DATADIRNAME)/locale |
| subdir = po |
| install_sh = @install_sh@ |
| # Automake >= 1.8 provides @mkdir_p@. |
| # Until it can be supposed, use the safe fallback: |
| mkdir_p = $(install_sh) -d |
| |
| INSTALL = @INSTALL@ |
| INSTALL_DATA = @INSTALL_DATA@ |
| |
| GMSGFMT = @GMSGFMT@ |
| MSGFMT = @MSGFMT@ |
| XGETTEXT = @XGETTEXT@ |
| INTLTOOL_UPDATE = @INTLTOOL_UPDATE@ |
| INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@ |
| MSGMERGE = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) XGETTEXT=$(XGETTEXT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --dist |
| GENPOT = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) XGETTEXT=$(XGETTEXT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --pot |
| |
| ALL_LINGUAS = @ALL_LINGUAS@ |
| |
| PO_LINGUAS=$(shell if test -r $(srcdir)/LINGUAS; then grep -v "^\#" $(srcdir)/LINGUAS; else echo "$(ALL_LINGUAS)"; fi) |
| |
| USER_LINGUAS=$(shell if test -n "$(LINGUAS)"; then LLINGUAS="$(LINGUAS)"; ALINGUAS="$(ALL_LINGUAS)"; for lang in $$LLINGUAS; do if test -n "`grep \^$$lang$$ $(srcdir)/LINGUAS 2>/dev/null`" -o -n "`echo $$ALINGUAS|tr ' ' '\n'|grep \^$$lang$$`"; then printf "$$lang "; fi; done; fi) |
| |
| USE_LINGUAS=$(shell if test -n "$(USER_LINGUAS)" -o -n "$(LINGUAS)"; then LLINGUAS="$(USER_LINGUAS)"; else if test -n "$(PO_LINGUAS)"; then LLINGUAS="$(PO_LINGUAS)"; else LLINGUAS="$(ALL_LINGUAS)"; fi; fi; for lang in $$LLINGUAS; do printf "$$lang "; done) |
| |
| POFILES=$(shell LINGUAS="$(PO_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.po "; done) |
| |
| DISTFILES = Makefile.in.in POTFILES.in $(POFILES) |
| EXTRA_DISTFILES = ChangeLog POTFILES.skip Makevars LINGUAS |
| |
| POTFILES = \ |
| # This comment gets stripped out |
| |
| CATALOGS=$(shell LINGUAS="$(USE_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.gmo "; done) |
| |
| .SUFFIXES: |
| .SUFFIXES: .po .pox .gmo .mo .msg .cat |
| |
| .po.pox: |
| $(MAKE) $(GETTEXT_PACKAGE).pot |
| $(MSGMERGE) $< $(GETTEXT_PACKAGE).pot -o $*.pox |
| |
| .po.mo: |
| $(MSGFMT) -o $@ $< |
| |
| .po.gmo: |
| file=`echo $* | sed 's,.*/,,'`.gmo \ |
| && rm -f $$file && $(GMSGFMT) -o $$file $< |
| |
| .po.cat: |
| sed -f ../intl/po2msg.sed < $< > $*.msg \ |
| && rm -f $@ && gencat $@ $*.msg |
| |
| |
| all: all-@USE_NLS@ |
| |
| all-yes: $(CATALOGS) |
| all-no: |
| |
| $(GETTEXT_PACKAGE).pot: $(POTFILES) |
| $(GENPOT) |
| |
| install: install-data |
| install-data: install-data-@USE_NLS@ |
| install-data-no: all |
| install-data-yes: all |
| linguas="$(USE_LINGUAS)"; \ |
| for lang in $$linguas; do \ |
| dir=$(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES; \ |
| $(mkdir_p) $$dir; \ |
| if test -r $$lang.gmo; then \ |
| $(INSTALL_DATA) $$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \ |
| echo "installing $$lang.gmo as $$dir/$(GETTEXT_PACKAGE).mo"; \ |
| else \ |
| $(INSTALL_DATA) $(srcdir)/$$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \ |
| echo "installing $(srcdir)/$$lang.gmo as" \ |
| "$$dir/$(GETTEXT_PACKAGE).mo"; \ |
| fi; \ |
| if test -r $$lang.gmo.m; then \ |
| $(INSTALL_DATA) $$lang.gmo.m $$dir/$(GETTEXT_PACKAGE).mo.m; \ |
| echo "installing $$lang.gmo.m as $$dir/$(GETTEXT_PACKAGE).mo.m"; \ |
| else \ |
| if test -r $(srcdir)/$$lang.gmo.m ; then \ |
| $(INSTALL_DATA) $(srcdir)/$$lang.gmo.m \ |
| $$dir/$(GETTEXT_PACKAGE).mo.m; \ |
| echo "installing $(srcdir)/$$lang.gmo.m as" \ |
| "$$dir/$(GETTEXT_PACKAGE).mo.m"; \ |
| else \ |
| true; \ |
| fi; \ |
| fi; \ |
| done |
| |
| # Empty stubs to satisfy archaic automake needs |
| dvi info ctags tags CTAGS TAGS ID: |
| |
| # Define this as empty until I found a useful application. |
| install-exec installcheck: |
| |
| uninstall: |
| linguas="$(USE_LINGUAS)"; \ |
| for lang in $$linguas; do \ |
| rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \ |
| rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \ |
| done |
| |
| check: all $(GETTEXT_PACKAGE).pot |
| rm -f missing notexist |
| srcdir=$(srcdir) $(INTLTOOL_UPDATE) -m |
| if [ -r missing -o -r notexist ]; then \ |
| exit 1; \ |
| fi |
| |
| mostlyclean: |
| rm -f *.pox $(GETTEXT_PACKAGE).pot *.old.po cat-id-tbl.tmp |
| rm -f .intltool-merge-cache |
| |
| clean: mostlyclean |
| |
| distclean: clean |
| rm -f Makefile Makefile.in POTFILES stamp-it |
| rm -f *.mo *.msg *.cat *.cat.m *.gmo |
| |
| 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 Makefile.in.in |
| |
| distdir = ../$(PACKAGE)-$(VERSION)/$(subdir) |
| dist distdir: $(DISTFILES) |
| dists="$(DISTFILES)"; \ |
| extra_dists="$(EXTRA_DISTFILES)"; \ |
| for file in $$extra_dists; do \ |
| test -f $(srcdir)/$$file && dists="$$dists $(srcdir)/$$file"; \ |
| done; \ |
| for file in $$dists; do \ |
| test -f $$file || file="$(srcdir)/$$file"; \ |
| ln $$file $(distdir) 2> /dev/null \ |
| || cp -p $$file $(distdir); \ |
| done |
| |
| update-po: Makefile |
| $(MAKE) $(GETTEXT_PACKAGE).pot |
| tmpdir=`pwd`; \ |
| linguas="$(USE_LINGUAS)"; \ |
| for lang in $$linguas; do \ |
| echo "$$lang:"; \ |
| result="`$(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang`"; \ |
| if $$result; then \ |
| if cmp $(srcdir)/$$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ |
| rm -f $$tmpdir/$$lang.new.po; \ |
| else \ |
| if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ |
| :; \ |
| else \ |
| echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ |
| rm -f $$tmpdir/$$lang.new.po; \ |
| exit 1; \ |
| fi; \ |
| fi; \ |
| else \ |
| echo "msgmerge for $$lang.gmo failed!"; \ |
| rm -f $$tmpdir/$$lang.new.po; \ |
| fi; \ |
| done |
| |
| Makefile POTFILES: stamp-it |
| @if test ! -f $@; then \ |
| rm -f stamp-it; \ |
| $(MAKE) stamp-it; \ |
| fi |
| |
| stamp-it: Makefile.in.in $(top_builddir)/config.status POTFILES.in |
| cd $(top_builddir) \ |
| && CONFIG_FILES=$(subdir)/Makefile.in CONFIG_HEADERS= CONFIG_LINKS= \ |
| $(SHELL) ./config.status |
| |
| # 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: |