NetBSD/lib/libc/citrus
tnozaki 52ed7b035f Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format.
ok'ed by core and releng.
(thanks for agc@, snj@ and i'm sorry for long time patience).

[libc]
- localeio.[ch] and lc*.[ch] in src/lib/libc/locale was replaced by
  new locale-db implementation using citrus_db backend,
  see src/lib/libc/citrus/citrus_lc_*.[ch].
- add citrus_bcs_strtou?l.c. don't use strtou?l locale implementation
  internally, because they're locale-aware function.
- add some stubs for multi-locale issue, see {current,global}_locale.c.
- remove some obsolete file, setrunelocale.c, ___runetype_mb.c.
- remove __savectype() from ctypeio.[ch].

[tools]
- mklocale(1): add new option ``-t'' that generates new style
  LC_{MONETARY,NUMERIC,TIME,MESSAGES} locale-db format.
- chrtbl(1): added ctypeio.[ch] for __savectype().

[locale-db]
- added en_US.US-ASCII locale.
- removed some shareable locale definition file:
    en_US.US-ASCII -> en_US.ISO8859-1, en_US.UTF-8
    zh_CN.eucCN -> zh_CN.GB18030
    and more...see src/share/locale/*/Makefile.
- remove obsoleted locale sr_YU, added new locale sr_ME, sr_RS.
- change locale name ja_JP.ISO2022-JP* -> ja_JP.ISO-2022-JP*
  for X11's locale.alias file alignments.
- fix regression test, wrong wcs?width(3), NAN/INF usage.

i tested release-build following arch:
  i386, amd64, hpc{mips,arm,sh}, sparc64, vax.

citrus_lc_*.[ch] also can read old-plain-text style locale-db.
so that backward compatibility is keeped, but lc*.[ch] can't read
new citrus_db'ed locale-db and localeio.c never check sanity,
so forward compatibility is broken ;-<

old mklocale(1) doesn't know -t option, so you have to rebuild toolchain.
2009-01-02 00:20:18 +00:00
..
modules Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_aliasname_local.h Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_bcs_strtol.c Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_bcs_strtoul.c Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_bcs.c
citrus_bcs.h Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_csmapper.c Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_csmapper.h u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_ctype_fallback.c
citrus_ctype_fallback.h
citrus_ctype_local.h u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_ctype_template.h u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_ctype.c remove unused include, locale.h. 2008-06-14 16:01:07 +00:00
citrus_ctype.h
citrus_db_factory.c u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_db_factory.h u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_db_file.h __attribute__((__packed__)) -> __packed. 2008-02-10 05:58:22 +00:00
citrus_db_hash.c u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_db_hash.h u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_db.c u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_db.h u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_esdb_file.h
citrus_esdb.c u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_esdb.h
citrus_fix_grouping.h Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_hash.c u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_hash.h
citrus_iconv_local.h u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_iconv.c fix gcc warnings from Alexander Shishkin 2008-07-25 14:05:25 +00:00
citrus_iconv.h u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_lc_ctype.c Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_lc_messages.c Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_lc_messages.h Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_lc_monetary.c Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_lc_monetary.h Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_lc_numeric.c Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_lc_numeric.h Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_lc_template_decl.h Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_lc_template.h Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_lc_time.c Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_lc_time.h Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_lookup_factory.c
citrus_lookup_factory.h
citrus_lookup_file.h
citrus_lookup.c
citrus_lookup.h
citrus_mapper_local.h u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_mapper.c fix gcc warnings from Alexander Shishkin 2008-07-25 14:05:25 +00:00
citrus_mapper.h
citrus_memstream.c u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_memstream.h
citrus_mmap.c
citrus_mmap.h
citrus_module.c Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_module.h
citrus_namespace.h Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00
citrus_none.c remove unused include, locale.h. 2008-06-14 16:01:07 +00:00
citrus_none.h
citrus_pivot_factory.c u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_pivot_factory.h
citrus_pivot_file.h
citrus_prop.c
citrus_prop.h
citrus_region.h u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_stdenc_local.h u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_stdenc_template.h u_intXX_t -> uintXX_t. 2008-02-09 14:56:20 +00:00
citrus_stdenc.c
citrus_stdenc.h
citrus_types.h
Makefile.inc Fixes PR lib/39662, shortcomings in LC_{MONETARY,NUMERIC,TIME,MESSAGES} db format. 2009-01-02 00:20:18 +00:00