]> git.ipfire.org Git - thirdparty/gettext.git/commitdiff
Introduce a new header entry field 'Language'.
authorBruno Haible <bruno@clisp.org>
Wed, 26 Dec 2007 16:01:59 +0000 (16:01 +0000)
committerBruno Haible <bruno@clisp.org>
Tue, 23 Jun 2009 10:15:35 +0000 (12:15 +0200)
74 files changed:
NEWS
gettext-runtime/po/ChangeLog
gettext-runtime/po/Makefile.in.in
gettext-tools/doc/ChangeLog
gettext-tools/doc/gettext.texi
gettext-tools/doc/msgcat.texi
gettext-tools/doc/msgen.texi
gettext-tools/doc/msgmerge.texi
gettext-tools/examples/ChangeLog
gettext-tools/examples/hello-c++-qt/po/Makefile.am
gettext-tools/examples/hello-c++-wxwidgets/po/Makefile.am
gettext-tools/examples/hello-clisp/po/Makefile.am
gettext-tools/examples/hello-csharp-forms/po/Makefile.am
gettext-tools/examples/hello-csharp/po/Makefile.am
gettext-tools/examples/hello-gawk/po/Makefile.am
gettext-tools/examples/hello-guile/po/Makefile.am
gettext-tools/examples/hello-java-awt/po/Makefile.am
gettext-tools/examples/hello-java-qtjambi/po/Makefile.am
gettext-tools/examples/hello-java-swing/po/Makefile.am
gettext-tools/examples/hello-java/po/Makefile.am
gettext-tools/examples/hello-librep/po/Makefile.am
gettext-tools/examples/hello-pascal/po/Makefile.am
gettext-tools/examples/hello-perl/po/Makefile.am
gettext-tools/examples/hello-php/po/Makefile.am
gettext-tools/examples/hello-python/po/Makefile.am
gettext-tools/examples/hello-sh/po/Makefile.am
gettext-tools/examples/hello-smalltalk/po/Makefile.am
gettext-tools/examples/hello-tcl-tk/po/Makefile.am
gettext-tools/examples/hello-tcl/po/Makefile.am
gettext-tools/examples/hello-ycp/po/Makefile.am
gettext-tools/po/ChangeLog
gettext-tools/po/Makefile.in.in
gettext-tools/src/ChangeLog
gettext-tools/src/FILES
gettext-tools/src/Makefile.am
gettext-tools/src/msgcat.c
gettext-tools/src/msgen.c
gettext-tools/src/msginit.c
gettext-tools/src/msgl-check.c
gettext-tools/src/msgmerge.c
gettext-tools/src/xgettext.c
gettext-tools/tests/ChangeLog
gettext-tools/tests/mm-viet.out
gettext-tools/tests/msginit-1
gettext-tools/tests/msginit-2
gettext-tools/tests/msgmerge-10
gettext-tools/tests/msgmerge-11
gettext-tools/tests/msgmerge-12
gettext-tools/tests/msgmerge-13
gettext-tools/tests/msgmerge-14
gettext-tools/tests/msgmerge-16
gettext-tools/tests/msgmerge-21
gettext-tools/tests/msgmerge-22
gettext-tools/tests/msgmerge-5
gettext-tools/tests/msgmerge-6
gettext-tools/tests/msgmerge-update-1
gettext-tools/tests/msgmerge-update-2
gettext-tools/tests/msgmerge-update-3
gettext-tools/tests/xgettext-3
gettext-tools/tests/xgettext-4
gettext-tools/tests/xgettext-5
gettext-tools/tests/xgettext-8
gettext-tools/tests/xgettext-csharp-2
gettext-tools/tests/xgettext-csharp-3
gettext-tools/tests/xgettext-glade-1
gettext-tools/tests/xgettext-glade-2
gettext-tools/tests/xgettext-glade-3
gettext-tools/tests/xgettext-java-2
gettext-tools/tests/xgettext-perl-2
gettext-tools/tests/xgettext-perl-3
gettext-tools/tests/xgettext-python-1
gettext-tools/tests/xgettext-python-3
gettext-tools/tests/xgettext-stringtable-1
gettext-tools/tests/xgettext-tcl-1

diff --git a/NEWS b/NEWS
index a37bfa541cbbf922caec4aaf36ba7fc86267ab94..e4d4bc219c25c301468d0019ff57148bb36d40f9 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,15 @@
+Version 0.18 - January 2008
+
+* PO file format:
+  There is a new field 'Language' in the header entry.  It denotes the language
+  code (plus optional country code) for the PO file.  This field can be used
+  by automated tools, such as spell checkers.  It is expected to be more
+  reliable than looking at the file name or at the 'Language-Team' field in
+  the header entry.
+  msgmerge, msgcat, msgen have a new option --lang that allows to specify
+  this field.  Additionally, msgmerge fills in this new field by looking at
+  the 'Language-Team' field (if the --lang option is not given).
+\f
 Version 0.17 - November 2007
 
 * License:
index 0f590559067d3c4f7c1a2a5897a1d60cb75755d5..e28ffadaec60621f42fe8b9fdeaebb6b4cb6a54c 100644 (file)
@@ -1,3 +1,8 @@
+2007-12-24  Bruno Haible  <bruno@clisp.org>
+
+       * Makefile.in.in ($(POFILES), .nop.po-update): When using msgmerge
+       0.18 or newer, pass a --lang option.
+
 2007-12-24  Bruno Haible  <bruno@clisp.org>
 
        * Makefile.in.in (.nop.po-update): Put all non-option arguments after
index 675d8bffd933590bdc5bf8f59cf6047be0aded38..b1a7baf9bbb633f682c51e33a254ca110c04158e 100644 (file)
@@ -193,8 +193,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -395,9 +402,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index e4cb4f62895eb552fc68a18ac42c4e0bd4348df7..3f2421f11e0ef51f85bc87108373df9d55d5c351 100644 (file)
@@ -1,3 +1,10 @@
+2007-12-24  Bruno Haible  <bruno@clisp.org>
+
+       * gettext.texi (Header Entry): Document the 'Language' field.
+       * msgcat.texi: Document the --lang option.
+       * msgen.texi: Likewise.
+       * msgmerge.texi: Likewise.
+
 2007-12-02  Bruno Haible  <bruno@clisp.org>
 
        * gettext.texi (Plural Forms): Put Turkish under nplurals=2.
index 3905ff6816768171def7681c1e8f854f848aebef..0c3a2dd0872a98e99fe399d023fceac1e22f217d 100644 (file)
@@ -2913,6 +2913,58 @@ list.  The up-to-date list of teams can be found at the Free Translation
 Project's homepage, @uref{http://translationproject.org/}, in the "Teams"
 area.
 
