Commit Graph

209 Commits

Author SHA1 Message Date
Ulrich Drepper
57f97cff02 Update.
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>.
2002-12-12 06:58:20 +00:00
Roland McGrath
0f1316460c * intl/gettext.h: Renamed to ...
* intl/gmo.h: ... here.
	* intl/Makefile (distribute): Add gmo.h, remove gettext.h.
	* intl/gettextP.h: Update.
	* intl/loadmsgcat.c: Update.

	* intl/gettextP.h (PARAMS): Make more portable.
	(attribute_hidden): Define as empty macro if not already defined.
	* intl/hash-string.h (PARAMS): Make more portable.
	* intl/loadinfo.h (PARAMS): Likewise.
	* intl/plural-exp.h (PARAMS): Likewise.
	(attribute_hidden): Move definition near the definition of
	internal_function.

	* intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
	* intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.

2002-07-13  Bruno Haible  <bruno@clisp.org>

	* intl/dcigettext.c (freea): New macro.
	(FREE_BLOCKS): Free also the registered blocks.
	(DCIGETTEXT): Free the 'search' variable.
	Reported by Andreas Fischer <a.fischer@asentics.de>.

2002-04-27  Bruno Haible  <bruno@clisp.org>

	* intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
	* intl/dcigettext.c: Likewise.
	* intl/dcgettext.c: Likewise.
	* intl/dgettext.c: Likewise.
	* intl/gettext.c: Likewise.
	* intl/dcngettext.c: Likewise.
	* intl/dngettext.c: Likewise.
	* intl/ngettext.c: Likewise.
	* intl/textdomain.c: Likewise.
	* intl/bindtextdom.c: Likewise.
	* intl/plural-exp.h: Likewise.

2002-01-02  Bruno Haible  <bruno@clisp.org>

	* intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.

2001-04-30  Bruno Haible  <bruno@clisp.org>

	* intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
	default macro definitions.  Needed for mingw32.
2002-12-11 22:59:29 +00:00
Roland McGrath
5cb5cfa2a2 2002-12-11 Bruno Haible <bruno@clisp.org>
* intl/gettext.h: Renamed to ...
	* intl/gmo.h: ... here.
	* intl/Makefile (distribute): Add gmo.h, remove gettext.h.
	* intl/gettextP.h: Update.
	* intl/loadmsgcat.c: Update.
2002-12-11 22:58:23 +00:00
Roland McGrath
5d0bbaaf3a * scripts/abilist.awk: Grok function descriptor symbols.
* 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-11-21 03:41:31 +00:00
Roland McGrath
9a5b9056e0 2002-11-20 Roland McGrath <roland@redhat.com>
* intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
	so aborted prior runs don't confuse things.
