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. |