2000-06-25  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/ld-collate.c: Correct handling of different
	collation sections.
	* locale/programs/localedef.c (add_to_readlist): Take locale pointer
	as extra parameter from which to copy category information.
	Change all callers.
	(load_locale): Likewise.
	* locale/programs/localedef.h: Update prototypes of add_to_readlist
	and load_locale.
	* locale/programs/ld-ctype.c: Update call to add_to_readlist.
	* locale/programs/locfile.h: Likewise.
	* locale/programs/locfile-kw.gperf: Add entry for script.
	* locale/programs/locfile-token.h: Add tok_script.

	* locale/programs/locale.c: Update copyright year.
	* locale/programs/localedef.c: Likewise.

	* xdr_rec.c (set_input_fragment): Fix PR libc/1549, patch from Jens
This commit is contained in:
Ulrich Drepper 2000-06-25 18:14:28 +00:00
parent ab80bec0cb
commit 07dab0c385
18 changed files with 344 additions and 310 deletions

View file

@ -1,6 +1,24 @@
2000-06-25 Ulrich Drepper <drepper@redhat.com>
* locale/programs/ld-collate.c: Correct handling of different
collation sections.
* locale/programs/localedef.c (add_to_readlist): Take locale pointer
as extra parameter from which to copy category information.
Change all callers.
(load_locale): Likewise.
* locale/programs/localedef.h: Update prototypes of add_to_readlist
and load_locale.
* locale/programs/ld-ctype.c: Update call to add_to_readlist.
* locale/programs/locfile.h: Likewise.
* locale/programs/locfile-kw.gperf: Add entry for script.
* locale/programs/locfile-token.h: Add tok_script.
* locale/programs/locale.c: Update copyright year.
* locale/programs/localedef.c: Likewise.
2000-06-23 Thorsten Kukuk <kukuk@suse.de>
* xdr_rec.c (set_input_fragment) Fix PR libc/1549, patch from Jens
* xdr_rec.c (set_input_fragment): Fix PR libc/1549, patch from Jens
Moeller <jens.moeller@waii.com>.
2000-06-24 Ulrich Drepper <drepper@redhat.com>

View file

