[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Bison i18n patches installed
From: |
Paul Eggert |
Subject: |
Bison i18n patches installed |
Date: |
Tue, 12 Jul 2005 16:43:24 -0700 |
User-agent: |
Gnus/5.1007 (Gnus v5.10.7) Emacs/21.4 (gnu/linux) |
I installed the Bison internationalization patch that Bruno Haible
suggested in
<http://lists.gnu.org/archive/html/bug-bison/2005-06/msg00043.html>.
I then installed the following additional patch to clean up problems
I found when bootstrapping, as well as to have Bison eat its own
dog food in this area (Bison uses a Bison-generated parser, so...).
Bruno, can you please take a look at this patch when you have the time?
An extra pair of eyes would be appreciated. Thanks.
2005-07-12 Paul Eggert <address@hidden>
* NEWS: Document recent i18n improvements.
* bootstrap: Get runtime translations into runtime-po.
Create runtime-po files automatically, if possible.
* configure.ac: Invoke BISON_I18N, so that we eat our own dog food.
* data/yacc.c: Rewrite inclusion of <libintl.h> so that ENABLE_NLS
does not infringe on the user's name space.
(YYENABLE_NLS): Renamed from ENABLE_BISON_NLS.
* doc/bison.texinfo (Internationalization): Revamp the English
and Texinfo syntax a bit, to try to make it clearer.
(Bison Options, Option Cross Key): Mention --print-localedir.
* m4/bison-i18n.m4 (BISON_I18N): Rename ENABLE_BISON_NLS to
YYENABLE_NLS. Quote a bit more.
* runtime-po/.cvsignore: New file.
* runtime-po/Makefile.in.in (mostlyclean): Remove *.old.pot.
* runtime-po/Rules-quot: Remove; now created by bootstrap.
* runtime-po/quot.sed: Likewise.
* runtime-po/boldquot.sed: Likewise.
* runtime-po/address@hidden: Likewise.
* runtime-po/address@hidden: Likewise.
* runtime-po/insert-header.sin: Likewise.
* runtime-po/remove-potcdate.sin: Likewise.
* runtime-po/Makevars: Likewise.
* runtime-po/LINGUAS: Likewise.
* runtime-po/de.po: Likewise; we will rely on the translation project
to maintain this, so "bootstrap" should get it.
* src/getarg.s (PRINT_LOCALEDIR_OPTION): Let the C compiler determine
its value.
* src/main.c (main): Bind the bison-runtime domain, too.
--- bison-i18n-bruno/Makefile.am 2005-07-12 14:27:00.000000000 -0700
+++ bison-i18n/Makefile.am 2005-07-12 14:44:19.000000000 -0700
@@ -20,7 +20,7 @@ ACLOCAL_AMFLAGS = -I m4
SUBDIRS = config po runtime-po lib data src doc tests
-# Files installed for use by automake.
+# Files installed for use by Automake.
aclocaldir = @aclocaldir@
aclocal_DATA = m4/bison-i18n.m4
--- bison-i18n-bruno/NEWS 2005-05-22 23:48:08.000000000 -0700
+++ bison-i18n/NEWS 2005-07-12 16:40:19.000000000 -0700
@@ -1,11 +1,15 @@
Bison News
----------
-Changes in version 2.0a, 2005-05-22:
+Changes in the next version (not yet released):
-* Bison-generated C parsers use the _ macro to translate strings from
- English to the user's language, e.g., _("syntax error"). By default,
- _ is defined to be a no-op macro so the strings are not translated.
+* Bison-generated C parsers now support the translation of diagnostics like
+ "syntax error" into languages other than English. The default
+ language is still English. For details, please see the new
+ Internationalization section of the Bison manual. Thanks to Bruno
+ Haible for this new feature.
+
+The following change was also in version 2.0a, 2005-05-22:
* When generating verbose diagnostics, Bison-generated C parsers no longer
quote the literal strings associated with tokens. For example, for
--- bison-i18n-bruno/bootstrap 2005-07-07 09:06:50.000000000 -0700
+++ bison-i18n/bootstrap 2005-07-12 15:16:56.000000000 -0700
@@ -170,7 +170,18 @@ case $SKIP_PO in
wget -nv -nd -r -l 1 -A .po -C off \
http://www.iro.umontreal.ca/translation/maint/$package/ &&
ls *.po | sed 's/\.po$//' >LINGUAS
- ) || exit;;
+ ) || exit
+
+ case $package in
+ bison)
+ echo "$0: getting translations into po (please ignore the robots.txt ERROR
404)..."
+ (cd runtime-po &&
+ rm -f dummy `ls | sed -n '/\.gmo$/p; /\.po$/p'` &&
+ wget -nv -nd -r -l 1 -A .po -C off \
+ http://www.iro.umontreal.ca/translation/maint/$package-runtime/ &&
+ ls *.po | sed 's/\.po$//' >LINGUAS
+ ) || exit
+ esac;;
esac
@@ -231,6 +242,15 @@ rm -fr $intl_files_to_remove || exit
echo "$0: sed '/^MSGID_BUGS_ADDRESS *=/s/=.*/= address@hidden/'
po/Makevars.template >po/Makevars ..."
sed '/^MSGID_BUGS_ADDRESS *=/s/=.*/= address@hidden/' po/Makevars.template
>po/Makevars
+# Likewise for runtime-po/Makevars, except also change a few other parameters.
+sed '
+ s/^\(DOMAIN\) *=.*/\1 = bison-runtime/
+ s/^\(subdir\) *=.*/\1 = runtime-po/
+ s/^\(XGETTEXT_OPTIONS\) *=.*/\1 = --keyword=YYI18N/
+' <po/Makevars >runtime-po/Makevars
+
+# Copy identical files from po to runtime-po.
+(cd po && cp -p *-quot *.header *.sed *.sin ../runtime-po)
# if src/parse-gram.[ch] are out of date, rebuild them.
parse_gram_y=`find src/parse-gram.y \
--- bison-i18n-bruno/configure.ac 2005-07-12 14:25:45.000000000 -0700
+++ bison-i18n/configure.ac 2005-07-12 14:44:19.000000000 -0700
@@ -109,6 +109,7 @@ BISON_PREREQ_TIMEVAR
GNULIB_AUTOCONF_SNIPPET
# We use po/Makevars, so we need at least gettext 0.12.
AM_GNU_GETTEXT_VERSION([0.12])
+BISON_I18N
# Internationalized parsers.
AC_CONFIG_FILES([runtime-po/Makefile.in])
--- bison-i18n-bruno/data/yacc.c 2005-07-12 14:26:21.000000000 -0700
+++ bison-i18n/data/yacc.c 2005-07-12 14:44:19.000000000 -0700
@@ -286,11 +286,6 @@ void free (void *); /* INFRINGES ON USER
#endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
-#if ENABLE_NLS && ENABLE_BISON_NLS
-# include <libintl.h>
-#endif
-
-
#if (! defined (yyoverflow) \
&& (! defined (__cplusplus) \
|| (]b4_location_if([[defined (YYLTYPE_IS_TRIVIAL) &&
YYLTYPE_IS_TRIVIAL \
@@ -418,9 +413,13 @@ static const char *const yytname[] =
#endif
#ifndef YYI18N
-# if ENABLE_NLS && ENABLE_BISON_NLS
-# define YYI18N(msgid) dgettext ("bison-runtime", msgid)
-# else
+# if YYENABLE_NLS
+# if ENABLE_NLS
+# include <libintl.h> /* INFRINGES ON USER NAME SPACE */
+# define YYI18N(msgid) dgettext ("bison-runtime", msgid)
+# endif
+# endif
+# ifndef YYI18N
# define YYI18N(msgid) msgid
# endif
#endif
@@ -526,7 +525,7 @@ do
\
} \
else \
{ \
- yyerror (]b4_yyerror_args[YYI18N("syntax error: cannot back up")); \
+ yyerror (]b4_yyerror_args[YYI18N ("syntax error: cannot back up")); \
YYERROR; \
} \
while (0)
@@ -620,7 +619,7 @@ do {
\
[[short int *bottom], [bottom]],
[[short int *top], [top]])[
{
- YYFPRINTF (stderr, YYI18N("Stack now"));
+ YYFPRINTF (stderr, YYI18N ("Stack now"));
for (/* Nothing. */; bottom <= top; ++bottom)
YYFPRINTF (stderr, " %d", *bottom);
YYFPRINTF (stderr, "\n");
@@ -642,7 +641,7 @@ do {
\
{
int yyi;
unsigned int yylno = yyrline[yyrule];
- YYFPRINTF (stderr, YYI18N("Reducing stack by rule %d (line %u), "),
+ YYFPRINTF (stderr, YYI18N ("Reducing stack by rule %d (line %u), "),
yyrule - 1, yylno);
/* Print the symbols being reduced, and their result. */
for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)
@@ -912,7 +911,7 @@ m4_ifdef([b4_at_dollar_used], [[ yylsp[
data in use in that stack, in bytes. This used to be a
conditional around just the two extra args, but that might
be undefined if yyoverflow is a macro. */
- yyoverflow (YYI18N("parser stack overflow"),
+ yyoverflow (YYI18N ("parser stack overflow"),
&yyss1, yysize * sizeof (*yyssp),
&yyvs1, yysize * sizeof (*yyvsp),
]b4_location_if([ &yyls1, yysize * sizeof (*yylsp),])[
@@ -952,14 +951,14 @@ m4_ifdef([b4_at_dollar_used], [[ yylsp[
yyvsp = yyvs + yysize - 1;
]b4_location_if([ yylsp = yyls + yysize - 1;])[
- YYDPRINTF ((stderr, YYI18N("Stack size increased to %lu\n"),
+ YYDPRINTF ((stderr, YYI18N ("Stack size increased to %lu\n"),
(unsigned long int) yystacksize));
if (yyss + yystacksize - 1 <= yyssp)
YYABORT;
}
- YYDPRINTF ((stderr, YYI18N("Entering state %d\n"), yystate));
+ YYDPRINTF ((stderr, YYI18N ("Entering state %d\n"), yystate));
goto yybackup;
@@ -983,19 +982,19 @@ yybackup:
/* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */
if (yychar == YYEMPTY)
{
- YYDPRINTF ((stderr, YYI18N("Reading a token: ")));
+ YYDPRINTF ((stderr, YYI18N ("Reading a token: ")));
yychar = YYLEX;
}
if (yychar <= YYEOF)
{
yychar = yytoken = YYEOF;
- YYDPRINTF ((stderr, YYI18N("Now at end of input.\n")));
+ YYDPRINTF ((stderr, YYI18N ("Now at end of input.\n")));
}
else
{
yytoken = YYTRANSLATE (yychar);
- YY_SYMBOL_PRINT (YYI18N("Next token is"), yytoken, &yylval, &yylloc);
+ YY_SYMBOL_PRINT (YYI18N ("Next token is"), yytoken, &yylval, &yylloc);
}
/* If the proper action on seeing token YYTOKEN is to reduce or to
@@ -1016,7 +1015,7 @@ yybackup:
YYACCEPT;
/* Shift the look-ahead token. */
- YY_SYMBOL_PRINT (YYI18N("Shifting"), yytoken, &yylval, &yylloc);
+ YY_SYMBOL_PRINT (YYI18N ("Shifting"), yytoken, &yylval, &yylloc);
/* Discard the token being shifted unless it is eof. */
if (yychar != YYEOF)
@@ -1124,11 +1123,11 @@ yyerrlab:
#if 0
/* This is so xgettext sees the translatable formats that are
constructed on the fly. */
- YYI18N("syntax error, unexpected %s");
- YYI18N("syntax error, unexpected %s, expecting %s");
- YYI18N("syntax error, unexpected %s, expecting %s or %s");
- YYI18N("syntax error, unexpected %s, expecting %s or %s or %s");
- YYI18N("syntax error, unexpected %s, expecting %s or %s or %s or %s");
+ YYI18N ("syntax error, unexpected %s");
+ YYI18N ("syntax error, unexpected %s, expecting %s");
+ YYI18N ("syntax error, unexpected %s, expecting %s or %s");
+ YYI18N ("syntax error, unexpected %s, expecting %s or %s or %s");
+ YYI18N ("syntax error, unexpected %s, expecting %s or %s or %s or
%s");
#endif
char *yyfmt;
char const *yyf;
@@ -1171,7 +1170,7 @@ yyerrlab:
yyprefix = yyor;
}
- yyf = YYI18N(yyformat);
+ yyf = YYI18N (yyformat);
yysize1 = yysize + yystrlen (yyf);
yysize_overflow |= yysize1 < yysize;
yysize = yysize1;
@@ -1202,11 +1201,11 @@ yyerrlab:
YYSTACK_FREE (yymsg);
}
else
- yyerror (]b4_yyerror_args[YYI18N("syntax error; also memory
exhausted"));
+ yyerror (]b4_yyerror_args[YYI18N ("syntax error; also memory
exhausted"));
}
else
#endif /* YYERROR_VERBOSE */
- yyerror (]b4_yyerror_args[YYI18N("syntax error"));
+ yyerror (]b4_yyerror_args[YYI18N ("syntax error"));
}
]b4_location_if([[ yyerror_range[0] = yylloc;]])[
@@ -1225,7 +1224,7 @@ yyerrlab:
}
else
{
- yydestruct (YYI18N("Error: discarding"), yytoken,
&yylval]b4_location_if([, &yylloc])[);
+ yydestruct (YYI18N ("Error: discarding"), yytoken,
&yylval]b4_location_if([, &yylloc])[);
yychar = YYEMPTY;
}
}
@@ -1279,7 +1278,7 @@ yyerrlab1:
YYABORT;
]b4_location_if([[ yyerror_range[0] = *yylsp;]])[
- yydestruct (YYI18N("Error: popping"), yystos[yystate],
yyvsp]b4_location_if([, yylsp])[);
+ yydestruct (YYI18N ("Error: popping"), yystos[yystate],
yyvsp]b4_location_if([, yylsp])[);
YYPOPSTACK;
yystate = *yyssp;
YY_STACK_PRINT (yyss, yyssp);
@@ -1297,7 +1296,7 @@ yyerrlab1:
*++yylsp = yyloc;]])[
/* Shift the error token. */
- YY_SYMBOL_PRINT (YYI18N("Shifting"), yystos[yyn], yyvsp, yylsp);
+ YY_SYMBOL_PRINT (YYI18N ("Shifting"), yystos[yyn], yyvsp, yylsp);
yystate = yyn;
goto yynewstate;
@@ -1322,14 +1321,14 @@ yyabortlab:
| yyoverflowlab -- parser overflow comes here. |
`----------------------------------------------*/
yyoverflowlab:
- yyerror (]b4_yyerror_args[YYI18N("parser stack overflow"));
+ yyerror (]b4_yyerror_args[YYI18N ("parser stack overflow"));
yyresult = 2;
/* Fall through. */
#endif
yyreturn:
if (yychar != YYEOF && yychar != YYEMPTY)
- yydestruct (YYI18N("Error: discarding lookahead"),
+ yydestruct (YYI18N ("Error: discarding lookahead"),
yytoken, &yylval]b4_location_if([, &yylloc])[);
if (yyssp != yyss)
for (;;)
@@ -1338,7 +1337,7 @@ yyreturn:
YYPOPSTACK;
if (yyssp == yyss)
break;
- yydestruct (YYI18N("Error: popping"),
+ yydestruct (YYI18N ("Error: popping"),
yystos[*yyssp], yyvsp]b4_location_if([, yylsp])[);
}
#ifndef yyoverflow
--- bison-i18n-bruno/doc/bison.texinfo 2005-07-12 14:25:45.000000000 -0700
+++ bison-i18n/doc/bison.texinfo 2005-07-12 16:10:51.000000000 -0700
@@ -4817,65 +4817,74 @@ Tracking Locations}.
@cindex gettext
@cindex bison-po
-The parser can print diagnostics -- error messages and tracing messages --.
-By default, they appear in English. However, Bison also supports to output
-them in the user's native language. To make this work, the user only has
-to set the usual environment variables; see the @file{ABOUT-NLS} file for
-details. The maintainer of a package that uses a bison-generated parser
-enables the internationalization of the parser's output through the
-following steps. Here we assume a package that uses GNU autoconf and
-GNU automake.
+A Bison-generated parser can print diagnostics, including error and
+tracing messages. By default, they appear in English. However, Bison
+also supports outputting diagnostics in the user's native language.
+To make this work, the user should set the usual environment
+variables. @xref{Using gettextized software, , User influence on
address@hidden, libc, The GNU C Library Reference Manual}. For
+example, the shell command @samp{export LC_ALL=fr_CA.UTF-8} might set
+the user's locale to French Canadian using the @acronym{UTF}-8
+encoding. The exact set of available locales depends on the user's
+installation.
+
+The maintainer of a package that uses a Bison-generated parser enables
+the internationalization of the parser's output through the following
+steps. Here we assume a package that uses @acronym{GNU} Autoconf and
address@hidden Automake.
@enumerate
@item
-Into the directory containing the GNU autoconf macros used by the package
--- often called @file{m4/} -- copy the @samp{bison-i18n.m4} file installed by
-Bison under @samp{share/aclocal/bison-i18n.m4} in Bison's installation
-directory. Example:
address@hidden
-$ cp /usr/local/share/aclocal/bison-i18n.m4 m4/bison-i18n.m4
address@hidden smallexample
+Into the directory containing the @acronym{GNU} Autoconf macros used
+by the package---often called @file{m4}---copy the
address@hidden file installed by Bison under
address@hidden/aclocal/bison-i18n.m4} in Bison's installation directory.
+For example:
+
address@hidden
+cp /usr/local/share/aclocal/bison-i18n.m4 m4/bison-i18n.m4
address@hidden example
@item
In the top-level @file{configure.ac}, after the @code{AM_GNU_GETTEXT}
-invocation, add an invocation of @code{BISON_I18N}. Example:
address@hidden
-BISON_I18N
address@hidden smallexample
-The @code{BISON_I18N} macro is defined in @file{bison-i18n.m4} that you copied
-earlier. It will cause @samp{configure} to find the value of the
address@hidden variable (see below).
+invocation, add an invocation of @code{BISON_I18N}. This macro is
+defined in the file @file{bison-i18n.m4} that you copied earlier. It
+causes @samp{configure} to find the value of the
address@hidden variable.
@item
-In the @code{main()} function of your program, designate the directory where
-Bison's message catalogs will be copied to, through a call to
address@hidden The @code{gettext} domain name is
address@hidden"bison-runtime"}. Example:
address@hidden
-bindtextdomain (PACKAGE, LOCALEDIR);
+In the @code{main} function of your program, designate the directory
+containing Bison's runtime message catalog, through a call to
address@hidden with domain name @samp{bison-runtime}.
+For example:
+
address@hidden
bindtextdomain ("bison-runtime", BISON_LOCALEDIR);
address@hidden smallexample
-Note that here we rely on @samp{BISON_LOCALEDIR} to be defined as a string
-through the @file{Makefile}.
address@hidden example
+
+Typically this appears after any other call @code{bindtextdomain
+(PACKAGE, LOCALEDIR)} that your package already has. Here we rely on
address@hidden to be defined as a string through the
address@hidden
@item
-In the @file{Makefile.am} that controls the compilation of the @code{main()}
+In the @file{Makefile.am} that controls the compilation of the @code{main}
function, make @samp{BISON_LOCALEDIR} available as a C preprocessor macro,
-either in @samp{DEFS} or in @samp{AM_CPPFLAGS}. Example:
address@hidden
-DEFS = @@DEFS@@ -DBISON_LOCALEDIR="\"$(BISON_LOCALEDIR)\""
address@hidden smallexample
-or
address@hidden
-AM_CPPFLAGS = -DBISON_LOCALEDIR="\"$(BISON_LOCALEDIR)\""
address@hidden smallexample
+either in @samp{DEFS} or in @samp{AM_CPPFLAGS}. For example:
+
address@hidden
+DEFS = @@DEFS@@ -DBISON_LOCALEDIR='"$(BISON_LOCALEDIR)"'
address@hidden example
+
+or:
+
address@hidden
+AM_CPPFLAGS = -DBISON_LOCALEDIR='"$(BISON_LOCALEDIR)"'
address@hidden example
@item
-Finally, invoke @samp{autoreconf}, to rebuild the autoconf/automake generated
-build infrastructure.
address@hidden
-$ autoreconf
address@hidden smallexample
+Finally, invoke the command @command{autoreconf} to generate the build
+infrastructure.
@end enumerate
@@ -6641,6 +6650,9 @@ Print a summary of the command-line opti
@itemx --version
Print the version number of Bison and exit.
address@hidden --print-localedir
+Print the name of the directory containing locale-dependent data.
+
@need 1750
@item -y
@itemx --yacc
@@ -6780,6 +6792,7 @@ the corresponding short option.
\line{ --no-lines \leaderfill -l}
\line{ --no-parser \leaderfill -n}
\line{ --output \leaderfill -o}
+\line{ --print-localedir}
\line{ --token-table \leaderfill -k}
\line{ --verbose \leaderfill -v}
\line{ --version \leaderfill -V}
@@ -6798,6 +6811,7 @@ the corresponding short option.
--no-lines -l
--no-parser -n
address@hidden -o @var{outfile}
+--print-localedir
--token-table -k
--verbose -v
--version -V
--- bison-i18n-bruno/m4/bison-i18n.m4 2005-07-12 14:25:40.000000000 -0700
+++ bison-i18n/m4/bison-i18n.m4 2005-07-12 14:40:52.000000000 -0700
@@ -11,7 +11,7 @@ dnl Support for internationalization of
dnl BISON_I18N
dnl should be used in configure.ac, after AM_GNU_GETTEXT. If USE_NLS is yes, it
dnl sets BISON_LOCALEDIR to indicate where to find the bison-runtime.mo files
-dnl and defines ENABLE_BISON_NLS if there are bison-runtime.mo files at all.
+dnl and defines YYENABLE_NLS if there are bison-runtime.mo files at all.
AC_DEFUN([BISON_I18N],
[
if test -z "$USE_NLS"; then
@@ -38,7 +38,7 @@ AC_DEFUN([BISON_I18N],
fi
fi
fi
- AC_SUBST(BISON_LOCALEDIR)
+ AC_SUBST([BISON_LOCALEDIR])
if test -n "$BISON_LOCALEDIR"; then
USER_LINGUAS="${LINGUAS-%UNSET%}"
if test -n "$USER_LINGUAS"; then
@@ -53,7 +53,7 @@ AC_DEFUN([BISON_I18N],
BISON_USE_NLS=no
fi
if test $BISON_USE_NLS = yes; then
- AC_DEFINE([ENABLE_BISON_NLS], 1,
- [Define to 1 if bison runtime messages shall be internationalized.])
+ AC_DEFINE([YYENABLE_NLS], 1,
+ [Define to 1 to internationalize bison runtime messages.])
fi
])
--- bison-i18n-bruno/runtime-po/.cvsignore 1969-12-31 16:00:00.000000000
-0800
+++ bison-i18n/runtime-po/.cvsignore 2005-07-12 14:36:27.000000000 -0700
@@ -0,0 +1,17 @@
+*.gmo
+*.po
+LINGUAS
+Makefile
+Makefile.in
+Makevars
+POTFILES
+Rules-quot
+bison-runtime.old.pot
+boldquot.sed
address@hidden
address@hidden
+insert-header.sin
+quot.sed
+remove-potcdate.sed
+remove-potcdate.sin
+stamp-po
Only in bison-i18n-bruno/runtime-po: LINGUAS
--- bison-i18n-bruno/runtime-po/Makefile.in.in 2005-07-12 14:25:40.000000000
-0700
+++ bison-i18n/runtime-po/Makefile.in.in 2005-07-12 15:10:33.000000000
-0700
@@ -268,6 +268,7 @@ mostlyclean:
rm -f remove-potcdate.sed
rm -f stamp-poT
rm -f core core.* $(DOMAIN).po $(DOMAIN).1po $(DOMAIN).2po *.new.po
+ rm -f *.old.pot
rm -fr *.o
clean: mostlyclean
Only in bison-i18n-bruno/runtime-po: Makevars
Only in bison-i18n-bruno/runtime-po: Rules-quot
Only in bison-i18n-bruno/runtime-po: boldquot.sed
Only in bison-i18n-bruno/runtime-po: de.po
Only in bison-i18n-bruno/runtime-po: address@hidden
Only in bison-i18n-bruno/runtime-po: address@hidden
Only in bison-i18n-bruno/runtime-po: insert-header.sin
Only in bison-i18n-bruno/runtime-po: quot.sed
Only in bison-i18n-bruno/runtime-po: remove-potcdate.sin
--- bison-i18n-bruno/src/getargs.c 2005-07-12 14:25:45.000000000 -0700
+++ bison-i18n/src/getargs.c 2005-07-12 14:44:19.000000000 -0700
@@ -291,7 +291,7 @@ const char *short_options = "yvegdhr:ltk
enum
{
LOCATIONS_OPTION = CHAR_MAX + 1,
- PRINT_LOCALEDIR_OPTION = CHAR_MAX + 2
+ PRINT_LOCALEDIR_OPTION
};
static struct option const long_options[] =
--- bison-i18n-bruno/src/main.c 2005-05-13 23:49:47.000000000 -0700
+++ bison-i18n/src/main.c 2005-07-12 14:44:19.000000000 -0700
@@ -56,8 +56,9 @@ main (int argc, char *argv[])
{
program_name = argv[0];
setlocale (LC_ALL, "");
- (void) bindtextdomain (PACKAGE, LOCALEDIR);
- (void) textdomain (PACKAGE);
+ bindtextdomain (PACKAGE, LOCALEDIR);
+ bindtextdomain ("bison-runtime", LOCALEDIR);
+ textdomain (PACKAGE);
uniqstrs_new ();
- Bison i18n patches installed,
Paul Eggert <=