+@item Language
+@c The purpose of this field is to make it possible to automatically
+@c - convert PO files to translation memory,
+@c - initialize a spell checker based on the PO file,
+@c - perform language specific checks.
+Fill in the language code of the language.  This can be in one of three
+forms:
+
+@itemize -
+@item
+@samp{@var{ll}}, an @w{ISO 639} two-letter language code (lowercase).
+See @ref{Language Codes} for the list of codes.
+
+@item
+@samp{@var{ll}_@var{CC}}, where @samp{@var{ll}} is an @w{ISO 639} two-letter
+language code (lowercase) and @samp{@var{CC}} is an @w{ISO 3166} two-letter
+country code (uppercase).  The country code specification is not redundant:
+Some languages have dialects in different countries.  For example,
+@samp{de_AT} is used for Austria, and @samp{pt_BR} for Brazil.  The country
+code serves to distinguish the dialects. See @ref{Language Codes} and
+@ref{Country Codes} for the lists of codes.
+
+@item
+@samp{@var{ll}_@var{CC}@@@var{variant}}, where @samp{@var{ll}} is an
+@w{ISO 639} two-letter language code (lowercase), @samp{@var{CC}} is an
+@w{ISO 3166} two-letter country code (uppercase), and @samp{@var{variant}} is
+a variant designator. The variant designator (lowercase) can be a script
+designator, such as @samp{latin} or @samp{cyrillic}.
+@end itemize
+
+The naming convention @samp{@var{ll}_@var{CC}} is also the way locales are
+named on systems based on GNU libc.  But there are three important differences:
+
+@itemize @bullet
+@item
+In this PO file field, but not in locale names, @samp{@var{ll}_@var{CC}}
+combinations denoting a language's main dialect are abbreviated as
+@samp{@var{ll}}.  For example, @samp{de} is equivalent to @samp{de_DE}
+(German as spoken in Germany), and @samp{pt} to @samp{pt_PT} (Portuguese as
+spoken in Portugal) in this context.
+
+@item
+In this PO file field, suffixes like @samp{.@var{encoding}} are not used.
+
+@item
+In this PO file field, variant designators that are not relevant to message
+translation, such as @samp{@@euro}, are not used.
+@end itemize
+
+So, if your locale name is @samp{de_DE.UTF-8}, the language specification in
+PO files is just @samp{de}.
+
 @item Content-Type
 @cindex encoding of PO files
 @cindex charset of PO files
index 20e6b5363ef5d36ff2af37b89efcd8e424c3dee2..07e07ad16ab63e12712d230c0e206d5ee6141434 100644 (file)
@@ -115,6 +115,12 @@ Specify encoding for output.
 Use first available translation for each message.  Don't merge several
 translations into one.
 
+@item --lang=@var{catalogname}
+@opindex --lang@r{, @code{msgcat} option}
+Specify the @samp{Language} field to be used in the header entry.  See
+@ref{Header Entry} for the meaning of this field.  Note: The
+@samp{Language-Team} and @samp{Plural-Forms} fields are left unchanged.
+
 @item --color
 @itemx --color=@var{when}
 @opindex --color@r{, @code{msgcat} option}
index 7923cd7ba8e21046164f8a0d66cedf4348b26507..6686c8393496782d0a8acdde9c3bbabe41a331b0 100644 (file)
@@ -68,6 +68,13 @@ Assume the input file is a NeXTstep/GNUstep localized resource file in
 @c --no-escape and --escape omitted on purpose.  They are not useful.
 
 @table @samp
+@item --lang=@var{catalogname}
+@opindex --lang@r{, @code{msgcat} option}
+Specify the @samp{Language} field to be used in the header entry.  See
+@ref{Header Entry} for the meaning of this field.  Note: The
+@samp{Language-Team} and @samp{Plural-Forms} fields are not set by this
+option.
+
 @item --force-po
 @opindex --force-po@r{, @code{msgen} option}
 Always write an output file even if it contains no message.
index 874ecae498ba649aab15e16691dcff289f8dcebf..e924d4f99a39abfbb5d6cc26923162584a533cf4 100644 (file)
@@ -155,6 +155,14 @@ Assume the input files are NeXTstep/GNUstep localized resource files in
 @c --no-escape and --escape omitted on purpose.  They are not useful.
 
 @table @samp
+@item --lang=@var{catalogname}
+@opindex --lang@r{, @code{msgcat} option}
+Specify the @samp{Language} field to be used in the header entry.  See
+@ref{Header Entry} for the meaning of this field.  Note: The
+@samp{Language-Team} and @samp{Plural-Forms} fields are left unchanged.
+If this option is not specified, the @samp{Language} field is inferred, as
+best as possible, from the @samp{Language-Team} field.
+
 @item --force-po
 @opindex --force-po@r{, @code{msgmerge} option}
 Always write an output file even if it contains no message.
index 4a488fbe2a9c47f449761b7f2d3d0661bd3b8af8..ac5ab0d410469de25796cfec041cf8214e88870d 100644 (file)
@@ -1,3 +1,10 @@
+2007-12-24  Bruno Haible  <bruno@clisp.org>
+
+       * hello-*/po/Makefile.am ($(POFILES), .nop.po-update): When using
+       msgmerge 0.18 or newer, pass a --lang option.
+       * hello-objc-gnustep/po/GNUmakefile ($(POFILES), .nop.po-update):
+       Likewise.
+
 2007-12-24  Bruno Haible  <bruno@clisp.org>
 
        * hello-*/po/Makefile.am (.nop.po-update): Put all non-option arguments