@ -2545,7 +2545,7 @@ with character code range values one must use the absolute ellipsis `...'"));
/* Make sure the locale is read. */
add_to_readlist (LC_CTYPE, ctype->translit_copy_locale,
repertoire_name, 1);
repertoire_name, 1, NULL);
continue;
}
else if (now->tok == tok_default_missing)

View file

@ -268,7 +268,7 @@ print_version (FILE *stream, struct argp_state *state)
Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\
"), "1999");
"), "2000");
fprintf (stream, gettext ("Written by %s.\n"), "Ulrich Drepper");
}

View file

@ -296,7 +296,7 @@ print_version (FILE *stream, struct argp_state *state)
Copyright (C) %s Free Software Foundation, Inc.\n\
This is free software; see the source for copying conditions. There is NO\n\
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n\
"), "1999");
"), "2000");
fprintf (stream, gettext ("Written by %s.\n"), "Ulrich Drepper");
}
@ -431,7 +431,7 @@ normalize_codeset (codeset, name_len)
struct localedef_t *
add_to_readlist (int locale, const char *name, const char *repertoire_name,
int generate)
int generate, struct localedef_t *copy_locale)
{
struct localedef_t *runp = locales;
@ -463,6 +463,16 @@ add_to_readlist (int locale, const char *name, const char *repertoire_name,
if (generate && (runp->needed & (1 << locale)) != 0)
error (5, 0, _("circular dependencies between locale definitions"));
if (copy_locale != NULL)
{
if (runp->categories[locale].generic != NULL)
error (5, 0, _("cannot add already read locale `%s' a second time"),
name);
else
runp->categories[locale].generic =
copy_locale->categories[locale].generic;
}
runp->needed |= 1 << locale;
return runp;
@ -476,7 +486,7 @@ find_locale (int locale, const char *name, const char *repertoire_name,
struct localedef_t *result;
/* Find the locale, but do not generate it since this would be a bug. */
result = add_to_readlist (locale, name, repertoire_name, 0);
result = add_to_readlist (locale, name, repertoire_name, 0, NULL);
assert (result != NULL);
@ -491,12 +501,12 @@ find_locale (int locale, const char *name, const char *repertoire_name,
struct localedef_t *
load_locale (int locale, const char *name, const char *repertoire_name,
struct charmap_t *charmap)
struct charmap_t *charmap, struct localedef_t *copy_locale)
{
struct localedef_t *result;
/* Generate the locale if it does not exist. */
result = add_to_readlist (locale, name, repertoire_name, 1);
result = add_to_readlist (locale, name, repertoire_name, 1, copy_locale);
assert (result != NULL);

View file

@ -1,5 +1,5 @@
/* General definitions for localedef(1).
Copyright (C) 1998, 1999 Free Software Foundation, Inc.
Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1998.
@ -124,7 +124,8 @@ extern char *xstrdup (const char *__str);
/* Mark given locale as to be read. */
extern struct localedef_t *add_to_readlist (int locale, const char *name,
const char *repertoire_name,
int generate);
int generate,
struct localedef_t *copy_locale);
/* Find the information for the locale NAME. */
extern struct localedef_t *find_locale (int locale, const char *name,
@ -134,6 +135,7 @@ extern struct localedef_t *find_locale (int locale, const char *name,
/* Load (if necessary) the information for the locale NAME. */
extern struct localedef_t *load_locale (int locale, const char *name,
const char *repertoire_name,
struct charmap_t *charmap);
struct charmap_t *charmap,
struct localedef_t *copy_locale);
#endif /* localedef.h */

View file

@ -1,5 +1,5 @@
%{
/* Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
/* Copyright (C) 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.org>, 1996.
@ -60,6 +60,7 @@ section-symbol, tok_section_symbol, 0
collating-element, tok_collating_element, 0
collating-symbol, tok_collating_symbol, 0
symbol-equivalence, tok_symbol_equivalence, 0
script, tok_script, 0
order_start, tok_order_start, 0
order_end, tok_order_end, 0
from, tok_from, 0

View file

@ -1,6 +1,6 @@
/* ANSI-C code produced by gperf version 2.7.1 (19981006 egcs) */
/* ANSI-C code produced by gperf version 2.7 */
/* Command-line: gperf -acCgopt -k1,2,5,9,$ -L ANSI-C -N locfile_hash programs/locfile-kw.gperf */
/* Copyright (C) 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
/* Copyright (C) 1996, 1997, 1998, 1999, 2000 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@gnu.org>, 1996.
@ -24,12 +24,12 @@
#include "locfile-token.h"
struct keyword_t ;
#define TOTAL_KEYWORDS 173
#define TOTAL_KEYWORDS 174
#define MIN_WORD_LENGTH 3
#define MAX_WORD_LENGTH 22
#define MIN_HASH_VALUE 3
#define MAX_HASH_VALUE 645
/* maximum key range = 643, duplicates = 0 */
#define MAX_HASH_VALUE 539
/* maximum key range = 537, duplicates = 0 */
#ifdef __GNUC__
__inline
@ -39,32 +39,32 @@ hash (register const char *str, register unsigned int len)
{
static const unsigned short asso_values[] =
{
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
10, 0, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 15, 646, 0, 0, 0,
10, 20, 0, 0, 646, 646, 0, 646, 0, 5,
646, 646, 10, 0, 10, 5, 646, 646, 646, 20,
646, 646, 646, 646, 646, 30, 646, 0, 25, 110,
5, 0, 25, 0, 5, 105, 646, 20, 125, 85,
175, 0, 75, 10, 5, 125, 0, 135, 45, 15,
10, 75, 0, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646, 646, 646, 646, 646,
646, 646, 646, 646, 646, 646
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
5, 0, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 25, 540, 0, 0, 0,
15, 0, 0, 0, 540, 540, 0, 540, 0, 0,
540, 540, 15, 0, 10, 5, 540, 540, 540, 0,
540, 540, 540, 540, 540, 50, 540, 0, 20, 120,
5, 0, 110, 15, 105, 90, 540, 15, 75, 150,
70, 65, 15, 0, 5, 50, 0, 230, 10, 5,
5, 5, 0, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540, 540, 540, 540, 540,
540, 540, 540, 540, 540, 540
};
register int hval = len;
@ -104,299 +104,293 @@ locfile_hash (register const char *str, register unsigned int len)
{"era", tok_era, 0},
{"date", tok_date, 0},
{"LC_ADDRESS", tok_lc_address, 0},
{""},
{"LC_MESSAGES", tok_lc_messages, 0},
{"LC_TELEPHONE", tok_lc_telephone, 0},
{""},
{"day", tok_day, 0},
{"era_t_fmt", tok_era_t_fmt, 0},
{"LC_NUMERIC", tok_lc_numeric, 0},
{"height", tok_height, 0},
{"yesstr", tok_yesstr, 0},
{"LC_IDENTIFICATION", tok_lc_identification, 0},
{"LC_CTYPE", tok_lc_ctype, 0},
{"era_d_fmt", tok_era_d_fmt, 0},
{"graph", tok_graph, 0},
{"order_start", tok_order_start, 0},
{"LC_NAME", tok_lc_name, 0},
{""},
{"UNDEFINED", tok_undefined, 0},
{"LC_COLLATE", tok_lc_collate, 0},
{"reorder-end", tok_reorder_end, 0},
{"tolower", tok_tolower, 0},
{"reorder-after", tok_reorder_after, 0},
{"order_end", tok_order_end, 0},
{""},
{"LC_MESSAGES", tok_lc_messages, 0},
{""},
{"LC_PAPER", tok_lc_paper, 0},
{"LC_MEASUREMENT", tok_lc_measurement, 0},
{"t_fmt", tok_t_fmt, 0},
{"IGNORE", tok_ignore, 0},
{"forward", tok_forward, 0},
{"fax", tok_fax, 0},
{"yesexpr", tok_yesexpr, 0},
{"era_year", tok_era_year, 0},
{"week", tok_week, 0},
{"d_fmt", tok_d_fmt, 0},
{"tel_dom_fmt", tok_tel_dom_fmt, 0},
{""}, {""}, {""}, {""},
{"era_d_t_fmt", tok_era_d_t_fmt, 0},
{""}, {""}, {""}, {""},
{"print", tok_print, 0},
{"reorder-end", tok_reorder_end, 0},
{""},
{"reorder-after", tok_reorder_after, 0},
{"UNDEFINED", tok_undefined, 0},
{""}, {""},
{"LC_NAME", tok_lc_name, 0},
{""}, {""},
{"abday", tok_abday, 0},
{"LC_MONETARY", tok_lc_monetary, 0},
{""},
{"backward", tok_backward, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""},
{"d_t_fmt", tok_d_t_fmt, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""},
{"day", tok_day, 0},
{""},
{"print", tok_print, 0},
{"yesstr", tok_yesstr, 0},
{"toupper", tok_toupper, 0},
{"grouping", tok_grouping, 0},
{""}, {""}, {""}, {""},
{"era_year", tok_era_year, 0},
{"LC_MEASUREMENT", tok_lc_measurement, 0},
{""}, {""}, {""},
{"yesexpr", tok_yesexpr, 0},
{""}, {""}, {""}, {""}, {""},
{"repertoiremap", tok_repertoiremap, 0},
{""}, {""}, {""}, {""},
{"LC_PAPER", tok_lc_paper, 0},
{""}, {""}, {""}, {""}, {""}, {""},
{"t_fmt", tok_t_fmt, 0},
{""}, {""},
{"grouping", tok_grouping, 0},
{""},
{"d_fmt", tok_d_fmt, 0},
{""},
{"address", tok_address, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""},
{"space", tok_space, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""},
{"tel", tok_tel, 0},
{"else", tok_else, 0},
{"alpha", tok_alpha, 0},
{"define", tok_define, 0},
{"tolower", tok_tolower, 0},
{""}, {""},
{"reorder-sections-end", tok_reorder_sections_end, 0},
{"order_start", tok_order_start, 0},
{"reorder-sections-after", tok_reorder_sections_after, 0},
{""}, {""}, {""}, {""},
{"toupper", tok_toupper, 0},
{""},
{"order_end", tok_order_end, 0},
{"title", tok_title, 0},
{""}, {""},
{"timezone", tok_timezone, 0},
{""},
{"digit", tok_digit, 0},
{""},
{"contact", tok_contact, 0},
{""},
{"from", tok_from, 0},
{""},
{"country_ab3", tok_country_ab3, 0},
{"abbreviation", tok_abbreviation, 0},
{""}, {""}, {""},
{"conversion_rate", tok_conversion_rate, 0},
{"xdigit", tok_xdigit, 0},
{"collating-element", tok_collating_element, 0},
{"tel", tok_tel, 0},
{"else", tok_else, 0},
{"alpha", tok_alpha, 0},
{"country_ab2", tok_country_ab2, 0},
{""}, {""}, {""},
{"width", tok_width, 0},
{""},
{"address", tok_address, 0},
{""}, {""},
{"lower", tok_lower, 0},
{"tel_int_fmt", tok_tel_int_fmt, 0},
{""},
{"audience", tok_audience, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""},
{"elif", tok_elif, 0},
{""}, {""}, {""}, {""}, {""},
{"reorder-sections-end", tok_reorder_sections_end, 0},
{""},
{"reorder-sections-after", tok_reorder_sections_after, 0},
{"map", tok_map, 0},
{"lang_name", tok_lang_name, 0},
{"coll_weight_max", tok_coll_weight_max, 0},
{""}, {""}, {""}, {""},
{"postal_fmt", tok_postal_fmt, 0},
{""},
{"mon_grouping", tok_mon_grouping, 0},
{""},
{"territory", tok_territory, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{"fax", tok_fax, 0},
{"translit_start", tok_translit_start, 0},
{"translit_ignore", tok_translit_ignore, 0},
{""},
{"translit_end", tok_translit_end, 0},
{"decimal_point", tok_decimal_point, 0},
{""}, {""}, {""},
{"tel_dom_fmt", tok_tel_dom_fmt, 0},
{""},
{"abday", tok_abday, 0},
{""}, {""}, {""}, {""},
{"ifdef", tok_ifdef, 0},
{"define", tok_define, 0},
{"lang_ab", tok_lang_ab, 0},
{"lang_lib", tok_lang_lib, 0},
{"copy", tok_copy, 0},
{"nostr", tok_nostr, 0},
{""},
{"mon_decimal_point", tok_mon_decimal_point, 0},
{"category", tok_category, 0},
{""},
{"blank", tok_blank, 0},
{""},
{"country_post", tok_country_post, 0},
{""}, {""},
{"t_fmt_ampm", tok_t_fmt_ampm, 0},
{""},
{"duo_valid_to", tok_duo_valid_to, 0},
{""}, {""},
{"space", tok_space, 0},
{""}, {""}, {""}, {""}, {""}, {""},
{"abbreviation", tok_abbreviation, 0},
{"name_fmt", tok_name_fmt, 0},
{""},
{"punct", tok_punct, 0},
{""},
{"blank", tok_blank, 0},
{"era_d_t_fmt", tok_era_d_t_fmt, 0},
{"name_mr", tok_name_mr, 0},
{"first_weekday", tok_first_weekday, 0},
{""}, {""},
{"escape_char", tok_escape_char, 0},
{""},
{"first_workday", tok_first_workday, 0},
{"p_sep_by_space", tok_p_sep_by_space, 0},
{"upper", tok_upper, 0},
{""}, {""},
{"revision", tok_revision, 0},
{"lang_name", tok_lang_name, 0},
{""}, {""}, {""},
{"symbol-equivalence", tok_symbol_equivalence, 0},
{""},
{"alt_digits", tok_alt_digits, 0},
{""}, {""}, {""},
{"p_sep_by_space", tok_p_sep_by_space, 0},
{""}, {""}, {""},
{"category", tok_category, 0},
{""},
{"nostr", tok_nostr, 0},
{""},
{"lang_ab", tok_lang_ab, 0},
{"lang_lib", tok_lang_lib, 0},
{""},
{"lower", tok_lower, 0},
{""}, {""},
{"position", tok_position, 0},
{""}, {""},
{"noexpr", tok_noexpr, 0},
{""}, {""}, {""},
{"abmon", tok_abmon, 0},
{""}, {""},
{"map", tok_map, 0},
{""}, {""}, {""},
{"d_t_fmt", tok_d_t_fmt, 0},
{""}, {""}, {""}, {""},
{"name_ms", tok_name_ms, 0},
{"name_mrs", tok_name_mrs, 0},
{""}, {""}, {""}, {""},
{"decimal_point", tok_decimal_point, 0},
{""}, {""},
{"escape_char", tok_escape_char, 0},
{"forward", tok_forward, 0},
{""},
{"elif", tok_elif, 0},
{""},
{"script", tok_script, 0},
{"contact", tok_contact, 0},
{""},
{"copy", tok_copy, 0},
{""},
{"country_ab3", tok_country_ab3, 0},
{""},
{"name_gen", tok_name_gen, 0},
{"n_sep_by_space", tok_n_sep_by_space, 0},
{""},
{"country_ab2", tok_country_ab2, 0},
{""},
{"negative_sign", tok_negative_sign, 0},
{""}, {""}, {""}, {""},
{"int_p_sep_by_space", tok_int_p_sep_by_space, 0},
{""}, {""},
{"tel_int_fmt", tok_tel_int_fmt, 0},
{"country_post", tok_country_post, 0},
{"positive_sign", tok_positive_sign, 0},
{""}, {""},
{"height", tok_height, 0},
{"collating-element", tok_collating_element, 0},
{"first_weekday", tok_first_weekday, 0},
{""}, {""}, {""}, {""},
{"first_workday", tok_first_workday, 0},
{""},
{"t_fmt_ampm", tok_t_fmt_ampm, 0},
{"p_sign_posn", tok_p_sign_posn, 0},
{""}, {""},
{"name_miss", tok_name_miss, 0},
{""}, {""}, {""},
{"thousands_sep", tok_thousands_sep, 0},
{""},
{"graph", tok_graph, 0},
{""}, {""},
{"audience", tok_audience, 0},
{""},
{"postal_fmt", tok_postal_fmt, 0},
{"source", tok_source, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{"punct", tok_punct, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{"upper", tok_upper, 0},
{""}, {""},
{"int_n_sep_by_space", tok_int_n_sep_by_space, 0},
{""},
{"conversion_rate", tok_conversion_rate, 0},
{""},
{"country_name", tok_country_name, 0},
{""},
{"from", tok_from, 0},
{"coll_weight_max", tok_coll_weight_max, 0},
{""},
{"mon_grouping", tok_mon_grouping, 0},
{""}, {""},
{"int_p_sign_posn", tok_int_p_sign_posn, 0},
{"application", tok_application, 0},
{""}, {""},
{"section-symbol", tok_section_symbol, 0},
{"int_prefix", tok_int_prefix, 0},
{"n_sign_posn", tok_n_sign_posn, 0},
{""},
{"duo_p_sep_by_space", tok_duo_p_sep_by_space, 0},
{""}, {""}, {""}, {""},
{"mon", tok_mon, 0},
{""}, {""},
{"collating-symbol", tok_collating_symbol, 0},
{"int_p_cs_precedes", tok_int_p_cs_precedes, 0},
{""}, {""},
{"endif", tok_endif, 0},
{"measurement", tok_measurement, 0},
{""},
{"mon_thousands_sep", tok_mon_thousands_sep, 0},
{"p_cs_precedes", tok_p_cs_precedes, 0},
{""},
{"class", tok_class, 0},
{""}, {""}, {""}, {""},
{"email", tok_email, 0},
{""}, {""}, {""}, {""},
{"width", tok_width, 0},
{""}, {""},
{"language", tok_language, 0},
{""}, {""},
{"frac_digits", tok_frac_digits, 0},
{""}, {""}, {""}, {""},
{"country_car", tok_country_car, 0},
{"comment_char", tok_comment_char, 0},
{""}, {""},
{"default_missing", tok_default_missing, 0},
{"source", tok_source, 0},
{""}, {""}, {""}, {""}, {""}, {""},
{"outdigit", tok_outdigit, 0},
{""}, {""},
{"collating-symbol", tok_collating_symbol, 0},
{""}, {""}, {""}, {""}, {""}, {""},
{"position", tok_position, 0},
{""},
{"am_pm", tok_am_pm, 0},
{"noexpr", tok_noexpr, 0},
{""},
{"mon", tok_mon, 0},
{"territory", tok_territory, 0},
{"alt_digits", tok_alt_digits, 0},
{""}, {""},
{"language", tok_language, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{"charconv", tok_charconv, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""},
{"duo_valid_from", tok_duo_valid_from, 0},
{""},
{"p_sign_posn", tok_p_sign_posn, 0},
{""},
{"positive_sign", tok_positive_sign, 0},
{""}, {""}, {""},
{"country_name", tok_country_name, 0},
{""}, {""},
{"alnum", tok_alnum, 0},
{"frac_digits", tok_frac_digits, 0},
{"mon_thousands_sep", tok_mon_thousands_sep, 0},
{""}, {""}, {""}, {""}, {""},
{"duo_p_sep_by_space", tok_duo_p_sep_by_space, 0},
{""}, {""}, {""}, {""},
{"revision", tok_revision, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{"duo_valid_to", tok_duo_valid_to, 0},
{"cal_direction", tok_cal_direction, 0},
{""},
{"n_sep_by_space", tok_n_sep_by_space, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{"lang_term", tok_lang_term, 0},
{"duo_frac_digits", tok_duo_frac_digits, 0},
{""},
{"name_ms", tok_name_ms, 0},
{"name_mrs", tok_name_mrs, 0},
{""},
{"email", tok_email, 0},
{""},
{"duo_int_p_sep_by_space", tok_duo_int_p_sep_by_space, 0},
{"thousands_sep", tok_thousands_sep, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""},
{"undef", tok_undef, 0},
{""}, {""}, {""}, {""}, {""}, {""},
{"uno_valid_to", tok_uno_valid_to, 0},
{"int_n_sign_posn", tok_int_n_sign_posn, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""},
{"abmon", tok_abmon, 0},
{"country_num", tok_country_num, 0},
{"duo_n_sep_by_space", tok_duo_n_sep_by_space, 0},
{""},
{"p_cs_precedes", tok_p_cs_precedes, 0},
{""}, {""}, {""},
{"duo_p_cs_precedes", tok_duo_p_cs_precedes, 0},
{"name_gen", tok_name_gen, 0},
{""}, {""},
{"n_sign_posn", tok_n_sign_posn, 0},
{"int_select", tok_int_select, 0},
{""}, {""}, {""}, {""},
{"cntrl", tok_cntrl, 0},
{""},
{"negative_sign", tok_negative_sign, 0},
{"duo_currency_symbol", tok_duo_currency_symbol, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""},
{"country_isbn", tok_country_isbn, 0},
{"int_n_cs_precedes", tok_int_n_cs_precedes, 0},
{""}, {""},
{"duo_p_sign_posn", tok_duo_p_sign_posn, 0},
{""}, {""},
{"duo_n_sep_by_space", tok_duo_n_sep_by_space, 0},
{""}, {""}, {""}, {""},
{"cal_direction", tok_cal_direction, 0},
{"duo_int_frac_digits", tok_duo_int_frac_digits, 0},
{"currency_symbol", tok_currency_symbol, 0},
{""}, {""}, {""}, {""}, {""}, {""},
{"include", tok_include, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""},
{"duo_int_n_sep_by_space", tok_duo_int_n_sep_by_space, 0},
{""}, {""}, {""}, {""}, {""},
{"int_p_sep_by_space", tok_int_p_sep_by_space, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""},
{"uno_valid_from", tok_uno_valid_from, 0},
{""}, {""}, {""}, {""},
{"name_miss", tok_name_miss, 0},
{""},
{"duo_int_p_cs_precedes", tok_duo_int_p_cs_precedes, 0},
{""}, {""}, {""}, {""},
{"application", tok_application, 0},
{""}, {""}, {""},
{"int_frac_digits", tok_int_frac_digits, 0},
{""}, {""}, {""}, {""},
{"int_prefix", tok_int_prefix, 0},
{""}, {""},
{"n_cs_precedes", tok_n_cs_precedes, 0},
{"charclass", tok_charclass, 0},
{""}, {""},
{"duo_n_cs_precedes", tok_duo_n_cs_precedes, 0},
{""}, {""},
{"class", tok_class, 0},
{""}, {""}, {""},
{"section-symbol", tok_section_symbol, 0},
{"country_isbn", tok_country_isbn, 0},
{""}, {""}, {""}, {""},
{"duo_int_curr_symbol", tok_duo_int_curr_symbol, 0},
{""}, {""}, {""}, {""}, {""},
{"duo_int_p_sep_by_space", tok_duo_int_p_sep_by_space, 0},
{"charconv", tok_charconv, 0},
{""}, {""}, {""},
{"duo_p_cs_precedes", tok_duo_p_cs_precedes, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""},
{"alnum", tok_alnum, 0},
{""}, {""}, {""}, {""},
{"int_frac_digits", tok_int_frac_digits, 0},
{""},
{"mon_decimal_point", tok_mon_decimal_point, 0},
{""}, {""}, {""},
{"measurement", tok_measurement, 0},
{"uno_valid_to", tok_uno_valid_to, 0},
{"outdigit", tok_outdigit, 0},
{""}, {""}, {""},
{"include", tok_include, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""},
{"duo_n_sign_posn", tok_duo_n_sign_posn, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{"duo_int_p_sign_posn", tok_duo_int_p_sign_posn, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""},
{"int_select", tok_int_select, 0},
{""},
{"int_p_cs_precedes", tok_int_p_cs_precedes, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""},
{"cntrl", tok_cntrl, 0},
{""}, {""}, {""}, {""},
{"int_p_sign_posn", tok_int_p_sign_posn, 0},
{""}, {""}, {""}, {""}, {""},
{"duo_int_p_cs_precedes", tok_duo_int_p_cs_precedes, 0},
{""}, {""},
{"int_n_sep_by_space", tok_int_n_sep_by_space, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{"duo_valid_from", tok_duo_valid_from, 0},
{"default_missing", tok_default_missing, 0},
{"country_num", tok_country_num, 0},
{"duo_int_n_sep_by_space", tok_duo_int_n_sep_by_space, 0},
{""}, {""},
{"int_curr_symbol", tok_int_curr_symbol, 0},
{""},
{"duo_n_cs_precedes", tok_duo_n_cs_precedes, 0},
{""}, {""},
{"ifdef", tok_ifdef, 0},
{""}, {""}, {""},
{"duo_int_p_sign_posn", tok_duo_int_p_sign_posn, 0},
{""}, {""}, {""}, {""},
{"lang_term", tok_lang_term, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""},
{"duo_currency_symbol", tok_duo_currency_symbol, 0},
{""}, {""}, {""}, {""},
{"charclass", tok_charclass, 0},
{"am_pm", tok_am_pm, 0},
{""}, {""}, {""}, {""},
{"duo_frac_digits", tok_duo_frac_digits, 0},
{""}, {""}, {""}, {""}, {""},
{"duo_int_n_cs_precedes", tok_duo_int_n_cs_precedes, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""},
{"uno_valid_from", tok_uno_valid_from, 0},
{""}, {""}, {""}, {""},
{"duo_int_n_sign_posn", tok_duo_int_n_sign_posn, 0},
{""}, {""}, {""}, {""}, {""},
{"currency_symbol", tok_currency_symbol, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""},
{"duo_int_frac_digits", tok_duo_int_frac_digits, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""},
{"duo_int_n_sign_posn", tok_duo_int_n_sign_posn, 0},
{"undef", tok_undef, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""},
{"int_n_cs_precedes", tok_int_n_cs_precedes, 0},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{""}, {""}, {""}, {""}, {""}, {""}, {""}, {""},
{"int_n_sign_posn", tok_int_n_sign_posn, 0}
{""}, {""}, {""}, {""},
{"duo_int_curr_symbol", tok_duo_int_curr_symbol, 0}
};
if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)

View file

@ -98,6 +98,7 @@ enum token_t
tok_collating_element,
tok_collating_symbol,
tok_symbol_equivalence,
tok_script,
tok_order_start,
tok_order_end,
tok_from,

View file

@ -65,7 +65,7 @@ locale name should consist only of portable characters"));
else
{
(void) add_to_readlist (locale, now->val.str.startmb,
repertoire_name, 1);
repertoire_name, 1, NULL);
result->copy_name[locale] = now->val.str.startmb;
}
}

View file

@ -1,3 +1,16 @@
2000-06-25 Ulrich Drepper <drepper@redhat.com>
* sort-test.sh: Add more GCONV_PATH usages.
* tst-fmon.sh: Likewise.
* tst-locale.sh: Likewise.
* tst-mbswcs.sh: Likewise.
* tst-rpmatch.sh: Likewise.
* tst-trans.sh: Likewise.
* locales/i18n: Remove order_start around copy.
* locales/iso14651_t1: Correct various small errors.
2000-06-24 Ulrich Drepper <drepper@redhat.com>
* charmaps/ISO-8859-1: Correct width specification.

View file

@ -995,13 +995,9 @@ symbol-equivalence <HOOK> <CROOK>
symbol-equivalence <HORN> <HORNU>
symbol-equivalence <DOT-BELOW> <POINS>
order_start forward;forward;forward;forward,position
% Copy the template from ISO/IEC 14651
copy "iso14651_t1"
order_end
END LC_COLLATE
LC_MONETARY

View file

@ -1,7 +1,5 @@
LC_COLLATE
COLL_WEIGHT_MAX=4
# Déclaration des systèmes d'écriture / Declaration of scripts
script <SPECIAL>
script <LATIN>
@ -106,6 +104,7 @@ collating-symbol <w>
collating-symbol <x>
collating-symbol <y>
collating-symbol <z>
collating-symbol <th>
#
# <ARABINT>/<ARABFOR>
#
@ -153,7 +152,7 @@ collating-symbol <yeh_barree>
#
# <HEBREU>
#
collating-symbol <alef>
collating-symbol <halef>
collating-symbol <bet>
collating-symbol <gimel>
collating-symbol <dalet>
@ -164,7 +163,7 @@ collating-symbol <het>
collating-symbol <tet>
collating-symbol <yod>
collating-symbol <kaf_fin>
collating-symbol <kaf>
collating-symbol <hkaf>
collating-symbol <lamed>
collating-symbol <mem_fin>
collating-symbol <mem>
@ -204,7 +203,7 @@ collating-symbol <SIGMA>
collating-symbol <TAU>
collating-symbol <UPSILON>
collating-symbol <PHI>
collating-symbol <KHI>
collating-symbol <CHI>
collating-symbol <PSI>
collating-symbol <OMEGA>
#
@ -246,7 +245,6 @@ collating-symbol <CYR-OUBRE>
collating-symbol <CYR-EF>
collating-symbol <CYR-HA>
collating-symbol <CYR-TSE>
collating-symbol <CYR-TSHE>
collating-symbol <CYR-DCHE>
collating-symbol <CYR-SHA>
collating-symbol <CYR-SHTSHA>
@ -272,7 +270,6 @@ collating-symbol <CYR-YA>
#
#
<ANO> # voir
<MIN>
<AIS> # isol.
# 3
<AFI> # final
@ -411,7 +408,7 @@ collating-symbol <CYR-YA>
#
# <HEBREU>
#
<alef>
<halef>
<bet>
<gimel>
<dalet>
@ -422,7 +419,7 @@ collating-symbol <CYR-YA>
<tet>
<yod>
<kaf_fin>
<kaf>
<hkaf>
<lamed>
<mem_fin>
<mem>
@ -504,7 +501,6 @@ collating-symbol <CYR-YA>
<CYR-EF>
<CYR-HA>
<CYR-TSE>
<CYR-TSHE>
<CYR-DCHE>
<CYR-SHA>
<CYR-SHTSHA>
@ -573,7 +569,7 @@ order_start <SPECIAL>;forward;backward;forward;forward,position
<U00A3> IGNORE;IGNORE;IGNORE;<U00A3> # 86 £
<U00A5> IGNORE;IGNORE;IGNORE;<U00A5> # 87 ¥
<U002A> IGNORE;IGNORE;IGNORE;<U002A> # 88 *
<U005C> IGNORE;IGNORE;IGNORE;<U005C> # 89 \
<U005C> IGNORE;IGNORE;IGNORE;<U005C> # 89
<U0026> IGNORE;IGNORE;IGNORE;<U0026> # 90 &
<U0023> IGNORE;IGNORE;IGNORE;<U0023> # 91 #
<U0025> IGNORE;IGNORE;IGNORE;<U0025> # 92 %
@ -680,7 +676,7 @@ order_start <SPECIAL>;forward;backward;forward;forward,position
order_start <LATIN>;forward;backward;forward;forward,position
#
<U00A0> U0020;<BAS>;<MIN>;IGNORE # 170<NBSP>
<U00A0> <U0020>;<BAS>;<MIN>;IGNORE # 170<NBSP>
#
<U0030> <0>;<BAS>;<MIN>;IGNORE # 171 0
<U0031> <1>;<BAS>;<MIN>;IGNORE # 172 1
@ -722,7 +718,7 @@ order_start <LATIN>;forward;backward;forward;forward,position
<U0103> <a>;<BRE>;<MIN>;IGNORE # 206 <a(>
<U0105> <a>;<OGO>;<MIN>;IGNORE # 207 <a;>
<U0101> <a>;<MAC>;<MIN>;IGNORE # 208 <a->
<U00E6> <a><e>;<LIG><LIG>;<MIN><MIN>;IGNORE # 209 æ
<U00E6> "<a><e>";"<LIG><LIG>";"<MIN><MIN>";IGNORE # 209 æ
<U0062> <b>;<BAS>;<MIN>;IGNORE # 210 b
<U0063> <c>;<BAS>;<MIN>;IGNORE # 211 c
<U00E7> <c>;<CDI>;<MIN>;IGNORE # 212 ç
@ -803,7 +799,7 @@ order_start <LATIN>;forward;backward;forward;forward,position
<U015D> <s>;<CIR>;<MIN>;IGNORE # 287 <s/>>
<U0161> <s>;<CAR>;<MIN>;IGNORE # 288 <s<>
<U015F> <s>;<CDI>;<MIN>;IGNORE # 289 <s,>
<U00DF> <s><s>;<LIG><LIG>;<MIN><MIN>;IGNORE # 290 ß
<U00DF> "<s><s>";"<LIG><LIG>";"<MIN><MIN>";IGNORE # 290 ß
<U0074> <t>;<BAS>;<MIN>;IGNORE # 291 t
<U0165> <t>;<CAR>;<MIN>;IGNORE # 292 <t<>
<U0167> <t>;<OBL>;<MIN>;IGNORE # 293 <t//>
@ -842,7 +838,7 @@ order_start <LATIN>;forward;backward;forward;forward,position
<U0102> <a>;<BRE>;<CAP>;IGNORE # 326 <A(>
<U0104> <a>;<OGO>;<CAP>;IGNORE # 327 <A;>
<U0100> <a>;<MAC>;<CAP>;IGNORE # 328 <A->
<U00C6> <a><e>;<LIG><LIG>;<CAP><CAP>;IGNORE # 329 Æ
<U00C6> "<a><e>";"<LIG><LIG>";"<CAP><CAP>";IGNORE # 329 Æ
<U0042> <b>;<BAS>;<CAP>;IGNORE # 330 B
<U0043> <c>;<BAS>;<CAP>;IGNORE # 331 C
<U00C7> <c>;<CDI>;<CAP>;IGNORE # 332 Ç
@ -1176,7 +1172,7 @@ order_start <ARABFOR>;backward;backward;backward;forward,position
<UFEFC> <lam><alef>;<BAS><BAS>;<AFI><AFI>;IGNORE
order_start <HEBREU>;forward;forward;forward;forward,position
<U05D0> <alef>;<BAS>;IGNORE;IGNORE
<U05D0> <halef>;<BAS>;IGNORE;IGNORE
<U05D1> <bet>;<BAS>;IGNORE;IGNORE
<U05D2> <gimel>;<BAS>;IGNORE;IGNORE
<U05D3> <dalet>;<BAS>;IGNORE;IGNORE
@ -1187,7 +1183,7 @@ order_start <HEBREU>;forward;forward;forward;forward,position
<U05D8> <tet>;<BAS>;IGNORE;IGNORE
<U05D9> <yod>;<BAS>;IGNORE;IGNORE
<U05DA> <kaf_fin>;<BAS>;IGNORE;IGNORE
<U05DB> <kaf>;<BAS>;IGNORE;IGNORE
<U05DB> <hkaf>;<BAS>;IGNORE;IGNORE
<U05DC> <lamed>;<BAS>;IGNORE;IGNORE
<U05DD> <mem_fin>;<BAS>;IGNORE;IGNORE
<U05DE> <mem>;<BAS>;IGNORE;IGNORE
@ -1204,7 +1200,7 @@ order_start <HEBREU>;forward;forward;forward;forward,position
<U05E9> <shin>;<BAS>;IGNORE;IGNORE
<U05EA> <tav>;<BAS>;IGNORE;IGNORE
order_start <GREC>;forward;backward;forward
order_start <GREC>;forward;backward;forward;forward,position
<U0391> <ALPHA>;<BAS>;<CAP>;IGNORE
<U03B1> <ALPHA>;<BAS>;<AMI>;IGNORE
<U0386> <ALPHA>;<TNS>;<CAP>;IGNORE

View file

@ -11,7 +11,8 @@ for l in $lang; do
cns=`echo $l | sed 's/\(.*\)[.][^.]*/\1/'`
cn=locales/$cns
fn=charmaps/`echo $l | sed 's/.*[.]\([^.]*\)/\1/'`
I18NPATH=. ${common_objpfx}elf/ld.so --library-path $common_objpfx \
I18NPATH=. GCONV_PATH=${common_objpfx}/iconvdata \
${common_objpfx}elf/ld.so --library-path $common_objpfx \
${common_objpfx}locale/localedef --quiet -i $cn -f $fn \
${common_objpfx}localedata/$cns
done
@ -20,14 +21,14 @@ done
status=0
for l in $lang; do
cns=`echo $l | sed 's/\(.*\)[.][^.]*/\1/'`
LOCPATH=${common_objpfx}localedata LC_ALL=$cns \
${common_objpfx}elf/ld.so --library-path $common_objpfx \
LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}/iconvdata \
LC_ALL=$cns ${common_objpfx}elf/ld.so --library-path $common_objpfx \
${common_objpfx}localedata/collate-test $id < $cns.in \
> ${common_objpfx}localedata/$cns.out || status=1
cmp -s $cns.in ${common_objpfx}localedata/$cns.out || status=1
LOCPATH=${common_objpfx}localedata LC_ALL=$cns \
${common_objpfx}elf/ld.so --library-path $common_objpfx \
LOCPATH=${common_objpfx}localedata GCONV_PATH=${common_objpfx}/iconvdata \
LC_ALL=$cns ${common_objpfx}elf/ld.so --library-path $common_objpfx \
${common_objpfx}localedata/xfrm-test $id < $cns.in \
> ${common_objpfx}localedata/$cns.xout || status=1
cmp -s $cns.in ${common_objpfx}localedata/$cns.xout || status=1

View file

@ -1,6 +1,6 @@
#! /bin/sh
# Testing the implementation of strfmon(3).
# Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
# Copyright (C) 1996, 1997, 1998, 2000 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
# Contributed by Jochen Hein <jochen.hein@delphi.central.de>, 1997.
#
@ -36,7 +36,7 @@ for l in $lang; do
cns=`echo $l | sed 's/\(.*\)[.][^.]*/\1/'`
cn=locales/$cns
fn=charmaps/`echo $l | sed 's/.*[.]\([^.]*\)/\1/'`
I18NPATH=. \
I18NPATH=. GCONV_PATH=${common_objpfx}/iconvdata \
${common_objpfx}elf/ld.so --library-path $common_objpfx \
${common_objpfx}locale/localedef \
--quiet -i $cn -f $fn ${common_objpfx}localedata/$cns
@ -44,7 +44,7 @@ done
for cns in `cd ./tst-fmon-locales && ls tstfmon_*`; do
cn=tst-fmon-locales/$cns
fn=charmaps/ISO-8859-1
I18NPATH=. \
I18NPATH=. GCONV_PATH=${common_objpfx}/iconvdata \
${common_objpfx}elf/ld.so --library-path $common_objpfx \
${common_objpfx}locale/localedef \
--quiet -i $cn -f $fn ${common_objpfx}localedata/$cns
@ -55,6 +55,7 @@ IFS=" " # This is a TAB
while read locale format value expect; do
if [ -n "$format" ]; then
LOCPATH=${common_objpfx}localedata \
GCONV_PATH=${common_objpfx}/iconvdata \
${common_objpfx}elf/ld.so --library-path $common_objpfx \
${common_objpfx}localedata/tst-fmon \
"$locale" "$format" "$value" "$expect"

View file

@ -27,7 +27,7 @@ test_locale ()
input=$2
out=$3
rep=$4
I18NPATH=. \
I18NPATH=. GCONV_PATH=${common_objpfx}/iconvdata \
${common_objpfx}elf/ld.so --library-path $common_objpfx \
${common_objpfx}locale/localedef --quiet -c -f $charmap -i $input \
--repertoire-map $rep ${common_objpfx}localedata/$out

View file

@ -26,7 +26,7 @@ generate_locale ()
input=$2
out=$3
rep=$4
I18NPATH=. \
I18NPATH=. GCONV_PATH=${common_objpfx}/iconvdata \
${common_objpfx}elf/ld.so --library-path $common_objpfx \
${common_objpfx}locale/localedef --quiet -c -f $charmap -i $input \
--repertoire-map $rep ${common_objpfx}localedata/$out

View file

@ -1,6 +1,6 @@
#! /bin/sh -f
#
# Copyright (C) 1998, 1999 Free Software Foundation, Inc.
# Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc.
# This file is part of the GNU C Library and contains tests for
# the rpmatch(3)-implementation.
# contributed by Jochen Hein <jochen.hein@delphi.central.de>
@ -25,6 +25,7 @@ rc=0
while read locale string result dummy; do
if [ "$locale" != "#" ]; then
LOCPATH=${common_objpfx}localedata \
GCONV_PATH=${common_objpfx}/iconvdata \
${common_objpfx}elf/ld.so --library-path $common_objpfx \
${common_objpfx}localedata/tst-rpmatch $locale $string $result \
|| exit 1

View file

@ -21,7 +21,7 @@
common_objpfx=$1
# Generate the necessary locale data.
I18NPATH=. \
I18NPATH=. GCONV_PATH=${common_objpfx}/iconvdata \
${common_objpfx}elf/ld.so --library-path $common_objpfx \
${common_objpfx}locale/localedef --quiet \
-i tests/trans.def -f charmaps/ISO-8859-1 -u repertoiremaps/mnemonic.ds \