浏览代码

* bootstrap: Set XGETTEXT_OPTIONS to flag our printf-format functions,
so that translators are warned about strings that are formats but
don't look like formats. This might help prevent core dumps.
* configure.ac (AM_GNU_GETTEXT): Upgrade to need-formatstring-macros.
Suggested by Eric Blake to avoid problems like
<http://lists.gnu.org/archive/html/bug-coreutils/2006-07/msg00087.html>.
(AM_GNU_GETTEXT_VERSION): Upgrade from 0.12.1 to 0.15. The gettext
manual says we should use the version number normally expected of
maintainers, neither more nor less.

Paul Eggert 18 年之前
父节点
当前提交
01b6fb98bf
共有 3 个文件被更改,包括 31 次插入6 次删除
  1. 10 0
      ChangeLog
  2. 19 4
      bootstrap
  3. 2 2
      configure.ac

+ 10 - 0
ChangeLog

@@ -1,5 +1,15 @@
 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
 
+	* bootstrap: Set XGETTEXT_OPTIONS to flag our printf-format functions,
+	so that translators are warned about strings that are formats but
+	don't look like formats.  This might help prevent core dumps.
+	* configure.ac (AM_GNU_GETTEXT): Upgrade to need-formatstring-macros.
+	Suggested by Eric Blake to avoid problems like
+	<http://lists.gnu.org/archive/html/bug-coreutils/2006-07/msg00087.html>.
+	(AM_GNU_GETTEXT_VERSION): Upgrade from 0.12.1 to 0.15.  The gettext
+	manual says we should use the version number normally expected of
+	maintainers, neither more nor less.
+
 	* bootstrap (get_translations):
 	Don't exclude ky.po; it is working again.
 

+ 19 - 4
bootstrap

@@ -403,10 +403,25 @@ do
 done
 
 
-# Put bug-reporting address into po/Makevars.
-echo "$0: sed '/^MSGID_BUGS_ADDRESS *=/s/=.*/= bug-$package@gnu.org/' po/Makevars.template >po/Makevars ..."
-sed '/^MSGID_BUGS_ADDRESS *=/s/=.*/= bug-'"$package"'@gnu.org/' po/Makevars.template >po/Makevars
-
+# Create gettext configuration.
+echo "$0: Creating po/Makevars from po/Makevars.template ..."
+sed '
+  /^MSGID_BUGS_ADDRESS *=/s/=.*/= bug-'"$package"'@gnu.org/
+  /^XGETTEXT_OPTIONS *=/{
+    s/$/ \\/
+    a\
+	--flag=_:1:pass-c-format \\\
+	--flag=N_:1:pass-c-format \\\
+	--flag=error:3:c-format --flag=error_at_line:5:c-format \\\
+	--flag=asnprintf:3:c-format --flag=vasnprintf:3:c-format \\\
+	--flag=argp_error:2:c-format \\\
+	--flag=__argp_error:2:c-format \\\
+	--flag=argp_failure:4:c-format \\\
+	--flag=__argp_failure:4:c-format \\\
+	--flag=argp_fmtstream_printf:2:c-format \\\
+	--flag=__argp_fmtstream_printf:2:c-format
+  }
+' po/Makevars.template >po/Makevars
 
 
 echo "$0: done.  Now you can run './configure'."

+ 2 - 2
configure.ac

@@ -212,8 +212,8 @@ AC_CHECK_TYPE(iconv_t,:,
 ])
 
 # Gettext.
-AM_GNU_GETTEXT([external], [need-ngettext])
-AM_GNU_GETTEXT_VERSION(0.12.1)
+AM_GNU_GETTEXT([external], [need-formatstring-macros])
+AM_GNU_GETTEXT_VERSION([0.15])
 
 # Initialize the test suite.
 AC_CONFIG_TESTDIR(tests)