2002-11-21 03:41:16 +00:00
Ulrich Drepper
51b3c8f6b7 (read_alias_file): Use only about 400 bytes of stack space instead of 16k. 2002-11-20 04:19:45 +00:00
Roland McGrath
c877418f2e * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
New macros.
	* elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
	text_set_element.
	* elf/dl-libc.c (free_mem): Likewise.
	* iconv/gconv_conf.c (free_mem): Likewise.
	* iconv/gconv_db.c (free_mem): Likewise.
	* iconv/gconv_dl.c (free_mem): Likewise.
	* iconv/gconv_cache.c (free_mem): Likewise.
	* intl/finddomain.c (free_mem): Likewise.
	* intl/dcigettext.c (free_mem): Likewise.
	* locale/setlocale.c (free_mem): Likewise.
	* misc/fstab.c (fstab_free): Likewise.
	* nss/nsswitch.c (free_mem): Likewise.
	* posix/regcomp.c (free_mem): Likewise.
	* resolv/gai_misc.c (free_res): Likewise.
	* stdlib/fmtmsg.c (free_mem): Likewise.
	* sunrpc/clnt_perr.c (free_mem): Likewise.
	* sysdeps/generic/setenv.c (free_mem): Likewise.
	* sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
	* sysdeps/pthread/aio_misc.c (free_res): Likewise.
	* time/tzset.c (free_mem): Likewise.
	* malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
	* locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
	* malloc/set-freeres.c (__libc_freeres): Likewise.

	* login/getutent.c: Include stdlib.h instead of stddef.h.
	(buffer): Change into pointer to utmp, add libc_freeres_ptr.
	(__getutent): Allocate buffer the first time it is run.
	* login/getutid.c: Include stdlib.h instead of stddef.h.
	(buffer): Change into pointer to utmp, add libc_freeres_ptr.
	(__getutid): Allocate buffer the first time it is run.
	* login/getutline.c: Include stdlib.h instead of stddef.h.
	(buffer): Change into pointer to utmp, add libc_freeres_ptr.
	(__getutline): Allocate buffer the first time it is run.
	* malloc/mtrace.c (malloc_trace_buffer): Change into char *.
	(mtrace): Allocate malloc_trace_buffer.
	* resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
	* resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
	* string/strerror.c: Include libintl.h and errno.h.
	(buf): New variable.
	(strerror): Only allocate buffer if actually needed (unknown error).
	* time/tzfile.c (transitions): Add libc_freeres_ptr.
	(freeres): Remove.

2002-10-25  Jakub Jelinek  <jakub@redhat.com>

	* include/libc-symbols.h (libc_freeres_ptr): New macro.
	* malloc/set-freeres.c (__libc_freeres_ptrs): Define using
	symbol_set_define.
	(__libc_freeres): Free all pointers in that section.
	* Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
	commands when creating .lds script.
	(LDSEDCMD-c.so): New variable.
	* inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
	(rcmd_af): Use strdup to allocate ahostbuf.
	* inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
	(rexec_af): Use strdup to allocate ahostbuf.
	* stdio-common/reg-printf.c (printf_funcs): Remove.
	(__printf_arginfo_table): Change into printf_arginfo_function **.
	Add libc_freeres_ptr.
	(__register_printf_function): Allocate __printf_arginfo_table
	and __printf_function_table the first time it is called.
	* stdio-common/printf-parse.h (__printf_arginfo_table): Change into
	printf_arginfo_function **.
	(parse_one_spec): Add __builtin_expect.
	* grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
	(string_space, map): Add libc_freeres_ptr.
	(free_mem): Remove.
	* misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
	(free_mem): Remove.
	* misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
	(buffer): Add libc_freeres_ptr.
	(free_mem): Remove for _LIBC.
	* nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* nss/getXXent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
	(free_mem): Remove.
	* shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
	(free_mem): Remove.
	* sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
	(free_mem): Remove.
	* sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
	libc_freeres_ptr.
	(free_mem): Remove.
	* sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
	libc_freeres_ptr.
	(free_mem): Remove.

2002-10-30  Jakub Jelinek  <jakub@redhat.com>

	* malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
	instead of duplicating the whole function in libc.