index e304c4032141eeba3a132cb481af09b8818ad813..aebcafb0f343fb97bd26e14fd9ad49aa38160d8f 100644 (file)
@@ -171,8 +171,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -246,9 +253,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index a439db1f8b24e8900240b2c88d13d445bd5b9497..b48eb888f4c1d53170b12cfaf82b39e0db703339 100644 (file)
@@ -178,8 +178,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -319,9 +326,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index 854f39fce939c1e7357c7caa3918e50e1fb1e8bf..09e000046a754836558a4a4799e80bd0d1b5bd19 100644 (file)
@@ -172,8 +172,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -313,9 +320,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index 8ed03858eaa68048b91b5037444206b2fd6c8dee..d2b16db11d6454cf7446a1936a389ca73b2f1015 100644 (file)
@@ -160,8 +160,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -237,9 +244,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index 8ed03858eaa68048b91b5037444206b2fd6c8dee..d2b16db11d6454cf7446a1936a389ca73b2f1015 100644 (file)
@@ -160,8 +160,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -237,9 +244,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index 864630698d7c10338ba05510b248725b6ad11da7..24c836fbce0ddfcc648e3816c6f899c3cff718bb 100644 (file)
@@ -172,8 +172,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -313,9 +320,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index 66fc276f94a2d0b3dc66597bf898a8e31e564fdc..94c13e42346610a4f48a9cc428f495447a3c8597 100644 (file)
@@ -172,8 +172,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -313,9 +320,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index a186826aa4a34e702fe530d91d6be01e1ab04964..33c89c5092172e569300d06515f080fdafd6eebc 100644 (file)
@@ -158,8 +158,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -206,9 +213,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index a186826aa4a34e702fe530d91d6be01e1ab04964..33c89c5092172e569300d06515f080fdafd6eebc 100644 (file)
@@ -158,8 +158,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -206,9 +213,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index a186826aa4a34e702fe530d91d6be01e1ab04964..33c89c5092172e569300d06515f080fdafd6eebc 100644 (file)
@@ -158,8 +158,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -206,9 +213,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index 2fd45108ca1a468d4495abdfda6be3f63f0d4782..55224b74d08d2fd7f0650592ed86710998b6c641 100644 (file)
@@ -158,8 +158,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -206,9 +213,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index 2eff60484eed837cc50e00fa2d7b35f76c39640c..5148d3ea069ad66776bd62ddc9ccf03b7b5f076c 100644 (file)
@@ -172,8 +172,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -313,9 +320,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index 21fe76ad5a233727488abb9791ea2f13be0ac931..7145d6e535405f4718ead7bfb578ab1f411c6a3a 100644 (file)
@@ -172,8 +172,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -313,9 +320,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index c1f49650e2e83fd7d7af9936eeb45d4cd14de042..d5b0ccf84ceee205395f106961d4c0550b3df7d3 100644 (file)
@@ -182,8 +182,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -323,9 +330,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index 9408ff910e18fcac496eec03ddb2bd5d6c746248..2c0bb76334e2359ada4ab4be07af2f302f5a7e66 100644 (file)
@@ -172,8 +172,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -313,9 +320,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index 26b89a8bbc90b34ab6eef432cab9d743dec6dcf5..af5b9dd48d7739326723d0635ebc77313b8a0e44 100644 (file)
@@ -172,8 +172,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -313,9 +320,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index 28ea0bbc62a3a908ab87fdd88b4876ace0cbbdf5..a868c46b6889ffe22a1739e555244069998bc60e 100644 (file)
@@ -172,8 +172,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -313,9 +320,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index a74a68ba2c66f487c3757ba286e254bc60b8462b..8edcc15ef1790364438a2db0c9ade5d1b1d9df68 100644 (file)
@@ -172,8 +172,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -313,9 +320,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index 9aa439cce55f320c9811610c83acb497350dd3c3..c51b2e442154eba4bc0f9f210806202bfa62d4f1 100644 (file)
@@ -158,8 +158,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -233,9 +240,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index 9aa439cce55f320c9811610c83acb497350dd3c3..c51b2e442154eba4bc0f9f210806202bfa62d4f1 100644 (file)
@@ -158,8 +158,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -233,9 +240,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index 87fcb3683fade32a195006e7e9ee114faf4c40fe..6e68512e7f6d36c9cd2a3522a9a28aa29bbee670 100644 (file)
@@ -172,8 +172,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -313,9 +320,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index 3d18c8e064add20dd80556691a9acb877c719f94..8e069eb1c1b4aed5f8fed612f1b8bd4575b407a3 100644 (file)
@@ -1,3 +1,8 @@
+2007-12-24  Bruno Haible  <bruno@clisp.org>
+
+       * Makefile.in.in ($(POFILES), .nop.po-update): When using msgmerge
+       0.18 or newer, pass a --lang option.
+
 2007-12-24  Bruno Haible  <bruno@clisp.org>
 
        * Makefile.in.in (.nop.po-update): Put all non-option arguments after
index 675d8bffd933590bdc5bf8f59cf6047be0aded38..b1a7baf9bbb633f682c51e33a254ca110c04158e 100644 (file)
@@ -193,8 +193,15 @@ $(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) $${lang}.po $(DOMAIN).pot"; \
-         cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
+         echo "$${cdcmd}$(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \
+         cd $(srcdir) \
+           && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
+                  '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \
+                    $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot;; \
+                  *) \
+                    $(MSGMERGE_UPDATE) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \
+                esac; \
+              }; \
        else \
          $(MAKE) $${lang}.po-create; \
        fi
@@ -395,9 +402,15 @@ update-po: Makefile
        tmpdir=`pwd`; \
        echo "$$lang:"; \
        test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
-       echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
+       echo "$${cdcmd}$(MSGMERGE) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
        cd $(srcdir); \
-       if $(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot; then \
+       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) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+              *) \
+                $(MSGMERGE) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
+            esac; \
+          }; then \
          if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
            rm -f $$tmpdir/$$lang.new.po; \
          else \
index a7aac4093988a04da794b424cfe1fe68e230b9e3..36036fd9874ad578ac5fc045ca8e1d16f514843d 100644 (file)
@@ -1,3 +1,34 @@
+2007-12-24  Bruno Haible  <bruno@clisp.org>
+
+       Introduce 'Language' header field.
+       * xgettext.c (construct_header): Add an empty 'Language' field.
+       * msginit.c (language_value): New function.
+       (fields): Add 'Language'.
+       * msgmerge.c: Include lang-table.h.
+       (catalogname): New variable.
+       (long_options): Add --lang option.
+       (main): Handle --lang option.
+       (usage): Document --lang option.
+       (message_merge): Set the 'Language' field if --lang was specified or
+       if it is missing and can be inferred from the 'Language-Team' field.
+       * msgl-header.h: New file.
+       * msgl-header.c: New file.
+       * msgcat.c: Include msgl-header.h.
+       (long_options): Add --lang option.
+       (main): Handle --lang option.
+       (usage): Document --lang option.
+       * msgen.c: Include msgl-header.h.
+       (long_options): Add --lang option.
+       (main): Handle --lang option.
+       (usage): Document --lang option.
+       * msgl-check.c (plural_help): Look at the 'Language' field before
+       looking at the 'Language-Team' field.
+       (check_header_entry): Fix comparison with default value. When the
+       'Language' field is missing, signal a warning.
+       * Makefile.am (libgettextsrc_la_SOURCES): Add msgl-header.c.
+       (msgmerge_SOURCES): Add lang-table.c.
+       * FILES: Update.
+
 2007-12-22  Bruno Haible  <bruno@clisp.org>
 
        * write-po.c (wrap): Avoid breaking line in the middle of a format
index 53290b31ccf3d19e975cd17b05822c6a4a3e5506..3ade815404f8f2eb69f8da7ef32dac1f96da233c 100644 (file)
@@ -132,6 +132,10 @@ msgcmp.c        Main source for the 'msgcmp' program.
 |
 +-------------- The 'msgmerge' program
 
+msgl-header.h
+msgl-header.c
+                Message list header manipulation.
+
 msgcomm.c       Main source for the 'msgcomm' program.
 msgattrib.c     Main source for the 'msgattrib' program.
 msgcat.c        Main source for the 'msgcat' program.
index 6c238dcd0f7346c49b06eda2c74e944ad1449999..ae5229a5c54eae06368b93e40bc99650f676afd1 100644 (file)
@@ -119,8 +119,9 @@ format-php.c format-gcc-internal.c format-qt.c format-kde.c format-boost.c
 libgettextsrc_la_SOURCES = \
 $(COMMON_SOURCE) read-catalog.c \
 color.c write-catalog.c write-properties.c write-stringtable.c write-po.c \
