| tUpgrade to gettext 0.18.1 - vaccinewars - be a doctor and try to vaccinate the… | |
| git clone git://src.adamsgaard.dk/vaccinewars | |
| Log | |
| Files | |
| Refs | |
| README | |
| LICENSE | |
| --- | |
| commit a3ba702df14d221779ea3599e23b7190d9c3a3d6 | |
| parent bb7e10e61879c55d9d920b4f28917ba7fb5b7bd8 | |
| Author: Ben Webb <[email protected]> | |
| Date: Tue, 9 Jul 2013 05:42:43 +0000 | |
| Upgrade to gettext 0.18.1 | |
| Diffstat: | |
| M po/ChangeLog | 11 +++++++++++ | |
| M po/Makefile.in.in | 435 ++++++++++++++++++++++++-----… | |
| 2 files changed, 352 insertions(+), 94 deletions(-) | |
| --- | |
| diff --git a/po/ChangeLog b/po/ChangeLog | |
| t@@ -1,3 +1,14 @@ | |
| +2013-06-25 gettextize <[email protected]> | |
| + | |
| + * Makefile.in.in: Upgrade to gettext-0.18.1. | |
| + * boldquot.sed: New file, from gettext-0.18.1. | |
| + * [email protected]: New file, from gettext-0.18.1. | |
| + * [email protected]: New file, from gettext-0.18.1. | |
| + * insert-header.sin: New file, from gettext-0.18.1. | |
| + * quot.sed: New file, from gettext-0.18.1. | |
| + * remove-potcdate.sin: New file, from gettext-0.18.1. | |
| + * Rules-quot: New file, from gettext-0.18.1. | |
| + | |
| 2001-10-26 gettextize <[email protected]> | |
| * Makefile.in.in: Upgrade to gettext-0.10.38. | |
| diff --git a/po/Makefile.in.in b/po/Makefile.in.in | |
| t@@ -1,17 +1,19 @@ | |
| -# Makefile for program source directory in GNU NLS utilities package. | |
| -# Copyright (C) 1995-1997, 2000, 2001 by Ulrich Drepper <[email protected]… | |
| +# Makefile for PO directory in any package using GNU gettext. | |
| +# Copyright (C) 1995-1997, 2000-2007, 2009-2010 by Ulrich Drepper <drepper@gnu… | |
| # | |
| -# 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. | |
| +# This file can be copied and used freely without restrictions. It can | |
| +# be used in projects which are not available under the GNU General Public | |
| +# License but which still want to provide support for the GNU gettext | |
| +# functionality. | |
| +# Please note that the actual code of GNU gettext is covered by the GNU | |
| +# General Public License and is *not* in the public domain. | |
| +# | |
| +# Origin: gettext-0.18 | |
| +GETTEXT_MACRO_VERSION = 0.18 | |
| PACKAGE = @PACKAGE@ | |
| VERSION = @VERSION@ | |
| - | |
| -# These two variables depend on the location of this directory. | |
| -subdir = po | |
| -top_builddir = .. | |
| +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ | |
| SHELL = /bin/sh | |
| @SET_MAKE@ | |
| t@@ -22,126 +24,320 @@ VPATH = @srcdir@ | |
| prefix = @prefix@ | |
| exec_prefix = @exec_prefix@ | |
| -datadir = @datadir@ | |
| datarootdir = @datarootdir@ | |
| -localedir = $(datadir)/locale | |
| +datadir = @datadir@ | |
| +localedir = @localedir@ | |
| gettextsrcdir = $(datadir)/gettext/po | |
| INSTALL = @INSTALL@ | |
| INSTALL_DATA = @INSTALL_DATA@ | |
| -MKINSTALLDIRS = @MKINSTALLDIRS@ | |
| -mkinstalldirs = $(SHELL) `case "$(MKINSTALLDIRS)" in /*) echo "$(MKINSTALLDIRS… | |
| -CC = @CC@ | |
| -GMSGFMT = @GMSGFMT@ | |
| -MSGFMT = @MSGFMT@ | |
| -XGETTEXT = @XGETTEXT@ | |
| +# We use $(mkdir_p). | |
| +# In automake <= 1.9.x, $(mkdir_p) is defined either as "mkdir -p --" or as | |
| +# "$(mkinstalldirs)" or as "$(install_sh) -d". For these automake versions, | |
| +# @install_sh@ does not start with $(SHELL), so we add it. | |
| +# In automake >= 1.10, @mkdir_p@ is derived from ${MKDIR_P}, which is defined | |
| +# either as "/path/to/mkdir -p" or ".../install-sh -c -d". For these automake | |
| +# versions, $(mkinstalldirs) and $(install_sh) are unused. | |
| +mkinstalldirs = $(SHELL) @install_sh@ -d | |
| +install_sh = $(SHELL) @install_sh@ | |
| +MKDIR_P = @MKDIR_P@ | |
| +mkdir_p = @mkdir_p@ | |
| + | |
| +GMSGFMT_ = @GMSGFMT@ | |
| +GMSGFMT_no = @GMSGFMT@ | |
| +GMSGFMT_yes = @GMSGFMT_015@ | |
| +GMSGFMT = $(GMSGFMT_$(USE_MSGCTXT)) | |
| +MSGFMT_ = @MSGFMT@ | |
| +MSGFMT_no = @MSGFMT@ | |
| +MSGFMT_yes = @MSGFMT_015@ | |
| +MSGFMT = $(MSGFMT_$(USE_MSGCTXT)) | |
| +XGETTEXT_ = @XGETTEXT@ | |
| +XGETTEXT_no = @XGETTEXT@ | |
| +XGETTEXT_yes = @XGETTEXT_015@ | |
| +XGETTEXT = $(XGETTEXT_$(USE_MSGCTXT)) | |
| MSGMERGE = msgmerge | |
| - | |
| -DEFS = @DEFS@ | |
| -CFLAGS = @CFLAGS@ | |
| -CPPFLAGS = @CPPFLAGS@ | |
| - | |
| -INCLUDES = -I.. -I$(top_srcdir)/intl | |
| - | |
| -COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) | |
| +MSGMERGE_UPDATE = @MSGMERGE@ --update | |
| +MSGINIT = msginit | |
| +MSGCONV = msgconv | |
| +MSGFILTER = msgfilter | |
| POFILES = @POFILES@ | |
| GMOFILES = @GMOFILES@ | |
| -DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(PACKAGE).pot \ | |
| -$(POFILES) $(GMOFILES) | |
| +UPDATEPOFILES = @UPDATEPOFILES@ | |
| +DUMMYPOFILES = @DUMMYPOFILES@ | |
| +DISTFILES.common = Makefile.in.in remove-potcdate.sin \ | |
| +$(DISTFILES.common.extra1) $(DISTFILES.common.extra2) $(DISTFILES.common.extra… | |
| +DISTFILES = $(DISTFILES.common) Makevars POTFILES.in \ | |
| +$(POFILES) $(GMOFILES) \ | |
| +$(DISTFILES.extra1) $(DISTFILES.extra2) $(DISTFILES.extra3) | |
| POTFILES = \ | |
| CATALOGS = @CATALOGS@ | |
| -.SUFFIXES: | |
| -.SUFFIXES: .c .o .po .pox .gmo .mo | |
| - | |
| -.c.o: | |
| - $(COMPILE) $< | |
| +# Makevars gets inserted here. (Don't remove this line!) | |
| -.po.pox: | |
| - $(MAKE) $(PACKAGE).pot | |
| - $(MSGMERGE) $< $(srcdir)/$(PACKAGE).pot -o $*.pox | |
| +.SUFFIXES: | |
| +.SUFFIXES: .po .gmo .mo .sed .sin .nop .po-create .po-update | |
| .po.mo: | |
| - $(MSGFMT) -o $@ $< | |
| + @echo "$(MSGFMT) -c -o $@ $<"; \ | |
| + $(MSGFMT) -c -o t-$@ $< && mv t-$@ $@ | |
| .po.gmo: | |
| - file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \ | |
| - && rm -f $$file && $(GMSGFMT) --statistics -o $$file $< | |
| + @lang=`echo $* | sed -e 's,.*/,,'`; \ | |
| + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ | |
| + echo "$${cdcmd}rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics --verb… | |
| + cd $(srcdir) && rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics --ver… | |
| +.sin.sed: | |
| + sed -e '/^#/d' $< > t-$@ | |
| + mv t-$@ $@ | |
| -all: all-@USE_NLS@ | |
| -all-yes: $(CATALOGS) | |
| +all: check-macro-version all-@USE_NLS@ | |
| + | |
| +all-yes: stamp-po | |
| all-no: | |
| -# Note: Target 'all' must not depend on target '$(srcdir)/$(PACKAGE).pot', | |
| +# Ensure that the gettext macros and this Makefile.in.in are in sync. | |
| +check-macro-version: | |
| + @test "$(GETTEXT_MACRO_VERSION)" = "@GETTEXT_MACRO_VERSION@" \ | |
| + || { echo "*** error: gettext infrastructure mismatch: using a Makef… | |
| + exit 1; \ | |
| + } | |
| + | |
| +# $(srcdir)/$(DOMAIN).pot is only created when needed. When xgettext finds no | |
| +# internationalized messages, no $(srcdir)/$(DOMAIN).pot is created (because | |
| +# we don't want to bother translators with empty POT files). We assume that | |
| +# LINGUAS is empty in this case, i.e. $(POFILES) and $(GMOFILES) are empty. | |
| +# In this case, stamp-po is a nop (i.e. a phony target). | |
| + | |
| +# stamp-po is a timestamp denoting the last time at which the CATALOGS have | |
| +# been loosely updated. Its purpose is that when a developer or translator | |
| +# checks out the package via CVS, and the $(DOMAIN).pot file is not in CVS, | |
| +# "make" will update the $(DOMAIN).pot and the $(CATALOGS), but subsequent | |
| +# invocations of "make" will do nothing. This timestamp would not be necessary | |
| +# if updating the $(CATALOGS) would always touch them; however, the rule for | |
| +# $(POFILES) has been designed to not touch files that don't need to be | |
| +# changed. | |
| +stamp-po: $(srcdir)/$(DOMAIN).pot | |
| + test ! -f $(srcdir)/$(DOMAIN).pot || \ | |
| + test -z "$(GMOFILES)" || $(MAKE) $(GMOFILES) | |
| + @test ! -f $(srcdir)/$(DOMAIN).pot || { \ | |
| + echo "touch stamp-po" && \ | |
| + echo timestamp > stamp-poT && \ | |
| + mv stamp-poT stamp-po; \ | |
| + } | |
| + | |
| +# Note: Target 'all' must not depend on target '$(DOMAIN).pot-update', | |
| # otherwise packages like GCC can not be built if only parts of the source | |
| # have been downloaded. | |
| -$(srcdir)/$(PACKAGE).pot: $(POTFILES) $(srcdir)/POTFILES.in | |
| - $(XGETTEXT) --default-domain=$(PACKAGE) --directory=$(top_srcdir) \ | |
| - --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 ) | |
| +# This target rebuilds $(DOMAIN).pot; it is an expensive operation. | |
| +# Note that $(DOMAIN).pot is not touched if it doesn't need to be changed. | |
| +$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed | |
| + if LC_ALL=C grep 'GNU @PACKAGE@' $(top_srcdir)/* 2>/dev/null | grep -v… | |
| + package_gnu='GNU '; \ | |
| + else \ | |
| + package_gnu=''; \ | |
| + fi; \ | |
| + if test -n '$(MSGID_BUGS_ADDRESS)' || test '$(PACKAGE_BUGREPORT)' = '@… | |
| + msgid_bugs_address='$(MSGID_BUGS_ADDRESS)'; \ | |
| + else \ | |
| + msgid_bugs_address='$(PACKAGE_BUGREPORT)'; \ | |
| + fi; \ | |
| + case `$(XGETTEXT) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ | |
| + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].* | 0.16 | 0.16.[0-1]… | |
| + $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ | |
| + --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_… | |
| + --files-from=$(srcdir)/POTFILES.in \ | |
| + --copyright-holder='$(COPYRIGHT_HOLDER)' \ | |
| + --msgid-bugs-address="$$msgid_bugs_address" \ | |
| + ;; \ | |
| + *) \ | |
| + $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ | |
| + --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_… | |
| + --files-from=$(srcdir)/POTFILES.in \ | |
| + --copyright-holder='$(COPYRIGHT_HOLDER)' \ | |
| + --package-name="$${package_gnu}@PACKAGE@" \ | |
| + --package-version='@VERSION@' \ | |
| + --msgid-bugs-address="$$msgid_bugs_address" \ | |
| + ;; \ | |
| + esac | |
| + test ! -f $(DOMAIN).po || { \ | |
| + if test -f $(srcdir)/$(DOMAIN).pot; then \ | |
| + sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1… | |
| + sed -f remove-potcdate.sed < $(DOMAIN).po > $(DOMAIN).2po && \ | |
| + if cmp $(DOMAIN).1po $(DOMAIN).2po >/dev/null 2>&1; then \ | |
| + rm -f $(DOMAIN).1po $(DOMAIN).2po $(DOMAIN).po; \ | |
| + else \ | |
| + rm -f $(DOMAIN).1po $(DOMAIN).2po $(srcdir)/$(DOMAIN).pot && \ | |
| + mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ | |
| + fi; \ | |
| + else \ | |
| + mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ | |
| + fi; \ | |
| + } | |
| + | |
| +# This rule has no dependencies: we don't need to update $(DOMAIN).pot at | |
| +# every "make" invocation, only create it when it is missing. | |
| +# Only "make $(DOMAIN).pot-update" or "make dist" will force an update. | |
| +$(srcdir)/$(DOMAIN).pot: | |
| + $(MAKE) $(DOMAIN).pot-update | |
| + | |
| +# This target rebuilds a PO file if $(DOMAIN).pot has changed. | |
| +# Note that a PO file is not touched if it doesn't need to be changed. | |
| +$(POFILES): $(srcdir)/$(DOMAIN).pot | |
| + @lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \ | |
| + if test -f "$(srcdir)/$${lang}.po"; then \ | |
| + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ | |
| + echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang… | |
| + cd $(srcdir) \ | |
| + && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-… | |
| + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \ | |
| + $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) $${lang}.po $(DOMA… | |
| + *) \ | |
| + $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $$… | |
| + esac; \ | |
| + }; \ | |
| + else \ | |
| + $(MAKE) $${lang}.po-create; \ | |
| + fi | |
| install: install-exec install-data | |
| install-exec: | |
| install-data: install-data-@USE_NLS@ | |
| - if test "$(PACKAGE)" = "gettext"; then \ | |
| - $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \ | |
| - $(INSTALL_DATA) $(srcdir)/Makefile.in.in \ | |
| - $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \ | |
| + if test "$(PACKAGE)" = "gettext-tools"; then \ | |
| + $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \ | |
| + for file in $(DISTFILES.common) Makevars.template; do \ | |
| + $(INSTALL_DATA) $(srcdir)/$$file \ | |
| + $(DESTDIR)$(gettextsrcdir)/$$file; \ | |
| + done; \ | |
| + for file in Makevars; do \ | |
| + rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ | |
| + done; \ | |
| else \ | |
| : ; \ | |
| fi | |
| install-data-no: all | |
| install-data-yes: all | |
| - $(mkinstalldirs) $(DESTDIR)$(datadir) | |
| @catalogs='$(CATALOGS)'; \ | |
| for cat in $$catalogs; do \ | |
| cat=`basename $$cat`; \ | |
| - lang=`echo $$cat | sed 's/\.gmo$$//'`; \ | |
| + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ | |
| dir=$(localedir)/$$lang/LC_MESSAGES; \ | |
| - $(mkinstalldirs) $(DESTDIR)$$dir; \ | |
| - if test -r $$cat; then \ | |
| - $(INSTALL_DATA) $$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \ | |
| - echo "installing $$cat as $(DESTDIR)$$dir/$(PACKAGE).mo"; \ | |
| - else \ | |
| - $(INSTALL_DATA) $(srcdir)/$$cat $(DESTDIR)$$dir/$(PACKAGE).mo; \ | |
| - echo "installing $(srcdir)/$$cat as" \ | |
| - "$(DESTDIR)$$dir/$(PACKAGE).mo"; \ | |
| - fi; \ | |
| + $(mkdir_p) $(DESTDIR)$$dir; \ | |
| + if test -r $$cat; then realcat=$$cat; else realcat=$(srcdir)/$$cat; … | |
| + $(INSTALL_DATA) $$realcat $(DESTDIR)$$dir/$(DOMAIN).mo; \ | |
| + echo "installing $$realcat as $(DESTDIR)$$dir/$(DOMAIN).mo"; \ | |
| + for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ | |
| + if test -n "$$lc"; then \ | |
| + if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2… | |
| + link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$… | |
| + mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$… | |
| + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ | |
| + (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ | |
| + for file in *; do \ | |
| + if test -f $$file; then \ | |
| + ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc… | |
| + fi; \ | |
| + done); \ | |
| + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ | |
| + else \ | |
| + if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ | |
| + :; \ | |
| + else \ | |
| + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ | |
| + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ | |
| + fi; \ | |
| + fi; \ | |
| + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ | |
| + ln -s ../LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/… | |
| + ln $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DEST… | |
| + cp -p $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(D… | |
| + echo "installing $$realcat link as $(DESTDIR)$(localedir)/$$lang… | |
| + fi; \ | |
| + done; \ | |
| done | |
| -# Define this as empty until I found a useful application. | |
| -installcheck: | |
| +install-strip: install | |
| -uninstall: | |
| - catalogs='$(CATALOGS)'; \ | |
| +installdirs: installdirs-exec installdirs-data | |
| +installdirs-exec: | |
| +installdirs-data: installdirs-data-@USE_NLS@ | |
| + if test "$(PACKAGE)" = "gettext-tools"; then \ | |
| + $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \ | |
| + else \ | |
| + : ; \ | |
| + fi | |
| +installdirs-data-no: | |
| +installdirs-data-yes: | |
| + @catalogs='$(CATALOGS)'; \ | |
| for cat in $$catalogs; do \ | |
| cat=`basename $$cat`; \ | |
| - lang=`echo $$cat | sed 's/\.gmo$$//'`; \ | |
| - rm -f $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(PACKAGE).mo; \ | |
| + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ | |
| + dir=$(localedir)/$$lang/LC_MESSAGES; \ | |
| + $(mkdir_p) $(DESTDIR)$$dir; \ | |
| + for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ | |
| + if test -n "$$lc"; then \ | |
| + if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2… | |
| + link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$… | |
| + mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$… | |
| + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ | |
| + (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ | |
| + for file in *; do \ | |
| + if test -f $$file; then \ | |
| + ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc… | |
| + fi; \ | |
| + done); \ | |
| + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ | |
| + else \ | |
| + if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ | |
| + :; \ | |
| + else \ | |
| + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ | |
| + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ | |
| + fi; \ | |
| + fi; \ | |
| + fi; \ | |
| + done; \ | |
| done | |
| - if test "$(PACKAGE)" = "gettext"; then \ | |
| - rm -f $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \ | |
| + | |
| +# Define this as empty until I found a useful application. | |
| +installcheck: | |
| + | |
| +uninstall: uninstall-exec uninstall-data | |
| +uninstall-exec: | |
| +uninstall-data: uninstall-data-@USE_NLS@ | |
| + if test "$(PACKAGE)" = "gettext-tools"; then \ | |
| + for file in $(DISTFILES.common) Makevars.template; do \ | |
| + rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ | |
| + done; \ | |
| else \ | |
| : ; \ | |
| fi | |
| +uninstall-data-no: | |
| +uninstall-data-yes: | |
| + catalogs='$(CATALOGS)'; \ | |
| + for cat in $$catalogs; do \ | |
| + cat=`basename $$cat`; \ | |
| + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ | |
| + for lc in LC_MESSAGES $(EXTRA_LOCALE_CATEGORIES); do \ | |
| + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ | |
| + done; \ | |
| + done | |
| check: all | |
| -dvi info tags TAGS ID: | |
| +info dvi ps pdf html tags TAGS ctags CTAGS ID: | |
| mostlyclean: | |
| - rm -f core core.* *.pox $(PACKAGE).po *.new.po | |
| + rm -f remove-potcdate.sed | |
| + rm -f stamp-poT | |
| + rm -f core core.* $(DOMAIN).po $(DOMAIN).1po $(DOMAIN).2po *.new.po | |
| rm -fr *.o | |
| clean: mostlyclean | |
| t@@ -152,45 +348,96 @@ distclean: clean | |
| 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) | |
| + rm -f stamp-po $(GMOFILES) | |
| 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) | |
| +dist2: stamp-po $(DISTFILES) | |
| dists="$(DISTFILES)"; \ | |
| + if test "$(PACKAGE)" = "gettext-tools"; then \ | |
| + dists="$$dists Makevars.template"; \ | |
| + fi; \ | |
| + if test -f $(srcdir)/$(DOMAIN).pot; then \ | |
| + dists="$$dists $(DOMAIN).pot stamp-po"; \ | |
| + fi; \ | |
| + if test -f $(srcdir)/ChangeLog; then \ | |
| + dists="$$dists ChangeLog"; \ | |
| + fi; \ | |
| + for i in 0 1 2 3 4 5 6 7 8 9; do \ | |
| + if test -f $(srcdir)/ChangeLog.$$i; then \ | |
| + dists="$$dists ChangeLog.$$i"; \ | |
| + fi; \ | |
| + done; \ | |
| + if test -f $(srcdir)/LINGUAS; then dists="$$dists LINGUAS"; fi; \ | |
| for file in $$dists; do \ | |
| - if test -f $$file; then dir=.; else dir=$(srcdir); fi; \ | |
| - cp -p $$dir/$$file $(distdir); \ | |
| + if test -f $$file; then \ | |
| + cp -p $$file $(distdir) || exit 1; \ | |
| + else \ | |
| + cp -p $(srcdir)/$$file $(distdir) || exit 1; \ | |
| + fi; \ | |
| done | |
| update-po: Makefile | |
| - $(MAKE) $(PACKAGE).pot | |
| - if test "$(PACKAGE)" = "gettext"; then PATH=`pwd`/../src:$$PATH; fi; \ | |
| + $(MAKE) $(DOMAIN).pot-update | |
| + test -z "$(UPDATEPOFILES)" || $(MAKE) $(UPDATEPOFILES) | |
| + $(MAKE) update-gmo | |
| + | |
| +# General rule for creating PO files. | |
| + | |
| +.nop.po-create: | |
| + @lang=`echo $@ | sed -e 's/\.po-create$$//'`; \ | |
| + echo "File $$lang.po does not exist. If you are a translator, you can … | |
| + exit 1 | |
| + | |
| +# General rule for updating PO files. | |
| + | |
| +.nop.po-update: | |
| + @lang=`echo $@ | sed -e 's/\.po-update$$//'`; \ | |
| + if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH;… | |
| + tmpdir=`pwd`; \ | |
| + echo "$$lang:"; \ | |
| + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ | |
| + echo "$${cdcmd}$(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang $$lang.po… | |
| cd $(srcdir); \ | |
| - catalogs='$(GMOFILES)'; \ | |
| - for cat in $$catalogs; do \ | |
| - cat=`basename $$cat`; \ | |
| - lang=`echo $$cat | sed 's/\.gmo$$//'`; \ | |
| - echo "$$lang:"; \ | |
| - if $(MSGMERGE) $$lang.po $(PACKAGE).pot -o $$lang.new.po; then \ | |
| - mv -f $$lang.new.po $$lang.po; \ | |
| + if { case `$(MSGMERGE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ | |
| + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \ | |
| + $(MSGMERGE) $(MSGMERGE_OPTIONS) -o $$tmpdir/$$lang.new.po $$l… | |
| + *) \ | |
| + $(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang -o $$tmpdir/$$l… | |
| + esac; \ | |
| + }; then \ | |
| + if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ | |
| + rm -f $$tmpdir/$$lang.new.po; \ | |
| else \ | |
| - echo "msgmerge for $$cat failed!"; \ | |
| - rm -f $$lang.new.po; \ | |
| + if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ | |
| + :; \ | |
| + else \ | |
| + echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang… | |
| + exit 1; \ | |
| + fi; \ | |
| fi; \ | |
| - done | |
| - $(MAKE) update-gmo | |
| + else \ | |
| + echo "msgmerge for $$lang.po failed!" 1>&2; \ | |
| + rm -f $$tmpdir/$$lang.new.po; \ | |
| + fi | |
| + | |
| +$(DUMMYPOFILES): | |
| update-gmo: Makefile $(GMOFILES) | |
| @: | |
| -Makefile: Makefile.in.in $(top_builddir)/config.status POTFILES.in | |
| +# Recreate Makefile by invoking config.status. Explicitly invoke the shell, | |
| +# because execution permission bits may not work on the current file system. | |
| +# Use @SHELL@, which is the shell determined by autoconf for the use by its | |
| +# scripts, not $(SHELL) which is hardwired to /bin/sh and may be deficient. | |
| +Makefile: Makefile.in.in Makevars $(top_builddir)/config.status @POMAKEFILEDEP… | |
| cd $(top_builddir) \ | |
| - && CONFIG_FILES=$(subdir)/[email protected] CONFIG_HEADERS= \ | |
| - $(SHELL) ./config.status | |
| + && @SHELL@ ./config.status $(subdir)/[email protected] po-directories | |
| + | |
| +force: | |
| # 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. |