2002-11-01 20:44:15 +00:00
Roland McGrath
7f4dce05c2 * intl/dcigettext.c (DCIGETTEXT): Restore errno only right before
returning.
2002-09-20 23:25:36 +00:00
Roland McGrath
0f283ffc5e * sysdeps/generic/libc-tls.c (__pthread_initialize_minimal): Pass
TLS_INIT_TCB_SIZE, TLS_INIT_TCB_ALIGN instead of 0, 1.

	* include/getopt.h: Include <features.h> before <posix/getopt.h>.

	* locale/findlocale.c (_nl_remove_locale): Don't search in
	_nl_locale_file_list if DATA->alloc is ld_archive.
	Use _nl_unload_locale to do the rest of the work.

	* locale/loadarchive.c (_nl_load_locale_from_archive): Set usage_count
	of new structure to UNDELETABLE.

	* wctype/wctype.h (iswalnum, iswalpha, iswcntrl, iswdigit, iswlower,
	iswgraph, iswprint, iswpunct, iswspace, iswupper, iswxdigit, iswblank,
	towlower, towupper): Macros removed.
	* ctype/ctype.h (__tobody): Put parens around macro argument.
	(__isctype): Macro removed.
	(__ctype_b, __ctype_tolower, __ctype_toupper): Decls removed.
	(isalnum, isalpha, iscntrl, isdigit, islower, isgraph, isprint,
	ispunct, isspace, isupper, isxdigit, isblank, _tolower, _toupper,
	tolower, toupper): Macros and inlines removed.
	* include/ctype.h [! NOT_IN_libc]
	(isalnum, isalpha, iscntrl, isdigit, islower, isgraph, isprint,
	ispunct, isspace, isupper, isxdigit, isblank, _tolower, _toupper,
	tolower, toupper): Define here instead, using _NL_CURRENT.
	* ctype/ctype.c (__ctype_tolower, __ctype_toupper): Define as macros
	using _NL_CURRENT.
	* ctype/ctype-extn.c (__ctype_tolower, __ctype_toupper): Likewise.
	* ctype/ctype-info.c (__ctype_b, __ctype_tolower, __ctype_toupper):
	Renamed these to __ctype_old_*. Define old names only for SHLIB_COMPAT.
	(__ctype32_b, __ctype32_tolower, __ctype32_toupper): Likewise.
	(__ctype32_wctrans, __ctype32_wctrans, __ctype32_width): Removed.
	* locale/lc-ctype.c (_nl_postload_ctype): Use renamed variables,
	conditional on SHLIB_COMPAT.  Don't set removed variables at all.
	* wctype/wcfuncs.c: Use _NL_CURRENT instead of those globals.
	* wcsmbs/wcwidth.h (internal_wcwidth): Likewise.
	* resolv/res_init.c [RESOLVSORT] (sort_mask): Renamed sort_mask_chars.
	(ISSORTMASK): Update use.
	* intl/localealias.c [__GNUC__]: #undef alloca before #define.
	* nss/nss_files/files-XXX.c (last_use): Rename `none' to `nouse'.
	(_nss_files_getENTNAME_r): Likewise.
	* nss/nss_files/files-alias.c (last_use, _nss_files_getaliasent_r):
	Likewise.

	* Makerules (all-nonlib): Renamed from all-tests.
	Include $(others) here too.
	* locale/Makefile (CPPFLAGS-locale, CPPFLAGS-localedef,
	CPPFLAGS-ld-ctype, CPPFLAGS-ld-time, CPPFLAGS-ld-numeric,
	CPPFLAGS-ld-monetary, CPPFLAGS-ld-collate, CPPFLAGS-ld-identification,
	CPPFLAGS-charmap, CPPFLAGS-locarchive, CPPFLAGS-linereader,
	CPPFLAGS-charmap-dir): Variables removed.  Instead, catch all
	the program modules via cppflags-iterator.mk.
	* sunrpc/Makefile (CPPFLAGS-rpc_main): Variable removed.
	Instead, catch all rpcgen-objs via cppflags-iterator.mk.

	* posix/tst-getconf.sh: If no third arg, work with static linking.
2002-09-01 12:39:40 +00:00
Roland McGrath
2b71beea82 * intl/dcigettext.c (DCIGETTEXT) [_LIBC]: Check for bogus CATEGORY.
[_LIBC] (category_to_name): Don't define the function.  Instead
	define a macro using _nl_category_names.