-msgl-ascii.c msgl-iconv.c msgl-equal.c msgl-cat.c msgl-english.c msgl-check.c \
-file-list.c msgl-charset.c po-time.c plural-exp.c plural-eval.c plural-table.c \
+msgl-ascii.c msgl-iconv.c msgl-equal.c msgl-cat.c msgl-header.c msgl-english.c \
+msgl-check.c file-list.c msgl-charset.c po-time.c plural-exp.c plural-eval.c \
+plural-table.c \
 $(FORMAT_SOURCE)
 
 # msggrep needs pattern matching.
@@ -137,7 +138,7 @@ msgmerge_SOURCES = msgmerge.c
 else
 msgmerge_SOURCES = ../woe32dll/c++msgmerge.cc
 endif
-msgmerge_SOURCES += msgl-fsearch.c plural-count.c
+msgmerge_SOURCES += msgl-fsearch.c lang-table.c plural-count.c
 msgunfmt_SOURCES = msgunfmt.c
 msgunfmt_SOURCES += \
   read-mo.c read-java.c read-csharp.c read-resources.c read-tcl.c
index 56225076f3f12245df834c0522b149f0f39d612c..910f80effc08461d5bc0de8477cb5c8b34021cdd 100644 (file)
@@ -46,6 +46,7 @@
 #include "write-stringtable.h"
 #include "color.h"
 #include "msgl-cat.h"
+#include "msgl-header.h"
 #include "propername.h"
 #include "gettext.h"
 
@@ -69,6 +70,7 @@ static const struct option long_options[] =
   { "force-po", no_argument, &force_po, 1 },
   { "help", no_argument, NULL, 'h' },
   { "indent", no_argument, NULL, 'i' },
+  { "lang", required_argument, NULL, CHAR_MAX + 7 },
   { "no-escape", no_argument, NULL, 'e' },
   { "no-location", no_argument, &line_comment, 0 },
   { "no-wrap", no_argument, NULL, CHAR_MAX + 2 },
@@ -115,6 +117,8 @@ main (int argc, char **argv)
   catalog_output_format_ty output_syntax = &output_format_po;
   bool sort_by_msgid = false;
   bool sort_by_filepos = false;
+  /* Language (ISO-639 code) and optional territory (ISO-3166 code).  */
+  const char *catalogname = NULL;
 
   /* Set program name for messages.  */
   set_program_name (argv[0]);
@@ -268,6 +272,10 @@ main (int argc, char **argv)
        handle_style_option (optarg);
        break;
 
+      case CHAR_MAX + 7: /* --lang */
+       catalogname = optarg;
+       break;
+
       default:
        usage (EXIT_FAILURE);
        /* NOTREACHED */
@@ -335,6 +343,10 @@ There is NO WARRANTY, to the extent permitted by law.\n\
   else if (sort_by_msgid)
     msgdomain_list_sort_by_msgid (result);
 
+  /* Set the Language field in the header.  */
+  if (catalogname != NULL)
+    msgdomain_list_set_header_field (result, "Language:", catalogname);
+
   /* Write the PO file.  */
   msgdomain_list_print (result, output_file, output_syntax, force_po, false);
 
@@ -418,6 +430,8 @@ Output details:\n"));
       --use-first             use first available translation for each\n\
                               message, don't merge several translations\n"));
       printf (_("\
+      --lang=CATALOGNAME      set 'Language' field in the header entry\n"));
+      printf (_("\
       --color                 use colors and other text attributes always\n\
       --color=WHEN            use colors and other text attributes if WHEN.\n\
                               WHEN may be 'always', 'never', 'auto', or 'html'.\n"));
index 390767d9e180c527d5b6b4199a59ee941398466e..84cbf8a047c422d17c26ba23c466e14441b72a63 100644 (file)
@@ -39,6 +39,7 @@
 #include "read-properties.h"
 #include "read-stringtable.h"
 #include "msgl-english.h"
+#include "msgl-header.h"
 #include "write-catalog.h"
 #include "write-po.h"
 #include "write-properties.h"
@@ -61,6 +62,7 @@ static const struct option long_options[] =
   { "force-po", no_argument, &force_po, 1 },
   { "help", no_argument, NULL, 'h' },
   { "indent", no_argument, NULL, 'i' },
+  { "lang", required_argument, NULL, CHAR_MAX + 4 },
   { "no-escape", no_argument, NULL, 'e' },
   { "no-location", no_argument, &line_comment, 0 },
   { "no-wrap", no_argument, NULL, CHAR_MAX + 1 },
@@ -98,6 +100,8 @@ main (int argc, char **argv)
   catalog_output_format_ty output_syntax = &output_format_po;
   bool sort_by_filepos = false;
   bool sort_by_msgid = false;
+  /* Language (ISO-639 code) and optional territory (ISO-3166 code).  */
+  const char *catalogname = NULL;
 
   /* Set program name for messages.  */
   set_program_name (argv[0]);
@@ -198,6 +202,10 @@ main (int argc, char **argv)
        output_syntax = &output_format_stringtable;
        break;
 
+      case CHAR_MAX + 4: /* --lang */
+       catalogname = optarg;
+       break;
+
       default:
        usage (EXIT_FAILURE);
        break;
@@ -255,6 +263,10 @@ There is NO WARRANTY, to the extent permitted by law.\n\
   else if (sort_by_msgid)
     msgdomain_list_sort_by_msgid (result);
 
+  /* Set the Language field in the header.  */
+  if (catalogname != NULL)
+    msgdomain_list_set_header_field (result, "Language:", catalogname);
+
   /* Write the merged message list out.  */
   msgdomain_list_print (result, output_file, output_syntax, force_po, false);
 
@@ -313,6 +325,8 @@ Input file syntax:\n"));
       printf (_("\
 Output details:\n"));
       printf (_("\
+      --lang=CATALOGNAME      set 'Language' field in the header entry\n"));
+      printf (_("\
   -e, --no-escape             do not use C escapes in output (default)\n"));
       printf (_("\
   -E, --escape                use C escapes in output, no extended chars\n"));
index 731b3b902411de07d73264085a654c5cc8eb84df..27db9f18b58747ce72dbb54286a4ac65e151d597 100644 (file)
@@ -1218,6 +1218,14 @@ language_team ()
 }
 
 
+/* Construct the value for the Language field.  */
+static const char *
+language_value ()
+{
+  return catalogname;
+}
+
+
 /* Construct the value for the MIME-Version field.  */
 static const char *
 mime_version ()
@@ -1294,6 +1302,7 @@ fields[] =
     { "PO-Revision-Date", NULL, po_revision_date },
     { "Last-Translator", last_translator, NULL },
     { "Language-Team", language_team, NULL },
+    { "Language", language_value, NULL },
     { "MIME-Version", mime_version, NULL },
     { "Content-Type", NULL, content_type },
     { "Content-Transfer-Encoding", content_transfer_encoding, NULL },
