2017-01-01 00:14:16 +00:00
|
|
|
# Copyright (C) 1991-2017 Free Software Foundation, Inc.
|
1995-02-18 01:27:10 +00:00
|
|
|
# This file is part of the GNU C Library.
|
|
|
|
|
|
|
|
# The GNU C Library is free software; you can redistribute it and/or
|
2001-07-06 04:58:11 +00:00
|
|
|
# modify it under the terms of the GNU Lesser General Public
|
|
|
|
# License as published by the Free Software Foundation; either
|
|
|
|
# version 2.1 of the License, or (at your option) any later version.
|
1995-02-18 01:27:10 +00:00
|
|
|
|
|
|
|
# The GNU C Library is distributed in the hope that it will be useful,
|
|
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
2001-07-06 04:58:11 +00:00
|
|
|
# Lesser General Public License for more details.
|
1995-02-18 01:27:10 +00:00
|
|
|
|
2001-07-06 04:58:11 +00:00
|
|
|
# You should have received a copy of the GNU Lesser General Public
|
2012-02-09 23:18:22 +00:00
|
|
|
# License along with the GNU C Library; if not, see
|
|
|
|
# <http://www.gnu.org/licenses/>.
|
1995-02-18 01:27:10 +00:00
|
|
|
|
|
|
|
#
|
|
|
|
# Makefile for locales.
|
|
|
|
#
|
|
|
|
subdir := locale
|
|
|
|
|
2014-02-26 23:12:03 +00:00
|
|
|
include ../Makeconfig
|
|
|
|
|
2001-01-26 09:22:30 +00:00
|
|
|
headers = locale.h bits/locale.h langinfo.h xlocale.h
|
* locale/loadarchive.c (_nl_load_locale_from_archive): Parse locale
name to find codeset name (if any) and normalize it. If the
normalized name differs, look up only that in the archive.
* locale/programs/locarchive.c (add_locale_to_archive): If the name
contains a codeset, normalize the codeset store only the normalized
name in the archive. If not, add an alias containing the locale's
normalized codeset name. Apply codeset name normalization when
matching entries in the alias file.
* locale/programs/locarchive.c (delete_locales_from_archive): Don't
decrement HEAD->namehash_used here.
(add_locale): Only need to insert name string when name_offset != 0.
* locale/programs/localedef.c (options): Add -A/--alias-file.
(alias_file): New variable.
(parse_opt): Grok -A, set that.
* locale/programs/localedef.h: Declare it.
* locale/programs/locarchive.c (insert_name): New function, broken out
of ...
(add_locale_to_archive): ... here. Call that.
(add_alias): New function.
(add_locale): New static function, add_locale_to_archive renamed.
(add_locale_to_archive): Call that and use add_alias to add an alias
for the name with codeset if the given name lacks it.
(enlarge_archive): Call add_locale instead of add_locale_to_archive.
* locale/Makefile (routines): Add loadarchive.
* locale/loadarchive.c: New file, started from code by Ulrich Drepper.
(_nl_load_locale_from_archive): New function.
* locale/localeinfo.h: Declare it.
* locale/findlocale.c (_nl_find_locale): If using default locale path,
try _nl_load_locale_from_archive first.
* locale/loadlocale.c (_nl_intern_locale_data): New function,
broken out of _nl_load_locale.
(_nl_load_locale): Call that.
* locale/localeinfo.h: Declare it.
(struct locale_data): Replace member `mmaped' with `alloc', an enum.
(struct locale_data): Remove unused member `options'.
* locale/findlocale.c (_nl_remove_locale): Update uses.
* locale/loadlocale.c (_nl_load_locale, _nl_unload_locale): Likewise.
* locale/C-collate.c: Update initializer.
* locale/C-identification.c: Likewise.
* locale/C-measurement.c: Likewise.
* locale/C-telephone.c: Likewise.
* locale/C-address.c: Likewise.
* locale/C-name.c: Likewise.
* locale/C-paper.c: Likewise.
* locale/C-time.c: Likewise.
* locale/C-numeric.c: Likewise.
* locale/C-monetary.c: Likewise.
* locale/C-messages.c : Likewise.
* locale/C-ctype.c: Likewise.
* locale/hashval.h [! LONGBITS]: Include <limits.h> here and
use CHAR_BIT instead of BITSPERBYTE.
* locale/localeinfo.h (_nl_find_locale, _nl_load_locale,
_nl_unload_locale): Add `internal_function attribute_hidden' to decls.
* locale/findlocale.c (_nl_find_locale): Add internal_function to defn.
(_nl_remove_locale): Likewise.
* locale/loadlocale.c (_nl_load_locale, _nl_unload_locale): Likewise.
* locale/findlocale.c (_nl_default_locale_path): New variable.
(_nl_find_locale): If LOCALE_PATH is null, default to that.
* locale/localeinfo.h: Declare it.
* locale/setlocale.c (setlocale): Use _nl_default_locale_path
in place of LOCALEDIR. If no LOCPATH, pass null to _nl_find_locale.
* locale/newlocale.c (__newlocale): Likewise.
* misc/err.c (vwarnx, vwarn): Fix typos in libc_hidden_def uses.
* inet/rexec.c (rexec_af): Add libc_hidden_def.
* sysdeps/generic/morecore.c: Likewise.
* signal/allocrtsig.c (__libc_current_sigrtmin): Likewise.
(__libc_current_sigrtmax): Likewise.
2002-08-08 Roland McGrath <roland@redhat.com>
* locale/loadlocale.c (_nl_load_locale): Don't use MAP_INHERIT.
* catgets/open_catalog.c (__open_catalog): Likewise.
* locale/programs/locarchive.c (INITIAL_NUM_NAMES): Renamed
from typo INITIAL_NUM_NANES.
(create_archive): Update use.
2002-08-10 06:22:37 +00:00
|
|
|
routines = setlocale findlocale loadlocale loadarchive \
|
|
|
|
localeconv nl_langinfo nl_langinfo_l mb_cur_max \
|
* locale/setlocale.c (_nl_current_names): Variable moved ...
* locale/localename.c (_nl_current_names): ... here, new file.
Make it global, with attribute_hidden.
* locale/localeinfo.h: Declare it.
* locale/Makefile (aux): Add localename.
* locale/localename.c (__current_locale_name): New function.
* include/locale.h (__current_locale_name): Declare it.
* intl/dcigettext.c (guess_category_value): Use that instead of
calling setlocale.
* locale/locale.h [__USE_GNU] (locale_t): New type alias of __locale_t.
[__USE_GNU] (newlocale, duplocale, freelocale, uselocale): New decls.
[__USE_GNU] (LC_GLOBAL_LOCALE): New macro.
* locale/newlocale.c: Add alias to __ name.
* locale/duplocale.c: Likewise.
* locale/freelocale.c: Likewise.
* locale/uselocale.c: New file.
* locale/Makefile (routines): Add it.
* locale/Versions (libc: GLIBC_2.3): New set.
Add newlocale, duplocale, freelocale, uselocale.
(libc: GLIBC_PRIVATE): Add __uselocale.
* locale/localeinfo.h [SHARED]
(_NL_CURRENT_LOCALE): New macro, defined to fetch a tsd value.
(_NL_CURRENT_DATA): Define using that.
(_NL_CURRENT, _NL_CURRENT_WSTR, _NL_CURRENT_WORD): Define using that.
(_NL_CURRENT_DEFINE): Define to empty.
[! SHARED]: Decls of _nl_current_CATEGORY and _nl_current
conditionalized on this.
* locale/xlocale.c (NL_C_INTIIALIZER): New macro,
taking initializer of _nl_C_locobj.
[SHARED] (_nl_global_locale): New variable, using that initializer.
(_nl_C_locobj): Use new macro for initialzier.
* locale/setlocale.c [! SHARED] (_nl_current): Conditionalize on this.
[! SHARED] (CATEGORY_USED): New macro.
[SHARED] (CATEGORY_USED, _nl_C): New macros.
(setdata, setlocale): Use that macro instead of examining _nl_current.
(setdata): Set the slot in _nl_global_locale.
Conditionalize setting of _nl_current on [! SHARED].
* locale/findlocale.c [SHARED] (_nl_C): Define as a macro instead of
declaration as an extern.
* locale/newlocale.c (__newlocale): Use _nl_C_locobj instead of _nl_C.
* include/locale.h: Use libc_hidden_proto for setlocale.
* locale/setlocale.c: Add libc_hidden_def.
* locale/setlocale.c (free_mem): Use _NL_CURRENT_DATA.
2002-08-04 01:41:55 +00:00
|
|
|
newlocale duplocale freelocale uselocale
|
2009-11-17 17:37:31 +00:00
|
|
|
tests = tst-C-locale tst-locname tst-duplocale
|
1999-08-31 07:04:41 +00:00
|
|
|
categories = ctype messages monetary numeric time paper name \
|
|
|
|
address telephone measurement identification collate
|
2001-08-14 23:29:55 +00:00
|
|
|
aux = $(categories:%=lc-%) $(categories:%=C-%) SYS_libc C_name \
|
2003-06-13 21:05:42 +00:00
|
|
|
xlocale localename global-locale coll-lookup
|
1999-10-29 17:38:14 +00:00
|
|
|
others = localedef locale
|
1999-12-27 05:05:12 +00:00
|
|
|
#others-static = localedef locale
|
1996-04-03 16:31:49 +00:00
|
|
|
install-bin = localedef locale
|
2002-08-31 09:43:13 +00:00
|
|
|
extra-objs = $(localedef-modules:=.o) $(localedef-aux:=.o) \
|
|
|
|
$(locale-modules:=.o) $(lib-modules:=.o)
|
1995-05-18 09:00:09 +00:00
|
|
|
|
1996-12-11 01:40:39 +00:00
|
|
|
extra-libs = libBrokenLocale
|
|
|
|
extra-libs-others = $(extra-libs)
|
|
|
|
|
|
|
|
libBrokenLocale-routines = broken_cur_max
|
|
|
|
|
1996-06-05 19:22:44 +00:00
|
|
|
subdir-dirs = programs
|
2002-04-18 08:08:23 +00:00
|
|
|
vpath %.c programs ../crypt
|
Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* intl/Makefile (copysrc): Add missing > in sed cmd.
Sat Mar 23 17:52:49 1996 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* Makeconfig: Rename Makefile variable nlsdir to i18ndir and
change value to $(datadir)/i18n. `nls' is not an appropriate
name.
* Makefile (subdirs): Add new subdir wctype.
* ctype/ctype-info.c: Add new global variable __ctype_names
and initialize from _nl_C_LC_CTYPE.
* ctype/ctype.h: In P1003.3b/D11 `alnum' is a separate character
class. Use bit 11.
[_ISbit]: Protect definition of bitmasks because they are also
used in wctype.h.
* libio/genops.c (_IO_sputbackc, _IO_sungetc): Clear EOF flag
after successfully pushing back a character.
Fundamental changes in locale implementation. Almost nothing
from the old code is used anymore.
* locale/charmap.c, locale/collate.c, locale/config.h,
locale/ctypedump.c, locale/hash.h, locale/keyword.gperf,
locale/keyword.h, locale/loadlocale.c, locale/locale-ctype.c,
locale/locale.c locale/localeconv.c, locale/localedef.c,
locale/localedef.h, locale/locfile-hash.c, locale/locfile-lex.c,
locale/locfile-parse.c, locale/messages.c, locale/monetary.c,
locale/numeric.c, locale/setlocale.c, locale/token.h,
locale/xmalloc.c: Removed.
* locale/Makefile: Update for new locale implementation with
program source code distributed in subdir.
* locale/categories.def, locale/iso-4217.def: Updated file
for new locale implementation.
* locale/langinfo.h: Updated for new locale implementation.
(ERA_D_T_FMT, ERA_T_FMT): New official values according to
P1003.2b/D11.
(_NL_COLLATE_NRULES, _NL_COLLATE_RULES, _NL_COLLATE_HASH_SIZE,
_NL_COLLATE_HASH_LAYERS, _NL_COLLATE_TABLE_EB,
_NL_COLLATE_TABLE_EL, _NL_COLLATE_UNDEFINED, _NL_COLLATE_EXTRA_EB,
_NL_COLLATE_EXTRA_EL, _NL_CTYPE_NAMES_EB, _NL_CTYPE_NAMES_EL,
_NL_CTYPE_HASH_SIZE, _NL_CTYPE_HASH_LAYERS, _NL_CTYPE_CLASS_NAMES,
_NL_CTYPE_MAP_NAMES, _NL_CTYPE_WIDTH): New internal values for
extended LC_CTYPE and LC_COLLATE implementation.
* locale/simple-hash.c, locale/simple-hash.h, locale/xmalloc.c,
locale/xstrdup.c: Helper functions for locale related programs.
* locale/C-collate.c, locale/C-ctype.c,
locale/C-messages.c, locale/C-monetary.c,
locale/C-numeric.c, locale/C-time.c,
locale/lc-collate.c, locale/lc-ctype.c,
locale/lc-messages.c, locale/lc-monetary.c,
locale/lc-numeric.c, locale/lc-time.c: New implementation of locale
functions, and new generated "C" locale data.
* locale/loadlocale.c: Now handles word fields in locale binary
automatically by changing the endianess if necessary.
* locale/localeinfo.h (LIMAGIC): Changed magic number because
of incompatible changes.
(locale_data): Changed definition to allow word as a value type.
(coll_sort_rule): Values for collation sorting mode.
(_NL_CURRENT_WORD): New macro to access word value of locale entry.
(__collate_table, __collate_extra): Declare new global variables
for collation tables.
* locale/programs/charmap-kw.gperf, locale/programs/charmap-kw.h,
locale/programs/charmap.c, locale/programs/charset.c,
locale/programs/charset.h, locale/programs/config.h,
locale/programs/ctypedump.c, locale/programs/ld-collate.c,
locale/programs/ld-ctype.c, locale/programs/ld-messages.c,
locale/programs/ld-monetary.c, locale/programs/ld-numeric.c,
locale/programs/ld-time.c, locale/programs/linereader.c,
locale/programs/linereader.h, locale/programs/locale.c,
locale/programs/localedef.c, locale/programs/locales.h,
locale/programs/locfile-kw.gperf, locale/programs/locfile-kw.h,
locale/programs/locfile-token.h, locale/programs/locfile.c,
locale/programs/locfile.h, locale/programs/stringtrans.c,
locale/programs/stringtrans.h: Implementation of locale related
programs.
* locale/weight.h: Functions to access collation tables.
* posix/unistd.h: Define _POSIX2_LOCALEDEF.
* stdio-common/printf_fp.c: Fix bug with printing certain numbers
< 10^-1. Reported by Bill Metzenthen.
* stdio-common/tfformat.c: Add new test for above bug.
* string/strcoll.c, string/strxfrm.c: Real implementation of
string collation according to ISO C.
* wctype/Makefile, wctype/cname-lookup.h, wctype/iswctype.c,
wctype/test_wctype.c, wctype/towctrans.c, wctype/wcfuncs.c,
wctype/wctrans.c, wctype/wctype.c, wctype/wctype.h: New files.
Implementation of wide character classes and mapping.
1996-03-28 08:30:38 +00:00
|
|
|
vpath %.h programs
|
1996-06-06 04:54:33 +00:00
|
|
|
vpath %.gperf programs
|
Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* intl/Makefile (copysrc): Add missing > in sed cmd.
Sat Mar 23 17:52:49 1996 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* Makeconfig: Rename Makefile variable nlsdir to i18ndir and
change value to $(datadir)/i18n. `nls' is not an appropriate
name.
* Makefile (subdirs): Add new subdir wctype.
* ctype/ctype-info.c: Add new global variable __ctype_names
and initialize from _nl_C_LC_CTYPE.
* ctype/ctype.h: In P1003.3b/D11 `alnum' is a separate character
class. Use bit 11.
[_ISbit]: Protect definition of bitmasks because they are also
used in wctype.h.
* libio/genops.c (_IO_sputbackc, _IO_sungetc): Clear EOF flag
after successfully pushing back a character.
Fundamental changes in locale implementation. Almost nothing
from the old code is used anymore.
* locale/charmap.c, locale/collate.c, locale/config.h,
locale/ctypedump.c, locale/hash.h, locale/keyword.gperf,
locale/keyword.h, locale/loadlocale.c, locale/locale-ctype.c,
locale/locale.c locale/localeconv.c, locale/localedef.c,
locale/localedef.h, locale/locfile-hash.c, locale/locfile-lex.c,
locale/locfile-parse.c, locale/messages.c, locale/monetary.c,
locale/numeric.c, locale/setlocale.c, locale/token.h,
locale/xmalloc.c: Removed.
* locale/Makefile: Update for new locale implementation with
program source code distributed in subdir.
* locale/categories.def, locale/iso-4217.def: Updated file
for new locale implementation.
* locale/langinfo.h: Updated for new locale implementation.
(ERA_D_T_FMT, ERA_T_FMT): New official values according to
P1003.2b/D11.
(_NL_COLLATE_NRULES, _NL_COLLATE_RULES, _NL_COLLATE_HASH_SIZE,
_NL_COLLATE_HASH_LAYERS, _NL_COLLATE_TABLE_EB,
_NL_COLLATE_TABLE_EL, _NL_COLLATE_UNDEFINED, _NL_COLLATE_EXTRA_EB,
_NL_COLLATE_EXTRA_EL, _NL_CTYPE_NAMES_EB, _NL_CTYPE_NAMES_EL,
_NL_CTYPE_HASH_SIZE, _NL_CTYPE_HASH_LAYERS, _NL_CTYPE_CLASS_NAMES,
_NL_CTYPE_MAP_NAMES, _NL_CTYPE_WIDTH): New internal values for
extended LC_CTYPE and LC_COLLATE implementation.
* locale/simple-hash.c, locale/simple-hash.h, locale/xmalloc.c,
locale/xstrdup.c: Helper functions for locale related programs.
* locale/C-collate.c, locale/C-ctype.c,
locale/C-messages.c, locale/C-monetary.c,
locale/C-numeric.c, locale/C-time.c,
locale/lc-collate.c, locale/lc-ctype.c,
locale/lc-messages.c, locale/lc-monetary.c,
locale/lc-numeric.c, locale/lc-time.c: New implementation of locale
functions, and new generated "C" locale data.
* locale/loadlocale.c: Now handles word fields in locale binary
automatically by changing the endianess if necessary.
* locale/localeinfo.h (LIMAGIC): Changed magic number because
of incompatible changes.
(locale_data): Changed definition to allow word as a value type.
(coll_sort_rule): Values for collation sorting mode.
(_NL_CURRENT_WORD): New macro to access word value of locale entry.
(__collate_table, __collate_extra): Declare new global variables
for collation tables.
* locale/programs/charmap-kw.gperf, locale/programs/charmap-kw.h,
locale/programs/charmap.c, locale/programs/charset.c,
locale/programs/charset.h, locale/programs/config.h,
locale/programs/ctypedump.c, locale/programs/ld-collate.c,
locale/programs/ld-ctype.c, locale/programs/ld-messages.c,
locale/programs/ld-monetary.c, locale/programs/ld-numeric.c,
locale/programs/ld-time.c, locale/programs/linereader.c,
locale/programs/linereader.h, locale/programs/locale.c,
locale/programs/localedef.c, locale/programs/locales.h,
locale/programs/locfile-kw.gperf, locale/programs/locfile-kw.h,
locale/programs/locfile-token.h, locale/programs/locfile.c,
locale/programs/locfile.h, locale/programs/stringtrans.c,
locale/programs/stringtrans.h: Implementation of locale related
programs.
* locale/weight.h: Functions to access collation tables.
* posix/unistd.h: Define _POSIX2_LOCALEDEF.
* stdio-common/printf_fp.c: Fix bug with printing certain numbers
< 10^-1. Reported by Bill Metzenthen.
* stdio-common/tfformat.c: Add new test for above bug.
* string/strcoll.c, string/strxfrm.c: Real implementation of
string collation according to ISO C.
* wctype/Makefile, wctype/cname-lookup.h, wctype/iswctype.c,
wctype/test_wctype.c, wctype/towctrans.c, wctype/wcfuncs.c,
wctype/wctrans.c, wctype/wctype.c, wctype/wctype.h: New files.
Implementation of wide character classes and mapping.
1996-03-28 08:30:38 +00:00
|
|
|
|
2011-08-14 23:08:37 +00:00
|
|
|
localedef-modules := localedef $(categories:%=ld-%) \
|
|
|
|
charmap linereader locfile \
|
2002-08-27 12:10:11 +00:00
|
|
|
repertoire locarchive
|
|
|
|
localedef-aux := md5
|
2011-08-14 23:08:37 +00:00
|
|
|
locale-modules := locale locale-spec
|
2000-10-01 19:15:29 +00:00
|
|
|
lib-modules := charmap-dir simple-hash xmalloc xstrdup
|
1995-05-18 09:00:09 +00:00
|
|
|
|
|
|
|
|
|
|
|
GPERF = gperf
|
1999-08-31 07:04:41 +00:00
|
|
|
GPERFFLAGS = -acCgopt -k1,2,5,9,$$ -L ANSI-C
|
1995-02-18 01:27:10 +00:00
|
|
|
|
|
|
|
include ../Rules
|
1995-05-18 09:00:09 +00:00
|
|
|
|
2012-11-12 23:17:31 +00:00
|
|
|
CFLAGS-md5.c = -I../crypt
|
|
|
|
|
Thu Mar 28 03:25:10 1996 Roland McGrath <roland@charlie-brown.gnu.ai.mit.edu>
* intl/Makefile (copysrc): Add missing > in sed cmd.
Sat Mar 23 17:52:49 1996 Ulrich Drepper <drepper@gnu.ai.mit.edu>
* Makeconfig: Rename Makefile variable nlsdir to i18ndir and
change value to $(datadir)/i18n. `nls' is not an appropriate
name.
* Makefile (subdirs): Add new subdir wctype.
* ctype/ctype-info.c: Add new global variable __ctype_names
and initialize from _nl_C_LC_CTYPE.
* ctype/ctype.h: In P1003.3b/D11 `alnum' is a separate character
class. Use bit 11.
[_ISbit]: Protect definition of bitmasks because they are also
used in wctype.h.
* libio/genops.c (_IO_sputbackc, _IO_sungetc): Clear EOF flag
after successfully pushing back a character.
Fundamental changes in locale implementation. Almost nothing
from the old code is used anymore.
* locale/charmap.c, locale/collate.c, locale/config.h,
locale/ctypedump.c, locale/hash.h, locale/keyword.gperf,
locale/keyword.h, locale/loadlocale.c, locale/locale-ctype.c,
locale/locale.c locale/localeconv.c, locale/localedef.c,
locale/localedef.h, locale/locfile-hash.c, locale/locfile-lex.c,
locale/locfile-parse.c, locale/messages.c, locale/monetary.c,
locale/numeric.c, locale/setlocale.c, locale/token.h,
locale/xmalloc.c: Removed.
* locale/Makefile: Update for new locale implementation with
program source code distributed in subdir.
* locale/categories.def, locale/iso-4217.def: Updated file
for new locale implementation.
* locale/langinfo.h: Updated for new locale implementation.
(ERA_D_T_FMT, ERA_T_FMT): New official values according to
P1003.2b/D11.
(_NL_COLLATE_NRULES, _NL_COLLATE_RULES, _NL_COLLATE_HASH_SIZE,
_NL_COLLATE_HASH_LAYERS, _NL_COLLATE_TABLE_EB,
_NL_COLLATE_TABLE_EL, _NL_COLLATE_UNDEFINED, _NL_COLLATE_EXTRA_EB,
_NL_COLLATE_EXTRA_EL, _NL_CTYPE_NAMES_EB, _NL_CTYPE_NAMES_EL,
_NL_CTYPE_HASH_SIZE, _NL_CTYPE_HASH_LAYERS, _NL_CTYPE_CLASS_NAMES,
_NL_CTYPE_MAP_NAMES, _NL_CTYPE_WIDTH): New internal values for
extended LC_CTYPE and LC_COLLATE implementation.
* locale/simple-hash.c, locale/simple-hash.h, locale/xmalloc.c,
locale/xstrdup.c: Helper functions for locale related programs.
* locale/C-collate.c, locale/C-ctype.c,
locale/C-messages.c, locale/C-monetary.c,
locale/C-numeric.c, locale/C-time.c,
locale/lc-collate.c, locale/lc-ctype.c,
locale/lc-messages.c, locale/lc-monetary.c,
locale/lc-numeric.c, locale/lc-time.c: New implementation of locale
functions, and new generated "C" locale data.
* locale/loadlocale.c: Now handles word fields in locale binary
automatically by changing the endianess if necessary.
* locale/localeinfo.h (LIMAGIC): Changed magic number because
of incompatible changes.
(locale_data): Changed definition to allow word as a value type.
(coll_sort_rule): Values for collation sorting mode.
(_NL_CURRENT_WORD): New macro to access word value of locale entry.
(__collate_table, __collate_extra): Declare new global variables
for collation tables.
* locale/programs/charmap-kw.gperf, locale/programs/charmap-kw.h,
locale/programs/charmap.c, locale/programs/charset.c,
locale/programs/charset.h, locale/programs/config.h,
locale/programs/ctypedump.c, locale/programs/ld-collate.c,
locale/programs/ld-ctype.c, locale/programs/ld-messages.c,
locale/programs/ld-monetary.c, locale/programs/ld-numeric.c,
locale/programs/ld-time.c, locale/programs/linereader.c,
locale/programs/linereader.h, locale/programs/locale.c,
locale/programs/localedef.c, locale/programs/locales.h,
locale/programs/locfile-kw.gperf, locale/programs/locfile-kw.h,
locale/programs/locfile-token.h, locale/programs/locfile.c,
locale/programs/locfile.h, locale/programs/stringtrans.c,
locale/programs/stringtrans.h: Implementation of locale related
programs.
* locale/weight.h: Functions to access collation tables.
* posix/unistd.h: Define _POSIX2_LOCALEDEF.
* stdio-common/printf_fp.c: Fix bug with printing certain numbers
< 10^-1. Reported by Bill Metzenthen.
* stdio-common/tfformat.c: Add new test for above bug.
* string/strcoll.c, string/strxfrm.c: Real implementation of
string collation according to ISO C.
* wctype/Makefile, wctype/cname-lookup.h, wctype/iswctype.c,
wctype/test_wctype.c, wctype/towctrans.c, wctype/wcfuncs.c,
wctype/wctrans.c, wctype/wctype.c, wctype/wctype.h: New files.
Implementation of wide character classes and mapping.
1996-03-28 08:30:38 +00:00
|
|
|
programs/%-kw.h: programs/%-kw.gperf
|
2005-12-20 07:21:59 +00:00
|
|
|
cd programs \
|
|
|
|
&& $(GPERF) $(GPERFFLAGS) -N $(@F:-kw.h=_hash) $(<F) > $(@F).new
|
1995-05-18 09:00:09 +00:00
|
|
|
mv -f $@.new $@
|
|
|
|
|
|
|
|
$(objpfx)localedef: $(localedef-modules:%=$(objpfx)%.o)
|
2002-08-27 12:10:11 +00:00
|
|
|
$(objpfx)localedef: $(localedef-aux:%=$(objpfx)%.o)
|
1995-05-18 09:00:09 +00:00
|
|
|
$(objpfx)locale: $(locale-modules:%=$(objpfx)%.o)
|
|
|
|
$(objpfx)localedef $(objpfx)locale: $(lib-modules:%=$(objpfx)%.o)
|
|
|
|
|
2000-07-22 21:22:08 +00:00
|
|
|
C-translit.h: C-translit.h.in gen-translit.pl
|
|
|
|
$(PERL) gen-translit.pl < $< > $@.tmp
|
2000-07-29 06:45:51 +00:00
|
|
|
mv -f $@.tmp $@
|
2000-07-22 21:22:08 +00:00
|
|
|
|
2015-11-27 15:09:45 +00:00
|
|
|
# The path to the compiled binary locale archive or compiled locales,
|
|
|
|
# along with the parent path to the source locales and source
|
|
|
|
# charmaps.
|
|
|
|
localepath = "$(complocaledir):$(i18ndir)"
|
1996-12-02 04:00:15 +00:00
|
|
|
|
2011-08-14 23:08:37 +00:00
|
|
|
# -Iprograms doesn't really belong here, but this gets it at the head
|
|
|
|
# of the list instead of the tail, where CPPFLAGS-$(lib) gets added.
|
|
|
|
# We need it before the standard -I's to see programs/config.h first.
|
2015-11-27 15:09:45 +00:00
|
|
|
locale-CPPFLAGS = -DCOMPLOCALEDIR='"$(complocaledir)"' \
|
2016-02-25 01:06:04 +00:00
|
|
|
-DLOCALE_ALIAS_PATH='"$(localedir)"' \
|
2011-08-14 23:08:37 +00:00
|
|
|
-Iprograms
|
|
|
|
|
|
|
|
CPPFLAGS-locale-programs = -DLOCALE_PATH='$(localepath)' \
|
|
|
|
-DCHARMAP_PATH='"$(i18ndir)/charmaps"' \
|
|
|
|
-DREPERTOIREMAP_PATH='"$(i18ndir)/repertoiremaps"' \
|
2014-11-24 09:33:45 +00:00
|
|
|
-DLOCSRCDIR='"$(i18ndir)/locales"'
|
Wed Jan 24 04:18:36 1996 Paul Eggert <eggert@twinsun.com>
* strftime.c (strftime):
When invoking self, check whether the subsidiary invocation failed.
Use "???" (not "") to denote unknown time zone information.
Make this source file portable to standalone contexts (e.g. GNU Emacs).
<config.h>: Include if HAVE_CONFIG_H is defined.
(HAVE_LIMITS_H, HAVE_MBLEN, HAVE_TM_ZONE, STDC_HEADERS): New symbols,
defined if _LIBC or if <config.h> defines them.
<ansidecl.h>, "../locale/localeinfo.h": Include only if _LIBC.
<sys/types.h>: New include; some hosts require it for `time_t'.
<ctype.h>: Include only if HAVE_MBLEN (since it's only needed then).
<limits.h>: Include only if HAVE_LIMITS_H.
<stddef.h, stdlib.h, string.h>: Include only if STDC_HEADERS.
(memcpy): Define in terms of bcopy if !STDC_HEADERS.
(__P, PTR): Define if not already defined.
(__tzname, __daylight, __timezone): Remove macros; no longer needed.
(add, strftime): Don't use NULL, for portability to some weird hosts.
(fmt): If !_LIBC, don't assume sprintf returns a count.
(week, strftime): Use old-style function declarations.
(weekday_name, month_name): New constants.
(strftime): Use traditional C values if locale support isn't available.
Use `const' instead of CONST. For time zones, use tm_zone if
possible, then fall back on tzname. Don't check for multibyte
characters unless mblen is supported. Use formats like %02d instead
of %.2d, for portability to older hosts.
Wed Jan 24 04:18:36 1996 Paul Eggert <eggert@twinsun.com>
* strftime.c (strftime):
When invoking self, check whether the subsidiary invocation failed.
Use "???" (not "") to denote unknown time zone information.
Make this source file portable to standalone contexts (e.g. GNU Emacs).
<config.h>: Include if HAVE_CONFIG_H is defined.
(HAVE_LIMITS_H, HAVE_MBLEN, HAVE_TM_ZONE, STDC_HEADERS): New symbols,
defined if _LIBC or if <config.h> defines them.
<ansidecl.h>, "../locale/localeinfo.h": Include only if _LIBC.
<sys/types.h>: New include; some hosts require it for `time_t'.
<ctype.h>: Include only if HAVE_MBLEN (since it's only needed then).
<limits.h>: Include only if HAVE_LIMITS_H.
<stddef.h, stdlib.h, string.h>: Include only if STDC_HEADERS.
(memcpy): Define in terms of bcopy if !STDC_HEADERS.
(__P, PTR): Define if not already defined.
(__tzname, __daylight, __timezone): Remove macros; no longer needed.
(add, strftime): Don't use NULL, for portability to some weird hosts.
(fmt): If !_LIBC, don't assume sprintf returns a count.
(week, strftime): Use old-style function declarations.
(weekday_name, month_name): New constants.
(strftime): Use traditional C values if locale support isn't available.
Use `const' instead of CONST. For time zones, use tm_zone if
possible, then fall back on tzname. Don't check for multibyte
characters unless mblen is supported. Use formats like %02d instead
of %.2d, for portability to older hosts.
Wed Jan 24 00:07:52 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* stdio-common/vfscanf.c (GROUP, MALLOC): New flag macros.
(__vfscanf): Eliminate flag vars that were redundant with FLAGS bits.
Fix bug in recognition of %ll flag for long long.
Fix overeager checks for conflicting type modifiers.
With ' flag, match thousands separators for decimal numbers.
Tue Jan 23 22:02:40 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* locale/Makefile (CFLAGS-locfile-lex.c): New variable.
* resolv/Makefile (CFLAGS): Disable some warnings.
* sysdeps/generic/Makefile (elided-routines): Removed hypot.
(+gccwarn): Set with override.
* stdio-common/Makefile (CFLAGS-tst-printf.c): New variable.
* posix/Makefile (CFLAGS-regex.c): New variable.
* malloc/Makefile (CFLAGS-obstack.c): New variable.
* io/Makefile (CFLAGS-fts.c): New variable.
* io/fts.c (fts_open): Use prototypes for COMPAR decl.
Tue Jan 23 21:35:32 1996 Miles Bader <miles@gnu.ai.mit.edu>
* sysdeps/mach/hurd/bind.c (bind): Ensure NAME for the AF_LOCAL
case is '\0'-terminated.
Tue Jan 23 19:49:54 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* elf/rtld.c (dl_main): Support additional args in --list mode for
debugging: look them up as symbol names and print values.
* misc/getttyent.c (skip, value): Declare with prototypes in file
scope.
* csu/initfini.c (_init): Explicitly set a variable that is
pointer to volatile with the address of __gmon_start__, to avoid
the test being optimized out.
1996-01-24 06:03:37 +00:00
|
|
|
|
Update.
1997-11-18 02:31 Ulrich Drepper <drepper@cygnus.com>
* iconv/Makefile: New file.
* iconv/gconv.c: New file.
* iconv/gconv.h: New file.
* iconv/gconv_builtin.c: New file.
* iconv/gconv_builtin.h: New file.
* iconv/gconv_close.c: New file.
* iconv/gconv_conf.c: New file.
* iconv/gconv_db.c: New file.
* iconv/gconv_dl.c: New file.
* iconv/gconv_open.c: New file.
* iconv/gconv_simple.c: New file.
* iconv/iconv.c: New file.
* iconv/iconv.h: New file.
* iconv/iconv_close.c: New file.
* iconv/iconv_open.c: New file.
* include/gconv.h: New file.
* Makeconfig: Define gconvdir.
* Makefile (subdirs): Add iconv.
* string/bits/string2.h: Add optimization for strtok_r.
* sysdeps/generic/_G_config.h: Define __need_NULL to get definition
for NULL.
Reported by H.J. Lu <hjl@gnu.ai.mit.edu>.
* configure.in: Correct test for bash2.
* locale/Makefile (CFLAGS-charmap.c): Add -Wno-char-subscripts.
(CFLAGS-locfile.c): Likewise.
Suggested by Zack Weinberg <zack@rabi.phys.columbia.edu>.
* misc/hsearch_r.c (hsearch_r): Avoid undefinitely search for
non-existing entry if the table is full.
* posix/regex.h: Pretty print.
* stdio-common/printf_fp.c: Don't define NDEBUG if already defined.
* sysdeps/posix/ctermid.c: Simplify a bit.
* sysdeps/unix/sysv/linux/net/if.h: Pretty print.
1997-11-17 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/sys/quota.h: Add include for
<sys/types.h> instead of <asm/types.h>.
1997-11-16 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* math/libm-test.c (asin_test): Add epsilon for asin (0.5).
1997-11-16 17:09 H.J. Lu <hjl@gnu.ai.mit.edu>
* libc.map (_IO_stdin_, _IO_stdout_, _IO_stderr_, _IO_fopen,
fopen, freopen, _IO_fclose, fclose): Added to GLIBC_2.0.
(_IO_stdin_, _IO_stdout_, _IO_stderr_): Removed from GLIBC_2.1.
(_IO_2_1_stdin_, _IO_2_1_stdout_, _IO_2_1_stderr_, _IO_fclose,
fclose): Added to GLIBC_2.1.
* libio/Makefile (routines, shared-only-routines): Add
oldiofclose. Remove oldfreopen.
* libio/freopen.c (freopen): When PIC is defined, call
_IO_old_freopen () for old stdio.
* libio/iofclose.c (_IO_new_fclose): Renamed from _IO_fclose.
(_IO_fclose, fclose): Use _IO_new_fclose as default version
for GLIBC_2.1.
* libio/iolibio.h (_IO_old_freopen): Use _IO_old_file_close_it
instead of _IO_file_close_it.
* libio/libio.h (_IO_stdin_, _IO_stdout_, _IO_stderr_): Changed
to _IO_2_1_stdxxx_.
(_IO_stdin, _IO_stdout, _IO_stderr): Declare as extern if _LIBC
* libio/libioP.h (_IO_old_do_flush): New.
* libio/oldfileops.c (_IO_old_file_close_it,
_IO_old_file_finish, _IO_old_file_overflow, _IO_old_file_sync):
Call _IO_old_do_flush () instead of _IO_do_flush ().
(_IO_old_file_xsputn): Call _IO_old_do_write () instead of
_IO_do_write ().
* libio/oldiofopen.c (_IO_old_fopen): Call _IO_old_file_init ()
instead of _IO_file_init ().
Bind old symbols to version GLIBC_2.0.
* libio/oldstdfiles.c (DEF_STDFILE): Don't use symbol_version.
(_IO_old_stdin_, _IO_old_stdout_, _IO_old_stderr_): Changed to
_IO_stdxxx_.
(_IO_check_libio): New function in .init.
* libio/oldiofclose.c: New file.
* libio/stdfiles.c (_IO_new_stdin_, _IO_new_stdout_,
_IO_new_stderr_): Changed to _IO_2_1_stdxxx_.
(DEF_STDFILE): Don't use default_symbol_version.
* libio/stdio.c (stdin, stdout, stderr): Set to
_IO_2_1_stdxxx_._
(_IO_stdin, _IO_stdout, _IO_stderr): New, strong alias of
stdxxx.
* csu/Makefile (distribute): Add init.c.
(extra-objs): Add init.o for ELF.
(start-installed-name): Add $(objpfx)init.o.
* csu/init.c: New file.
1997-11-12 08:02 H.J. Lu <hjl@gnu.ai.mit.edu>
* elf/dl-lookup.c (do_lookup): Don't use the hidden base
definition as the default.
1997-08-27 Klaus Espenlaub <kespenla@hydra.informatik.uni-ulm.de>
* erand48_r.c (__erand48_r): Implement for 32 bit short int.
1997-11-15 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* elf/genrtldtbl.awk: Replace gensub for compatibility with gawk2
(PR 351).
1997-11-16 21:01 Philip Blundell <Philip.Blundell@pobox.com>
* sysdeps/arm/sysdep.h: Use __APCS_32__ to decide whether or not
to preserve condition codes on function call.
1997-11-13 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/generic/s_exp2l.c: Change exp2l to __ieee754_exp2l.
1997-11-14 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* math/libm-test.c (asin_test): Add epsilon for float.
(tan_test): Add epsilon for float.
(log1p_test): Add epsilon for float.
(inverse_functions): Add epsilons.
* sysdeps/unix/sysv/linux/Makefile (sysdep_headers) [socket]: Add
net/if_packet.h.
* sysdeps/unix/sysv/linux/Dist: Add net/if_packet.h.
1997-11-10 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* md5-crypt/Makefile (extra-objs): Make recursively expanded
variable, since $(object-suffixes) is not defined yet.
1997-11-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* db2/Makefile (distribute): db185/db185_int.src ->
db185/db185_int.h.
1997-11-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* misc/tst-fdset.c: Don't require the value of FD_ISSET to be
exactly one.
1997-11-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* sysdeps/generic/e_acoshl.c: Fix stub_warning: use the user level
* sysdeps/generic/e_acosl.c: Likewise.
* sysdeps/generic/e_asinl.c: Likewise.
* sysdeps/generic/e_atan2l.c: Likewise.
* sysdeps/generic/e_expl.c: Likewise.
* sysdeps/generic/e_fmodl.c: Likewise.
* sysdeps/generic/e_j0l.c: Likewise.
* sysdeps/generic/e_j1l.c: Likewise.
* sysdeps/generic/e_jnl.c: Likewise.
* sysdeps/generic/e_lgammal_r.c: Likewise.
* sysdeps/generic/e_log10l.c: Likewise.
* sysdeps/generic/e_logl.c: Likewise.
* sysdeps/generic/e_powl.c: Likewise.
* sysdeps/generic/e_sqrtl.c: Likewise.
* sysdeps/generic/e_exp2l.c: Likewise.
1997-11-11 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Make-dist (+sysdep-names): Remove extra paren.
* Makefile (distribute): Add stub-tag.h.
* elf/Makefile (distribute): Add atomicity.h.
* stdlib/Makefile (headers): Add ucontext.h and sys/ucontext.h.
* sysdeps/unix/sysv/linux/Makefile (sysdep_headers)
[$(subdir)=socket]: Add net/if_packet.h.
* sysdeps/alpha/Dist: Remove setjmp_aux.c.
* sysdeps/unix/sysv/linux/Dist: Add s_pread64.c, s_pwrite64.c,
net/if_packet.h, scsi/sg.h.
1997-11-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* Makefile (install): Quote $(CC) expansion.
1997-11-14 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/unix/sysv/linux/getcwd.c (__getcwd): Added caching of
working /proc cwd and no restrictions on path length. Following
some ideas from Andi Kleen <ak@muc.de> (PR 350).
1997-11-14 19:14 Thorsten Kukuk <kukuk@vt.uni-paderborn.de>
* nis/nss_compat/compat-grp.c: Remove buggy assert call.
1997-11-14 22:23 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/libm-i387/s_fdim.S: New file.
* sysdeps/libm-i387/s_fdimf.S: New file.
* sysdeps/libm-i387/s_fdiml.S: New file.
* sysdeps/libm-i387/i686/s_fdim.S: New file.
* sysdeps/libm-i387/i686/s_fdimf.S: New file.
* sysdeps/libm-i387/i686/s_fdiml.S: New file.
1997-11-12 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
* string/bits/string2.h (strstr): Avoid warning if HAYSTACK is a
pointer to unsigned char.
1997-11-13 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/libm-ieee754/s_llrintf.c (__llrintf): Fix function.
* sysdeps/libm-ieee754/s_lrintf.c (__lrintf): Fix function.
* sysdeps/libm-ieee754/s_lrint.c (__lrint): Fix function.
1997-11-12 Andreas Jaeger <aj@arthur.rhein-neckar.de>
* sysdeps/libm-ieee754/s_ilogbf.c: Correct return values for
ilogb(0/NaN).
* sysdeps/libm-ieee754/s_ilogbl.c: Likewise.
* sysdeps/libm-ieee754/s_ilogb.c: Likewise.
1997-11-14 05:44 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/libm-i387/s_fmin.S: New file.
* sysdeps/libm-i387/s_fminf.S: New file.
* sysdeps/libm-i387/s_fminl.S: New file.
* sysdeps/libm-i387/s_fmax.S: New file.
* sysdeps/libm-i387/s_fmaxf.S: New file.
* sysdeps/libm-i387/s_fmaxl.S: New file.
* sysdeps/libm-i387/i686/s_fmin.S: New file.
* sysdeps/libm-i387/i686/s_fminf.S: New file.
* sysdeps/libm-i387/i686/s_fminl.S: New file.
* sysdeps/libm-i387/i686/s_fmax.S: New file.
* sysdeps/libm-i387/i686/s_fmaxf.S: New file.
* sysdeps/libm-i387/i686/s_fmaxl.S: New file.
1997-11-14 03:06 Ulrich Drepper <drepper@cygnus.com>
* sysdeps/unix/sysv/linux/accept.S: Add __libc_accept as alias.
* sysdeps/unix/sysv/linux/send.S: Likewise.
* sysdeps/unix/sysv/linux/recv.S: Likewise.
* sysdeps/unix/sysv/linux/connect.S: Likewise.
Reported by Christopher Wiles <wileyc@ai.cs.fujitsu.co.jp>.
See ChangeLog.7 for earlier changes.
1997-11-18 02:50:07 +00:00
|
|
|
CFLAGS-charmap.c = -Wno-write-strings -Wno-char-subscripts
|
|
|
|
CFLAGS-locfile.c = -Wno-write-strings -Wno-char-subscripts
|
2000-10-01 19:15:29 +00:00
|
|
|
CFLAGS-charmap-dir.c = -Wno-write-strings
|
1996-12-11 01:40:39 +00:00
|
|
|
|
2014-11-24 09:33:45 +00:00
|
|
|
# Set libof-* for each routine.
|
2014-11-19 06:43:54 +00:00
|
|
|
cpp-srcs-left := $(localedef-modules) $(localedef-aux) $(locale-modules) \
|
|
|
|
$(lib-modules)
|
2011-08-14 23:08:37 +00:00
|
|
|
lib := locale-programs
|
Rename cppflags-iterator.mk to libof-iterator.mk, remove extra-modules.mk.
cppflags-iterator.mk no longer has anything to do with CPPFLAGS; all
it does is set libof-$(foo) for a list of files. extra-modules.mk
does the same thing, but with a different input variable, and doesn't
let the caller control the module. Therefore, this patch gives
cppflags-iterator.mk a better name, removes extra-modules.mk, and
updates all uses of both.
* extra-modules.mk: Delete file.
* cppflags-iterator.mk: Rename to ...
* libof-iterator.mk: ...this. Adjust comments.
* Makerules, extra-lib.mk, benchtests/Makefile, elf/Makefile
* elf/rtld-Rules, iconv/Makefile, locale/Makefile, malloc/Makefile
* nscd/Makefile, sunrpc/Makefile, sysdeps/s390/Makefile:
Use libof-iterator.mk instead of cppflags-iterator.mk or
extra-modules.mk.
* benchtests/strcoll-inputs/filelist#en_US.UTF-8: Remove
extra-modules.mk and cppflags-iterator.mk, add libof-iterator.mk.
2017-05-08 19:52:26 +00:00
|
|
|
include $(patsubst %,$(..)libof-iterator.mk,$(cpp-srcs-left))
|