aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--m4/intdiv0.m49
-rw-r--r--m4/intl.m487
-rw-r--r--po/ChangeLog481
-rw-r--r--po/Makefile.in.in133
-rw-r--r--po/Makevars4
-rw-r--r--po/Rules-quot6
-rw-r--r--po/en@boldquot.header2
-rw-r--r--po/en@quot.header2
-rw-r--r--po/insert-header.sin5
-rw-r--r--po/remove-potcdate.sin8
10 files changed, 613 insertions, 124 deletions
diff --git a/m4/intdiv0.m4 b/m4/intdiv0.m4
index 744b99ea..c1034c76 100644
--- a/m4/intdiv0.m4
+++ b/m4/intdiv0.m4
@@ -1,5 +1,5 @@
1# intdiv0.m4 serial 6 (gettext-0.18.2) 1# intdiv0.m4 serial 7 (gettext-0.20.2)
2dnl Copyright (C) 2002, 2007-2008, 2010-2016 Free Software Foundation, Inc. 2dnl Copyright (C) 2002, 2007-2008, 2010-2020 Free Software Foundation, Inc.
3dnl This file is free software; the Free Software Foundation 3dnl This file is free software; the Free Software Foundation
4dnl gives unlimited permission to copy and/or distribute it, 4dnl gives unlimited permission to copy and/or distribute it,
5dnl with or without modifications, as long as this notice is preserved. 5dnl with or without modifications, as long as this notice is preserved.
@@ -31,8 +31,11 @@ changequote([,])dnl
31 if test -z "$gt_cv_int_divbyzero_sigfpe"; then 31 if test -z "$gt_cv_int_divbyzero_sigfpe"; then
32 AC_RUN_IFELSE( 32 AC_RUN_IFELSE(
33 [AC_LANG_SOURCE([[ 33 [AC_LANG_SOURCE([[
34#include <stdlib.h> 34#include <stdlib.h> /* for exit() */
35#include <signal.h> 35#include <signal.h>
36#if !(defined _WIN32 && !defined __CYGWIN__)
37#include <unistd.h> /* for _exit() */
38#endif
36 39
37static void 40static void
38sigfpe_handler (int sig) 41sigfpe_handler (int sig)
diff --git a/m4/intl.m4 b/m4/intl.m4
index 42fac953..043176d0 100644
--- a/m4/intl.m4
+++ b/m4/intl.m4
@@ -1,15 +1,15 @@
1# intl.m4 serial 29 (gettext-0.19) 1# intl.m4 serial 44 (gettext-0.21)
2dnl Copyright (C) 1995-2014, 2016 Free Software Foundation, Inc. 2dnl Copyright (C) 1995-2014, 2016-2020 Free Software Foundation, Inc.
3dnl This file is free software; the Free Software Foundation 3dnl This file is free software; the Free Software Foundation
4dnl gives unlimited permission to copy and/or distribute it, 4dnl gives unlimited permission to copy and/or distribute it,
5dnl with or without modifications, as long as this notice is preserved. 5dnl with or without modifications, as long as this notice is preserved.
6dnl 6dnl
7dnl This file can be used in projects which are not available under 7dnl This file can be used in projects which are not available under
8dnl the GNU General Public License or the GNU Library General Public 8dnl the GNU General Public License or the GNU Lesser General Public
9dnl License but which still want to provide support for the GNU gettext 9dnl License but which still want to provide support for the GNU gettext
10dnl functionality. 10dnl functionality.
11dnl Please note that the actual code of the GNU gettext library is covered 11dnl Please note that the actual code of the GNU gettext library is covered
12dnl by the GNU Library General Public License, and the rest of the GNU 12dnl by the GNU Lesser General Public License, and the rest of the GNU
13dnl gettext package is covered by the GNU General Public License. 13dnl gettext package is covered by the GNU General Public License.
14dnl They are *not* in the public domain. 14dnl They are *not* in the public domain.
15 15
@@ -20,8 +20,7 @@ dnl Bruno Haible <haible@clisp.cons.org>, 2000-2009.
20AC_PREREQ([2.60]) 20AC_PREREQ([2.60])
21 21
22dnl Checks for all prerequisites of the intl subdirectory, 22dnl Checks for all prerequisites of the intl subdirectory,
23dnl except for INTL_LIBTOOL_SUFFIX_PREFIX (and possibly LIBTOOL), INTLOBJS, 23dnl except for LIBTOOL, USE_INCLUDED_LIBINTL, BUILD_INCLUDED_LIBINTL.
24dnl USE_INCLUDED_LIBINTL, BUILD_INCLUDED_LIBINTL.
25AC_DEFUN([AM_INTL_SUBDIR], 24AC_DEFUN([AM_INTL_SUBDIR],
26[ 25[
27 AC_REQUIRE([AC_PROG_INSTALL])dnl 26 AC_REQUIRE([AC_PROG_INSTALL])dnl
@@ -29,7 +28,6 @@ AC_DEFUN([AM_INTL_SUBDIR],
29 AC_REQUIRE([AC_PROG_CC])dnl 28 AC_REQUIRE([AC_PROG_CC])dnl
30 AC_REQUIRE([AC_CANONICAL_HOST])dnl 29 AC_REQUIRE([AC_CANONICAL_HOST])dnl
31 AC_REQUIRE([gt_GLIBC2])dnl 30 AC_REQUIRE([gt_GLIBC2])dnl
32 AC_REQUIRE([AC_PROG_RANLIB])dnl
33 AC_REQUIRE([gl_VISIBILITY])dnl 31 AC_REQUIRE([gl_VISIBILITY])dnl
34 AC_REQUIRE([gt_INTL_SUBDIR_CORE])dnl 32 AC_REQUIRE([gt_INTL_SUBDIR_CORE])dnl
35 AC_REQUIRE([AC_TYPE_LONG_LONG_INT])dnl 33 AC_REQUIRE([AC_TYPE_LONG_LONG_INT])dnl
@@ -41,9 +39,26 @@ AC_DEFUN([AM_INTL_SUBDIR],
41 AC_REQUIRE([gl_GLIBC21])dnl 39 AC_REQUIRE([gl_GLIBC21])dnl
42 AC_REQUIRE([gl_XSIZE])dnl 40 AC_REQUIRE([gl_XSIZE])dnl
43 AC_REQUIRE([gl_FCNTL_O_FLAGS])dnl 41 AC_REQUIRE([gl_FCNTL_O_FLAGS])dnl
42 AC_REQUIRE([gt_INTL_THREAD_LOCALE_NAME])
44 AC_REQUIRE([gt_INTL_MACOSX])dnl 43 AC_REQUIRE([gt_INTL_MACOSX])dnl
45 AC_REQUIRE([gl_EXTERN_INLINE])dnl 44 AC_REQUIRE([gl_EXTERN_INLINE])dnl
46 AC_REQUIRE([gt_GL_ATTRIBUTE])dnl 45 AC_REQUIRE([gt_GL_ATTRIBUTE])dnl
46 AC_REQUIRE([AC_C_FLEXIBLE_ARRAY_MEMBER])dnl
47
48 dnl In projects that use gnulib, use gl_PROG_AR_RANLIB.
49 dnl The '][' hides this use from 'aclocal'.
50 m4_ifdef([g][l_PROG_AR_RANLIB],
51 [AC_REQUIRE([g][l_PROG_AR_RANLIB])],
52 [AC_REQUIRE([AC_PROG_RANLIB])
53 dnl Use Automake-documented default values for AR and ARFLAGS, but prefer
54 dnl ${host}-ar over ar (useful for cross-compiling).
55 AC_CHECK_TOOL([AR], [ar], [ar])
56 if test -z "$ARFLAGS"; then
57 ARFLAGS='cr'
58 fi
59 AC_SUBST([AR])
60 AC_SUBST([ARFLAGS])
61 ])
47 62
48 dnl Support for automake's --enable-silent-rules. 63 dnl Support for automake's --enable-silent-rules.
49 case "$enable_silent_rules" in 64 case "$enable_silent_rules" in
@@ -58,8 +73,8 @@ AC_DEFUN([AM_INTL_SUBDIR],
58 [Define as the type of the result of subtracting two pointers, if the system doesn't define it.]) 73 [Define as the type of the result of subtracting two pointers, if the system doesn't define it.])
59 ]) 74 ])
60 AC_CHECK_HEADERS([features.h stddef.h stdlib.h string.h]) 75 AC_CHECK_HEADERS([features.h stddef.h stdlib.h string.h])
61 AC_CHECK_FUNCS([asprintf fwprintf newlocale putenv setenv setlocale \ 76 AC_CHECK_FUNCS([asprintf wprintf newlocale putenv setenv \
62 snprintf strnlen wcslen wcsnlen mbrtowc wcrtomb]) 77 snprintf strnlen uselocale wcslen wcsnlen mbrtowc wcrtomb])
63 78
64 dnl Use the _snprintf function only if it is declared (because on NetBSD it 79 dnl Use the _snprintf function only if it is declared (because on NetBSD it
65 dnl is defined as a weak alias of snprintf; we prefer to use the latter). 80 dnl is defined as a weak alias of snprintf; we prefer to use the latter).
@@ -104,6 +119,13 @@ AC_DEFUN([AM_INTL_SUBDIR],
104 AM_LANGINFO_CODESET 119 AM_LANGINFO_CODESET
105 gt_LC_MESSAGES 120 gt_LC_MESSAGES
106 121
122 if test $gt_nameless_locales = yes; then
123 HAVE_NAMELESS_LOCALES=1
124 else
125 HAVE_NAMELESS_LOCALES=0
126 fi
127 AC_SUBST([HAVE_NAMELESS_LOCALES])
128
107 dnl Compilation on mingw and Cygwin needs special Makefile rules, because 129 dnl Compilation on mingw and Cygwin needs special Makefile rules, because
108 dnl 1. when we install a shared library, we must arrange to export 130 dnl 1. when we install a shared library, we must arrange to export
109 dnl auxiliary pointer variables for every exported variable, 131 dnl auxiliary pointer variables for every exported variable,
@@ -135,18 +157,6 @@ AC_DEFUN([AM_INTL_SUBDIR],
135 AC_CHECK_TOOL([WINDRES], [windres]) 157 AC_CHECK_TOOL([WINDRES], [windres])
136 fi 158 fi
137 159
138 dnl Determine whether when creating a library, "-lc" should be passed to
139 dnl libtool or not. On many platforms, it is required for the libtool option
140 dnl -no-undefined to work. On HP-UX, however, the -lc - stored by libtool
141 dnl in the *.la files - makes it impossible to create multithreaded programs,
142 dnl because libtool also reorders the -lc to come before the -pthread, and
143 dnl this disables pthread_create() <http://docs.hp.com/en/1896/pthreads.html>.
144 case "$host_os" in
145 hpux*) LTLIBC="" ;;
146 *) LTLIBC="-lc" ;;
147 esac
148 AC_SUBST([LTLIBC])
149
150 dnl Rename some macros and functions used for locking. 160 dnl Rename some macros and functions used for locking.
151 AH_BOTTOM([ 161 AH_BOTTOM([
152#define __libc_lock_t gl_lock_t 162#define __libc_lock_t gl_lock_t
@@ -217,7 +227,6 @@ AC_DEFUN([gt_INTL_SUBDIR_CORE],
217 AC_REQUIRE([AC_FUNC_MMAP])dnl 227 AC_REQUIRE([AC_FUNC_MMAP])dnl
218 AC_REQUIRE([gt_INTDIV0])dnl 228 AC_REQUIRE([gt_INTDIV0])dnl
219 AC_REQUIRE([gl_AC_TYPE_UINTMAX_T])dnl 229 AC_REQUIRE([gl_AC_TYPE_UINTMAX_T])dnl
220 AC_REQUIRE([gt_INTTYPES_PRI])dnl
221 AC_REQUIRE([gl_LOCK])dnl 230 AC_REQUIRE([gl_LOCK])dnl
222 231
223 AC_LINK_IFELSE( 232 AC_LINK_IFELSE(
@@ -227,16 +236,9 @@ AC_DEFUN([gt_INTL_SUBDIR_CORE],
227 [AC_DEFINE([HAVE_BUILTIN_EXPECT], [1], 236 [AC_DEFINE([HAVE_BUILTIN_EXPECT], [1],
228 [Define to 1 if the compiler understands __builtin_expect.])]) 237 [Define to 1 if the compiler understands __builtin_expect.])])
229 238
230 AC_CHECK_HEADERS([argz.h inttypes.h limits.h unistd.h sys/param.h]) 239 AC_CHECK_HEADERS([inttypes.h limits.h unistd.h sys/param.h])
231 AC_CHECK_FUNCS([getcwd getegid geteuid getgid getuid mempcpy munmap \ 240 AC_CHECK_FUNCS([getcwd getegid geteuid getgid getuid mempcpy munmap \
232 stpcpy strcasecmp strdup strtoul tsearch uselocale argz_count \ 241 stpcpy strcasecmp strdup strtoul tsearch __fsetlocking])
233 argz_stringify argz_next __fsetlocking])
234
235 dnl Solaris 12 provides getlocalename_l, while Illumos doesn't have
236 dnl it nor the equivalent.
237 if test $ac_cv_func_uselocale = yes; then
238 AC_CHECK_FUNCS([getlocalename_l])
239 fi
240 242
241 dnl Use the *_unlocked functions only if they are declared. 243 dnl Use the *_unlocked functions only if they are declared.
242 dnl (because some of them were defined without being declared in Solaris 244 dnl (because some of them were defined without being declared in Solaris
@@ -248,33 +250,14 @@ AC_DEFUN([gt_INTL_SUBDIR_CORE],
248 250
249 dnl intl/plural.c is generated from intl/plural.y. It requires bison, 251 dnl intl/plural.c is generated from intl/plural.y. It requires bison,
250 dnl because plural.y uses bison specific features. It requires at least 252 dnl because plural.y uses bison specific features. It requires at least
251 dnl bison-2.7 for %define api.pure. 253 dnl bison-3.0 for %precedence.
252 dnl bison is only needed for the maintainer (who touches plural.y). But in 254 dnl bison is only needed for the maintainer (who touches plural.y). But in
253 dnl order to avoid separate Makefiles or --enable-maintainer-mode, we put 255 dnl order to avoid separate Makefiles or --enable-maintainer-mode, we put
254 dnl the rule in general Makefile. Now, some people carelessly touch the 256 dnl the rule in general Makefile. Now, some people carelessly touch the
255 dnl files or have a broken "make" program, hence the plural.c rule will 257 dnl files or have a broken "make" program, hence the plural.c rule will
256 dnl sometimes fire. To avoid an error, defines BISON to ":" if it is not 258 dnl sometimes fire. To avoid an error, defines BISON to ":" if it is not
257 dnl present or too old. 259 dnl present or too old.
258 AC_CHECK_PROGS([INTLBISON], [bison]) 260 gl_PROG_BISON([INTLBISON], [3.0])
259 if test -z "$INTLBISON"; then
260 ac_verc_fail=yes
261 else
262 dnl Found it, now check the version.
263 AC_MSG_CHECKING([version of bison])
264changequote(<<,>>)dnl
265 ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
266 case $ac_prog_version in
267 '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
268 2.[7-9]* | [3-9].*)
269changequote([,])dnl
270 ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
271 *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
272 esac
273 AC_MSG_RESULT([$ac_prog_version])
274 fi
275 if test $ac_verc_fail = yes; then
276 INTLBISON=:
277 fi
278]) 261])
279 262
280dnl Copies _GL_UNUSED and _GL_ATTRIBUTE_PURE definitions from 263dnl Copies _GL_UNUSED and _GL_ATTRIBUTE_PURE definitions from
diff --git a/po/ChangeLog b/po/ChangeLog
index b56a1bd7..323900e5 100644
--- a/po/ChangeLog
+++ b/po/ChangeLog
@@ -1,16 +1,473 @@
12018-11-06 gettextize <bug-gnu-gettext@gnu.org> 12020-07-26 Bruno Haible <bruno@clisp.org>
2 2
3 * Makefile.in.in: Upgrade to gettext-0.19.8.1. 3 Update translations (from the TP).
4 * Rules-quot: Upgrade to gettext-0.19.8.1. 4 * gettext-runtime/po/*.po: Update.
5 * gettext-tools/po/*.po: Update.
6 * gettext-tools/examples/po/*.po: Update.
7 * gettext-tools/examples/po/LINGUAS: Add 'nn'.
8 * gettext-tools/examples/hello-*/po/LINGUAS: Likewise.
9 * gettext-tools/examples/Makefile.am (EXAMPLESPOFILES): Add nn.po.
5 10
62018-03-10 gettextize <bug-gnu-gettext@gnu.org> 11 Prepare for 0.21 release.
12 * gettext-runtime/doc/matrix.texi: Update from TP.
13 * gettext-runtime/doc/nls.texi (STATUS): Update.
14 * gettext-runtime/intl/libgnuintl.in.h (LIBINTL_VERSION): Bump.
15 * gettext-tools/libgettextpo/gettext-po.in.h (LIBGETTEXTPO_VERSION): Bump.
16 * libtextstyle/version.sh: Update VERSION_NUMBER, RELEASE_DATE.
17 * gettext-runtime/po/Makefile.in.in: Bump Origin version.
18 * NEWS, libtextstyle/NEWS, gettext-runtime/NEWS: Update.
19 * libtextstyle/lib/Makefile.am (LTV_*): Bump to 1:1:1.
20 * gettext-runtime/intl/Makefile.am (LTV_*): Bump to 10:0:2.
21 * gettext-tools/libgettextpo/Makefile.am (LTV_*): Bump to 5:7:5.
22 * gettext-tools/configure.ac (ARCHIVE_VERSION): Bump to 0.21.
23 * gettext-tools/misc/autopoint.in: Allow version 0.21.
7 24
8 * Makefile.in.in: New file, from gettext-0.19.8.1. 252020-04-14 Bruno Haible <bruno@clisp.org>
9 * Rules-quot: New file, from gettext-0.19.8.1.
10 * boldquot.sed: New file, from gettext-0.19.8.1.
11 * en@boldquot.header: New file, from gettext-0.19.8.1.
12 * en@quot.header: New file, from gettext-0.19.8.1.
13 * insert-header.sin: New file, from gettext-0.19.8.1.
14 * quot.sed: New file, from gettext-0.19.8.1.
15 * remove-potcdate.sin: New file, from gettext-0.19.8.1.
16 26
27 Merge from 0.20.x branch: Update translations (from the TP).
28 * gettext-runtime/po/*.po: Update.
29 * gettext-tools/po/*.po: Update.
30 * gettext-tools/examples/po/*.po: Update.
31 * gettext-tools/examples/po/LINGUAS: Add 'sq'.
32 * gettext-tools/examples/hello-*/po/LINGUAS: Likewise.
33 * gettext-tools/examples/Makefile.am (EXAMPLESPOFILES): Add sq.po.
34
352020-04-11 Bruno Haible <bruno@clisp.org>
36
37 po: Emit a warning when creating a tarball without POT file.
38 * gettext-runtime/po/Makefile.in.in (dist2): Emit a warning when the POT file
39 does not exist.
40 * gettext-tools/examples/hello-*/po/Makefile.am (distdir1): Likewise.
41
422020-04-05 Bruno Haible <bruno@clisp.org>
43
44 po, examples: In the .po -> .gmo rules, really consider the newest changes to the POT file.
45 Reported by Petr Ovtchenkov <ptr@void-ptr.info> in
46 <https://lists.gnu.org/archive/html/bug-gnulib/2020-04/msg00000.html>.
47 Helped by Paul Smith.
48
49 * gettext-runtime/po/Makefile.in.in (.po.gmo): Write dependency on the POT file
50 as a target rule, since inference rules don't support prerequisites.
51 * gettext-tools/examples/hello-*/po/Makefile.am: Likewise, also for the .po.qm
52 rule.
53 * NEWS: Mention the fix.
54
552019-05-12 Bruno Haible <bruno@clisp.org>
56
57 Update translations (from the TP).
58
59 Update bug reporting instructions.
60 * README: Tell users to report bugs in the bug tracker or by email. Use the
61 mailing list address, not the alias.
62 * gettext-runtime/libasprintf/README: Likewise.
63 * gettext-tools/doc/gettext.texi (Introduction): Likewise.
64 (Plural forms): Use the mailing list address, not the alias.
65 * configure.ac (AC_INIT): Use the mailing list address, not the alias.
66 * gettext-runtime/configure.ac (AC_INIT): Likewise.
67 * gettext-tools/configure.ac (AC_INIT): Likewise.
68 * gettext-tools/examples/configure.ac (AC_INIT): Likewise.
69 * gettext-runtime/po/Makevars (MSGID_BUGS_ADDRESS): Use the mailing list
70 address, not the alias.
71 * gettext-tools/po/Makevars (MSGID_BUGS_ADDRESS): Likewise.
72 * gettext-tools/examples/po/Makefile.am (MSGID_BUGS_ADDRESS): Likewise.
73 * gettext-tools/examples/hello-*/po/Makevars (MSGID_BUGS_ADDRESS): Likewise.
74 * gettext-tools/examples/hello-*/po/Makefile.am (MSGID_BUGS_ADDRESS): Likewise.
75 * gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile (MSGID_BUGS_ADDRESS):
76 Likewise.
77 * gettext-tools/examples/hello-c++-kde/hello.cc (main): Likewise.
78 * gettext-runtime/src/envsubst.c (main): Move URL out of translatable string.
79 (usage): Tell users to report bugs in the bug tracker or by email. Use the
80 mailing list address, not the alias.
81 * gettext-runtime/src/gettext.c: Likewise.
82 * gettext-runtime/src/ngettext.c: Likewise.
83 * gettext-tools/src/cldr-plurals.c: Likewise.
84 * gettext-tools/src/hostname.c: Likewise.
85 * gettext-tools/src/msgattrib.c: Likewise.
86 * gettext-tools/src/msgcat.c: Likewise.
87 * gettext-tools/src/msgcmp.c: Likewise.
88 * gettext-tools/src/msgcomm.c: Likewise.
89 * gettext-tools/src/msgconv.c: Likewise.
90 * gettext-tools/src/msgen.c: Likewise.
91 * gettext-tools/src/msgexec.c: Likewise.
92 * gettext-tools/src/msgfilter.c: Likewise.
93 * gettext-tools/src/msgfmt.c: Likewise.
94 * gettext-tools/src/msggrep.c: Likewise.
95 * gettext-tools/src/msginit.c: Likewise.
96 * gettext-tools/src/msgmerge.c: Likewise.
97 * gettext-tools/src/msgunfmt.c: Likewise.
98 * gettext-tools/src/msguniq.c: Likewise.
99 * gettext-tools/src/recode-sr-latin.c: Likewise.
100 * gettext-tools/src/urlget.c: Likewise.
101 * gettext-tools/src/xgettext.c: Likewise.
102 * gettext-tools/tests/tstgettext.c: Likewise.
103 * gettext-tools/tests/tstngettext.c: Likewise.
104 * gettext-tools/misc/autopoint.in (func_usage): Tell users to report bugs in the
105 bug tracker or by email. Use the mailing list address, not the alias.
106 * gettext-tools/misc/convert-archive.in (func_usage): Likewise.
107 * gettext-tools/misc/gettextize.in (func_usage): Likewise.
108
1092019-05-08 Bruno Haible <bruno@clisp.org>
110
111 Update translations (from the TP).
112
1132019-04-28 Bruno Haible <bruno@clisp.org>
114
115 In the POT files, talk about the "GNU gettext package".
116 Reported by Benno Schulenberg <coordinator@translationproject.org>.
117
118 * gettext-runtime/po/Makevars (XGETTEXT_OPTIONS): Add --package-name option.
119 * gettext-tools/po/Makevars (XGETTEXT_OPTIONS): Likewise.
120 * gettext-tools/examples/po/Makefile.am (XGETTEXT_OPTIONS): New variable.
121
1222019-04-28 Bruno Haible <bruno@clisp.org>
123
124 po: Make it possible to override xgettext options from Makefile.in.in.
125 * gettext-runtime/po/Makefile.in.in ($(DOMAIN).pot-update): List the
126 XGETTEXT_OPTIONS and the XGETTEXT_EXTRA_OPTIONS after all other options.
127 * gettext-tools/examples/po/Makefile.am ($(DOMAIN).pot-update): Likewise.
128 * gettext-tools/examples/hello-*/po/Makefile.am ($(DOMAIN).pot-update):
129 Likewise.
130 * gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile
131 ($(DOMAIN).pot-update): Likewise.
132 * NEWS: Mention the change.
133 * gettext-tools/doc/gettext.texi (po/Makevars): Fix typo.
134
1352019-04-14 Bruno Haible <bruno@clisp.org>
136
137 Update translations (from the TP).
138 * gettext-runtime/po/*.po: Update.
139 * gettext-runtime/po/LINGUAS: Add 'ast'.
140 * gettext-tools/po/*.po: Update.
141 * gettext-tools/examples/po/*.po: Update.
142 * gettext-tools/examples/po/LINGUAS: Add 'ta'.
143 * gettext-tools/examples/hello-*/po/LINGUAS: Likewise.
144 * gettext-tools/examples/Makefile.am (EXAMPLESPOFILES): Add ta.po.
145
146 Prepare for 0.20 release.
147 * gettext-runtime/intl/libgnuintl.in.h (LIBINTL_VERSION): Update.
148 * gettext-tools/libgettextpo/gettext-po.in.h (LIBGETTEXTPO_VERSION): Update.
149 * gettext-runtime/m4/gettext.m4: Bump version number in comment.
150 * gettext-runtime/m4/intl.m4: Likewise.
151 * gettext-runtime/m4/intlmacosx.m4: Likewise.
152 * gettext-runtime/m4/po.m4: Likewise.
153 (GETTEXT_MACRO_VERSION): Bump to 0.20.
154 * gettext-runtime/po/Makefile.in.in (GETTEXT_MACRO_VERSION): Likewise.
155 * gettext-runtime/intl/Makefile.am (LTV_*): Bump to 9:6:2.
156 * gettext-tools/libgettextpo/Makefile.am (LTV_*): Bump to 5:5:5.
157 * gettext-tools/configure.ac (ARCHIVE_VERSION): Set to 0.20.
158 * gettext-tools/misc/autopoint.in: Accept version 0.20.
159 * gettext-runtime/doc/matrix.texi: Update from TP.
160 * gettext-runtime/doc/nls.texi (STATUS): Update.
161 * gettext-runtime/src/envsubst.c (main): Update copyright year in --version
162 output.
163 * gettext-runtime/src/gettext.c (main): Likewise.
164 * gettext-runtime/src/ngettext.c (main): Likewise.
165 * gettext-tools/src/cldr-plurals.c (main): Likewise.
166 * gettext-tools/src/hostname.c (main): Likewise.
167 * gettext-tools/src/msgattrib.c (main): Likewise.
168 * gettext-tools/src/msgcat.c (main): Likewise.
169 * gettext-tools/src/msgcmp.c (main): Likewise.
170 * gettext-tools/src/msgcomm.c (main): Likewise.
171 * gettext-tools/src/msgconv.c (main): Likewise.
172 * gettext-tools/src/msgen.c (main): Likewise.
173 * gettext-tools/src/msgexec.c (main): Likewise.
174 * gettext-tools/src/msgfilter.c (main): Likewise.
175 * gettext-tools/src/msgfmt.c (main): Likewise.
176 * gettext-tools/src/msggrep.c (main): Likewise.
177 * gettext-tools/src/msginit.c (main): Likewise.
178 * gettext-tools/src/msgmerge.c (main): Likewise.
179 * gettext-tools/src/msgunfmt.c (main): Likewise.
180 * gettext-tools/src/msguniq.c (main): Likewise.
181 * gettext-tools/src/recode-sr-latin.c (main): Likewise.
182 * gettext-tools/src/urlget.c (main): Likewise.
183 * gettext-tools/src/xgettext.c (main): Likewise.
184 * gettext-runtime/src/gettext.sh.in (func_version): Update copyright year.
185 * gettext-tools/misc/convert-archive.in (func_version): Likewise.
186 * gettext-tools/misc/gettextize.in (func_version): Likewise.
187 * libtextstyle/version.sh: Use version number 0.20 here as well.
188 * gettext-runtime/NEWS: Mention changes (from main NEWS).
189 * libtextstyle/NEWS: Mention changes.
190
1912019-04-04 Bruno Haible <bruno@clisp.org>
192
193 Add copyright notices in several files.
194 Reported by <ineiev@gnu.org> in <https://savannah.gnu.org/bugs/?54809>.
195
196 * gettext-runtime/m4/Makefile.am: Add GPL copyright notice.
197 * gettext-tools/m4/Makefile.am: Likewise.
198 * gettext-tools/doc/iso-639.sed: Likewise.
199 * gettext-tools/doc/iso-639-2.sed: Likewise.
200 * gettext-tools/doc/iso-3166.sed: Likewise.
201 * gettext-tools/its/glade1.its: Likewise.
202 * gettext-tools/its/glade2.its: Likewise.
203 * gettext-tools/its/gsettings.its: Likewise.
204 * gettext-tools/its/gtkbuilder.its: Likewise.
205 * gettext-tools/misc/cvsuser.c: Likewise.
206 * gettext-tools/projects/team-address: Likewise.
207 * gettext-tools/projects/GNOME/team-address: Likewise.
208 * gettext-tools/projects/GNOME/trigger: Likewise.
209 * gettext-tools/projects/KDE/team-address: Likewise.
210 * gettext-tools/projects/KDE/trigger: Likewise.
211 * gettext-tools/projects/TP/team-address: Likewise.
212 * windows/windres-options: Likewise.
213 * gettext-runtime/po/insert-header.sin: Add copyright notice, based on the one
214 in Rules-quot.
215 * gettext-tools/doc/FAQ.html: Add copyright notice, suitable for documentation.
216
2172018-11-25 Bruno Haible <bruno@clisp.org>
218
219 build: Remove generated files from version control.
220 This creates a bootstrapping issue, but it can be mitigated:
221 If a user wants to build GNU gettext on a platform which does not have the
222 GNU gettext programs installed, they first need to build and install a tarball
223 of GNU gettext; then only they can build GNU gettext from the git repository.
224
225 * gettext-runtime/po/gettext-runtime.pot: Remove file.
226 * gettext-tools/po/gettext-tools.pot: Remove file.
227 * gettext-tools/examples/po/gettext-examples.pot: Remove file.
228
2292018-10-25 Bruno Haible <bruno@clisp.org>
230
231 po, examples: Change .po -> .gmo rules to consider the newest changes to the POT file.
232 Reported by Claude Paroz <claude@2xlibre.net>
233 in <https://savannah.gnu.org/bugs/?50910>.
234
235 * gettext-runtime/m4/po.m4 (AM_PO_SUBDIRS): Set MSGMERGE_FOR_MSGFMT_OPTION.
236 * gettext-runtime/po/Makefile.in.in (MSGMERGE): Use GNU msgmerge, even if not
237 first in $PATH.
238 (MSGMERGE_FOR_MSGFMT_OPTION): New variable.
239 (.po.gmo): Depend on the POT file. Use msgmerge on the fly, to take into
240 account the most recent POT file changes.
241 * gettext-tools/examples/hello-*/po/Makefile.am: Likewise, also for the .po.qm,
242 update-properties, update-classes targets.
243 * gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile
244 (MSGMERGE_FOR_MSGFMT_OPTION): New variable.
245 ($(STRINGSFILES)): Depend on the POT file. Use msgmerge on the fly, to take
246 into account the most recent POT file changes.
247
2482018-10-24 Bruno Haible <bruno@clisp.org>
249
250 po, examples: Put stamp-po in the source directory.
251 Rationale: <https://www.gnu.org/prep/standards/html_node/Makefile-Basics.html>.
252
253 * gettext-runtime/po/Makefile.in.in: Use $(srcdir)/stamp-po instead of stamp-po.
254 Talk about "version control system", not CVS.
255 * gettext-tools/examples/hello-*/po/Makefile.am: Likewise.
256 * gettext-tools/examples/po/Makefile.am: Likewise.
257 * gettext-tools/examples/check-examples (func_check_dist_vpath): Verify the
258 stamp-po file does not exist in the build dir, except when using the older
259 Makefile.in.in infrastructure.
260
2612018-10-24 Bruno Haible <bruno@clisp.org>
262
263 po: Make "make maintainer-clean" erase the .pot file.
264 Rationale:
265 <https://www.gnu.org/prep/standards/html_node/Standard-Targets.html>
266 <https://www.gnu.org/software/automake/manual/html_node/Clean.html>
267
268 * NEWS: Mention the change.
269 * gettext-runtime/po/Makefile.in.in (maintainer-clean): Remove the .pot file.
270 * gettext-tools/examples/hello-*/po/Makefile.am (MAINTAINERCLEANFILES): Add
271 the .pot file.
272 * gettext-tools/examples/po/Makefile.am (MAINTAINERCLEANFILES): Likewise.
273 * gettext-tools/examples/check-examples (func_check_maintainerclean,
274 func_check_maintainerclean_vpath): Verify the .pot file is removed after
275 'make maintainer-clean', except when using the older Makefile.in.in
276 infrastructure.
277
2782018-10-24 Bruno Haible <bruno@clisp.org>
279
280 po, examples: Use case-insensitive search for "GNU <PACKAGE_NAME>".
281 Reported by Akim Demaille <akim@lrde.epita.fr> in
282 <https://lists.gnu.org/archive/html/bug-gettext/2018-10/msg00020.html>.
283
284 * gettext-runtime/po/Makefile.in.in ($(DOMAIN).pot-update): Use a
285 case-insensitive search for "GNU <PACKAGE_NAME>".
286 * gettext-tools/examples/hello-*/po/Makefile.am ($(DOMAIN).pot-update):
287 Likewise.
288 * gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile
289 ($(DOMAIN).pot-update): Likewise.
290
2912018-10-24 Bruno Haible <bruno@clisp.org>
292
293 po: Remove obsolete Makefile rules for .mo files.
294 * gettext-runtime/po/Makefile.in.in (MSGFMT*): Remove variables.
295 (.SUFFIXES): Remove .mo.
296 (.po.mo): Remove rule.
297 (distclean): Don't remove *.mo files.
298 * gettext-tools/examples/hello-*/po/Makefile.am (.SUFFIXES): Remove .mo.
299 (.po.mo): Remove rule.
300 (DISTCLEANFILES): Remove *.mo.
301 * gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile (.SUFFIXES):
302 Remove .mo.
303 * gettext-runtime/m4/po.m4 (AM_PO_SUBDIRS): Don't set MSGFMT_015.
304
3052018-10-24 Bruno Haible <bruno@clisp.org>
306
307 examples: Add an option to claim the package as GNU/non-GNU.
308 This mirrors the Makefile.in.in and Makevars change from 2014-05-01.
309
310 Reported by David Shea at <https://savannah.gnu.org/bugs/?40520>.
311
312 * gettext-runtime/po/Makefile.in.in ($(DOMAIN).pot-update): Tweak whitespace.
313 * gettext-tools/examples/hello-*/po/Makefile.am (PACKAGE_GNU): New variable.
314 ($(DOMAIN).pot-update): Don't search for "GNU packagename" if $(PACKAGE_GNU) is
315 set.
316 * gettext-tools/examples/hello-objc-gnustep/po/GNUmakefile: Likewise.
317
3182018-10-24 Bruno Haible <bruno@clisp.org>
319
320 po: Make the insertion of the .pot-header file more robust.
321 This improves on the 2015-09-01 patch.
322
323 * gettext-runtime/po/Makefile.in.in ($(DOMAIN).pot-update): Fail if the 'cat'
324 command fails.
325
3262018-10-24 Bruno Haible <bruno@clisp.org>
327
328 po: When doing msgmerge --version, use the correct msgmerge program.
329 This reverts the patch from
330 <https://lists.gnu.org/archive/html/bug-gettext/2015-06/msg00000.html>.
331 Rationale:
332 <https://lists.gnu.org/archive/html/bug-gettext/2018-10/msg00000.html>.
333
334 * gettext-runtime/po/Makefile.in.in ($(POFILES)): Use $(MSGMERGE_UPDATE),
335 not $(MSGMERGE).
336
3372018-10-24 Bruno Haible <bruno@clisp.org>
338
339 po: Make $(POFILES) target more robust.
340 It was introduced on 2014-05-01.
341
342 * gettext-runtime/po/Makefile.in.in ($(POFILES)): Create POT file also when the
343 PO file does not yet exist. Fail if creation of the POT file fails.
344
3452018-05-05 Bruno Haible <bruno@clisp.org>
346
347 all: Replace more http and ftp URLs by https URLs.
348 * autogen.sh: Use https: URLs.
349 * gettext-runtime/doc/nls.texi (Translating Teams, Available Packages): Likewise.
350 * gettext-tools/doc/gettext.texi: Likewise.
351 * gettext-tools/doc/FAQ.html: Likewise.
352 * gettext-tools/doc/tutorial.html: Likewise.
353 * gettext-tools/misc/gettextize.in: Likewise.
354 * gettext-tools/projects/GNOME/team-address: Likewise.
355 * gettext-tools/projects/GNOME/teams.url: Likewise.
356 * gettext-tools/projects/KDE/team-address: Likewise.
357 * gettext-tools/projects/KDE/teams.url: Likewise.
358 * gettext-tools/projects/TP/teams.url: Likewise.
359 * gettext-tools/src/x-python.c: Likewise.
360 * gettext-tools/tests/xgettext-its-1: Likewise.
361
3622017-10-15 Bruno Haible <bruno@clisp.org>
363
364 Clarify copyright and license of some files.
365 Reported by Joël Krähemann at <https://savannah.gnu.org/bugs/?52227>.
366
367 * gettext-runtime/po/Makefile.in.in: Correct copyright holder.
368 * gettext-runtime/po/remove-potcdate.sin: Use the same licensing terms as Makefile.in.in.
369 * gettext-runtime/po/Rules-quot: Use an all-permissive license.
370 * gettext-tools/po/Makevars.template: Likewise.
371 * gettext-runtime/po/Makevars: Likewise.
372 * gettext-tools/po/Makevars: Likewise.
373 * gettext-runtime/po/POTFILES.in: Use GPLv3+.
374 * gettext-tools/po/POTFILES.in: Likewise.
375
3762017-02-16 Bruno Haible <bruno@clisp.org>
377
378 Support for Automake targets install-{dvi,ps,pdf,html}.
379 Reported by Eric Blake at https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25690
380 via Assaf Gordon.
381
382 * gettext-runtime/po/Makefile.in.in (install-dvi, install-ps, install-pdf,
383 install-html): New empty targets.
384
3852016-12-11 Bruno Haible <bruno@clisp.org>
386
387 Merge all .gitignore files into a single .gitignore file.
388
389 Update and organize the .gitignore files.
390
3912016-07-09 Stanislav Brabec <sbrabec@suse.com>
392
393 Add support for msgmerge --previous
394 msgmerge --previous is a very useful feature that makes adjusting of
395 translation much easier when small changes in the source code are done.
396 msgmerge supports it for 10 years, but it is not used by most projects,
397 as Makefile.in.in never added support for it.
398
399 Use msgmerge --previous as default on all systems with gettext >= 0.16.
400
4012016-06-09 Daiki Ueno <ueno@gnu.org>
402
403 Update translations
404 * gettext-runtime/po/eo.po: Update from Felipe Castro <fefcas@gmail.com>
405 * gettext-runtime/po/hr.po: Update from Božidar Putanec <bozidarp@yahoo.com>
406 * gettext-runtime/po/sv.po: Update from Göran Uddeborg <goeran@uddeborg.se>
407 * gettext-tools/examples/po/eo.po: Update from Felipe Castro <fefcas@gmail.com>
408 * gettext-tools/examples/po/hr.po: Update from Božidar Putanec <bozidarp@yahoo.com>
409 * gettext-tools/examples/po/sv.po: Update from Göran Uddeborg <goeran@uddeborg.se>
410 * gettext-tools/po/bg.po: Update from Roumen Petrov <transl@roumenpetrov.info>
411 * gettext-tools/po/es.po: Update from Antonio Ceballos <aceballos@gmail.com>
412 * gettext-tools/po/fr.po: Update from Stéphane Aulery <lkppo@free.fr>
413 * gettext-tools/po/ja.po: Update from Masahito Yamaga <ma@yama-ga.com>
414 * gettext-tools/po/ko.po: Update from Changwoo Ryu <cwryu@debian.org>
415 * gettext-tools/po/nl.po: Update from Benno Schulenberg <benno@vertaalt.nl>
416 * gettext-tools/po/pl.po: Update from Rafał Maszkowski <rzm@icm.edu.pl>
417 * gettext-tools/po/sk.po: Update from Marcel Telka <marcel@telka.sk>
418 * gettext-tools/po/sr.po: Update from Мирослав Николић <miroslavnikolic@rocketmail.com>
419 * gettext-tools/po/sv.po: Update from Göran Uddeborg <goeran@uddeborg.se>
420 * gettext-tools/po/tr.po: Update from Nilgün Belma Bugüner <nilgun@buguner.name.tr>
421 * gettext-tools/po/uk.po: Update from Yuri Chornoivan <yurchor@ukr.net>
422 * gettext-tools/po/vi.po: Update from Trần Ngọc Quân <vnwildman@gmail.com>
423
424 Prepare for 0.19.8
425
4262016-01-02 Daiki Ueno <ueno@gnu.org>
427
428 maint: Update copyright year
429
4302015-12-27 Daiki Ueno <ueno@gnu.org>
431
432 Update translations
433 * gettext-runtime/po/fr.po: Update from Stéphane Aulery <lkppo@free.fr>.
434 * gettext-runtime/po/nb.po: Update from Johnny A. Solbu <johnny@solbu.net>.
435 * gettext-runtime/po/pt_BR.po: Update from Rafael Ferreira <rffontenelle@gmail.com>.
436 * gettext-runtime/po/sr.po: Update from Мирослав Николић <miroslavnikolic@rocketmail.com>.
437 * gettext-runtime/po/zh_TW.po: Update from Wei-Lun Chao <bluebat@member.fsf.org>.
438 * gettext-tools/examples/po/fr.po: Update from Stéphane Aulery <lkppo@free.fr>.
439 * gettext-tools/examples/po/nb.po: Update from Johnny A. Solbu <johnny@solbu.net>.
440 * gettext-tools/examples/po/pt_BR.po: Update from Rafael Ferreira <rffontenelle@gmail.com>.
441 * gettext-tools/examples/po/sr.po: Update from Мирослав Николић <miroslavnikolic@rocketmail.com>.
442 * gettext-tools/examples/po/zh_TW.po: Update from Wei-Lun Chao <bluebat@member.fsf.org>.
443 * gettext-tools/po/bg.po: Update from Roumen Petrov <transl@roumenpetrov.info>.
444 * gettext-tools/po/es.po: Update from Antonio Ceballos <aceballos@gmail.com>.
445 * gettext-tools/po/fr.po: Update from Stéphane Aulery <lkppo@free.fr>.
446 * gettext-tools/po/ja.po: Update from Masahito Yamaga <ma@yama-ga.com>.
447 * gettext-tools/po/nl.po: Update from Benno Schulenberg <benno@vertaalt.nl>.
448 * gettext-tools/po/pt_BR.po: Update from Rafael Fontenelle <rffontenelle@gmail.com>.
449 * gettext-tools/po/sk.po: Update from Marcel Telka <marcel@telka.sk>.
450 * gettext-tools/po/sl.po: Update from Primoz PETERLIN <primozz.peterlin@gmail.com>.
451 * gettext-tools/po/sr.po: Update from Мирослав Николић <miroslavnikolic@rocketmail.com>.
452 * gettext-tools/po/uk.po: Update from Yuri Chornoivan <yurchor@ukr.net>.
453 * gettext-tools/po/vi.po: Update from Trần Ngọc Quân <vnwildman@gmail.com>.
454
455 Prepare for 0.19.7
456
4572015-12-17 Daiki Ueno <ueno@gnu.org>
458
459 po: Prefer to use host tools when cross compiling
460 * gettext-runtime/po/Makefile.in.in (CROSS_COMPILING): New substitute
461 variable.
462 (.nop.po-update): Don't prepend ../src to $PATH when cross compiling.
463 * gettext-runtime/po/Rules-quot (.insert-header.po-update-en): Likewise.
464
4652015-10-15 Daiki Ueno <ueno@gnu.org>
466
467 build: Generate ChangeLogs for intl and po
468 * autogen.sh: Create empty ChangeLog files under intl and po.
469 * Makefile.am (gen-ChangeLogs): Rename from gen-ChangeLog. Generate
470 ChangeLog files for */intl and */po as well as top-level.
471 * gettext-runtime/intl/ChangeLog.0: Rename from ChangeLog.
472 * gettext-runtime/po/ChangeLog.0: Rename from ChangeLog.
473 * gettext-tools/po/ChangeLog.1: Rename from ChangeLog.
diff --git a/po/Makefile.in.in b/po/Makefile.in.in
index 38c293d2..6b25f0d9 100644
--- a/po/Makefile.in.in
+++ b/po/Makefile.in.in
@@ -1,13 +1,14 @@
1# Makefile for PO directory in any package using GNU gettext. 1# Makefile for PO directory in any package using GNU gettext.
2# Copyright (C) 1995-1997, 2000-2007, 2009-2010 by Ulrich Drepper <drepper@gnu.ai.mit.edu> 2# Copyright (C) 1995-2000 Ulrich Drepper <drepper@gnu.ai.mit.edu>
3# Copyright (C) 2000-2020 Free Software Foundation, Inc.
3# 4#
4# Copying and distribution of this file, with or without modification, 5# Copying and distribution of this file, with or without modification,
5# are permitted in any medium without royalty provided the copyright 6# are permitted in any medium without royalty provided the copyright
6# notice and this notice are preserved. This file is offered as-is, 7# notice and this notice are preserved. This file is offered as-is,
7# without any warranty. 8# without any warranty.
8# 9#
9# Origin: gettext-0.19.8 10# Origin: gettext-0.21
10GETTEXT_MACRO_VERSION = 0.19 11GETTEXT_MACRO_VERSION = 0.20
11 12
12PACKAGE = @PACKAGE@ 13PACKAGE = @PACKAGE@
13VERSION = @VERSION@ 14VERSION = @VERSION@
@@ -52,16 +53,13 @@ GMSGFMT_ = @GMSGFMT@
52GMSGFMT_no = @GMSGFMT@ 53GMSGFMT_no = @GMSGFMT@
53GMSGFMT_yes = @GMSGFMT_015@ 54GMSGFMT_yes = @GMSGFMT_015@
54GMSGFMT = $(GMSGFMT_$(USE_MSGCTXT)) 55GMSGFMT = $(GMSGFMT_$(USE_MSGCTXT))
55MSGFMT_ = @MSGFMT@
56MSGFMT_no = @MSGFMT@
57MSGFMT_yes = @MSGFMT_015@
58MSGFMT = $(MSGFMT_$(USE_MSGCTXT))
59XGETTEXT_ = @XGETTEXT@ 56XGETTEXT_ = @XGETTEXT@
60XGETTEXT_no = @XGETTEXT@ 57XGETTEXT_no = @XGETTEXT@
61XGETTEXT_yes = @XGETTEXT_015@ 58XGETTEXT_yes = @XGETTEXT_015@
62XGETTEXT = $(XGETTEXT_$(USE_MSGCTXT)) 59XGETTEXT = $(XGETTEXT_$(USE_MSGCTXT))
63MSGMERGE = msgmerge 60MSGMERGE = @MSGMERGE@
64MSGMERGE_UPDATE = @MSGMERGE@ --update 61MSGMERGE_UPDATE = @MSGMERGE@ --update
62MSGMERGE_FOR_MSGFMT_OPTION = @MSGMERGE_FOR_MSGFMT_OPTION@
65MSGINIT = msginit 63MSGINIT = msginit
66MSGCONV = msgconv 64MSGCONV = msgconv
67MSGFILTER = msgfilter 65MSGFILTER = msgfilter
@@ -92,27 +90,44 @@ DISTFILESDEPS = $(DISTFILESDEPS_$(DIST_DEPENDS_ON_UPDATE_PO))
92 90
93# Makevars gets inserted here. (Don't remove this line!) 91# Makevars gets inserted here. (Don't remove this line!)
94 92
95.SUFFIXES: 93all: all-@USE_NLS@
96.SUFFIXES: .po .gmo .mo .sed .sin .nop .po-create .po-update
97 94
98.po.mo:
99 @echo "$(MSGFMT) -c -o $@ $<"; \
100 $(MSGFMT) -c -o t-$@ $< && mv t-$@ $@
101 95
96.SUFFIXES:
97.SUFFIXES: .po .gmo .sed .sin .nop .po-create .po-update
98
99# The .pot file, stamp-po, .po files, and .gmo files appear in release tarballs.
100# The GNU Coding Standards say in
101# <https://www.gnu.org/prep/standards/html_node/Makefile-Basics.html>:
102# "GNU distributions usually contain some files which are not source files
103# ... . Since these files normally appear in the source directory, they
104# should always appear in the source directory, not in the build directory.
105# So Makefile rules to update them should put the updated files in the
106# source directory."
107# Therefore we put these files in the source directory, not the build directory.
108
109# During .po -> .gmo conversion, take into account the most recent changes to
110# the .pot file. This eliminates the need to update the .po files when the
111# .pot file has changed, which would be troublesome if the .po files are put
112# under version control.
113$(GMOFILES): $(srcdir)/$(DOMAIN).pot
102.po.gmo: 114.po.gmo:
103 @lang=`echo $* | sed -e 's,.*/,,'`; \ 115 @lang=`echo $* | sed -e 's,.*/,,'`; \
104 test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ 116 test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
105 echo "$${cdcmd}rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics --verbose -o $${lang}.gmo $${lang}.po"; \ 117 echo "$${cdcmd}rm -f $${lang}.gmo && $(MSGMERGE) $(MSGMERGE_FOR_MSGFMT_OPTION) -o $${lang}.1po $${lang}.po $(DOMAIN).pot && $(GMSGFMT) -c --statistics --verbose -o $${lang}.gmo $${lang}.1po && rm -f $${lang}.1po"; \
106 cd $(srcdir) && rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics --verbose -o t-$${lang}.gmo $${lang}.po && mv t-$${lang}.gmo $${lang}.gmo 118 cd $(srcdir) && \
119 rm -f $${lang}.gmo && \
120 $(MSGMERGE) $(MSGMERGE_FOR_MSGFMT_OPTION) -o $${lang}.1po $${lang}.po $(DOMAIN).pot && \
121 $(GMSGFMT) -c --statistics --verbose -o t-$${lang}.gmo $${lang}.1po && \
122 mv t-$${lang}.gmo $${lang}.gmo && \
123 rm -f $${lang}.1po
107 124
108.sin.sed: 125.sin.sed:
109 sed -e '/^#/d' $< > t-$@ 126 sed -e '/^#/d' $< > t-$@
110 mv t-$@ $@ 127 mv t-$@ $@
111 128
112 129
113all: all-@USE_NLS@ 130all-yes: $(srcdir)/stamp-po
114
115all-yes: stamp-po
116all-no: 131all-no:
117 132
118# Ensure that the gettext macros and this Makefile.in.in are in sync. 133# Ensure that the gettext macros and this Makefile.in.in are in sync.
@@ -126,24 +141,24 @@ CHECK_MACRO_VERSION = \
126# internationalized messages, no $(srcdir)/$(DOMAIN).pot is created (because 141# internationalized messages, no $(srcdir)/$(DOMAIN).pot is created (because
127# we don't want to bother translators with empty POT files). We assume that 142# we don't want to bother translators with empty POT files). We assume that
128# LINGUAS is empty in this case, i.e. $(POFILES) and $(GMOFILES) are empty. 143# LINGUAS is empty in this case, i.e. $(POFILES) and $(GMOFILES) are empty.
129# In this case, stamp-po is a nop (i.e. a phony target). 144# In this case, $(srcdir)/stamp-po is a nop (i.e. a phony target).
130 145
131# stamp-po is a timestamp denoting the last time at which the CATALOGS have 146# $(srcdir)/stamp-po is a timestamp denoting the last time at which the CATALOGS
132# been loosely updated. Its purpose is that when a developer or translator 147# have been loosely updated. Its purpose is that when a developer or translator
133# checks out the package via CVS, and the $(DOMAIN).pot file is not in CVS, 148# checks out the package from a version control system, and the $(DOMAIN).pot
134# "make" will update the $(DOMAIN).pot and the $(CATALOGS), but subsequent 149# file is not under version control, "make" will update the $(DOMAIN).pot and
135# invocations of "make" will do nothing. This timestamp would not be necessary 150# the $(CATALOGS), but subsequent invocations of "make" will do nothing. This
136# if updating the $(CATALOGS) would always touch them; however, the rule for 151# timestamp would not be necessary if updating the $(CATALOGS) would always
137# $(POFILES) has been designed to not touch files that don't need to be 152# touch them; however, the rule for $(POFILES) has been designed to not touch
138# changed. 153# files that don't need to be changed.
139stamp-po: $(srcdir)/$(DOMAIN).pot 154$(srcdir)/stamp-po: $(srcdir)/$(DOMAIN).pot
140 @$(CHECK_MACRO_VERSION) 155 @$(CHECK_MACRO_VERSION)
141 test ! -f $(srcdir)/$(DOMAIN).pot || \ 156 test ! -f $(srcdir)/$(DOMAIN).pot || \
142 test -z "$(GMOFILES)" || $(MAKE) $(GMOFILES) 157 test -z "$(GMOFILES)" || $(MAKE) $(GMOFILES)
143 @test ! -f $(srcdir)/$(DOMAIN).pot || { \ 158 @test ! -f $(srcdir)/$(DOMAIN).pot || { \
144 echo "touch stamp-po" && \ 159 echo "touch $(srcdir)/stamp-po" && \
145 echo timestamp > stamp-poT && \ 160 echo timestamp > $(srcdir)/stamp-poT && \
146 mv stamp-poT stamp-po; \ 161 mv $(srcdir)/stamp-poT $(srcdir)/stamp-po; \
147 } 162 }
148 163
149# Note: Target 'all' must not depend on target '$(DOMAIN).pot-update', 164# Note: Target 'all' must not depend on target '$(DOMAIN).pot-update',
@@ -159,11 +174,9 @@ $(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed
159 package_gnu="$(PACKAGE_GNU)"; \ 174 package_gnu="$(PACKAGE_GNU)"; \
160 test -n "$$package_gnu" || { \ 175 test -n "$$package_gnu" || { \
161 if { if (LC_ALL=C find --version) 2>/dev/null | grep GNU >/dev/null; then \ 176 if { if (LC_ALL=C find --version) 2>/dev/null | grep GNU >/dev/null; then \
162 LC_ALL=C find -L $(top_srcdir) -maxdepth 1 -type f \ 177 LC_ALL=C find -L $(top_srcdir) -maxdepth 1 -type f -size -10000000c -exec grep -i 'GNU @PACKAGE@' /dev/null '{}' ';' 2>/dev/null; \
163 -size -10000000c -exec grep 'GNU @PACKAGE@' \
164 /dev/null '{}' ';' 2>/dev/null; \
165 else \ 178 else \
166 LC_ALL=C grep 'GNU @PACKAGE@' $(top_srcdir)/* 2>/dev/null; \ 179 LC_ALL=C grep -i 'GNU @PACKAGE@' $(top_srcdir)/* 2>/dev/null; \
167 fi; \ 180 fi; \
168 } | grep -v 'libtool:' >/dev/null; then \ 181 } | grep -v 'libtool:' >/dev/null; then \
169 package_gnu=yes; \ 182 package_gnu=yes; \
@@ -184,26 +197,29 @@ $(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed
184 case `$(XGETTEXT) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ 197 case `$(XGETTEXT) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
185 '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].* | 0.16 | 0.16.[0-1]*) \ 198 '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].* | 0.16 | 0.16.[0-1]*) \
186 $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ 199 $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \
187 --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \ 200 --add-comments=TRANSLATORS: \
188 --files-from=$(srcdir)/POTFILES.in \ 201 --files-from=$(srcdir)/POTFILES.in \
189 --copyright-holder='$(COPYRIGHT_HOLDER)' \ 202 --copyright-holder='$(COPYRIGHT_HOLDER)' \
190 --msgid-bugs-address="$$msgid_bugs_address" \ 203 --msgid-bugs-address="$$msgid_bugs_address" \
204 $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \
191 ;; \ 205 ;; \
192 *) \ 206 *) \
193 $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ 207 $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \
194 --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \ 208 --add-comments=TRANSLATORS: \
195 --files-from=$(srcdir)/POTFILES.in \ 209 --files-from=$(srcdir)/POTFILES.in \
196 --copyright-holder='$(COPYRIGHT_HOLDER)' \ 210 --copyright-holder='$(COPYRIGHT_HOLDER)' \
197 --package-name="$${package_prefix}@PACKAGE@" \ 211 --package-name="$${package_prefix}@PACKAGE@" \
198 --package-version='@VERSION@' \ 212 --package-version='@VERSION@' \
199 --msgid-bugs-address="$$msgid_bugs_address" \ 213 --msgid-bugs-address="$$msgid_bugs_address" \
214 $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \
200 ;; \ 215 ;; \
201 esac 216 esac
202 test ! -f $(DOMAIN).po || { \ 217 test ! -f $(DOMAIN).po || { \
203 if test -f $(srcdir)/$(DOMAIN).pot-header; then \ 218 if test -f $(srcdir)/$(DOMAIN).pot-header; then \
204 sed -e '1,/^#$$/d' < $(DOMAIN).po > $(DOMAIN).1po && \ 219 sed -e '1,/^#$$/d' < $(DOMAIN).po > $(DOMAIN).1po && \
205 cat $(srcdir)/$(DOMAIN).pot-header $(DOMAIN).1po > $(DOMAIN).po; \ 220 cat $(srcdir)/$(DOMAIN).pot-header $(DOMAIN).1po > $(DOMAIN).po && \
206 rm -f $(DOMAIN).1po; \ 221 rm -f $(DOMAIN).1po \
222 || exit 1; \
207 fi; \ 223 fi; \
208 if test -f $(srcdir)/$(DOMAIN).pot; then \ 224 if test -f $(srcdir)/$(DOMAIN).pot; then \
209 sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1po && \ 225 sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1po && \
@@ -228,17 +244,19 @@ $(srcdir)/$(DOMAIN).pot:
228# This target rebuilds a PO file if $(DOMAIN).pot has changed. 244# This target rebuilds a PO file if $(DOMAIN).pot has changed.
229# Note that a PO file is not touched if it doesn't need to be changed. 245# Note that a PO file is not touched if it doesn't need to be changed.
230$(POFILES): $(POFILESDEPS) 246$(POFILES): $(POFILESDEPS)
247 @test -f $(srcdir)/$(DOMAIN).pot || $(MAKE) $(srcdir)/$(DOMAIN).pot
231 @lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \ 248 @lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \
232 if test -f "$(srcdir)/$${lang}.po"; then \ 249 if test -f "$(srcdir)/$${lang}.po"; then \
233 test -f $(srcdir)/$(DOMAIN).pot || $(MAKE) $(srcdir)/$(DOMAIN).pot; \
234 test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ 250 test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
235 echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \ 251 echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} --previous $${lang}.po $(DOMAIN).pot"; \
236 cd $(srcdir) \ 252 cd $(srcdir) \
237 && { case `$(MSGMERGE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ 253 && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
238 '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \ 254 '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].*) \
239 $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) $${lang}.po $(DOMAIN).pot;; \ 255 $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) $${lang}.po $(DOMAIN).pot;; \
256 0.1[6-7] | 0.1[6-7].*) \
257 $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --previous $${lang}.po $(DOMAIN).pot;; \
240 *) \ 258 *) \
241 $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \ 259 $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} --previous $${lang}.po $(DOMAIN).pot;; \
242 esac; \ 260 esac; \
243 }; \ 261 }; \
244 else \ 262 else \
@@ -373,34 +391,41 @@ check: all
373 391
374info dvi ps pdf html tags TAGS ctags CTAGS ID: 392info dvi ps pdf html tags TAGS ctags CTAGS ID:
375 393
394install-dvi install-ps install-pdf install-html:
395
376mostlyclean: 396mostlyclean:
377 rm -f remove-potcdate.sed 397 rm -f remove-potcdate.sed
378 rm -f stamp-poT 398 rm -f $(srcdir)/stamp-poT
379 rm -f core core.* $(DOMAIN).po $(DOMAIN).1po $(DOMAIN).2po *.new.po 399 rm -f core core.* $(DOMAIN).po $(DOMAIN).1po $(DOMAIN).2po *.new.po
380 rm -fr *.o 400 rm -fr *.o
381 401
382clean: mostlyclean 402clean: mostlyclean
383 403
384distclean: clean 404distclean: clean
385 rm -f Makefile Makefile.in POTFILES *.mo 405 rm -f Makefile Makefile.in POTFILES
386 406
387maintainer-clean: distclean 407maintainer-clean: distclean
388 @echo "This command is intended for maintainers to use;" 408 @echo "This command is intended for maintainers to use;"
389 @echo "it deletes files that may require special tools to rebuild." 409 @echo "it deletes files that may require special tools to rebuild."
390 rm -f stamp-po $(GMOFILES) 410 rm -f $(srcdir)/$(DOMAIN).pot $(srcdir)/stamp-po $(GMOFILES)
391 411
392distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) 412distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
393dist distdir: 413dist distdir:
394 test -z "$(DISTFILESDEPS)" || $(MAKE) $(DISTFILESDEPS) 414 test -z "$(DISTFILESDEPS)" || $(MAKE) $(DISTFILESDEPS)
395 @$(MAKE) dist2 415 @$(MAKE) dist2
396# This is a separate target because 'update-po' must be executed before. 416# This is a separate target because 'update-po' must be executed before.
397dist2: stamp-po $(DISTFILES) 417dist2: $(srcdir)/stamp-po $(DISTFILES)
398 dists="$(DISTFILES)"; \ 418 @dists="$(DISTFILES)"; \
399 if test "$(PACKAGE)" = "gettext-tools"; then \ 419 if test "$(PACKAGE)" = "gettext-tools"; then \
400 dists="$$dists Makevars.template"; \ 420 dists="$$dists Makevars.template"; \
401 fi; \ 421 fi; \
402 if test -f $(srcdir)/$(DOMAIN).pot; then \ 422 if test -f $(srcdir)/$(DOMAIN).pot; then \
403 dists="$$dists $(DOMAIN).pot stamp-po"; \ 423 dists="$$dists $(DOMAIN).pot stamp-po"; \
424 else \
425 case $(XGETTEXT) in \
426 :) echo "Warning: Creating a tarball without '$(DOMAIN).pot', because a suitable 'xgettext' program was not found in PATH." 1>&2;; \
427 *) echo "Warning: Creating a tarball without '$(DOMAIN).pot', because 'xgettext' found no strings to extract. Check the contents of the POTFILES.in file and the XGETTEXT_OPTIONS in the Makevars file." 1>&2;; \
428 esac; \
404 fi; \ 429 fi; \
405 if test -f $(srcdir)/ChangeLog; then \ 430 if test -f $(srcdir)/ChangeLog; then \
406 dists="$$dists ChangeLog"; \ 431 dists="$$dists ChangeLog"; \
@@ -439,13 +464,15 @@ update-po: Makefile
439 tmpdir=`pwd`; \ 464 tmpdir=`pwd`; \
440 echo "$$lang:"; \ 465 echo "$$lang:"; \
441 test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ 466 test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
442 echo "$${cdcmd}$(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \ 467 echo "$${cdcmd}$(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang --previous $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
443 cd $(srcdir); \ 468 cd $(srcdir); \
444 if { case `$(MSGMERGE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ 469 if { case `$(MSGMERGE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \
445 '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \ 470 '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].*) \
446 $(MSGMERGE) $(MSGMERGE_OPTIONS) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \ 471 $(MSGMERGE) $(MSGMERGE_OPTIONS) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
472 0.1[6-7] | 0.1[6-7].*) \
473 $(MSGMERGE) $(MSGMERGE_OPTIONS) --previous -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
447 *) \ 474 *) \
448 $(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \ 475 $(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang --previous -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \
449 esac; \ 476 esac; \
450 }; then \ 477 }; then \
451 if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ 478 if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
diff --git a/po/Makevars b/po/Makevars
index 060cd6b8..5b2468e3 100644
--- a/po/Makevars
+++ b/po/Makevars
@@ -1,4 +1,8 @@
1# Makefile variables for PO directory in any package using GNU gettext. 1# Makefile variables for PO directory in any package using GNU gettext.
2#
3# Copyright (C) 2003-2019 Free Software Foundation, Inc.
4# This file is free software; the Free Software Foundation gives
5# unlimited permission to use, copy, distribute, and modify it.
2 6
3# Usually the message domain is the same as the package name. 7# Usually the message domain is the same as the package name.
4DOMAIN = $(PACKAGE) 8DOMAIN = $(PACKAGE)
diff --git a/po/Rules-quot b/po/Rules-quot
index baf65285..18c024bf 100644
--- a/po/Rules-quot
+++ b/po/Rules-quot
@@ -1,5 +1,9 @@
1# This file, Rules-quot, can be copied and used freely without restrictions.
2# Special Makefile rules for English message catalogs with quotation marks. 1# Special Makefile rules for English message catalogs with quotation marks.
2#
3# Copyright (C) 2001-2017 Free Software Foundation, Inc.
4# This file, Rules-quot, and its auxiliary files (listed under
5# DISTFILES.common.extra1) are free software; the Free Software Foundation
6# gives unlimited permission to use, copy, distribute, and modify them.
3 7
4DISTFILES.common.extra1 = quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot 8DISTFILES.common.extra1 = quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot
5 9
diff --git a/po/en@boldquot.header b/po/en@boldquot.header
index fedb6a06..506ca9e9 100644
--- a/po/en@boldquot.header
+++ b/po/en@boldquot.header
@@ -2,7 +2,7 @@
2# The msgids must be ASCII and therefore cannot contain real quotation 2# The msgids must be ASCII and therefore cannot contain real quotation
3# characters, only substitutes like grave accent (0x60), apostrophe (0x27) 3# characters, only substitutes like grave accent (0x60), apostrophe (0x27)
4# and double quote (0x22). These substitutes look strange; see 4# and double quote (0x22). These substitutes look strange; see
5# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html 5# https://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
6# 6#
7# This catalog translates grave accent (0x60) and apostrophe (0x27) to 7# This catalog translates grave accent (0x60) and apostrophe (0x27) to
8# left single quotation mark (U+2018) and right single quotation mark (U+2019). 8# left single quotation mark (U+2018) and right single quotation mark (U+2019).
diff --git a/po/en@quot.header b/po/en@quot.header
index a9647fc3..6522f0ce 100644
--- a/po/en@quot.header
+++ b/po/en@quot.header
@@ -2,7 +2,7 @@
2# The msgids must be ASCII and therefore cannot contain real quotation 2# The msgids must be ASCII and therefore cannot contain real quotation
3# characters, only substitutes like grave accent (0x60), apostrophe (0x27) 3# characters, only substitutes like grave accent (0x60), apostrophe (0x27)
4# and double quote (0x22). These substitutes look strange; see 4# and double quote (0x22). These substitutes look strange; see
5# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html 5# https://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
6# 6#
7# This catalog translates grave accent (0x60) and apostrophe (0x27) to 7# This catalog translates grave accent (0x60) and apostrophe (0x27) to
8# left single quotation mark (U+2018) and right single quotation mark (U+2019). 8# left single quotation mark (U+2018) and right single quotation mark (U+2019).
diff --git a/po/insert-header.sin b/po/insert-header.sin
index b26de01f..ceeebb93 100644
--- a/po/insert-header.sin
+++ b/po/insert-header.sin
@@ -1,5 +1,10 @@
1# Sed script that inserts the file called HEADER before the header entry. 1# Sed script that inserts the file called HEADER before the header entry.
2# 2#
3# Copyright (C) 2001 Free Software Foundation, Inc.
4# Written by Bruno Haible <bruno@clisp.org>, 2001.
5# This file is free software; the Free Software Foundation gives
6# unlimited permission to use, copy, distribute, and modify it.
7#
3# At each occurrence of a line starting with "msgid ", we execute the following 8# At each occurrence of a line starting with "msgid ", we execute the following
4# commands. At the first occurrence, insert the file. At the following 9# commands. At the first occurrence, insert the file. At the following
5# occurrences, do nothing. The distinction between the first and the following 10# occurrences, do nothing. The distinction between the first and the following
diff --git a/po/remove-potcdate.sin b/po/remove-potcdate.sin
index 2436c49e..8c70dfbf 100644
--- a/po/remove-potcdate.sin
+++ b/po/remove-potcdate.sin
@@ -1,6 +1,12 @@
1# Sed script that remove the POT-Creation-Date line in the header entry 1# Sed script that removes the POT-Creation-Date line in the header entry
2# from a POT file. 2# from a POT file.
3# 3#
4# Copyright (C) 2002 Free Software Foundation, Inc.
5# Copying and distribution of this file, with or without modification,
6# are permitted in any medium without royalty provided the copyright
7# notice and this notice are preserved. This file is offered as-is,
8# without any warranty.
9#
4# The distinction between the first and the following occurrences of the 10# The distinction between the first and the following occurrences of the
5# pattern is achieved by looking at the hold space. 11# pattern is achieved by looking at the hold space.
6/^"POT-Creation-Date: .*"$/{ 12/^"POT-Creation-Date: .*"$/{