2004-01-09 Bruno Haible <bruno@clisp.org>
* intl/gmo.h (MO_REVISION_NUMBER_WITH_SYSDEP_I): New definition.
* intl/loadmsgcat.c (get_sysdep_segment_value): Handle "I".
(_nl_load_domain): Treat major revision 1 like major revision 0.
2004-01-11 Bruno Haible <bruno@clisp.org>
* stdio-common/vfprintf.c (vfprintf): Disallow the 'I' flag after
width or precision has been seen.
2004-01-08 Bruno Haible <bruno@clisp.org>
* intl/loadmsgcat.c (_nl_load_domain): When a string pair uses a system
dependent segment not known to this version of the library, ignore
the string pair instead of crashing.
2003-09-16 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/Dist: Remove internal_statvfs.c.
* sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
Add internal_statvfs.
* sysdeps/unix/sysv/linux/fstatvfs.c: Call __internal_statvfs
instead of including "internal_statvfs.c".
* sysdeps/unix/sysv/linux/statvfs.c: Likewise.
* sysdeps/unix/sysv/linux/internal_statvfs.c: Make it a real function.
Add code to avoid the stat calls on all the reported mount points
when we can determine mismatch in advance.
* sysdeps/unix/sysv/linux/linux_fsinfo.h: Add AUTOFS_SUPER_MAGIC and
USBDEVFS_SUPER_MAGIC.
2003-09-16 Jakub Jelinek <jakub@redhat.com>
* posix/Versions (sched_getaffinity, sched_setaffinity): Change
from GLIBC_2.3.2 to GLIBC_2.3.3 symbol version.
2003-09-16 Bruno Haible <bruno@clisp.org>
* intl/tst-gettext2.sh: Set GCONV_PATH and LOCPATH only after
invoking msgfmt, not before.
2003-06-18 Ulrich Drepper <drepper@redhat.com>
* intl/localealias.c (read_alias_file): Determine whether line is
read incompletely early, before we modify the line.
2002-04-30 Bruno Haible <bruno@clisp.org>
* intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
the encoding if it already has slashes.
Reported by Perry Rapp <prapp@erols.com>.
* intl/tst-gettext.c (main): Check return values from setlocale.
Add necessary unsetenv's to make LANG=existing-locale check work.
* intl/tst-gettext.sh: Use mkdir -p. Copy test files unconditionally,
so aborted prior runs don't confuse things.
* locale/localeinfo.h (struct locale_data: union locale_data_value):
Use uintptr_t instead of unsigned int for `word' member.
(_NL_CURRENT_WORD): Cast to uint32_t.
* posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
value.
2002-08-27 Ulrich Drepper <drepper@redhat.com>
* sysdeps/arm/Dist: Add bits/link.h.
* sunrpc/Makefile: Distribute thrsvc.
* stdio-common/Makefile: Remove more left-overs from old stdio.
* include/linewrap.h: Removed.
* libio/bug-mmap-fflush.c: Rewrite to not touch source directory.
* intl/Makefile (distribute): Add plural-eval.c.
* stdio-common/Makefile (headers): Remove bits/stdio_lim.h. This
file isn't distributed. Add special rules to install bits/stdio_lim.h.
* Make-dist: Remove traces of old stdio.
* Makeconfig: Likewise.
* locale/Makefile (localedef-aux): New variable. Only md5
assigned to it. These files are not ddistributed in this directory.
* sysdeps/unix/sysv/linux/s390/Dist: Add sys/procfs.h.
* sysdeps/unix/sysv/linux/s390/s390-64/Dist: Remove sys/procfs.h.
* sysdeps/unix/sysv/linux/s390/s390-32/Dist: Likewise.
* sysdeps/unix/sysv/linux/Dist: Remove sys/sendfile.h.
2002-08-04 Ulrich Drepper <drepper@redhat.com>
* stdio-common/psignal.c: Declare _sys_siglist_internal. Use USEINT
to access _sys_siglist.
* string/strsignal.c: Likewise.
* sysdeps/generic/siglist.c: Add _sys_siglist_internal alias.
* sysdeps/gnu/siglist.c: Likewise.
* sysdeps/unix/siglist.c: Likewise.
* sysdeps/unix/sysv/linux/arm/siglist.c: Likewise.
* libio/fileops.c: Add missing INTUSEs for _IO_file_jumps.
* libio/wfileops.c: Add missing INTUSE for _IO_file_close.
* intl/dcigettext.c: Define _nl_default_dirname_internal as hidden
alias and use it.
* intl/bindtextdom.c: Use _nl_default_dirname_internal.
* include/netinet/in.h: Add declaration of in6addr_loopback_internal.
* inet/in6_addr.c: Add INTVARDEF for in6addr_loopback.
* sysdeps/posix/getaddrinfo.c: Use INTUSE for in6addr_loopback access.
* include/time.h: Add libc_hidden_proto for __gmtime_r.
* time/gmtime.c (__gmtime_r): Add libc_hidden_def.
* iconv/Versions: Replace __gconv_alias_db, __gconv_modules_db,
and __gconv_cache with __gconv_get_alias_db, __gconv_get_modules_db,
and __gconv_get_cache respectively.
* iconv/gconv_cache.c (gconv_cache): Renamed for __gconv_cache and
defined static. Change all users.
(__gconv_get_cache): New function.
* iconv/gconv_db.c (__gconv_get_modules_db): New function.
(__gconv_get_alias_db): New function.
* iconv/gconv_int.h (__gconv_alias_db): Declare as hidden.
(__conv_modules_db): Likewise.
Add prototypes for __gconv_get_cache, __gconv_get_modules_db,
and __gconv_get_alias_db.
* iconv/iconv_prog.c: Use the new functions instead of accessing the
variables.
* include/stdlib.h: Add prototype and libc_hidden_proto for
__default_morecore.
* sysdeps/generic/morecore.c: Include <stdlib.h>.
* malloc/obstack.c: Remove fputs macro.
* malloc/mtrace.c: Remove fopen macro.
* 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.
[USE_TLS && HAVE___THREAD]: Just include the sysdeps/generic file,
which does the right thing when __thread support is available.
* descr.h (struct _pthread_descr_struct) [USE_TLS && HAVE___THREAD]:
Omit `p_libc_specific', `p_errnop', `p_errno', `p_h_errnop',
`p_h_errno', `p_resp', and `p_res' members.
* pthread.c (__pthread_initialize_minimal) [USE_TLS && HAVE___THREAD]:
Don't initialize `p_errnop' and `p_h_errnop' members.
(__pthread_reset_main_thread): Likewise.
(__pthread_initialize_manager): Likewise.
* manager.c (__pthread_manager, pthread_handle_create): Likewise.
* pthread.c (pthread_initialize) [USE_TLS && HAVE___THREAD]:
Don't initialize `p_resp' member.
(__pthread_reset_main_thread): Likewise.
* manager.c (pthread_handle_create): Likewise.
* specific.c (libc_internal_tsd_set, libc_internal_tsd_get):
Conditionalize these on [!(USE_TLS && HAVE___THREAD)].
* errno.c [USE_TLS && HAVE___THREAD]
(__h_errno_location, __res_state): Don't define these at all.
* sysdeps/i386/tls.h (INSTALL_DTV): Add parens around arguments!
(INSTALL_NEW_DTV, GET_DTV): Likewise.
* sysdeps/sh/tls.h (INSTALL_DTV, INSTALL_NEW_DTV, GET_DTV): Likewise.
* weaks.c: Don't include <errno.h> here.
2002-08-01 Roland McGrath <roland@redhat.com>
* sysdeps/i386/tls.h (TLS_DO_MODIFY_LDT): New macro, broken out of
TLS_INIT_TP.
(TLS_DO_SET_THREAD_AREA): New macro, uses thread_set_area syscall.
(TLS_SETUP_GS_SEGMENT): New macro, try one or the other or both.
(TLS_INIT_TP): Use that.
2002-07-15 Alexandre Oliva <aoliva@redhat.com>
* configure.in (static_nss): Set to `yes' if --disable-shared.
2002-07-23 Bruno Haible <bruno@clisp.org>
* intl/loadmsgcat.c (PRI*): Redefine the macros if PRI_MACROS_BROKEN
is set.
2002-07-25 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/ia64/sigcontextinfo.h: New file.
* sysdeps/unix/sysv/linux/ia64/profil-counter.h: Fix profil_counter
arguments.
2002-07-25 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/alpha/adjtime.c (__adjtimex_internal): Add
alias.
2002-07-21 Bruno Haible <bruno@clisp.org>
* intl/libintl.h (__GNU_GETTEXT_SUPPORTED_REVISION): New macro.
* intl/gettext.h (struct mo_file_header): New fields n_sysdep_segments,
sysdep_segments_offset, n_sysdep_strings, orig_sysdep_tab_offset,
trans_sysdep_tab_offset.
(struct sysdep_segment): New type.
(struct sysdep_string): New type.
(SEGMENTS_END): New macro.
* intl/gettextP.h (struct sysdep_string_desc): New type.
(struct loaded_domain): New fields malloced, n_sysdep_strings,
orig_sysdep_tab, trans_sysdep_tab, must_swap_hash_tab. Make fields
orig_tab, trans_tab, hash_tab to const pointers because they point
into read-only memory.
* intl/loadmsgcat.c: Include stdint.h, inttypes.h, hash-string.h.
(PRI*): Define fallback values.
(get_sysdep_segment_value): New function.
(_nl_load_domain): Distinguish major and minor revision parts. Add
support for minor revision 1 with system dependent strings.
(_nl_unload_domain): Also free the 'malloced' field.
* intl/dcigettext.c (_nl_find_msg): Remove test for domain->hash_size,
now done in loadmsgcat.c. Add support for system dependent strings.
* sysdeps/mach/hurd/chown.c: Use INTDEF for __chown.
* sysdeps/unix/sysv/aix/chown.c: Likewise.
* sysdeps/unix/grantpt.c: Use INTUSE for __chown calls.
* sysdeps/unix/sysv/linux/m68k/chown.c: Likewise.
* sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise.
* sysdeps/unix/sysv/linux/i386/chown.c: Use INTDEF2 to define
__chown_internal.
* sysdeps/unix/sysv/linux/s390/s390-32//chown.c: Likewise.
* intl/dcngettext.c [_LIBC]: Use INTUSE for __dcngettext.
* intl/dngettext.c [_LIBC] (DCNGETTEXT): Use INTUSE.
* intl/ngettext.c: Likewise.
* include/sys/socket.h: Declare __connect_internal and define
__connect macro if not NOT_IN_libc.
* sysdeps/mach/hurd/connect.c: Use INTDEF for __connect.
* sysdeps/unix/sysv/aix/connect.c: Likewise.
* sysdeps/unix/sysv/linux/connect.S: Add __connect_internal alias.
* include/unistd.h: Declare __close_internal and define __close macro
if not NOT_IN_libc.
* libio/libioP.h (JUMO0, JUMP1, JUMP2, JUMP3, WJUMP0, WJUMP1, WJUMP2,
WJUMP3): Add extra parenthesis to avoid expanding element names with
macors like __close.
* sysdeps/unix/syscalls.list: Add __close_internal alias.
* include/unistd.h: Declare __dup2_internal and define __dup2 macro
if not NOT_IN_libc.
* sysdeps/mach/hurd/dup2.c: Use INTDEF for __dup2.
* sysdeps/posix/dup2.c: Use INTDEF for __dup2.
* sysdeps/unix/syscalls.list: Add __dup2_internal alias.
* include/unistd.h: Declare __fork_internal and define __fork macro
if not NOT_IN_libc.
* sysdeps/mach/hurd/fork.c: Use INTDEF for __fork.
* sysdeps/unix/sysv/aix/fork.c: Likewise.
* sysdeps/unix/sysv/linux/syscalls.list: Add __fork_internal alias.
* include/stdio_ext.h: Declare __fsetlocking_internal and define
__fsetlocking macro to use it if not NOT_IN_libc.
* libio/__fsetlocking.c: Use INTDEF for __fsetlocking.
* libio/__fbufsize.c: Correct copyright.
* libio/__flbf.c: Likewise.
* libio/__fpending.c: Likewise.
* libio/__fpurge.c: Likewise.
* libio/__freadable.c: Likewise.
* libio/__freading.c: Likewise.
* libio/__fsetlocking.c: Likewise.
* libio/__fwritable.c: Likewise.
* libio/__fwriting.c: Likewise.
* include/stdio.h: Declare __asprintf_internal and define __asprintf
macro to use it if not NOT_IN_libc.
* stdio-common/asprintf.c: Use INTDEF for __asprintf.
* include/mntent.h: Declare __setmntent_internal,
__getmntent_r_internal, __endmntent_internal. Define __setmntent,
__getmntent_r, and __endmntent macros to use these functions if not
NOT_IN_libc.
* misc/mntent_r.c: Use INTDEF for __setmntent, __getmntent_r, and
__endmntent.
* include/math.h: Declare __finite_internal, __finitef_internal, and
__finitel_internal. Redefine isfinite macro if in libc or libm using
these functions.
* sysdeps/generic/s_ldexp.c: Use INTUSE for __finite calls.
* sysdeps/generic/s_ldexpf.c: Use INTUSE for __finitef calls.
* sysdeps/generic/s_ldexpl.c: Use INTUSE for __finitel calls.
* sysdeps/i386/fpu/s_finite.S: Define _internal alias.
* sysdeps/i386/fpu/s_finitef.S: Likewise.
* sysdeps/i386/fpu/s_finitel.S: Likewise.
* sysdeps/ieee754/dbl-64/s_finite.c: Likewise.
* sysdeps/ieee754/flt-32/s_finitef.c: Likewise.
* sysdeps/ieee754/ldbl-128/s_finitel.c: Likewise.
* sysdeps/ieee754/ldbl-96/s_finitel.c: Likewise.
* include/fcntl.h: Declare __fcntl_internal. Define __fcntl macro
to use this function if not NOT_IN_libc.
* libio/iofdopen.c (_IO_fcntl): Use INTUSE.
* sysdeps/generic/fcntl.c: Use INTDEF for __fcntl.
* sysdeps/mach/hurd/fcntl.c: Likewise.
* sysdeps/unix/sysv/aix/fcntl.c: Likewise.
* sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
* include/argz.h: Declare __argz_count_internal and
__argz_stringify_internal.
* intl/l10nflist.c [_LIBC]: Use INTUSE for __argz_count and
__argz_stringify.
* string/argz-count.c: Use INTDEF for __argz_count.
* string/argz-stringify.c: Use INTDEF for __argz_stringify.
* include/stdlib.h: Declare __cxa_atexit_internal and define
__cxa_atexit macro if not NOT_IN_libc.
* stdlib/cxa_atexit.c: Use INTDEF for __cxa_atexit.
* dlfcn/Makefile: Define NOT_IN_libc when compiling modcxaatexit.c.
* assert/assert.c: Use INTDEF for __assert_fail.
* assert/__assert.c: Use INTUSE for call to __assert_fail.
* include/assert.h: Declare __assert_fail_internal.
2002-04-08 Ulrich Drepper <drepper@redhat.com>
* Makeconfig (CPPFLAGS): Also add CPPFLAGS-<basename> where <basename>
is the name of the source file without extension.
* Makefile (distribute): Add cppflags-iterator.mk.
* cppflags-iterator.mk: New file.
* extra-lib.mk: For the sources of the library run
cppflags-iterator.mk.
* include/libintl.h: Declare __dcgettext_internal and
_libc_intl_domainname_internal. Define __dcgettext using these
two symbols if used in libc itself.
* argp/argp-help.c: Define dgettext using __dcgettext_internal and
_libc_intl_domainname_internal.
* argp/argp-parse.c: Likewise.
* intl/dcgettext.c (__dcgettext): Use INTDEF to define alias.
* intl/dgettext.c: Call __dcgettext_internal instead of __dcgettext.
* intl/gettext.c: Likewise.
* locale/SYS_libc.c (_libc_intl_domainname): Use INTDEF to define
alias.
* posix/regcomp.c (gettext): Use __dcgettext_internal instead of
__dcgettext.
* posix/regex_internal.c (gettext): Likewise.
* intl/tst-gettext.sh: Set GCONV_PATH and LOCPATH to values for the
test just before the test runs.
* intl/tst-translit.sh: Likewise.
* intl/tst-codeset.sh: Likewise.
2001-07-22 Bruno Haible <haible@clisp.cons.org>
* intl/libintl.h (ngettext, dngettext, dcngettext): Use both msgid1
and msgid2 for printf format argument checking.
2001-07-01 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/dl-sysdep.c (frob_brk): Remove duplicate
sbrk. Closes PR libc/2312.
2001-07-01 Andreas Jaeger <aj@suse.de>
* sysdeps/generic/segfault.c (install_handler): Handle case that
the output file does not exists. Closes PR libc/2345.
2001-07-11 Ulrich Drepper <drepper@redhat.com>
* intl/locale.alias: Use he language code for hebrew, not il
[PR libc/2382].
2001-07-11 Jakub Jelinek <jakub@redhat.com>
* iconv/gconv_int.h: Fix comment typo.
* hurd/hurdsig.c (_hurdsig_init): Remove a useless line of code.
backwards conditional in test for x == 1.0.
2001-07-06 Paul Eggert <eggert@twinsun.com>
* manual/argp.texi: Remove ignored LGPL copyright notice; it's
not appropriate for documentation anyway.
* manual/libc-texinfo.sh: "Library General Public License" ->
"Lesser General Public License".
2001-07-06 Andreas Jaeger <aj@suse.de>
* All files under GPL/LGPL version 2: Place under LGPL version
2.1.
2001-04-05 David S. Miller <davem@redhat.com>
Add hp-timing support for sparcv9/sparc64 targets.
* sysdeps/sparc/sparc32/sparcv9/hp-timing.c: New file
* sysdeps/sparc/sparc32/sparcv9/hp-timing.h: New file
* sysdeps/sparc/sparc64/hp-timing.c: New file
* sysdeps/sparc/sparc64/hp-timing.h: New file
* sysdeps/sparc/sparc32/sparcv9/Makefile: Build hp-timing.
* sysdeps/sparc/sparc64/Makefile: Likewise.
2001-04-09 Jakub Jelinek <jakub@redhat.com>
* sysdeps/generic/fd_to_filename.h: New file.
* sysdeps/unix/sysv/linux/fd_to_filename.h: New file.
* libio/freopen.c (freopen): If FILENAME is NULL, try to get
filename from the open file descriptor.
* libio/freopen64.c (freopen64): Likewise.
2001-04-09 Bruno Haible <haible@clisp.cons.org>
* misc/error.c (error): fflush stdout also if
error_print_progname != NULL.
(error_at_line): Likewise.
2001-04-07 Bruno Haible <haible@clisp.cons.org>
* intl/gettextP.h (struct loaded_domain): Add codeset_cntr field.
(struct binding): Add codeset_cntr field.
(_nl_load_domain): Add domainbinding argument.
(_nl_init_domain_conv, _nl_free_domain_conv): New declarations.
(_nl_find_msg): New declaration, moved here from loadinfo.h.
* intl/loadinfo.h (struct loaded_l10nfile): Remove domainbinding field.
(_nl_make_l10nflist): Remove domainbinding argument.
(_nl_find_msg): Move declaration to gettextP.h.
* intl/bindtextdom.c (set_binding_values): Initialize ->codeset_cntr
to 0. Increment it when ->codeset is changed.
* intl/dcigettext.c (DCIGETTEXT): Pass binding to _nl_find_msg.
(_nl_find_msg): Add domainbinding argument. Reinitialize the converter
if domainbinding->codeset_cntr has been incremented.
* intl/finddomain.c (_nl_find_domain): Don't pass domainbinding to
_nl_make_l10nflist(). Pass it to _nl_load_domain() instead.
* intl/l10nflist.c (_nl_make_l10nflist): Remove domainbinding argument.
* intl/loadmsgcat.c (_nl_init_domain_conv): New function, extracted
from _nl_load_domain. Append //TRANSLIT also when using libiconv.
(_nl_free_domain_conv): New function, extracted from _nl_unload_domain.
(_nl_load_domain): Add domainbinding argument. Call
_nl_init_domain_conv.
(_nl_unload_domain): Call _nl_free_domain_conv.
* intl/Makefile (distribute): Add tst-codeset.sh, tstcodeset.po.
(test-srcs): Add tst-codeset.
(tests): Depend on tst-codeset.out.
(tst-codeset.out): New rule.
(CFLAGS-tst-codeset.c): New variable.
* intl/tst-codeset.sh: New file.
* intl/tstcodeset.po: New file.
* intl/tst-codeset.c: New file.
* locale/findlocale.c (_nl_find_locale): Update _nl_make_l10nflist
calls.
2001-03-17 Bruno Haible <haible@clisp.cons.org>
* intl/loadmsgcat.c (_nl_load_domain) [!_LIBC]: Use fstat, not fstat64.
2001-03-17 Bruno Haible <haible@clisp.cons.org>
* intl/gettextP.h (struct expression): Add operators lnot, less_than,
greater_than, less_or_equal, greater_or_equal. Replace args2/args3
union by a 'nargs' counter and an 'args[]' array.
* intl/plural.y: Don't include stdarg.h.
(new_exp): Take an array of arguments instead of varargs.
(new_exp_0, new_exp_1, new_exp_2, new_exp_3): New functions.
('?' ':'): Make right-associative.
(EQUOP2): New token, replaces '=' and '!'.
(CMPOP2): New token.
(ADDOP2): New token, replaces '+' and '-'.
(MULOP2): New token, replaces '*', '/' and '%'.
('!'): New token.
(exp): Add rules for CMPOP2 and '!'. Don't call YYABORT.
(start): Call YYABORT here.
(FREE_EXPRESSION): Update.
(yylex): Don't skip "\\n". Recognize comparison and '!' operators.
Update for new token symbols.
* intl/loadmsgcat.c (plvar, plone, germanic_plural,
init_germanic_plural): Update.
* intl/dcigettext.c (_nl_find_msg): Optimize for space.
(plural_eval): Recognize comparison and '!' operators. Optimize for
space.
2001-03-10 Bruno Haible <haible@clisp.cons.org>
* intl/loadmsgcat.c (_nl_load_domain): locale_charset() doesn't return
NULL any more.
2001-01-05 Bruno Haible <haible@clisp.cons.org>
* intl/loadmsgcat.c: Include headers needed for alloca().
(freea): New macro.
(_nl_load_domain): Add fallback code for platforms lacking alloca.
* intl/localealias.c: (ADD_BLOCK, FREE_BLOCK): Remove macros.
(freea): New macro.
(read_alias_file): Simplify fallback code for platforms lacking
alloca.
2001-01-07 Bruno Haible <haible@clisp.cons.org>
* intl/gettextP.h (__gettextdebug): Remove declaration.
(__gettext_free_exp, __gettextparse): Convert prototype to K&R C
syntax.
(gettext_free_exp__, gettextparse__): New non-libc declarations.
* intl/plural.y [!_LIBC]: Define gettextparse__, gettext_free_exp__,
not __gettextparse, __gettext_free_exp.
* intl/loadmsgcat.c [!_LIBC]: Use gettextparse__, not __gettextparse.
2001-02-24 Bruno Haible <haible@clisp.cons.org>
* intl/dcigettext.c: Update comment about HAVE_LOCALE_NULL.
2001-01-05 Bruno Haible <haible@clisp.cons.org>
* intl/loadmsgcat.c (_nl_load_domain): Add fallback code for platforms
lacking strtoul, like SunOS4.
2001-01-05 Bruno Haible <haible@clisp.cons.org>
* intl/l10nflist.c (_nl_normalize_codeset): Use tolower, not _tolower.
2001-01-05 Bruno Haible <haible@clisp.cons.org>
* intl/bindtextdom.c (set_binding_values): Convert prototype to K&R C
syntax.
* intl/dcigettext.c (transcmp): Convert to K&R C syntax.
* intl/explodename.c (_nl_find_language): Convert to K&R C syntax.
* intl/plural.y (__gettext_free_exp, yylex, yyerror): Convert to K&R C
syntax.
2001-01-07 Bruno Haible <haible@clisp.cons.org>
* intl/gettextP.h (gettext__, dgettext__, dcgettext__, textdomain__,
bindtextdomain__, bind_textdomain_codeset__): New declarations, from
old libgettext.h.
* intl/bindtextdom.c: Include libgnuintl.h instead of libgettext.h.
* intl/dcgettext.c: Likewise.
* intl/dcigettext.c: Likewise.
* intl/dcngettext.c: Likewise.
* intl/dngettext.c: Likewise.
* intl/finddomain.c: Likewise.
* intl/ngettext.c: Likewise.
* intl/textdomain.c: Likewise.
* intl/dgettext.c: Include libgnuintl.h instead of libgettext.h.
Include gettextP.h.
* intl/gettext.c: Likewise. Don't include locale.h.
2001-03-17 Bruno Haible <haible@clisp.cons.org>
* intl/gettextP.h (ZERO): New macro.
(struct binding): Always use ZERO.
* intl/bindtextdom.c (offsetof): Provide fallback for platforms that
lack it, like SunOS4.
(set_binding_values): Use offsetof, not sizeof.
* intl/dcigettext.c (offsetof): Provide fallback for platforms that
lack it, like SunOS4.
(ZERO): Remove macro.
(struct transmem_list): Use ZERO.
(DCIGETTEXT): Use offsetof, not sizeof.
2001-03-17 Bruno Haible <haible@clisp.cons.org>
* intl/gettextP.h: Include <stddef.h>. Include gettext.h, for
nls_uint32.
* intl/bindtextdom.c: Don't include gettext.h.
* intl/dcgettext.c: Likewise.
* intl/dcigettext.c: Likewise.
* intl/dcngettext.c: Likewise.
* intl/dngettext.c: Likewise.
* intl/finddomain.c: Likewise.
* intl/localealias.c: Likewise.
* intl/ngettext.c: Likewise.
* intl/plural.y: Likewise.
* intl/textdomain.c: Likewise.
2001-03-17 Bruno Haible <haible@clisp.cons.org>
* intl/gettext.h: Don't include <stdio.h>.
2001-03-17 Bruno Haible <haible@clisp.cons.org>
* intl/Makefile (CPPFLAGS): Set LOCALEDIR instead of GNULOCALEDIR.
* intl/dcigettext.c (_nl_default_dirname): Initialize with LOCALEDIR.
2001-01-04 H.J. Lu <hjl@gnu.org>
* elf/dl-support.c (DL_FIND_AUXV): New. Defined if not defined.
(_dl_clktck): Declared.
(non_dynamic_init): Take 3 arguments.
Set _dl_pagesize, _dl_platform and _dl_clktck from AUX.
2001-01-01 Bruno Haible <haible@clisp.cons.org>
Finish implementation of plural form handling.
* intl/dcigettext.c (known_translation_t): Rename 'domain' field to
'domainname'. Remove 'plindex' field. Add 'domain' and
'translation_length' fields.
(transcmp): Don't compare 'plindex' fields.
(plural_lookup): New function.
(DCIGETTEXT): Change cache handing in the plural case. Don't call
plural_eval before the translation and its catalog file have been
found. Remove plindex from cache key. Add 'translation_length' and
'domain' to cache result.
(_nl_find_msg): Remove index argument, return length of translation
to the caller instead. Weaken comparison of string lengths, to account
for plural entries. Call iconv() on the entire result string, not
only on the portion needed so far.
* intl/loadinfo.h (_nl_find_msg): Remove index argument, add lengthp
argument.
* intl/loadmsgcat.c (_nl_load_domain): Adapt to _nl_find_msg change.
2000-07-31 Bruno Haible <haible@clisp.cons.org>
* intl/plural.y: Include config.h. Needed to define 'inline' away for
C compilers that don't support it.
(yylex): Don't use gcc specific case range syntax.
* intl/loadmsgcat.c (INIT_GERMANIC_PLURAL): New macro, for old
compilers.
2000-10-12 Bruno Haible <haible@clisp.cons.org>
* intl/finddomain.c: Remove unneeded includes.
2000-10-12 Bruno Haible <haible@clisp.cons.org>
* intl/localealias.c (memcpy): Return first argument, just like the
real memcpy function does.
* intl/bindtextdom.c (memcpy): Likewise.
* intl/finddomain.c (memcpy): Likewise.
* intl/l10nflist.c (memcpy): Likewise.
* intl/textdomain.c (memcpy): Likewise.
From Paul Eggert <eggert@twinsun.com>.
2001-01-02 Ulrich Drepper <drepper@redhat.com>
* intl/dcigettext.c (guess_category_value): Rewrite so that LANGUAGE
value is ignored if the selected locale is the C locale.
* intl/tst-gettext.c: Set locale for above change.
* intl/tst-translit.c: Likewise.
2000-11-15 Ulrich Drepper <drepper@redhat.com>
* intl/Makefile: tst-gettext2.sh does not need a third parameter.
* intl/tst-gettext2.sh: Copy locale data. Adjust LOCPATH. Verify
output of program.
* intl/tst-gettext2.c: Set C locale if setting other locale
failed. Use gettext() not _().
* locale/setlocale.c: Increment _nl_msg_cat_cntr whenever we
successfully loaded a new locale.
2000-11-13 Andreas Jaeger <aj@suse.de>
* configure.in: Require gcc 2.95 or newer.
2000-11-15 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/paths.h: Adjust for FHS.
Patch by Arkadiusz Miskiewicz <misiek@pld.ORG.PL>.
2000-11-11 Jim Meyering <meyering@lucent.com>
* string/strndup.c (strndup): Cast return value to `char *'.
2000-11-15 Jim Meyering <meyering@ascend.com>
* sysdeps/generic/memchr.c: Remove some useless parentheses.
[HAVE_STDLIB_H || defined _LIBC]: Include <stdlib.h>.
[HAVE_BP_SYM_H || defined _LIBC]: Guard inclusion of bp-sym.h.
[! (HAVE_BP_SYM_H || defined _LIBC)] (BP_SYM): Define as no-op.
Also #undef __memchr.
Use `weak_alias' only if it's defined.
2000-11-10 H.J. Lu <hjl@gnu.org>
* Makefile.in (install): Set LANGUAGE=C LC_ALL=C.
* iconvdata/TESTS: Add entries for IBM856, IBM930, IBM933, IBM935,
IBM937, IBM939, and IBM1046.
* iconvdata/testdata/IBM1046: New file.
* iconvdata/testdata/IBM930..UTF8: New file.
* iconvdata/testdata/IBM1046..UTF8: New file.
* iconvdata/testdata/IBM933: New file.
* iconvdata/testdata/IBM935: New file.
* iconvdata/testdata/IBM937: New file.
* iconvdata/testdata/IBM856..UTF8: New file.
* iconvdata/testdata/IBM939: New file.
* iconvdata/testdata/IBM933..UTF8: New file.
* iconvdata/testdata/IBM935..UTF8: New file.
* iconvdata/testdata/IBM930: New file.
* iconvdata/testdata/IBM856: New file.
* iconvdata/testdata/IBM937..UTF8: New file.
* iconvdata/testdata/IBM939..UTF8: New file.
Contributed by Masahide Washizawa <washi@yamato.ibm.co.jp>.
2000-11-01 Martin Buchholz <martin@xemacs.org>
* manual/memory.texi (Hooks for Malloc): Fix `caller' arg docs to
agree with implementation.
2000-11-01 Ulrich Drepper <drepper@redhat.com>
* posix/runtests.c (main): Don't use exit() to avoid warning with
broken compilers.
* string/bug-strncat1.c: Undefine __USE_STRING_INLINES before
defining it again to avoid warning.
* string/bug-strpbrk1.c: Likewise.
* string/bug-strspn1.c: Likewise.
2000-10-29 Bruno Haible <haible@clisp.cons.org>
* locale/C-translit.h.in: Include more rules from translit_neutral.
Remove a few German and Danish specific rules.
* locale/gen-translit.pl: Avoid an error when printing a string
containing a '%' character.
* locale/C-translit.h: Regenerated.
* intl/translit.po: Choose different translations.
* intl/tst-translit.c: Update.
2000-10-29 Bruno Haible <haible@clisp.cons.org>
* locale/programs/ld-ctype.c (translit_include_t): New type.
(locale_ctype_t): Remove translit_copy_locale, translit_copy_repertoire
fields, add translit_include field.
(ctype_read): After seeing "translit_start" in ignore_content mode,
skip the entire translit section, not only one line. Remove dead test
for tok_translit_end. Enqueue include statements into a list.
Signal error if tok_eof seen before tok_translit_end.
(translit_flatten): New function.
(allocate_arrays): Call translit_flatten.
2000-10-30 Ulrich Drepper <drepper@redhat.com>
* locale/findlocale.c (free_mem): We can remove NODELETE marked
data, just not the C locale data.
* intl/tst-gettext.c: Use setlocale() in addition to setting envvar.
* intl/tst-gettext.sh: Copy locale data if necessary.
* intl/Makefile (generated-dirs): Add localedir.
* intl/dcigettext.c (guess_category_value): For libc always use
the setlocale() method.
* intl/Makefile: Add rules to build, run and, distribute tst-gettext2.
* intl/tst-gettext2.c: New file.
* intl/tst-gettext2.sh: New file.
* intl/tstlang1.po: New file.
* intl/tstlang2.po: New file.
Patch by Andreas Jaeger <aj@suse.de>.
2000-10-26 GOTO Masanori <gotom@debian.or.jp>
* intl/locale.alias: Add ja_JP.ujis alias.
2000-10-30 Ulrich Drepper <drepper@redhat.com>
2000-10-28 Jes Sorensen <jes@linuxcare.com>
* sysdeps/unix/sysv/linux/ia64/Versions: Export ioperm, iopl, inb,
inw, inl, _inb, _inw, _inl, outb, outw, outl, _outb, _outw,
_outl. Reported by Bill Nottingham.
2000-04-06 Andreas Schwab <schwab@suse.de>
* sysdeps/ia64/dl-machine.h (TRAMPOLINE_TEMPLATE): Save and
restore register r8 for functions that return a structure.
2000-10-12 Jakub Jelinek <jakub@redhat.com>
* math/libm-test.inc (M_PI_6l, M_E2l, M_E3l, M_2_SQRT_PIl,
M_SQRT_PIl): Increase precision.
(cbrt_test): If cbrt is not implemented, don't test it.
Add L suffix to double constants in results which differ from their
L suffixed counterparts.
(exp10_test, fmod_test, frexp_test, hypot_test, sqrt_test): Likewise.
* sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
2000-10-11 Jakub Jelinek <jakub@redhat.com>
* inet/rexec.c (rexec_af): Convert rport to host order before
passing it to snprintf.
2000-10-14 Ulrich Drepper <drepper@redhat.com>
* sysdeps/gnu/netinet/tcp.h: Use u_intXX_t types instead of
uintXX_t since this is what <sys/types.h> defines and we include
this header. Reported by Bernhard Rosenkraenzer <bero@redhat.de>.
* intl/localealias.c (read_alias_file): Update string pointers
in map[] if realloc() changed the values.
Patch by Jakub Jelinek <jakub@redhat.com>.
* manual/stdio.texi: Update printf extension documentation after
z became a valid modifier.
Patch by Joseph S. Myers <jsm28@cam.ac.uk>.
* timezone/africa: Update from tzcode2000g and tzdata2000g.
* timezone/asia: Likewise.
* timezone/australasia: Likewise.
* timezone/backward: Likewise.
* timezone/europe: Likewise.
* timezone/iso3166.tab: Likewise.
* timezone/northamerica: Likewise.
* timezone/southamerica: Likewise.
* timezone/zone.tab: Likewise.
2000-09-18 Bruno Haible <haible@clisp.cons.org>
* intl/dcigettext.c: Outside libc, use local variable names that don't
clash with those in libc.
* intl/bindtextdom.c: Likewise.
* intl/textdomain.c: Likewise.
* intl/Makefile (tests): Depend in mtrace-tst-gettext.
Make this a new rule depending on tst-gettext.out and run mtrace.
* intl/tst-gettext.c: Call mtrace.
* intl/tst-gettext.sh: Put MALLOC_TRACE in environment of tst-gettext.
* elf/dl-reloc.c: Add a few more __builtin_expect.
* configure.in: Remove --with-gettext option.
* intl/dcigettext.c (free_mem): Correct freeing of
_nl_domain_bindings list.
2000-08-20 Ulrich Drepper <drepper@redhat.com>
* intl/loadmsgcat.c (_nl_unload_domain): Also free conv_tab element.
Pretty printing.
* intl/plural.y (new_exp): Take number of optional parameters in
second parameter. Test for correct number of parameters and free
correctly in case of failure. Adjust all callers.
(yylex): Allow ';' as terminator character.
2000-08-01 Mark Kettenis <kettenis@gnu.org>
* sysdeps/unix/sysv/linux/i386/sys/elf.h (elf_greg_t, ELF_NGREG,
elf_gregset_t, elf_fpregset_t, elf_fpxregset_t): Moved to
sysdeps/unix/sysv/linux/i386/sys/procfs.h.
Remove the junk that's only relevant in the Linux kernel itself.
Add a warning saying that this file is now obsolete, and include
<sys/procfs.h>.
* sysdeps/unix/sysv/linux/i386/sys/procfs.h (elf_greg_t,
ELF_NGREG, elf_gregset_t, elf_fpregset_t, elf_fpxregset_t): Moved
here from sysdeps/unix/sysv/linux/i386/sys/elf.h. Don't include
<signal.h>, <sys/ucontext.h> and <sys/elf.h>. Remove parts of
`struct elf_prstatus' that are #ifdef'ed out. Improve comments
and add the notice that the file is primarily there for GDB.
* sysdeps/unix/sysv/linux/i386/sys/user.h: Fix comment.
2000-08-09 Jakub Jelinek <jakub@redhat.com>
* time/tzfile.c (__tzfile_compute): __tzstring zones
from zone_names.
2000-08-09 Jakub Jelinek <jakub@redhat.com>
* resolv/resolv.h (__res_state): Surround prototype with
__BEGIN_DECLS/__END_DECLS.
* sysdeps/unix/sysv/linux/m68k/chown.c: Include kernel-features.h.
2000-08-04 Jes Sorensen <jes@linuxcare.com>
* sysdeps/unix/sysv/linux/ia64/bits/resource.h (__rlimit_resource):
Make independant of asm/resource.h from the Linux kernel.
2000-08-06 Bruno Haible <haible@clisp.cons.org>
* iconv/gconv_conf.c (__gconv_read_conf): Don't call realpath.
2000-08-06 Bruno Haible <haible@clisp.cons.org>
* intl/Makefile (CPPFLAGS): Remove $(i18ndir) from LOCALE_ALIAS_PATH.
* locale/Makefile (locale-CPPFLAGS): Likewise.
2000-08-09 Ulrich Drepper <drepper@redhat.com>
* sysdeps/i386/fpu/libm-test-ulps: Increase several error values
for AMD processors.
2000-08-03 Jakub Jelinek <jakub@redhat.com>
* misc/Versions (mincore): Export at GLIBC_2.2.
2000-08-03 Bruno Haible <haible@clisp.cons.org>
* intl/libintl.h (gettext, dgettext, dcgettext): Add back __THROW.