2002-08-30 19:36:12 +00:00
Ulrich Drepper
934b77ac65 Update.
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-27 12:10:11 +00:00
Ulrich Drepper
230491f02c Update.
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.
2002-08-04 23:32:14 +00:00
Roland McGrath
30c14c31ae * 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
Roland McGrath
174d73a3ba 2002-08-02 Roland McGrath <roland@redhat.com>
* locale/localeinfo.h (_NL_CURRENT_DATA): New macro.
	* wcsmbs/wcsmbsload.h (update_conversion_ptrs): Use it.
	* locale/lc-ctype.c (_nl_postload_ctype): Likewise.
	* wctype/wctrans.c (wctrans): Likewise.
	* wctype/wctype.c (__wctype): Likewise.
	* intl/loadmsgcat.c (_nl_init_domain_conv): Use _NL_CURRENT.
2002-08-02 21:04:06 +00:00
Roland McGrath
c2afe83352 * sysdeps/pthread/bits/libc-tsd.h: Include <tls.h>.
[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-08-02 03:32:24 +00:00
Ulrich Drepper
3172f58fa3 Update.
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.
2002-07-27 08:47:23 +00:00
Ulrich Drepper
e155c80135 Remove support for CEN-style locale variables. It was never used and shouldn't be since it's not portable. 2002-07-24 10:07:08 +00:00
Ulrich Drepper
d2afebcce4 Update.
2002-07-15  Ulrich Drepper  <drepper@redhat.com>

	* intl/tst-gettext.sh: Pass -f option to msgfmt.
	* intl/tst-gettext.c: Correctly handle untranslated messages in
	positive tests.

	* po/de.po: Update from translation team.
2002-07-16 04:56:00 +00:00
Richard Henderson
a58b1e6526 /castro/street/H-alpha-linux/bin/bison --yacc --name-prefix=__gettext --output plural.c plural.y 2002-06-14 23:17:07 +00:00
Ulrich Drepper
531bafd8a6 Update.
2002-04-30  Jakub Jelinek  <jakub@redhat.com>

	* locale/programs/locarchive.c (create_archive): Add archivefname
	argument, create fname from it.
	(enlarge_archive): Honour output_prefix.
	(open_archive): Likewise.

2002-04-30  Jakub Jelinek  <jakub@redhat.com>

	* locale/programs/locarchive.c (add_locales_to_archive): Don't nest
	too many stpcpy macros.

2002-04-26  Bruno Haible  <bruno@clisp.org>

	* locale/programs/ld-collate.c (collate_read): Cast first argument
	for "%.*s" to int.

2002-04-26  Bruno Haible  <bruno@clisp.org>

	* include/libintl.h (__ngettext, __dngettext, __dcngettext,
	__dcngettext_internal): New declarations.
	(__gettext, __dgettext, __dcgettext, __dcgettext_internal): Add
	attribute declarations.
2002-05-01 17:09:58 +00:00
Ulrich Drepper
bc3bb89c0a Update.
2002-04-28  Ulrich Drepper  <drepper@redhat.com>

	* intl/loadmsgcat.c [!_LIBC] (_nl_init_domain_conv): Don't add
	//TRANSLIT twice.
2002-04-29 02:53:27 +00:00
Ulrich Drepper
6b87a5642c Update.
* 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-09 20:36:24 +00:00
Ulrich Drepper
71319b9cb3 Update.
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.
2002-04-08 08:59:00 +00:00
Ulrich Drepper
b344de2a1c Update.
* 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.
2002-04-06 05:11:18 +00:00
Ulrich Drepper
aa32f79837 Update.
* include/stdlib.h (__libc_drand48_data): Declare as hidden.
	* stdlib/drand48.c: Remove declaration of __libc_drand48_data here.
	* stdlib/erand48.c: Likewise.
	* stdlib/jrand48.c: Likewise.
	* stdlib/lcong48.c: Likewise.
	* stdlib/lrand48.c: Likewise.
	* stdlib/mrand48.c: Likewise.
	* stdlib/nrand48.c: Likewise.
	* stdlib/seed48.c: Likewise.
	* stdlib/srand48.c: Likewise.

	* stdio-common/_itoa.c (_itoa_base_table): Declare as hidden.
	(_itoa_lower_digits_internal): New declaration.
	(_itoa_upper_digits_internal): New declaration.
	(_itoa): Use INTUSE to acces _itoa_upper_digits and _itoa_lower_digits.
	* stdio-common.h (_itoa_lower_digits_internal): New declaration.
	(_itoa_upper_digits_internal): New declaration.
	(_itoa_word): Use INTUSE to acces _itoa_upper_digits and
	_itoa_lower_digits.
	* stdio-common/itoa-digits.c: Use INTVARDEF with _itoa_lower_digits.
	* stdio-common/itoa-udigits.c: Use INTVARDEF with _itoa_upper_digits.

	* elf/dl-minimal.c (_itoa): Declare _itoa_lower_digits as hidden.
	* elf/dl-reloc.c (_dl_reloc_bad_type): Likewise.

	* stdio-common/_itowa.c (_itoa_base_table): Declare as hidden.
	(_itowa_lower_digits): Likewise.
	(_itowa_upper_digits): Likewise.
	* stdio-common/_itowa.h (_itowa_lower_digits): Likewise.
	(_itowa_upper_digits): Likewise.

	* intl/plural-exp.h (attribute_hidden): Define as empty macro if
	not already defined.
	(GERMANIC_PLURAL): Declare as hidden.

	* posix/getopt.c (__getopt_initialized): Declare as hidden.
	(attribute_hidden): Define as empty macro if not already defined.

	* iconv/gconv_int.h (__gconv_path_elem): Declare hidden.
	(__gconv_max_path_elem_len): Likewise.
	(__gconv_path_envvar): Likewise.

	* math/Makefile (gmp-objs): Remove mp_clz_tab.
	* stdlib/Makefile (aux): Remove mp_clz_tab.
	* stdlib/mp_clz_tab.c: Removed.  Not needed anywhere.

	* stdlib/exit.h (__exit_funcs): Declare as hidden.
2002-03-12 20:04:56 +00:00
Ulrich Drepper
418f17011f Update.
2002-03-12  Ulrich Drepper  <drepper@redhat.com>

	* posix/bug-regex5.c (main): Use nl_langinfo instead of _NL_CURRENT.

	* locale/localeinfo.h: Add attribute_hidden to _nl_current_LC_XXX,
	_nl_category_names, _nl_category_name_sizes, _nl_current,
	_nl_C_name, _nl_POSIX_name, _nl_C_codeset, and _nl_C_LC_XXX.

	* intl/dcigettext.c (_nl_default_default_domain): Define as hidden.
	(_nl_current_default_domain): Likewise
	(_nl_state_lock): Likewise.
	* intl/textdomain.c (_nl_default_default_domain): Declare as hidden.
	(_nl_current_default_domain): Likewise
	(_nl_state_lock): Likewise.
	* intl/bindtextdom.c (_nl_state_lock): Likewise.

	* stdlib/fpioconst.h (__tens): Add attribute_hidden.
	(_fpioconst_pow10): Likewise.

	* include/time.h (_tmbuf): Add attribute_hidden.

	* time/tzset.c (tzstring_list): Define as static.

	* include/time.h: Add attribute_hidden to __tzname_cur_max and
	__use_tzfile declaration.

	* wcsmbs/wcsmbsload.h: Add attribute_hidden to __wcsmbs_gconv_fcts
	and __wcsmbs_last_locale declaration.
2002-03-12 10:25:36 +00:00
Ulrich Drepper
8e57fc7083 Update.
2002-01-02  Bruno Haible  <bruno@clisp.org>

	* intl/plural.y: Fix %expect count.
2002-01-08 06:38:01 +00:00
Ulrich Drepper
0555fccea7 Update.
2001-03-04  Bruno Haible  <bruno@clisp.org>

	* intl/dcigettext.c (DCIGETTEXT): Increment path_max proportionally.

2001-10-31  Bruno Haible  <bruno@clisp.org>

	* intl/plural.y: Include <stddef.h>, needed for NULL with SunOS 4 cc.

2001-03-21  Bruno Haible  <bruno@clisp.org>

	* intl/dcigettext.c (_nl_state_lock): Mark as #ifdef _LIBC. AIX 3 xlc
	chokes on empty macro arguments.
	* intl/plural.y: Add #pragma for alloca on AIX 3.

2001-11-27  Ulrich Drepper  <drepper@redhat.com>

	* intl/dcigettext.c (guess_category_value): Only implement for
	glibc.  Otherwise rely on function _nl_locale_name which isn't
	present in the glibc sources.

2001-09-24  Bruno Haible  <bruno@clisp.org>

	* intl/loadmsgcat.c (_nl_init_domain_conv): Also enable
	transliteration when building on a glibc system but outside glibc.

2001-09-22  Bruno Haible  <bruno@clisp.org>

	* intl/plural-eval.c: New file, extracted from dcigettext.c.
	* intl/dcigettext.c (plural_eval): Remove function, moved to
	intl/plural-eval.c.
	(plural_lookup): Call PLURAL_EVAL instead of plural_eval.
	Include plural-eval.c.

2001-09-22  Bruno Haible  <bruno@clisp.org>

	* intl/plural-exp.c (EXTRACT_PLURAL_EXPRESSION): Reject numbers that
	don't start with a digit; nplurals must be positive.

2001-09-02  Bruno Haible  <bruno@clisp.org>

	* intl/plural-exp.h: New file, extracted from gettextP.h.
	* intl/plural-exp.c: New file, extracted from loadmsgcat.c.
	* intl/gettextP.h (struct expression, struct parse_args,
	__gettext_free_exp, __gettextparse): Move to plural-exp.h.
	* intl/loadmsgcat.c: Include plural-exp.h.
	(PLURAL_PARSE): Move macro to plural-exp.h.
	(plvar, plone, germanic_plural, INIT_GERMANIC_PLURAL): Move to
	plural-exp.c.
	(_nl_load_domain): Move plural handling code to plural-exp.c.  Call
	EXTRACT_PLURAL_EXPRESSION.
	(_nl_unload_domain): Update.
	* intl/dcigettext.c: Include plural-exp.h.
	* intl/plural.y: Include plural-exp.h, not gettextP.h.
	(FREE_EXPRESSION): Move macro to plural-exp.h.
	* intl/Makefile (routines): Add plural-exp.
	(distribute): Add plural-exp.h.

2001-07-28  Bruno Haible  <bruno@clisp.org>

	* intl/l10nflist.c (_nl_normalize_codeset): Cast isalnum, isalpha,
	isdigit, tolower argument to 'unsigned char'.
	* intl/loadmsgcat.c (_nl_load_domain): Cast isspace argument to
	'unsigned char'.
	* intl/localealias.c (read_alias_file): Cast isspace argument to
	'unsigned char'.

2001-10-20  Bruno Haible  <bruno@clisp.org>

	Assume strchr() exists. (Without it, intl/explodename.c wouldn't link
	anyway.)
	* intl/dcigettext.c (strchr): Remove fallback definition; it conflicts
	with the variable 'index' in plural_lookup.
	* intl/l10nflist.c (strchr): Likewise.
	* intl/localealias.c (strchr): Likewise.

	Assume <stddef.h>, <stdlib.h>, <string.h>, <locale.h> exist.
	* intl/bindtextdom.c: Likewise.
	* intl/dcigettext.c: Likewise.
	* intl/dgettext.c: Likewise.
	* intl/dngettext.c: Likewise.
	* intl/explodename.c: Likewise.
	* intl/finddomain.c: Likewise.
	* intl/gettext.c: Likewise.
	* intl/l10nflist.c: Likewise.
	* intl/loadmsgcat.c: Likewise.
	* intl/localealias.c: Likewise.
	* intl/ngettext.c: Likewise.
	* intl/textdomain.c: Likewise.
	* intl/gettext.h: Assume <limits.h> exists.
2001-11-28 00:09:26 +00:00
Ulrich Drepper
f369623d6d Update.
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-24 22:16:09 +00:00
Ulrich Drepper
fcacd1271e Update.
* intl/localealias.c: Remove unnecessary prototype.
2001-07-19 21:09:22 +00:00
Ulrich Drepper
2706ee3823 Update.
2001-07-17  Ulrich Drepper  <drepper@redhat.com>

	* inet/rcmd.c (iruserfopen): Disable implicit locking for the stream.
	* inet/ruserpass.c (ruserpass): Likewise.
	* nss/nsswitch.c (nss_parse_file): Likewise.
	* resolv/res_hconf.c (_res_hconf_init): Likewise.
	* resolv/res_init.c (__res_vinit): Likewise.
	* gmon/bb_exit_func.c (__bb_exit_func): Likewise.
	* misc/getpass.c (getpass): Likewise.
	* misc/getusershell.c (initshells): Likewise.
	* misc/getttyent.c (setttyent): Likewise.
	* misc/mntent_r.c (__setmntent): Likewise.
	* time/getdate.c (__getdate_r): Likewise.
	* time/tzfile.c (__tzfile_read): Likewise.
	* iconv/gconv_conf.c (read_conf_file): Likewise.
	* intl/localealias.c (read_alias_file): Disable implicit locking
	for the stream.  Use _unlocked functions for glibc.
	* sysdeps/unix/sysv/linux/getsysstats.c (__get_nprocs): Disable
	implicit locking for the stream.
	(__get_nprocs_conf): Likewise.
	(phys_pages_info): Likewise.
2001-07-17 08:32:35 +00:00
Ulrich Drepper
8c35c0da02 Update.
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-12 06:32:02 +00:00
Andreas Jaeger
a1b36134f6 * COPYING: Fix Y2k bug in sample copyright notices.
* manual/lesser.texi: Renamed from manual/lgpl.texinfo,
        as fsf.org uses the name "lesser.texi".
	* manual/Makefile (texis): Follow rename.
2001-07-06 05:37:16 +00:00
Andreas Jaeger
41bdb6e20c Update to LGPL v2.1.
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-07-06 04:58:11 +00:00
Ulrich Drepper
6999d70e2f Update.
* libio/iolibio.h (_IO_freopen): Correct last parameter to
	_IO_file_open.
	(_IO_freopen64): Likewise.
	Reported by simanek@quantum.karlov.mff.cuni.cz [PR libc/2326].

	* elf/elf.h: Add a few more EM_* constants.

2001-06-12  Bruno Haible  <haible@clisp.cons.org>

	* intl/dcigettext.c (DCIGETTEXT): Release the lock before returning.

2001-06-09  Ben Collins  <bcollins@debian.org>

	* sysdeps/unix/sysv/linux/bits/termios.h: Define __MAX_BAUD.
	* sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
	* sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise.
	* sysdeps/unix/sysv/linux/speed.c: Use __MAX_BAUD instead of
	hardcoded B400000.

2001-06-13  Ulrich Drepper  <drepper@redhat.com>
2001-06-14 00:45:57 +00:00
Ulrich Drepper
8f13e3202e Add a few more dependencies to avoid races in the test shell scripts. 2001-05-22 20:36:16 +00:00
Andreas Jaeger
d4eaa8bb24 (tests): Reorder conditions, tst-gettext needs msgfmt. 2001-04-20 13:26:23 +00:00
Ulrich Drepper
355561ef14 Update.
* intl/tst-codeset.c: Include string.h to get prototype for strcmp().

2001-04-13  Jes Sorensen  <jes@linuxcare.com>
2001-04-13 22:42:45 +00:00
Ulrich Drepper
c44a663dca Update.
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-04-10 00:15:08 +00:00
Ulrich Drepper
e686e1a17f Update.
2001-03-09  Bruno Haible  <haible@clisp.cons.org>

	* intl/dcigettext.c (transmem_block_t): Change to unsigned char, to
	avoid compiler warning.
	(_nl_find_msg): Add casts to avoid compiler warnings.
2001-03-21 20:22:51 +00:00
Ulrich Drepper
4a4d50f372 Update.
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-03-20 01:00:20 +00:00
Ulrich Drepper
328c5f650f Update.
* timezone/antarctica: Update from tzdata2001a.
	* timezone/asia: Likewise.
	* timezone/australasia: Likewise.
	* timezone/backward: Likewise.
	* timezone/etcetera: Likewise.
	* timezone/europe: Likewise.
	* timezone/leapseconds: Likewise.
	* timezone/northamerica: Likewise.
	* timezone/southamerica: Likewise.
	* timezone/systemv: Likewise.
	* timezone/yearistype: Likewise.
	* timezone/zone.tab: Likewise.
	* timezone/tzdump.c: Update from tzcode2001a.

2001-03-15  H.J. Lu  <hjl@gnu.org>

	* intl/Makefile: Fix a typo.

2001-03-14  David Mosberger  <davidm@hpl.hp.com>

	* gmon/gmon.c (write_call_graph): Avoid unaligned accesses when
	writing arc structures.

2001-03-15  H.J. Lu  <hjl@gnu.org>

	* elf/Makefile ($(objpfx)tst-pathopt.out): Protected against
	cross-compiling.

2001-03-13  Andreas Schwab  <schwab@suse.de>

	* posix/PTESTS2C.sed: Replace literal CRs by `\r'.

2001-03-15  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/unix/sysv/linux/cmsg_nxthdr.c (__cmsg_nxthdr): Fix test
	for control message fitting into message data.
	Patch by James Antill <james@and.org>.
2001-03-16 01:10:29 +00:00
Ulrich Drepper
d9e77f3d6e Remove bogus endif. 2001-02-26 17:27:20 +00:00
Andreas Jaeger
89e89345bc Update.
* intl/Makefile (tests): Run mtrace-tst-gettext only when perl is
	available.
	Reported by Achim Gottinger <achim@gentoo.org>.
2001-02-26 12:16:10 +00:00
Andreas Jaeger
199745d108 Updated.
2001-02-25  Andreas Jaeger  <aj@suse.de>

	* intl/Makefile (plural.c): Reorder rules so that they work if
	BISON doesn't exist.
2001-02-26 07:54:30 +00:00
Ulrich Drepper
6c9ea999a3 Update.
2001-02-25  Ulrich Drepper  <drepper@redhat.com>

	* intl/locale.alias: Don't use nb_NO but define aliases for it.
2001-02-25 16:28:40 +00:00
Ulrich Drepper
ae113383fe Update.
2001-02-05  Ulrich Drepper  <drepper@redhat.com>

	* configure.in: Add check for bison.
	* config.make.in: Define BISON variable.
	* intl/Makefile: Use BISON instead of YACC when generating plural.c.
	Rename YFLAGS to BISONFLAGS.
2001-02-05 23:00:02 +00:00
Ulrich Drepper
58593d2eb9 Update.
* intl/loadmsgcat.c: Include <locale.h.> for _LIBC.
2001-01-26 17:18:04 +00:00
Ulrich Drepper
354e6102a1 Update.
* time/Makefile (tests): Add tst-mktime.
	* time/tst-mktime.c: New file.

	* posix/tst-dir.c (main): One more mkdir() test.
2001-01-09 01:04:59 +00:00
Ulrich Drepper
f8f900ecb9 Update
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.
2001-01-05 06:43:17 +00:00