index 570e1979f0b135dc847f4f7bf54c5390ffcfbd17..0b49530bdeb0467b165cc55535b57f8558666921 100644 (file)
@@ -173,27 +173,64 @@ check_plural_eval (const struct expression *plural_expr,
 static char *
 plural_help (const char *nullentry)
 {
-  const char *language;
-  size_t j;
+  struct plural_table_entry *ptentry = NULL;
 
-  language = c_strstr (nullentry, "Language-Team: ");
-  if (language != NULL)
-    {
-      language += 15;
-      for (j = 0; j < plural_table_size; j++)
-       if (strncmp (language,
-                    plural_table[j].language,
-                    strlen (plural_table[j].language)) == 0)
+  {
+    const char *language;
+
+    language = c_strstr (nullentry, "Language: ");
+    if (language != NULL)
+      {
+       size_t len;
+
+        language += 10;
+       len = strcspn (language, " \t\n");
+       if (len > 0)
          {
-           char *helpline1 =
-             xasprintf (_("Try using the following, valid for %s:"),
-                        plural_table[j].language);
-           char *help =
-             xasprintf ("%s\n\"Plural-Forms: %s\\n\"\n",
-                        helpline1, plural_table[j].value);
-           free (helpline1);
-           return help;
+           size_t j;
+
+           for (j = 0; j < plural_table_size; j++)
+             if (len == strlen (plural_table[j].lang)
+                 && strncmp (language, plural_table[j].lang, len) == 0)
+               {
+                 ptentry = &plural_table[j];
+                 break;
+               }
          }
+      }
+  }
+
+  if (ptentry == NULL)
+    {
+      const char *language;
+
+      language = c_strstr (nullentry, "Language-Team: ");
+      if (language != NULL)
+       {
+         size_t j;
+
+         language += 15;
+         for (j = 0; j < plural_table_size; j++)
+           if (strncmp (language,
+                        plural_table[j].language,
+                        strlen (plural_table[j].language)) == 0)
+             {
+               ptentry = &plural_table[j];
+               break;
+             }
+       }
+    }
+
+  if (ptentry != NULL)
+    {
+      char *helpline1 =
+       xasprintf (_("Try using the following, valid for %s:"),
+                  ptentry->language);
+      char *help =
+       xasprintf ("%s\n\"Plural-Forms: %s\\n\"\n",
+                  helpline1, ptentry->value);
+      free (helpline1);
+      return help;
     }
   return NULL;
 }
@@ -674,27 +711,33 @@ check_header_entry (const message_ty *mp, const char *msgstr_string)
   {
     "Project-Id-Version", "PO-Revision-Date", "Last-Translator",
     "Language-Team", "MIME-Version", "Content-Type",
-    "Content-Transfer-Encoding"
+    "Content-Transfer-Encoding",
+    /* These are recommended but not yet required.  */
+    "Language"
   };
   static const char *default_values[] =
   {
     "PACKAGE VERSION", "YEAR-MO-DA", "FULL NAME", "LANGUAGE", NULL,
-    "text/plain; charset=CHARSET", "ENCODING"
+    "text/plain; charset=CHARSET", "ENCODING",
+    ""
   };
   const size_t nfields = SIZEOF (required_fields);
+  const size_t nrequiredfields = nfields - 1;
   int initial = -1;
   int cnt;
 
   for (cnt = 0; cnt < nfields; ++cnt)
     {
-      char *endp = c_strstr (msgstr_string, required_fields[cnt]);
+      int severity =
+       (cnt < nrequiredfields ? PO_SEVERITY_ERROR : PO_SEVERITY_WARNING);
+      const char *endp = c_strstr (msgstr_string, required_fields[cnt]);
 
       if (endp == NULL)
        {
          char *msg =
-           xasprintf (_("headerfield `%s' missing in header\n"),
+           xasprintf (_("header field `%s' missing in header\n"),
                       required_fields[cnt]);
-         po_xerror (PO_SEVERITY_ERROR, mp, NULL, 0, 0, true, msg);
+         po_xerror (severity, mp, NULL, 0, 0, true, msg);
          free (msg);
        }
       else if (endp != msgstr_string && endp[-1] != '\n')
@@ -703,33 +746,48 @@ check_header_entry (const message_ty *mp, const char *msgstr_string)
            xasprintf (_("\
 header field `%s' should start at beginning of line\n"),
                       required_fields[cnt]);
-         po_xerror (PO_SEVERITY_ERROR, mp, NULL, 0, 0, true, msg);
+         po_xerror (severity, mp, NULL, 0, 0, true, msg);
          free (msg);
        }
-      else if (default_values[cnt] != NULL
-              && strncmp (default_values[cnt],
-                          endp + strlen (required_fields[cnt]) + 2,
-                          strlen (default_values[cnt])) == 0)
+      else
        {
-         if (initial != -1)
+         const char *p = endp + strlen (required_fields[cnt]);
+         /* Test whether the field's value, starting at p, is the default
+            value.  */
+         if (*p == ':')
+           p++;
+         if (*p == ' ')
+           p++;
+         if (default_values[cnt] != NULL
+             && strncmp (p, default_values[cnt],
+                         strlen (default_values[cnt])) == 0)
            {
-             po_xerror (PO_SEVERITY_ERROR,
-                        mp, NULL, 0, 0, true, _("\
+             p += strlen (default_values[cnt]);
+             if (*p == '\0' || *p == '\n')
+               {
+                 if (initial != -1)
+                   {
+                     po_xerror (severity,
+                                mp, NULL, 0, 0, true, _("\
 some header fields still have the initial default value\n"));
-             initial = -1;
-             break;
+                     initial = -1;
+                     break;
+                   }
+                 else
+                   initial = cnt;
+               }
            }
-         else
-           initial = cnt;
        }
     }
 
   if (initial != -1)
     {
+      int severity =
+       (initial < nrequiredfields ? PO_SEVERITY_ERROR : PO_SEVERITY_WARNING);
       char *msg =
-       xasprintf (_("field `%s' still has initial default value\n"),
+       xasprintf (_("header field `%s' still has the initial default value\n"),
                   required_fields[initial]);
-      po_xerror (PO_SEVERITY_ERROR, mp, NULL, 0, 0, true, msg);
+      po_xerror (severity, mp, NULL, 0, 0, true, msg);
       free (msg);
     }
 }
index 6fa92757d255c86c3e29acfda52090dd198a6403..d65c37de187d4520735d7359505fa136e7c61f71 100644 (file)
@@ -55,6 +55,7 @@
 #include "msgl-equal.h"
 #include "msgl-fsearch.h"
 #include "lock.h"
+#include "lang-table.h"
 #include "plural-exp.h"
 #include "plural-count.h"
 #include "msgl-check.h"
@@ -88,6 +89,9 @@ static bool use_fuzzy_matching = true;
 /* Determines whether to keep old msgids as previous msgids.  */
 static bool keep_previous = false;
 
+/* Language (ISO-639 code) and optional territory (ISO-3166 code).  */
+static const char *catalogname = NULL;
+
 /* List of user-specified compendiums.  */
 static message_list_list_ty *compendiums;
 
@@ -110,6 +114,7 @@ static const struct option long_options[] =
   { "force-po", no_argument, &force_po, 1 },
   { "help", no_argument, NULL, 'h' },
   { "indent", no_argument, NULL, 'i' },
+  { "lang", required_argument, NULL, CHAR_MAX + 8 },
   { "multi-domain", no_argument, NULL, 'm' },
   { "no-escape", no_argument, NULL, 'e' },
   { "no-fuzzy-matching", no_argument, NULL, 'N' },
@@ -309,6 +314,10 @@ main (int argc, char **argv)
        keep_previous = true;
        break;
 
+      case CHAR_MAX + 8: /* --lang */
+       catalogname = optarg;
+       break;
+
       default:
        usage (EXIT_FAILURE);
        break;
@@ -536,6 +545,8 @@ Input file syntax:\n"));
       printf (_("\
 Output details:\n"));
       printf (_("\
+      --lang=CATALOGNAME      set 'Language' field in the header entry\n"));
+      printf (_("\
   -e, --no-escape             do not use C escapes in output (default)\n"));
       printf (_("\
   -E, --escape                use C escapes in output, no extended chars\n"));
@@ -795,15 +806,17 @@ message_merge (message_ty *def, message_ty *ref, bool force_fuzzy,
 #define LAST_TRANSLATOR                4
        { "Language-Team:", sizeof ("Language-Team:") - 1 },
 #define LANGUAGE_TEAM          5
+       { "Language:", sizeof ("Language:") - 1 },
+#define LANGUAGE               6
        { "MIME-Version:", sizeof ("MIME-Version:") - 1 },
-#define MIME_VERSION           6
+#define MIME_VERSION           7
        { "Content-Type:", sizeof ("Content-Type:") - 1 },
-#define CONTENT_TYPE           7
+#define CONTENT_TYPE           8
        { "Content-Transfer-Encoding:",
          sizeof ("Content-Transfer-Encoding:") - 1 }
-#define CONTENT_TRANSFER       8
+#define CONTENT_TRANSFER       9
       };
-#define UNKNOWN        9
+#define UNKNOWN        10
       struct
       {
        const char *string;
@@ -875,6 +888,112 @@ message_merge (message_ty *def, message_ty *ref, bool force_fuzzy,
          cp = endp;
        }
 
+      /* Set the Language field if specified on the command line.  */
+      if (catalogname != NULL)
+       {
+         /* Prepend a space and append a newline.  */
+         size_t len = strlen (catalogname);
+         char *copy = (char *) obstack_alloc (&pool, 1 + len + 1 + 1);
+         stpcpy (stpcpy (stpcpy (copy, " "), catalogname), "\n");
+         header_fields[LANGUAGE].string = copy;
+         header_fields[LANGUAGE].len = strlen (header_fields[LANGUAGE].string);
+       }
+      /* Add a Language field to PO files that don't have one.  The Language
+        field was introduced in gettext-0.18.  */
+      else if (header_fields[LANGUAGE].string == NULL)
+       {
+         const char *language_team_ptr = header_fields[LANGUAGE_TEAM].string;
+
+         if (language_team_ptr != NULL)
+           {
+             size_t language_team_len = header_fields[LANGUAGE_TEAM].len;
+
+             /* Trim leading blanks.  */
+             while (language_team_len > 0
+                    && (*language_team_ptr == ' '
+                        || *language_team_ptr == '\t'))
+               {
+                 language_team_ptr++;
+                 language_team_len--;
+               }
+
+             /* Trim trailing blanks.  */
+             while (language_team_len > 0
+                    && (language_team_ptr[language_team_len - 1] == ' '
+                        || language_team_ptr[language_team_len - 1] == '\t'))
+               language_team_len--;
+
+             /* Trim last word, if it looks like an URL or email address.  */
+             {
+               size_t i;
+
+               for (i = language_team_len; i > 0; i--)
+                 if (language_team_ptr[i - 1] == ' '
+                     || language_team_ptr[i - 1] == '\t')
+                   break;
+               /* The last word: language_team_ptr[i..language_team_len-1].  */
+               if (i < language_team_len
+                   && (language_team_ptr[i] == '<'
+                       || language_team_ptr[language_team_len - 1] == '>'
+                       || memchr (language_team_ptr, '@', language_team_len)
+                          != NULL
+                       || memchr (language_team_ptr, '/', language_team_len)
+                          != NULL))
+                 {
+                   /* Trim last word and blanks before it.  */
+                   while (i > 0
+                          && (language_team_ptr[i - 1] == ' '
+                              || language_team_ptr[i - 1] == '\t'))
+                     i--;
+                   language_team_len = i;
+                 }
+             }
+
+             /* The rest of the Language-Team field should be the english name
+                of the languge.  Convert to ISO 639 and ISO 3166 syntax.  */
+             {
+               size_t i;
+
+               for (i = 0; i < language_variant_table_size; i++)
+                 if (strlen (language_variant_table[i].english)
+                     == language_team_len
+                     && memcmp (language_variant_table[i].english,
+                                language_team_ptr, language_team_len) == 0)
+                   {
+                     header_fields[LANGUAGE].string =
+                       language_variant_table[i].code;
+                     break;
+                   }
+             }
+             if (header_fields[LANGUAGE].string == NULL)
+               {
+                 size_t i;
+
+                 for (i = 0; i < language_table_size; i++)
+                   if (strlen (language_table[i].english) == language_team_len
+                       && memcmp (language_table[i].english,
+                                  language_team_ptr, language_team_len) == 0)
+                     {
+                       header_fields[LANGUAGE].string = language_table[i].code;
+                       break;
+                     }
+               }
+             if (header_fields[LANGUAGE].string != NULL)
+               {
+                 /* Prepend a space and append a newline.  */
+                 const char *str = header_fields[LANGUAGE].string;
+                 size_t len = strlen (str);
+                 char *copy = (char *) obstack_alloc (&pool, 1 + len + 1 + 1);
+                 stpcpy (stpcpy (stpcpy (copy, " "), str), "\n");
+                 header_fields[LANGUAGE].string = copy;
+               }
+             else
+               header_fields[LANGUAGE].string = " \n";
+             header_fields[LANGUAGE].len =
+               strlen (header_fields[LANGUAGE].string);
+           }
+        }
+
       {
        const char *msgid_bugs_ptr;
 
@@ -956,6 +1075,7 @@ message_merge (message_ty *def, message_ty *ref, bool force_fuzzy,
       IF_FILLED (PO_REVISION_DATE);
       IF_FILLED (LAST_TRANSLATOR);
       IF_FILLED (LANGUAGE_TEAM);
+      IF_FILLED (LANGUAGE);
       IF_FILLED (MIME_VERSION);
       IF_FILLED (CONTENT_TYPE);
       IF_FILLED (CONTENT_TRANSFER);
index 49155738ff62c38f828f7b778ac31dee904f5123..feef4200a6f454d9b30d1c0c91fd6524d3e44184 100644 (file)
@@ -2842,6 +2842,7 @@ POT-Creation-Date: %s\n\
 PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n\
 Last-Translator: FULL NAME <EMAIL@ADDRESS>\n\
 Language-Team: LANGUAGE <LL@li.org>\n\
+Language: \n\
 MIME-Version: 1.0\n\
 Content-Type: text/plain; charset=CHARSET\n\
 Content-Transfer-Encoding: 8bit\n",
index 7386cfabc3fe6ed5638868747a933975f0dc7977..48b1cf8ef73731e3bdc5112db4520dcf02aab596 100644 (file)
@@ -1,3 +1,39 @@
+2007-12-24  Bruno Haible  <bruno@clisp.org>
+
+       * msginit-1: Add 'Language' field in header to input. Check that it is
+       filled.
+       * msginit-2: Likewise.
+       * msgmerge-5: Add 'Language' field in header to expected result.
+       * msgmerge-6: Likewise.
+       * msgmerge-10: Likewise.
+       * msgmerge-11: Likewise.
+       * msgmerge-12: Likewise.
+       * msgmerge-13: Likewise.
+       * msgmerge-14: Likewise.
+       * msgmerge-16: Likewise.
+       * msgmerge-21: Likewise.
+       * msgmerge-22: Likewise.
+       * mm-viet.out: Likewise.
+       * msgmerge-update-1: Add 'Language' field in header to input.
+       * msgmerge-update-2: Likewise.
+       * msgmerge-update-3: Likewise.
+       * xgettext-3: Add 'Language' field in header to expected result.
+       * xgettext-4: Likewise.
+       * xgettext-5: Likewise.
+       * xgettext-8: Likewise.
+       * xgettext-csharp-2: Likewise.
+       * xgettext-csharp-3: Likewise.
+       * xgettext-glade-1: Likewise.
+       * xgettext-glade-2: Likewise.
+       * xgettext-glade-3: Likewise.
+       * xgettext-java-2: Likewise.
+       * xgettext-perl-2: Likewise.
+       * xgettext-perl-3: Likewise.
+       * xgettext-python-1: Likewise.
+       * xgettext-python-3: Likewise.
+       * xgettext-stringtable-1: Likewise.
+       * xgettext-tcl-1: Likewise.
+
 2007-12-22  Bruno Haible  <bruno@clisp.org>
 
        * msgcat-17: New file.
index c03d5ede6f9817aa78616a6c6b559f1b50e6bf71..f57688b1fc97dbbd1bbc7c4b9366a3e38e2a2bd2 100644 (file)
@@ -10,6 +10,7 @@ msgstr ""
 "PO-Revision-Date: #LOCALTIME %F %R%z#\n"
 "Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
 "Language-Team: Vietnamese <gnomevi-list@lists.sourceforge.net>\n"
+"Language: vi\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
index 1f8de5307dd05c1a1b48bfc43ab7ae447d9323b5..d0cce87e682655a9bf51a461a50e4571d05a20e9 100755 (executable)
@@ -20,6 +20,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -43,11 +44,17 @@ tmpfiles="$tmpfiles mi-test1.tmp mi-test1.out mi-test1.err"
 : ${MSGINIT=msginit}
 ${MSGINIT} -i mi-test1.pot -l ga_IE --no-translator -o mi-test1.tmp 2>mi-test1.err
 test $? = 0 || { cat mi-test1.err 1>&2; rm -fr $tmpfiles; exit 1; }
-sed -e '1,15d' < mi-test1.tmp | tr -d '\r' > mi-test1.out
+sed -e '1,10d' < mi-test1.tmp | tr -d '\r' > mi-test1.out
 test $? = 0 || { rm -fr $tmpfiles; exit 1; }
 
 tmpfiles="$tmpfiles mi-test1.ok"
 cat <<\EOF > mi-test1.ok
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: ga\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ASCII\n"
+"Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=3; plural=n==1 ? 0 : n==2 ? 1 : 2;\n"
 
 #, c-format
index 52eaf8e985a134e5933c2990ca929642ee645b13..73303da84234047228f28245fdb40e847da3dbf0 100755 (executable)
@@ -20,6 +20,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -67,11 +68,17 @@ tmpfiles="$tmpfiles mi-test2.tmp mi-test2.out mi-test2.err"
 : ${MSGINIT=msginit}
 ${MSGINIT} -i mi-test2.pot -l ga_IE --no-translator -o mi-test2.tmp 2>mi-test2.err
 test $? = 0 || { cat mi-test2.err 1>&2; rm -fr $tmpfiles; exit 1; }
-sed -e '1,15d' < mi-test2.tmp | tr -d '\r' > mi-test2.out
+sed -e '1,10d' < mi-test2.tmp | tr -d '\r' > mi-test2.out
 test $? = 0 || { rm -fr $tmpfiles; exit 1; }
 
 tmpfiles="$tmpfiles mi-test2.ok"
 cat <<\EOF > mi-test2.ok
+"Last-Translator: Automatically generated\n"
+"Language-Team: none\n"
+"Language: ga\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
 "Plural-Forms: nplurals=3; plural=n==1 ? 0 : n==2 ? 1 : 2;\n"
 
 #. A menu item
index 9827a98c76eab2a474935801e55319138921583a..e1f1ebfd0a1c98c066698e28ff3f3a7f957d4d92 100755 (executable)
@@ -74,6 +74,7 @@ msgstr ""
 "PO-Revision-Date: 2001-04-29 21:19+02:00\n"
 "Last-Translator: Felix N. <xyz@zyx.uucp>\n"
 "Language-Team: German <de@li.org>\n"
+"Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
index 4373474bf8e51ef34a080aa265d17d9f6cd94872..4cc034a7da0b5bc53cb0dd326abe41136e1c7a42 100755 (executable)
@@ -76,6 +76,7 @@ msgstr ""
 "PO-Revision-Date: 2001-04-29 21:19+02:00\n"
 "Last-Translator: Felix N. <xyz@zyx.uucp>\n"
 "Language-Team: German <de@li.org>\n"
+"Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
index 91bc9b0d5755da7a78bf5bf58aff5dc912fae258..39995c4fe4c17cfdc06b7e0d78712310327ea0a6 100755 (executable)
@@ -74,6 +74,7 @@ msgstr ""
 "PO-Revision-Date: 2001-04-29 21:19+02:00\n"
 "Last-Translator: Felix N. <xyz@zyx.uucp>\n"
 "Language-Team: German <de@li.org>\n"
+"Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
index 826d908f52c7581df4df810ad70b1f77660d290c..292a1f097d7e9f2e0ca61452e4776b2efb6c23c5 100755 (executable)
@@ -107,6 +107,7 @@ msgstr ""
 "PO-Revision-Date: 2001-04-29 21:19+02:00\n"
 "Last-Translator: Felix N. <xyz@zyx.uucp>\n"
 "Language-Team: German <de@li.org>\n"
+"Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
index 38c841116adc8131d71d6c555d277666f0213e2d..ee95c6a0ff03f3ed82f36ebe7a78c28529d70d06 100755 (executable)
@@ -79,6 +79,7 @@ msgstr ""
 "PO-Revision-Date: 2002-11-01 01:23+0100\n"
 "Last-Translator: Arseny Slobodjuck <ampy@ich.dvo.ru>\n"
 "Language-Team: Russian <ru@li.org>\n"
+"Language: ru\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
index 2174cd23565b3991ffcba72d034788a7106ae8c6..4bcb6d27ac348af86c2ddfbb46f3544385ca0dc1 100755 (executable)
@@ -77,6 +77,7 @@ msgstr ""
 "PO-Revision-Date: 2003-10-20 10:13+0200\n"
 "Last-Translator: Bruno Haible <bruno@clisp.org>\n"
 "Language-Team: Polish <pl@li.org>\n"
+"Language: pl\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
index 4cac8081191ef07064c43edd67690d207a985867..ba53911b65293082def0721d122b9ef363d7cf74 100755 (executable)
@@ -66,6 +66,7 @@ msgstr ""
 "PO-Revision-Date: 2007-06-28 16:37+0200\n"
 "Last-Translator: Karl Eichwalder <ke@suse.de>\n"
 "Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
+"Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
index 75fed04cfbe1caeb0cba79965e97b49d623d8cd0..d37afc5becea97362c75559a305c331ecb8667b4 100644 (file)
@@ -64,6 +64,7 @@ msgstr ""
 "PO-Revision-Date: 2007-06-28 16:37+0200\n"
 "Last-Translator: Karl Eichwalder <ke@suse.de>\n"
 "Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
+"Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
index 997fe17476cf5856e00adbb187eaccf43ca44d14..12c3736ae802c677b05b1d01c6bbfb684767cfcd 100755 (executable)
@@ -62,6 +62,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI +ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: ENCODING\n"
index eb4ab663f27683f4a3cd7b478511250cf6e4307e..c6f9e3ef46de8f285c0d080b9854f2f30b71c179 100755 (executable)
@@ -77,6 +77,7 @@ msgstr ""
 "PO-Revision-Date: 2001-04-29 21:19+02:00\n"
 "Last-Translator: Felix Natter <fnatter@gmx.net>\n"
 "Language-Team: German <de@li.org>\n"
+"Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
index 54e17efa19f3e545fa724b7093cc960ba069508b..8b167218f815d90762e71f09b78bbcd1816c4bcd 100755 (executable)
@@ -18,6 +18,7 @@ msgstr ""
 "PO-Revision-Date: 2001-04-29 21:19+02:00\n"
 "Last-Translator: Felix N. <xyz@zyx.uucp>\n"
 "Language-Team: German <de@li.org>\n"
+"Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
index dbc5aa0d497d66b714d854a9261140aecc795b89..0174032fc98b75082047890e3b68c980612897cd 100755 (executable)
@@ -19,6 +19,7 @@ msgstr ""
 "PO-Revision-Date: 2001-04-29 21:19+02:00\n"
 "Last-Translator: Felix N. <xyz@zyx.uucp>\n"
 "Language-Team: German <de@li.org>\n"
+"Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -72,6 +73,7 @@ msgstr ""
 "PO-Revision-Date: 2001-04-29 21:19+02:00\n"
 "Last-Translator: Felix N. <xyz@zyx.uucp>\n"
 "Language-Team: German <de@li.org>\n"
+"Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
index 4ee2bd84c890ed3f03560082e7fc61cab326830d..375f19bafc258d9b1d0ccb3719dcbf499992e259 100755 (executable)
@@ -20,6 +20,7 @@ msgstr ""
 "PO-Revision-Date: 2001-04-29 21:19+02:00\n"
 "Last-Translator: Felix N. <xyz@zyx.uucp>\n"
 "Language-Team: German <de@li.org>\n"
+"Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -69,6 +70,7 @@ msgstr ""
 "PO-Revision-Date: 2001-04-29 21:19+02:00\n"
 "Last-Translator: Felix N. <xyz@zyx.uucp>\n"
 "Language-Team: German <de@li.org>\n"
+"Language: de\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=ISO-8859-1\n"
 "Content-Transfer-Encoding: 8bit\n"
index c6c59f7be8698c9e0805b5362d4fbc1f6201b5b4..81ecdcb213ce863fef9562a8d04790b91b8c27da 100755 (executable)
@@ -45,6 +45,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
index ab85af893e7b8372440b8ad362dfb662e678b05d..21b14ba951126a3f674b22fd39759f69546ecfd4 100755 (executable)
@@ -30,6 +30,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
index d7fce82b2d58b2ddd184c09a9241b5f128a1280b..ef031805a7ab4f695e99e1c4cd8a0409d6063466 100755 (executable)
@@ -41,6 +41,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
index e3005bcccf0276940728098eabbd85e16158726f..adc29253378380732f5005193ecce90a05d219ca 100755 (executable)
@@ -57,6 +57,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
index 260cf8ba6522919ba26787710439965d642195e3..d608c73acae50c370fc269f392b47bda634cbe23 100755 (executable)
@@ -47,6 +47,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
index 74050d6c020d01e0acaac3be19431fb27e121742..c231b1c883261b256244005b8749e08aef8e5937 100755 (executable)
@@ -73,6 +73,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
index d4323a0cbdce8b799b99dfe30eec25586eefaf17..e8beec727056a527ddbb29580a8bc26ce68843a2 100755 (executable)
@@ -1354,6 +1354,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
index 56b40482cec631c1f667fa4afc6bf922f100ea98..1b00b0f6c6bd5239128d7d2f523cb51dff172cd9 100755 (executable)
@@ -80,6 +80,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
index 0625e9603ab3e43547447ff4f51394fcca82acc0..9d6622b3980e683b5a7727ff3f8e7a59b2c7c8fe 100755 (executable)
@@ -187,6 +187,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
index 689e728b34263b14937fcaf671039cc6c8e13d62..10b82083fd7312cc2fc08bcc326060d143de6dbb 100755 (executable)
@@ -79,6 +79,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
index ce1e28f913879f9e3b2d03962ce30dbe6304749a..338c8d865b728fc33dac9af1112ab513188e415f 100755 (executable)
@@ -36,6 +36,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
index 82797511b7a14f6cdc3626a8dfa7b6e696ec9eb1..131f777dec24c5b4088f12f467b20573d9a65706 100755 (executable)
@@ -36,6 +36,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
index aace2a191268c20fd7490928dcff9abfdecef11b..6e9a07eb5ee048d87e4d87a2db984660016ba754 100755 (executable)
@@ -45,6 +45,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
index a81a7b31adc5406cf8704df673336881f5e9f23d..46ae77ba440e213597b4790335c195814cd6fe90 100755 (executable)
@@ -35,6 +35,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
@@ -115,6 +116,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
index 35a455c0d67a1b4e10dd533b92c27fe4e62780c7..8d4c94c579a129489c01b7fbcc6dbd8cbb2cae0c 100755 (executable)
@@ -44,6 +44,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
index 6d3f924c98b1bf1c93365dd87714a4c28c413118..85d38d8a73d88d552c7a2a9191f1c27a89b47495 100755 (executable)
@@ -45,6 +45,7 @@ msgstr ""
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"