# HG changeset patch # User Bruno Haible # Date 1203336011 -3600 # Node ID 36b4016eb185e74f7396b613ba2092a1939e57df # Parent e87d8b41f0fefe9b2a4ec6207758987e39e1f71e Restore the ChangeLog's truncated tail. diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -23781,3 +23781,14420 @@ now works outside glibc. 2005-08-25 Paul Eggert + + * config/srclist.txt: Add glibc bugs 1241, 1245. + +2005-08-25 Jim Meyering + + * lib/open-safer.c: Include . + Otherwise, we'd lose LARGEFILE support in any file using + e.g. "fcntl--.h" + +2005-08-25 Bruno Haible + + * m4/minmax.m4: Require autoconf 2.52. + (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead + of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust + alternatives of translit over the alphabet. + Based on a patch from Stepan Kasal . + +2005-08-24 Simon Josefsson + + * tests/test-getpass.c: New file. + +2005-08-24 Paul Eggert + + * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing + for GNU regex features. + +2005-08-24 Paul Eggert + + * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX. + * lib/regex.h (regerror): Likewise. + + * lib/regex.c: Do not include , as POSIX no longer + requires this. (The code never needed it.) + + * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c: + All uses of recently-renamed identifiers changed to use the new, + POSIX-compliant names. The code will build and run just fine + without these changes, but it's better to eat our own dog food + and use the standard-conforming names. + + * lib/regex.h: Fix a multitude of POSIX name space violations. + These changes have an effect only for programs that define + _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they + do not change anything for programs compiled in the normal way. + Also, there is no effect on the ABI. + + (_REGEX_SOURCE): New macro. + Do not include if _XOPEN_SOURCE and VMS are both + defined and _GNU_SOURCE is not; this fixes a name space violation. + + Rename the following macros to obey POSIX requirements. + The old names are still visible as macros if _REGEX_SOURCE is defined. + (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from + RE_BACKSLASH_ESCAPE_IN_LISTS. + (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM. + (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES. + (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS. + (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS. + (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS. + (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE. + (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL. + (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE. + (REG_INTERVALS): renamed from RE_INTERVALS. + (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS. + (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT. + (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES. + (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS. + (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS. + (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR. + (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES. + (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from + RE_UNMATCHED_RIGHT_PAREN_ORD. + (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING. + (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS. + (REG_DEBUG): renamed from RE_DEBUG. + (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD. + (REG_IGNORE_CASE): renamed from RE_ICASE. This renaming is a bit + unusual, since we can't clash with the POSIX REG_ICASE. + (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE. + (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP. + (REG_NO_SUB): renamed from RE_NO_SUB. + (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS. + (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK. + (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK. + (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK. + (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP. + (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP. + (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP. + (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED. + (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED. + (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON. + (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC. + (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from + RE_SYNTAX_POSIX_MINIMAL_BASIC. + (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED. + (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from + RE_SYNTAX_POSIX_MINIMAL_EXTENDED. + (REG_DUP_MAX): renamed from RE_DUP_MAX. No need to undef it. + (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED. + (REG_REALLOCATE): Renamed from REGS_REALLOCATE. + (REG_FIXED): Renamed from REGS_FIXED. + (REG_NREGS): Renamed from RE_NREGS. + + (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values + of other REG_* macros, since POSIX says the user is allowed to + #undef these macros selectively. + + (reg_errcode_t): Update comment stating what other tables need + to be consistent. + + Rename the following enum values to obey POSIX requirements. + The old names are still visible as macros. + (_REG_ENOSYS): Renamed from REG_ENOSYS. Define even if _XOPEN_SOURCE + is not defined, since GNU is supposed to be a superset of POSIX as + much as possible, and since we want reg_errcode_t to be a signed + type for implementation consistency. + (_REG_NOERROR): Renamed from REG_NOERROR. + (_REG_NOMATCH): Renamed from REG_NOMATCH. + (_REG_BADPAT): Renamed from REG_BADPAT. + (_REG_ECOLLATE): Renamed from REG_ECOLLATE. + (_REG_ECTYPE): Renamed from REG_ECTYPE. + (_REG_EESCAPE): Renamed from REG_EESCAPE. + (_REG_ESUBREG): Renamed from REG_ESUBREG. + (_REG_EBRACK): Renamed from REG_EBRACK. + (_REG_EPAREN): Renamed from REG_EPAREN. + (_REG_EBRACE): Renamed from REG_EBRACE. + (_REG_BADBR): Renamed from REG_BADBR. + (_REG_ERANGE): Renamed from REG_ERANGE. + (_REG_ESPACE): Renamed from REG_ESPACE. + (_REG_BADRPT): Renamed from REG_BADRPT. + (_REG_EEND): Renamed from REG_EEND. + (_REG_ESIZE): Renamed from REG_ESIZE. + (_REG_ERPAREN): Renamed from REG_ERPAREN. + (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE): + (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN): + (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND): + (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants. + + (_REG_RE_NAME, _REG_RM_NAME): New macros. + (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE. All uses + changed. But support the old name if the new one is not defined + and if _REGEX_SOURCE. + + Change the following member names in struct re_pattern_buffer. + The old names are still supported if !_REGEX_SOURCE. + The new names are always supported, regardless of _REGEX_SOURCE. + (re_buffer): Renamed from buffer. + (re_allocated): Renamed from allocated. + (re_used): Renamed from used. + (re_syntax): Renamed from syntax. + (re_fastmap): Renamed from fastmap. + (re_translate): Renamed from translate. + (re_can_be_null): Renamed from can_be_null. + (re_regs_allocated): Renamed from regs_allocated. + (re_fastmap_accurate): Renamed from fastmap_accurate. + (re_no_sub): Renamed from no_sub. + (re_not_bol): Renamed from not_bol. + (re_not_eol): Renamed from not_eol. + (re_newline_anchor): Renamed from newline_anchor. + + Change the following member names in struct re_registers. + The old names are still supported if !_REGEX_SOURCE. + The new names are always supported, regardless of _REGEX_SOURCE. + (rm_num_regs): Renamed from num_regs. + (rm_start): Renamed from start. + (rm_end): Renamed from end. + + (re_set_syntax, re_compile_pattern, re_compile_fastmap): + (re_search, re_search_2, re_match, re_match_2, re_set_registers): + Prepend __ to parameter names. + + Undo yesterday's changes. + +2005-08-24 Paul Eggert + + * config/srclist.txt: Remove glibc bug 1233 and add 1236, which + supersedes it. Add glibc bugs 1237, 1238, 1240. Comment out + lib/regex.c. + +2005-08-24 Jim Meyering + + Sync from coreutils. + * m4/fcntl-safer.m4: New file. + + * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source + and object files for this module. + +2005-08-24 Jim Meyering + + Sync from coreutils. + * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files. + +2005-08-24 Jim Meyering + + * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line, + now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h. + +2005-08-24 Jim Meyering + + * modules/fcntl-safer: New module. + * modules/fts (Depends-on): Add fcntl-safer. + * MODULES.html.sh (File descriptor based Input/Output): + Add fcntl-safer. + +2005-08-24 Bruno Haible + + Support for unit test modules. + * modules/README: Mention tests modules. + * modules/TEMPLATE-TESTS: New file. + * gnulib-tool: New options --extract-tests-module, --with-tests and + --tests-base (unused for the moment). + (testsbase, inctests): New variables. + (func_all_modules): Exclude TEMPLATE-TESTS and *-tests. + (func_verify_module): Exclude TEMPLATE-TESTS. + (func_verify_nontests_module, func_verify_tests_module): New functions. + (func_get_dependencies): Add implicit dependency for tests modules. + (func_get_tests_module): New function. + (func_modules_transitive_closure): When --with-tests was specified, + include the unit tests as well, unless explicitly avoided. + (func_emit_lib_Makefile_am): Ignore the tests modules here. + (func_emit_tests_Makefile_am): New function. + (func_create_testdir): When --with-tests was specified, emit a + tests/ directory. + * MODULES.html.sh (Future developments): Update. + +2005-08-24 Bruno Haible + + * modules/tls-tests: New file. + * tests/test-tls.c: New file, from GNU gettext. + +2005-08-24 Bruno Haible + + * modules/lock-tests: New file. + * tests/test-lock.c: New file, from GNU gettext. + +2005-08-24 Bruno Haible + + * lib/lock.h: Add multiple inclusion guard. + * lib/tls.h: Add multiple inclusion guard. + +2005-08-24 Bruno Haible + + * gnulib-tool: Add support for the --aux-dir option to + --create-testdir, --create-megatestdir, --test, --megatest. + (func_create_testdir, func_create_megatestdir): Optionally emit a + AC_CONFIG_AUX_DIR directive. + (create-testdir, create-megatestdir, test, megatest): Provide a + default value for $auxdir. + +2005-08-24 Bruno Haible + + * gnulib-tool (import): Use compound statement instead of subshell + where possible. + +2005-08-24 Bruno Haible + + * gnulib-tool (import): Change --aux-dir default to "build-aux". + +2005-08-24 Bruno Haible + + * gnulib-tool (func_version): Update. + +2005-08-24 Bruno Haible + + * gnulib-tool (func_import, func_create_testdir, + func_create_megatestdir): Quote all autoconf macro arguments. + +2005-08-24 Bruno Haible + + * gnulib-tool (func_create_megatestdir): Call autoreconf without the + option --force, because --force causes the aclocal.m4 of each + subdirectory to be newer than the corresponding config.h.in. + +2005-08-23 Paul Eggert + + * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used. + All contents moved to gl_REGEX. + (gl_REGEX): Don't bother checking whether lib/regex.c exists; + assume that it does. + +2005-08-23 Paul Eggert + + * lib/regex.h (REG_NOSYS) + [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]: + Define, since POSIX requires it as of 2001. + (_REG_ENOSYS) + [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]: + New private symbol, used to keep the enum signed in all cases. + * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James + Youngman in + . + + * lib/regex_internal.c (re_string_skip_chars, register_state): + (calc_state_hash): + Remove forward decls; no longer needed now that we use prototypes. + * lib/regexec.c (acquire_init_state_context, check_halt_node_context): + (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes): + (clean_state_log_if_needed): Likewise. + +2005-08-23 Paul Eggert + + * config/srclist.txt: Add glibc bugs 1231-1233. + +2005-08-20 Paul Eggert + + Fix problems reported by Sam Steingold in + . + * lib/regexec.c (sift_states_bkref): Fix portability bug: the code + assumed that reg_errcode_t is a signed type, which is not + necessarily true if _XOPEN_SOURCE is not defined. + * lib/regex_internal.c (calc_state_hash): Put 'inline' before type, + since some compilers warn about it otherwise. + +2005-08-20 Paul Eggert + + * lib/regcomp.c (create_initial_state): Remove duplicate decl. + (init_word_char, create_initial_state, duplicate_node_closure): + (fetch_token, peek_token_bracket, build_range_exp): + (build_collating_symbol): Remove forward decls; no longer needed + now that we use prototypes. + + * lib/regcomp.c: + (re_compile_pattern, re_set_syntax, re_compile_fastmap): + (re_compile_fastmap_iter, regcomp, regerror, regfree): + (re_compile_internal, init_dfa, init_word_char, free_workarea_compile): + (create_initial_state, optimize_utf8, analyze, postorder, preorder): + (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next): + (link_nfa_nodes, duplicate_node_closure, search_duplicated_node): + (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter): + (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp): + (parse_branch, parse_expression, parse_sub_exp, parse_dup_op): + (build_range_exp, build_collating_symbol, parse_bracket_exp): + (parse_bracket_element, parse_bracket_symbol, build_equiv_class): + (build_charclass, build_charclass_op, fetch_number, create_tree): + (create_token_tree, mark_opt_subexp, duplicate_tree): + Use prototypes rather than old-style definitions. + + * lib/regex_internal.c: + (re_string_allocate, re_string_construct, re_string_realloc_buffers): + (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer): + (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer): + (re_string_reconstruct, re_string_peek_byte_case): + (re_string_fetch_byte_case, re_string_destruct, re_string_context_at): + (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2): + (re_node_set_init_copy, re_node_set_add_intersect): + (re_node_set_init_union, re_node_set_merge, re_node_set_insert): + (re_node_set_insert_last, re_node_set_compare, re_node_set_contains): + (re_node_set_remove_at, re_dfa_add_node, calc_state_hash): + (re_acquire_state, re_acquire_state_context, register_state): + (create_ci_newstate, create_cd_newstate, free_state): + Likewise. + * lib/regexec.c (regexec, re_match, re_search, re_match_2, + re_search_2): + (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers): + (re_search_internal, prune_impossible_nodes): + (acquire_init_state_context, check_matching, static): + (check_halt_node_context, check_halt_state_context, proceed_next_node): + (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return): + (update_regs, sift_states_backward, build_sifted_states): + (clean_state_log_if_needed, merge_state_array): + (update_cur_sifted_state, add_epsilon_src_nodes): + (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1): + (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref): + (sift_states_iter_mb, transit_state, merge_state_with_log, static): + (find_recover_state, check_subexp_matching_top, transit_state_mb): + (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node): + (check_arrival, check_arrival_add_next_nodes): + (check_arrival_expand_ecl, check_arrival_expand_ecl_sub): + (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates): + (check_node_accept_bytes, check_node_accept, extend_buffers): + (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry): + (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast): + (sift_ctx_init): + Likewise. + + * lib/regex_internal.h: + (re_string_allocate, re_string_construct, re_string_reconstruct): + (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer): + (build_upper_buffer, re_string_translate_buffer, re_string_destruct): + (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at): + (re_string_context_at, re_string_peek_byte_case): + (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES + is defined, since we now use prototypes always. + + * lib/regex.h (_RE_ARGS): Remove. No longer needed, since we assume + C89 or better. All uses removed. + +2005-08-20 Paul Eggert + + * config/srclist.txt: Add glibc bugs 1220-1227. + +2005-08-20 Jim Meyering + + * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration + of unused local, dfa. + +2005-08-20 Bruno Haible + + * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE. + +2005-08-19 Paul Eggert + + * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert): + (re_node_set_insert_last, re_dfa_add_node): + Rename local variables to avoid GCC shadowing warnings. + +2005-08-19 Paul Eggert + + * lib/regex_internal.c (re_acquire_state, re_acquire_state_context) + [defined lint]: Suppress bogus uninitialized-variable warnings. + + * lib/regcomp.c (duplicate_node): Return new index, not an error code, + and let the caller return REG_ESPACE if out of space. This + removes an uninitialied-variable warning with GCC 4.0.1, and also + avoids taking the address of a local variable. All callers + changed. + +2005-08-19 Paul Eggert + + * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c, + $LIBCSRC/posix/regexec.c. + Add glibc bug 1217 for regcomp.c. + +2005-08-19 Jim Meyering + + * lib/regexec.c (proceed_next_node): Redo local variables to + avoid GCC shadowing warnings. + +2005-08-18 Bruno Haible + + * lib/strstr.c (strstr): Fix return value in multibyte case. + * lib/strcasestr.c (strcasestr): Likewise. + +2005-08-17 Paul Eggert + + * lib/regex.h: Remove useless space-before-tab. From coreutils. + +2005-08-17 Jim Meyering + + Make the %s format (seconds since the epoch) work for a negative + number and when used with a zero-padded field width, e.g. %015s. + + * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding' + label so that it precedes the code to set `digits'. Otherwise, + %0Ns wouldn't work. Before this change, `date -d @-22 +%05s' would + print `00-22'. Now, it prints `-0022', as it should. + +2005-08-17 Bruno Haible + + * modules/strstr (Files): Add m4/mbrtowc.m4. + (Depends-on): Add mbuiter. + +2005-08-17 Bruno Haible + + * modules/strcasestr: New file. + * MODULES.html.sh (String handling, based on ANSI C 89): Add + strcasestr. + +2005-08-17 Bruno Haible + + * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar. + +2005-08-17 Bruno Haible + + * modules/mbuiter: New file. + * MODULES.html.sh (Extended multibyte and wide character utilities): + Add mbuiter. + +2005-08-17 Bruno Haible + + * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always. + (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC. + +2005-08-17 Bruno Haible + + * m4/strcasestr.m4: New file. + +2005-08-17 Bruno Haible + + * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function. + * lib/strstr.c: Completely rewritten, with multibyte locale support. + +2005-08-17 Bruno Haible + + * lib/strcasestr.h: New file. + * lib/strcasestr.c: New file. + +2005-08-17 Bruno Haible + + * lib/strcasecmp.c: Use mbuiter.h. + +2005-08-17 Bruno Haible + + * lib/mbuiter.h: New file. + +2005-08-16 Paul Eggert + + * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results + of gl_GETOPT_SUBSTITUTE. That way, if both gl_GETOPT_SUBSTITUTE + and gl_GETOPT are both invoked via different paths (as happens + with GNU tar CVS because it uses both argp and getopt), the former + wins. + +2005-08-16 Bruno Haible + + * modules/tls: New file. + * MODULES.html.sh (Multithreading): Add tls. + +2005-08-16 Bruno Haible + + * modules/strnlen1: New file. + * MODULES.html.sh (String handling): Add strnlen1. + +2005-08-16 Bruno Haible + + * modules/strcase (Files): Add m4/mbrtowc.m4. + (Depends-on): Add strnlen1, mbchar. + +2005-08-16 Bruno Haible + + * modules/mbiter: New file. + * MODULES.html.sh (Extended multibyte and wide character utilities): + Add mbiter. + +2005-08-16 Bruno Haible + + * modules/mbfile: New file. + * MODULES.html.sh (Extended multibyte and wide character utilities): + Add mbfile. + +2005-08-16 Bruno Haible + + * modules/mbchar: New file. + * MODULES.html.sh (Extended multibyte and wide character utilities): + New section. + +2005-08-16 Bruno Haible + + * m4/tls.m4: New file, from GNU gettext. + +2005-08-16 Bruno Haible + + * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function + always. + (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC. + +2005-08-16 Bruno Haible + + * m4/mbiter.m4: New file. + +2005-08-16 Bruno Haible + + * m4/mbfile.m4: New file. + +2005-08-16 Bruno Haible + + * m4/mbchar.m4: New file. + +2005-08-16 Bruno Haible + + * lib/tls.h: New file, from GNU gettext. + * lib/tls.c: New file, from GNU gettext. + +2005-08-16 Bruno Haible + + * lib/strnlen1.h: New file. + * lib/strnlen1.c: New file. + +2005-08-16 Bruno Haible + + * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field. + (mbi_init): Update. + (mbi_avail, mbi_advance): Let the iteration end before the terminating + NUL byte, not after it. + +2005-08-16 Bruno Haible + + * lib/strcase.h (strcasecmp): Add note in comments. + * lib/strncasecmp.c: Use code from strcasecmp.c. + * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant. + (strcasecmp): Work correctly in multibyte locales. + +2005-08-16 Bruno Haible + + * lib/mbiter.h: New file. + +2005-08-16 Bruno Haible + + * lib/mbfile.h: New file. + +2005-08-16 Bruno Haible + + * lib/mbchar.h: New file. + * lib/mbchar.c: New file. + +2005-08-16 Bruno Haible + + * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after + the valid ones. Makes the comparison operations transitive: + cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0. + * lib/strcasecmp.c (strcasecmp): Use mb_casecmp. + +2005-08-15 Simon Josefsson + + * modules/ssize_t (License): Change to 'unlimited'. + + * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license. + +2005-08-15 Paul Eggert + + * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h. + Add comments for each pending glibc patch. + +2005-08-15 Bruno Haible + + * lib/regex.h (__restrict_arr): Don't define to __restrict if + __cplusplus is defined. + +2005-08-14 Jim Meyering + + Sync from coreutils. + + * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir): + Use the hash-table-based cycle-detection code not just when + FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL. + Reported by James Youngman in + . + * lib/fts_.h: Mention that with FTS_LOGICAL, we use + FTS_TIGHT_CYCLE_CHECK. + * lib/fts.c (fts_cross_check) [FTS_DEBUG]: + s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG, + once again. + * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own. + * lib/fts.c (fd_safer): Remove decl. + Include fcntl--.h rather than unistd-safer.h + (fts_safe_changedir): Don't call fd_safer; no longer needed + now that we include fcntl--.h. + +2005-08-12 Simon Josefsson + + * modules/getndelim2: Use ssize_t module. + * modules/getnline: Likewise. + * modules/safe-read: Likewise. + * modules/xreadlink: Likewise. + + * modules/ssize_t: New file. + +2005-08-12 Simon Josefsson + + * m4/readline.m4: Look for termcap, curses or ncurses if required. + +2005-08-12 Simon Josefsson + + * MODULES.html.sh (Support for systems lacking POSIX:2001): Add + ssize_t. + +2005-08-12 Simon Josefsson + + * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add + readline, getdelim and check_version. + (Support for systems lacking ISO C 99: Sizes of integer types): + Add size_max. + +2005-08-12 Bruno Haible + + * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first. + +2005-08-11 Simon Josefsson + + * modules/readline: New file. + + * modules/strnlen (Files): Add strnlen.h. + +2005-08-11 Simon Josefsson + + * m4/readline.m4: New file. + +2005-08-11 Simon Josefsson + + * lib/readline.h, readline.c: New file. + +2005-08-11 Simon Josefsson + + * doc/gnulib.texi (Initial import, Finishing touches): Mention + gl_AVOID. + +2005-08-11 Bruno Haible + + * lib/strnlen.h (strnlen): Change parameter name to match comment. + +2005-08-10 Stepan Kasal + + * m4/onceonly_2_57.m4: Really require Autoconf 2.57. + +2005-08-10 Simon Josefsson + + * tests/test-iconvme.c: New file. + +2005-08-10 Simon Josefsson + + * m4/strnlen.m4: New file. + + * m4/strndup.m4: Don't check for strnlen declaration, done in + strnlen.m4. + +2005-08-10 Simon Josefsson + + * lib/strndup.c: Use strnlen.h. + + * lib/strnlen.h: New file. + +2005-08-08 Ralf Wildenhues (tiny change) + + * README: Typos. + +2005-08-02 Simon Josefsson + + * modules/readline: New file. + +2005-08-02 Simon Josefsson + + * modules/getdelim: New file. + + * modules/getline: Rewrite, don't use getndelim2. + +2005-08-02 Simon Josefsson + + * m4/getline.m4: Separate out getdelim stuff into separate module. + + * m4/getdelim.m4: New file. + +2005-08-02 Simon Josefsson + + * lib/getline.h, getline.c: Rewrite. + + * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc. + +2005-07-31 Bruno Haible + + * lib/lock.h (gl_lock_initializer): New macro. + (gl_lock_define_initialized): Use it. + (gl_rwlock_initializer): New macro. + (gl_rwlock_define_initialized): Use it. + (gl_recursive_lock_initializer): New macro. + (gl_recursive_lock_define_initialized): Use it. + +2005-07-30 Karl Berry + + * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib. + Report from Ben Pfaff, regarding getopt. + +2005-07-26 Paul Eggert + + Add support to getopt for Emacs, which doesn't use LIBOBJS in the + normal way. + * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro. + (gl_GETOPT_SUBSTITUTE): Use it. Invoke gl_PREREQ_GETOPT. + (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros. + (gl_GETOPT): Use the new macros. Most of the implementation + is moved to the new macros. This is for programs like Emacs + that don't want all the functionality of gl_GETOPT. + +2005-07-26 Bruno Haible + + * m4/lock.m4: Update from GNU gettext. + +2005-07-26 Bruno Haible + + * lib/lock.h: Update from GNU gettext. + * lib/lock.c: Update from GNU gettext. + +2005-07-25 Paul Eggert + + * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the + obsolescent AC_TRY_RUN. Include the default includes files, for + 'exit'. + +2005-07-24 Bruno Haible + + * modules/visibility: New file. + * MODULES.html.sh (Misc): Add visibility. + +2005-07-24 Bruno Haible + + * m4/visibility.m4: New file. + +2005-07-24 Bruno Haible + + * doc/visibility.texi: New file. + +2005-07-22 Bruno Haible + + * modules/alloca-opt (Makefile.am): Remove explicit dependency on + $(ALLOCA_H), redundant through BUILT_SOURCES. + * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H), + redundant through BUILT_SOURCES. + * modules/byteswap (Makefile.am): Remove explicit dependency on + $(BYTESWAP_H), redundant through BUILT_SOURCES. + * modules/fnmatch (Makefile.am): Remove explicit dependency on + $(FNMATCH_H), redundant through BUILT_SOURCES. + * modules/getopt (Makefile.am): Remove explicit dependency on + $(GETOPT_H), redundant through BUILT_SOURCES. + * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H), + redundant through BUILT_SOURCES. + * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H), + redundant through BUILT_SOURCES. + * modules/stdbool (Makefile.am): Remove explicit dependency on + $(STDBOOL_H), redundant through BUILT_SOURCES. + * modules/stdint (Makefile.am): Remove explicit dependency on + $(STDINT_H), redundant through BUILT_SOURCES. + * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES. + Remove explicit dependency on $(SYSEXITS_H). + Reported by Alexandre Duret-Lutz . + +2005-07-18 Simon Josefsson + + * lib/check-version.c (check_version): Accept identical versions too. + +2005-07-18 Bruno Haible + + * modules/lock: New file. + * MODULES.html.sh (Multithreading): New section. + +2005-07-18 Bruno Haible + + * m4/lock.m4: New file, from GNU gettext. + +2005-07-18 Bruno Haible + + * lib/lock.h: New file, from GNU gettext. + * lib/lock.c: New file, from GNU gettext. + +2005-07-18 Bruno Haible + + * lib/lock.h (gl_once_t): New type. + (gl_once_define, gl_once): New macros. + * lib/lock.c (fresh_once): New variable. + (glthread_once, glthread_once_call, glthread_once_singlethreaded): New + functions. + +2005-07-16 Simon Josefsson + + * doc/gnulib.texi (Library version handling): Add ELF symbol collision + workaround, suggested by Bruno. + +2005-07-15 Paul Eggert + + * modules/xalloc (Depends-on): Add xalloc-die. + * modules/xvasprintf (Depends-on): Add xalloc-die. + +2005-07-15 Paul Eggert + + * lib/quotearg.c: Add translator comment suggested by Bruno Haible, + with a minor change. + +2005-07-15 Bruno Haible + + * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug. + When using lib/poll.c, define poll as rpl_poll. + +2005-07-14 Paul Eggert + + * modules/argp (Depends-on): Remove unlocked-io. + +2005-07-14 Derek Price + + * m4/glob.m4 (gl_GLOB): Cache glob interface check result. Add check + for glob symlink bug. + +2005-07-14 Bruno Haible + + * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO. + Instead, test for *_unlocked function declarations directly. + +2005-07-11 Simon Josefsson + + * modules/size_max: New file. + + * modules/xsize: Depend on size_max module for size_max.m4. + +2005-07-11 Simon Josefsson + + * lib/size_max.h: New file. + +2005-07-11 Paul Eggert + + * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the + copyright symbol and the year. + * lib/version-etc.c (COPYRIGHT_YEAR): New constant. + (version_etc_va): Use parameterized copyright notice. + Reword to conform to the current GNU coding standards. + +2005-07-11 Karl Berry + + * doc/gnulib.texi (Quoting): new node. + (Initial import): more info, from Patrice. + +2005-07-11 Bruno Haible + + * gnulib-tool (func_usage): Document option --avoid. + (Command line options): Handle --avoid. + (func_acceptable): New function. + (func_modules_transitive_closure): Use it. + +2005-07-11 Bruno Haible + + * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site. + Reported by Jim Meyering. + +2005-07-10 Bruno Haible + + * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t. + Needed when size_t is smaller than 'unsigned int'. + Reported by Paul Eggert. + +2005-07-09 Sergey Poznyakoff + + * modules/argp (Depends-on): Add unlocked-io + +2005-07-09 Sergey Poznyakoff + + * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary + block of defines. + +2005-07-08 Paul Eggert + + * config/srclist.txt: Comment out regcomp.c, since we have a porting + fix now. + +2005-07-08 Eric Blake (tiny change) + and Paul Eggert + + * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value + in wint_t, not wchar_t. Remove now-unnecessary cast. + +2005-07-07 Paul Eggert + + * modules/regex (Files): Add lib/regex_internal.c, + lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4. + (Depends-on): Add extensions. + (Makefile.am): Remove lib_SOURCES; now done by m4 code. + +2005-07-07 Paul Eggert + + * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on + pathconf. + * m4/same.m4 (gl_SAME): Likewise. + Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase. + + * m4/regex.m4: Adjust to new libc regex implementation. + (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for + all the .c and .h parts of (the new) regex. + Quote the m4 stuff better. + Check for RE_ICASE bug of old gnulib. + Check for REG_STARTEND of recent libc. + Rename local variables from jm_* to gl_*. + Quote operand of "test -f". + Say "recent enough" version of libc, not "version 2". + (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a + prerequisite module. Remove AC_HEADER_STDC; no longer needed. + Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll. + Remove check for btowc, isascii. + Require AM_LANGINFO_CODESET. + +2005-07-07 Paul Eggert + + * lib/regex.c, regex.h: Sync from libc. + * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h: + * lib/regexec.c: + New files, synced from libc, except that regex_internal.h + currently has a small porting fix. + +2005-07-07 Paul Eggert + + * config/srclist.txt: Add regcomp.c, regex.c, regex.h, + regex_internal.c, regexec.c. + Add regex_internal.h too, but as a comment, since the libc version + is currently broken in gnulib mode. + +2005-07-06 Paul Eggert + + Support programs like Emacs that use gnulib but not gettext. + * MODULES.html.sh (Internationalization functions): Add gettext-h. + * modules/gettext-h: New file. + * modules/gettext (Files): Remove lib/gettext.h. + (Depends-on): Add gettext-h. + (Makefile.am): Remove lib_SOURCES. + * modules/argmatch, modules/c-stack, modules/closeout: + * modules/copy-file, modules/csharpcomp, modules/csharpexec: + * modules/execute, modules/file-type, modules/getaddrinfo: + * modules/getopt, modules/human, modules/javacomp: + * modules/javaexec, modules/mkdir-p, modules/obstack: + * modules/openat, modules/pagealign_alloc, modules/pipe: + * modules/quotearg, modules/regex, modules/rpmatch: + * modules/unicodeio, modules/userspec, modules/version-etc: + * modules/wait-process, modules/xalloc-die, modules/xmemcoll: + * modules/xsetenv: + Depend on gettext-h, not gettext. + +2005-07-05 Paul Eggert + + * gnulib-tool (func_import): Add support for 'public domain' license. + * modules/alloca, modules/atexit, modules/memmove: + Now public domain, not GPL. + * modules/dup2, modules/getpagesize, modules/malloc, modules/memset: + * modules/realloc, modules/strerror, modules/strtod: + Now LGPL, not GPL. + +2005-07-05 Bruno Haible + + * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current + autoconf CVS. Needed for mingw. + +2005-07-03 Paul Eggert + + Remove the dependency of the strftime module on the tzset module. + * modules/strftime (Depends-on): Remove dependency on tzset. + +2005-07-03 Paul Eggert + + Remove the dependency of the strftime module on the tzset module. + * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require + gl_FUNC_TZSET_CLOBBER. + +2005-07-03 Paul Eggert + + Remove the dependency of the strftime module on the tzset module. + * lib/strftime.c (my_strftime) + [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]: + Copy the input structure, to work around some of the bug with + Solaris 2.5.1 and Solaris 2.6. If you still care about these old + Solaris releases, you should also use the tzset module, but we won't + require it as a dependency any more since we don't want LGPLed code + to depend on GPLed code. + +2005-07-02 Jim Meyering + + * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4: + * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4: + * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4: + Don't check for fcntl.h, and don't test for HAVE_FCNTL_H. + +2005-07-02 Jim Meyering + + * lib/backupfile.c (backup_args): Change a `0' to NULL. + +2005-07-01 Paul Eggert + + * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 + declares only 'struct timespec;' (!). + +2005-07-01 Jim Meyering + + * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c: + * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c: + * lib/save-cwd.c, tempname.c: + Assume HAVE_FCNTL_H (i.e., include unconditionally, + and don't include ). + +2005-06-29 Jim Meyering + + * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded + type name. Use the variable name instead. + * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname): + Likewise. + +2005-06-28 Simon Josefsson + + * modules/check-version (Files): Add check-version.m4. + +2005-06-28 Simon Josefsson + + * m4/check-version.m4: New file, suggested by Jim Meyering + . + +2005-06-28 Simon Josefsson + + * lib/check-version.h, lib/check-version.c: New files. + +2005-06-28 Simon Josefsson + + * lib/base64.c (base64_encode): Indent. Rename 'b64' to avoid + collision with global variable. Better indentation. Don't + increment buffer pointer beyond buffer end. Based on comments + from Paul Eggert . + + * lib/base64.h: Indent. + +2005-06-28 Simon Josefsson + + * doc/gnulib.texi (Library version handling): New section. + +2005-06-28 Jim Meyering + + * check-module (find_included_lib_files): Hard-code another + pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h + but modules/fts-lgpl (correctly) does not list those files. + + * modules/canonicalize (Files): Add lib/pathmax.h. + +2005-06-25 Simon Josefsson + + * modules/check-version: New file. + +2005-06-24 Paul Eggert + + * lib/canon-host.c (canon-host): Append trailing "," to 0 in + initializer of struct addrinfo, as an indication that we don't + care how many members the structure has. + +2005-06-24 Derek Price + and Bruno Haible + + Remove stat module & update lstat. + * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of + AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK. + * m4/stat.m4: Remove this file. + +2005-06-24 Derek Price + and Bruno Haible + + Remove stat module & update lstat. + * lib/stat.c: Remove this file... + (slash_aware_lstat): ...moving this content and its support... + * lib/lstat.c (rpl_lstat): ...into here. + * lib/lstat.h: New file. + +2005-06-24 Derek Price + and Bruno Haible + + Remove stat module & update lstat. + * config/srclist.txt (libc sources): Remove stat. + +2005-06-24 Derek Price + and Bruno Haible + + Remove stat module & update lstat. + * MODULES.html.sh (stat): Remove. + * MODULES.html: Regenerated. + * modules/lstat (Description): Correct function name. + (Files): Add "lstat.h". + (Depends-on): Remove stat, add xalloc, stat-macros. + * modules/stat: Remove this file. + (Include): Add "lstat.h", remove . + +2005-06-23 Paul Eggert + + * lib/mktime.c: Include even if !DEBUG. (From glibc.) + (ranged_convert): Don't save conversion in a temporary struct. + This causes a warning with GCC 4.0.0, and anyway in the typical + case it's not worth the extra 100 bytes or so of code. + (ranged_convert, __mktime_internal): When calling a function via a + pointer P, use P () rather than (*P) (), as we now assume C89 or + better. + +2005-06-22 Paul Eggert + + * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and + "who -r" failed to give output. Problem reported by Tim Waugh. + + * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant. + (xcalloc): Use it to avoid needless tests. + Problem reported by Jim Meyering. + +2005-06-20 Derek Price + + * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be + unnecessary for Autoconfs > 2.59c. + +2005-06-16 Sergey Poznyakoff + + * lib/argp.h (__option_is_short): Check upper limit of + __key. Isprint() requires its argument to have the value + of an unsigned char or EOF. + +2005-06-16 Jim Meyering + + * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1) + when either N or S is zero. + +2005-06-16 Derek Price + + * m4/bison.m4: Declare YACC & YFLAGS precious. + +2005-06-10 Paul Eggert + + * lib/fnmatch.c (fnmatch): If there is an encoding error in a + multibyte string or pattern, fall back on unibyte matching. + Problem reported by James Youngman. + +2005-06-08 Bruno Haible + + * modules/csharpcomp: New file. + * MODULES.html.sh (C#): Add csharpcomp. + +2005-06-08 Bruno Haible + + * m4/csharpcomp.m4: New file, from GNU gettext. + +2005-06-08 Bruno Haible + + * lib/csharpcomp.h: New file, from GNU gettext. + * lib/csharpcomp.c: New file, from GNU gettext. + * lib/csharpcomp.sh.in: New file, from GNU gettext. + +2005-06-08 Bruno Haible + + * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc + warning on mingw. + +2005-06-07 Derek Price + + Sync from CVS. + * lib/glob_.h: Indent nested #ifdef. + +2005-06-02 Paul Eggert + + Sync from coreutils. + Use "file name" when talking about file names, instead of "filename" + or "path", as per the GNU coding standards. + * lib/mkdir-p.c: Renamed from makepath.c. + (make_dir_parents): Renamed from make_path. All callers changed. + * lib/mkdir-p.h: Likewise. All includers changed. + * lib/filenamecat.c: Renamed from path-concat.c. + (file_name_concat): Renamed from path_concat. All callers changed. + [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT. + * lib/filenamecat.h: Likewise. All includers changed. + * lib/acl.c: Don't use "path" or "filename" to mean "file name" + in comments or local variable names. + * lib/basename.c: Likewise. + * lib/canonicalize.c, canonicalize.h: Likewise. + * lib/dirname.c, dirname.h: Likewise. + * lib/euidaccess.c: Likewise. + * lib/exclude.c: Likewise + * lib/fnmatch_.h, fnmatch_loop.c: Likewise. + * lib/fsusage.c, fsuage.h: Likewise. + * lib/fts.c, fts_.h: Likewise. + * lib/getcwd.c: Likewise. + * lib/getloadavg.c: Likewise. + * lib/mkstemp.c: Likewise. + * lib/mountlist.c, mountlist.h: Likewise. + * lib/openat.c, openat.h: Likewise. + * lib/readlink-stub.c: Likewise. + * lib/readutmp.c, readutmp.h: Likewise. + * lib/rename.c: Likewise. + * lib/rmdir.c: Likewise. + * lib/same.c: Likewise. + * lib/savedir.c: Likewise. + * lib/stripslash.c: Likewise. + * lib/tempname.c: Likewise. + * lib/xreadlink.c: Likewise. + * lib/exclude.c (excluded_file_name): Renamed from excluded_filename. + All uses changed. + * lib/exclude.h: Likewise. + + * lib/euidaccess.c (getuid, getgid, getuid, getegid) + [!defined _POSIX_VERSION]: Remove decls; not needed these days. + * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam) + [!defined _POSIX_VERSION]: Remove decls; not needed these days. + * lib/pathmax.h: Include unconditionally, since other + files have been getting away with it for years (MORE/BSD 4.3 + is extinct now). + * lib/userspec.c (getpwnam, getgrnam, getgrgid) + [!defined _POSIX_VERSION]: Remove decls; not needed these days. + + * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]: + Define to 256, not 255, as per modern POSIX. + +2005-06-02 Paul Eggert + + Sync from coreutils. + Use "file name" when talking about file names, instead of "filename" + or "path", as per the GNU coding standards. + * MODULES.html.sh: mkdir-p renamed from makepath. + filenamecat renamed from path-concat. + * modules/filenamecat: Renamed from modules/path-concat. + (Files): filenamecat.h and filenamecat.c renamed from + path-concat.h and path-concat.c. + (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT. + (Include): filenamecat.h, not path-concat.h. + * modules/mkdir-p: Renamed from modules/makepath. + (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and + makepath.c. + (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH. + (Include): mkdir-p.h, not makepath.h. + +2005-06-02 Paul Eggert + + Sync from coreutils. + * m4/mkdir-p.m4: Renamed from makepath.m4. + (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH. All uses changed. + Rename files from makepath.c to mkdir-p.c, and from + makepath.h to mkdir-p.h. + * m4/filenamecat.m4: Renamed from path-concat.m4. + (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT. All uses changed. + Rename files from path-concat.c to filenamecat.c, + and from path-concat.h to filenamecat.h. + * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean + "file name" in local variables or comments. + * m4/rename.m4: Likewise. + +2005-06-01 Bruno Haible + + * modules/csharpexec: New file. + * MODULES.html.sh (C#): New section. + +2005-06-01 Bruno Haible + + * m4/csharp.m4: New file, from GNU gettext. + * m4/csharpexec.m4: New file, from GNU gettext. + +2005-06-01 Bruno Haible + + * lib/csharpexec.h: New file, from GNU gettext. + * lib/csharpexec.c: New file, from GNU gettext. + * lib/csharpexec.sh.in: New file, from GNU gettext. + +2005-05-31 Derek Price + Paul Eggert + + Sync from cvs. + * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment. + +2005-05-31 Derek Price + Paul Eggert + + Sync from cvs. + * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment. + +2005-05-29 Derek Price + + * config/srclist.txt (glob_.h, glob.c): Add these files. + +2005-05-29 Derek Price + + * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section. + * modules/glob: New file. + * modules/getlogin_r: Add link to POSIX spec in description. + +2005-05-29 Derek Price + Paul Eggert + + * m4/glob.m4: New file. + +2005-05-29 Derek Price + Paul Eggert + + * lib/glob_.h, lib/glob.c: New files. + +2005-05-27 Paul Eggert + + * modules/fts (Files): Remove m4/inttypes-pri.m4. + * modules/fts-lgpl (Depends-on): Remove gettext. + +2005-05-27 Paul Eggert + + * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h, + and don't require gt_INTTYPES_PRI. + +2005-05-27 Paul Eggert + + * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return. + + * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts; + the configuration hassle isn't worth it. + Include inttypes.h and stdint.h unconditionally if FTS_DEBUG. + (LONGEST_MODIFIER, PRIuMAX): Remove. + +2005-05-27 Bruno Haible + + * lib/getlogin_r.h: Remove second include of . + +2005-05-26 Paul Eggert + + * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define + _POSIX_PTHREAD_SEMANTICS for Solaris. + +2005-05-25 Derek Price + + * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section. + +2005-05-25 Derek Price + Paul Eggert + + * modules/getlogin_r, m4/getlogin_r.m4: New files. + * lib/getlogin_r.c, getlogin_r.h: New files. + +2005-05-25 Bruno Haible + Derek Price + + * lib/getlogin_r.h: Simplify API documentation. + +2005-05-23 Derek Price + + * modules/minmax (Files): Add m4/minmax.m4. + (configure.ac): Add gl_MINMAX. + +2005-05-22 Paul Eggert + + * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function, + so that unistd-safer.h (GPL'ed code) need not be included. + +2005-05-22 Bruno Haible + + * m4/minmax.m4: New file. + Based on a patch by Derek Price . + +2005-05-22 Bruno Haible + + * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs. + (INT64_MIN): Fix definition. + Suggested by Paul Eggert . + + * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from + NEED_SIGNED_INT_TYPES. + + * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from + HAVE_SYSTEM_INTTYPES. + +2005-05-22 Bruno Haible + + * lib/minmax.h: Include only when it defines MIN, MAX. + Also include if it defines MIN, MAX. + Based on a patch by Derek Price . + +2005-05-21 Jim Meyering + + * modules/fts (Files): Add m4/inttypes-pri.m4. + (Depends-on): Add lstat and remove gettext. Alphabetize. + +2005-05-20 Paul Eggert + + New fts module. + * lib/fts.c: Don't include "cycle-check.h" or "hash.h". + (setup_dir, free_dir): New functions. + (enter_dir, leave_dir): Define trivial + alternatives of _LGPL_PACKAGE. Move to fts-cycle.c if !_LGPL_PACKAGE. + (HT_INITIAL_SIZE, ENTER_DIR): Remove. All uses removed. + (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir. + (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir): + Move to fts-cycle.c. + (fts_open): Use setup_dir. + (fts_close): Use free_dir. + (fts_read): Have just one copy of the ENTER_DIR code rather than three. + This adds a label and some gotos, but the alternatives were messier. + Check for memory allocation failure when entering a dir. + (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code. + * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro. + (FTS): New member fts_cycle, that is a union that contains the + old active_dir_ht and cycle_state. All uses changed to mention + fts_cycle.ht and fts_cycle.state. + * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of + fts.c, with the following changes: + (setup_dir, free_dir): New functions. + (enter_dir): Now returns bool. Return true if successful, false + if memory exhausted. All callers changed. + Do not bother partly cleaning up on + memory allocation failure; that is free_dir's job. + However, free ad if hash_insert fails, to avoid memory leak. + (enter_dir, leave_dir): Accommodate change to FTS by inspecting + fts->fts_options to see which union member to use. + +2005-05-20 Paul Eggert + + * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS. + (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros. + +2005-05-20 Paul Eggert + + * MODULES.html.sh (File system functions): Add fts, fts-lgpl. + +2005-05-20 Jim Meyering + + * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]: + Now a macro, to pacify GCC. + +2005-05-20 Eric Blake (tiny change) + + * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs + of -1. + +2005-05-20 Eric Blake (tiny change) + + * lib/chown.c (rpl_chown): Return -1 on failure. + +2005-05-18 Paul Eggert + + * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]): + Don't check for stddef.h. + * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we + don't use its results. + Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h, + since we include them unconditionally. Don't require + AM_STDBOOL_H, since stdbool is a prerequisite. + Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t + since we assume C89 or better. + Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT, + as we don't use their results. + Don't check for fchdir, memmove, memset, strrchr, as we use + them unconditionally. + * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define + GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it. + +2005-05-18 Paul Eggert + + * lib/canonicalize.c: Include canonicalize.h first, to test interface. + Include unconditionally, since we assume C89 now. + All uses of PTR_INT_TYPE replaced by ptrdiff_t. + * lib/fts.c: Include fts_.h first, to check interface. + Do not include intprops.h; no longer needed. + Include cycle-check.h and hash.h, since fts_.h no longer does. + Remove unnecessary casts of closedir to void. + (fts_build): Use a simpler method (not involving TYPE_SIGNED) to + decide whether to decrement nlinks. + * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed. + (FTS): Use struct hash_table * instead of Hash_table, so that + we no longer need to include hash.h here. + +2005-05-18 Jim Meyering + + * modules/dirfd (License): Change to LGPL. Most of the code + is already in the public domain. + +2005-05-18 Jim Meyering + + * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list. + Reported by Yoann Vandoorselaere. + +2005-05-17 Jim Meyering + + * m4/fts.m4: New file, from coreutils. + +2005-05-17 Jim Meyering + + * lib/fts.c, lib/fts_.h: New files, from coreutils. + +2005-05-14 Paul Eggert + + Sync from coreutils. + * m4/unlinkdir.m4: New file. + +2005-05-14 Paul Eggert + + Sync from coreutils. + * lib/unlinkdir.c, lib/unlinkdir.h: New files. + * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h, + lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h: + White space changes only. + * lib/makepath.c (make_path): Port to hosts where leading "//" is + special. + * lib/yesno.c: Include getline.h, not ctype.h. + (yesno): Don't remove leading white space; POSIX doesn't allow it. + Use getline to remove arbitrary restriction on response length. + +2005-05-14 Paul Eggert + + * config/srclist-update: Spell out "Street" in FSF postal + mail address; this is the style the FSF seems to prefer. + + * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh, + build-aux/missing, build-aux/mkinstalldirs: Sync from Automake; + this updates FSF postal mail address. + + Sync from coreutils. + * modules/unlinkdir: New file. + * modules/yesno (Depends-on): Add getline. + * MODULES.html.sh (File system functions): Add unlinkdir. + +2005-05-13 Paul Eggert + + * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c, + lib/strsep.h: + Change the initial comment to refer to GPL, not LGPL. + gnulib-tool will change it to LGPL as needed. + + * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c, + lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c, + lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h, + lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h, + lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c, + lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c, + lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c, + lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h, + lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h, + lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c, + lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h, + lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c, + lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset, + lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h, + lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c, + lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h, + lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c, + lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h, + lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c, + lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h, + lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c, + lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h, + lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c, + lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h, + lib/full-write.c, lib/full-write.h, lib/fwriteerror.c, + lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h, + lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h, + lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h, + lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h, + lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c, + lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c, + lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h, + lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h, + lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c, + lib/getusershell.c, lib/group-member.c, lib/group-member.h, + lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h, + lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c, + lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h, + lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c, + lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h, + lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c, + lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h, + lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c, + lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h, + lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c, + lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c, + lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c, + lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c, + lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c, + lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c, + lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c, + lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h, + lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c, + lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c, + lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h, + lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c, + lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h, + lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c, + lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c, + lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c, + lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c, + lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h, + lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c, + lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c, + lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c, + lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c, + lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c, + lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h, + lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h, + lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h, + lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c, + lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c, + lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h, + lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c, + lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c, + lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c, + lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c, + lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h, + lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h, + lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h, + lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h, + lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h, + lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h, + lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c, + lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c, + lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h, + lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h, + lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c, + lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h, + lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, + lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h, + lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c, + lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, + lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h, + lib/yesno.c, lib/yesno.h: + Update FSF postal mail address. + +2005-05-13 Paul Eggert + + * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c, + tests/test-memmem.c, tests/test-stpncpy.c: + Update FSF postal mail address. + +2005-05-13 Bruno Haible + + * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t, + int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX, + UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, + INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN, + INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C): + Add support for 64-bit integers in the MSVC compiler. + +2005-05-12 Sergey Poznyakoff + + * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST + +2005-05-12 Eric Blake (tiny change) + + * gnulib-tool (func_import): Sort and uniquify recommended includes. + +2005-05-11 Paul Eggert + + * doc/getdate.texi (General date syntax): Don't say that date + date --iso-8601=ns generates acceptable dates; it doesn't yet. + Problem reported by Nic Ferrier. + +2005-05-10 Yoann Vandoorselaere + + * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are + specified in ai_socktype. Fix invalid ai_protocol + check. ai_protocol is usually set to 0 or depending on + ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP. Checking for + SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid. Set + ai_socktype / ai_protocol in the returned addrinfo structure. + +2005-05-10 Simon Josefsson + + * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from + Yoann Vandoorselaere . + +2005-05-10 Karl Berry + + * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address + (from http://www.gnu.org/licenses). + * doc/COPYING.LIB: also rename to COPYING.LESSER. + * doc/COPYING.DOC: remove; per rms, only needed in doc files, so + fdl.texi suffices. + +2005-05-10 Karl Berry + + * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB. + (COPYING.DOC): remove. + + * config/srclist-update: new FSF address. + +2005-05-10 Derek Price + + * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when + possible. + +2005-05-09 Yoann Vandoorselaere + Bruno Haible + + * modules/inet_ntop: New file. + * MODULES.html.sh (Support for systems lacking POSIX:2001): Add + inet_ntop. + +2005-05-09 Yoann Vandoorselaere + Bruno Haible + + * m4/inet_ntop.m4: New file. + +2005-05-09 Yoann Vandoorselaere + Bruno Haible + + * lib/inet_ntop.h: New file. + * lib/inet_ntop.c: New file, from glibc with modifications. + +2005-05-09 Paul Eggert + + * modules/time_r (License): Change to LGPL. + * modules/extensions (License): Change to LGPL. Actually, + the license is more permissive than that, but currently gnulib-tool + doesn't know how to handle more-permissive licenses. + + * modules/stat-macros (Depends-on): Don't depend on stat-macros (!). + Problem reported by Dave Love. + +2005-05-08 Jim Meyering + + * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing + blank. + +2005-05-06 Paul Eggert + + * modules/argmatch (Depends-on): Add stdbool. + * modules/backupfile (Depends-on): Likewise. + * modules/chdir-long (Depends-on): Likewise. + * modules/closeout (Depends-on): Likewise. + * modules/cycle-check (Depends-on): Likewise. + * modules/dirname (Depends-on): Likewise. + * modules/fnmatch (Depends-on): Likewise. + * modules/fsusage (Depends-on): Likewise. + * modules/fwriteerror (Depends-on): Likewise. + * modules/getcwd (Depends-on): Likewise. + * modules/getloadavg (Depends-on): Likewise. + * modules/hard-locale (Depends-on): Likewise. + * modules/makepath (Depends-on): Likewise. + * modules/mountlist (Depends-on): Likewise. + * modules/nanosleep (Depends-on): Likewise. + * modules/posixtm (Depends-on): Likewise. + * modules/quotearg (Depends-on): Likewise. + * modules/readtokens (Depends-on): Likewise. + * modules/readtokens0 (Depends-on): Likewise. + * modules/readutmp (Depends-on): Likewise. + * modules/save-cwd (Depends-on): Likewise. + * modules/strftime (Depends-on): Likewise. + * modules/userspec (Depends-on): Likewise. + * modules/utimecmp (Depends-on): Likewise. + * modules/xgetcwd (Depends-on): Likewise. + * modules/xnanosleep (Depends-on): Likewise. + * modules/xstrtod (Depends-on): Likewise. + * modules/yesno (Depends-on): Likewise. + +2005-05-05 Paul Eggert + + * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid + needless checks. + +2005-05-01 Paul Eggert + + Merge from coreutils. Among other things, + add bulletproofing for cases where stdin, stdout, or stderr are closed. + * lib/fd-safer.c: New file. + * lib/fcntl-safer.h, open-safer.c: Remove. + * lib/chdir-long.c: Fix comment "fetish" -> "coreutils". + * lib/dup-safer.c: Include unistd-safer.h first. + Don't include errno.h. + (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work. + * lib/file-type.h: Don't assume invoker included sys/stat.h first. + * lib/file-type.c: Rely on file-type.h change. + * lib/getloadavg.c: Include unistd-safer.h. + (getloadavg): Use safer open. + * lib/getusershell.c: Include "stdio-safer.h". + (getusershell): Use safer fopen. + * lib/long-options.c (long_options): Use NULL rather than 0. + * lib/modechange.h (mode_free): Remove; all callers changed to invoke + 'free'. + * lib/modechange.c: Likewise. + xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed. + (MODE_DONE): New constant. + (struct mode_change): Remove 'next' member. + (make_node_op_equals): New function; like the old one of the + same name, except it allocates an array. + (mode_compile, mode_create_from_ref): Use it. + (mode_compile): Allocate result as an array, not a linked list. + Parse octal string ourself, so that we catch mistakes like "+0". + (mode_adjust): Arg is an array, not a linked list. + * lib/modechange.c: Include stat-macros.h, xalloc.h. + (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR): + (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU): + (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS): + Remove. This is now stat-macros.h's job. + (talloc): Remove. All callers replaced by xalloc, so that + our invokers don't have to worry about reporting memory failures. + (make_node_op_equals): Remove. + (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING): + New constants. + (struct mode_change): Moved here from modechange.h. + (mode_append_entry): Remove. + (mode_compile): Remove MASKED_OPS arg, since it encouraged + apps to have incorrect behavior. Use simpler algorithm for head + and tail. Don't futz with umask; that's now the job of mode_adjust. + Detect more invalid usages rather than having somewhat-random behavior. + Don't insert an "a=" action, as that leads to incorrect behavior. + (mode_compile, mode_create_from_ref): Return NULL on error instead + of an enum, since now there's only one way to have an error. All + callers changed. + (mode_adjust): Accept new arg UMASK_VALUE, and interpret it + at the correct time. Simplify calculation of "+u" and its ilk. + Don't mishandle "+X". + (mode_free): Remove "register" and localize decls. + * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING): + (struct mode_change): Move to modechange.c; callers don't + need to see this stuff. + (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL): + (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove. + (mode_change, mode_adjust): Reflect the new signatures noted above. + * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros + that might redefine system include files. + (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro. + (my_usleep): Use NULL rather than (void *) 0. + (rpl_nanosleep) [!defined SA_NOCLDSTOP]: + Use siginterrupt to specify that system calls should be interrupted. + (rpl_nanosleep): Move initialization of suspended closer to call of + my_usleep. + * lib/readutmp.h (read_utmp): New arg OPTIONS. All uses changed. + * lib/readutmp.c: Likewise. Include signal.h, stdbool.h. + (desirable_utmp_entry): New function. + (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation + using x2nrealloc, to simplify logic. + (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in + size calculation. Do not assume utmp file is a regular file. + * lib/readutmp.h (UT_PID): Moved here from ../src/who.c. + (READ_UTMP_CHECK_PIDS): New constant. + * lib/save-cwd.c: Include unistd-safer.h. + (save_cwd): Use fd_safer. + * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove. + [!_LIBC] Include "stat-macros.h" instead. + * lib/unistd-safer.h (fd_safer): New decl. + +2005-05-01 Paul Eggert + + * modules/getloadavg (Depends-on): Add unistd-safer. + * modules/getusershell (Depends-on): Add stdio-safer. + * modules/lstat (Depends-on): Remove xalloc. + * modules/mkstemp (Depends-on): Add stat-macros. + * modules/modechange (Depends-on): Remove xstrtol. + Add stat-macros, xalloc. + * modules/save-cwd (Depends-on): Add unistd-safer. + * modules/stdio-safer (Makefile.am): Remove lib_SOURCES. + * modules/unistd-safer (Files): Add lib/fd-safer.c + (Makefile.am): Remove lib_SOURCES. + + * MODULES.html.sh (Enhancements for POSIX:2001 functions): + Remove fcntl-safer; unistd-safer supersedes it. + +2005-05-01 Paul Eggert + + * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require + AC_HEADER_STAT. + * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise. + (gl_PREREQ_CHOWN): Remove. + * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling + it. Don't require AC_HEADER_STAT. + (gl_PREREQ_LSTAT): Remove. + * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once. + Don't require AC_HEADER_STAT. + * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT. + (gl_PREREQ_RMDIR): Remove. + * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't + mention stat-macros.h or AC_HEADER_STAT, since we'll make + the stat-macros module a prerequisite. + * m4/file-type.m4 (gl_FILE_TYPE): Likewise. + * m4/filemode.m4 (gl_FILEMODE): Likewise. + * m4/makepath.m4 (gl_MAKEPATH): Likewise. + * m4/modechange.m4 (gl_MODECHANGE): Likewise. + * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for + variable names. + * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from + fetish_FUNC_RMDIR_NOTEMPTY. All uses changed. Use gl_ for + variable prefixes. + * m4/fcntl-safer.m4: Remove. + * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ. + * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise. + Invoke gl_PREREQ_FD_SAFER. + (gl_PREREQ_FD_SAFER): New macro. + * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt. + * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE. + Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible. + Remove duplicate call to AC_LIBOBJ(readutmp). + (gl_PREREQ_READUTMP): Remove. All uses inlined. + + * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for + MAP_ANON. Problem reported by Moriyoshi Koizumi to bug-cvs. + +2005-05-01 Paul Eggert + + * MODULES.html.sh (Misc): Add byteswap. + +2005-05-01 Oskar Liljeblad + + * modules/getcwd (Depends-on): Add extensions. + * modules/openat (Depends-on): Likewise. + +2005-05-01 Oskar Liljeblad + + * modules/byteswap: New file. + +2005-05-01 Oskar Liljeblad + + * m4/byteswap.m4: New file. + +2005-05-01 Oskar Liljeblad + + * lib/byteswap_.h: New file. + +2005-04-25 Karl Berry + + * m4/gettext.m4: Update from GNU gettext 0.14.4. + +2005-04-25 Albert Chin + + * lib/regex.c: Include , as a workaround to a Compaq Desktop + Toolkit C bug. + +2005-04-21 Oskar Liljeblad + + * gnulib-tool (Options): Add -s for --symlink/--symbolic. + (func_ln_if_changed) Remove forcibly for no error message + in case file does not exist. + +2005-04-19 Simon Josefsson + + * gnulib-tool (Options): Make --symlink mean --symbolic. + +2005-04-18 Oskar Liljeblad + + * doc/gnulib.texi (Initial import): Fix. Mention --aux-dir. + +2005-04-16 Simon Josefsson + + * modules/getpass-gnu (Makefile.am): Don't mention getpass.h. + +2005-04-15 Simon Josefsson + + * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES. + +2005-04-15 Simon Josefsson + + * gnulib-tool: Rename --symlink to --symbolic. + +2005-04-15 Oskar Liljeblad + + * gnulib-tool: Add -s, --symlink option to gnulib-tool to make + symbolic links to files instead of copying/moving. Add --aux-dir, + specifying directory relative --dir where auxiliary build tools + are placed. + +2005-04-14 Bruno Haible + + * modules/allocsa (License): Change to LGPL. + Requested by Yoann Vandoorselaere . + +2005-04-13 Paul Eggert + + * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so + that "UTC +1 second" continues to work. Problem reported + by Dmitry V. Levin. + (relunit_snumber): New rule. + (relunit): Use it. + +2005-04-12 Paul Eggert + + * lib/getdate.y (universal_time_zone_table): New constant. + (time_zone_table): Remove GMT, UT, UTC entries; they're now in + universal_time_zone_table. + (lookup_zone): Prefer universal_time_zone_table to + local_time_zone_table, so that "GMT" time stamps are allowed in + London during the summer. Problem reported by Ian Abbott. + +2005-04-12 Jim Meyering + + * lib/human.c (humblock): Set *options even when returning due to + xstrtoumax conversion failure. Thanks to a used-uninitialized + warning from gcc-4. + +2005-04-09 Jim Meyering + + * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's + -Wuninitialized: initialize tm0.tm_year. + +2005-04-04 Paul Eggert + + * lib/getdate.y (parser_control): rels_seen is now a boolean, not a + count, since there's no maximum. All uses changed. + Add member dsts_seen. + (local_zone): Accumulate dsts_seen rather than relying on tm_isdst + not being INT_MAX. + (get_date): Initialize dsts_seen, and check that it doesn't go over 1. + Use pc_rels_seen to decide whther a date is absolute. + + * lib/getdate.y (number): Don't overwrite year. + (get_date): Initialize pc.year.digits to 0, not 4, to enable above + check. + +2005-04-02 Simon Josefsson + + * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny + patch from Yoann Vandoorselaere . + +2005-03-28 Eric Blake (tiny change) + + * m4/getcwd-path-max.m4: Return success on systems such as Cygwin + where no absolute path name can be longer than PATH_MAX. + +2005-03-27 Jim Meyering + + * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated. + +2005-03-26 Paul Eggert + + * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): + "one's complement" -> "ones' complement" in comment, as per Knuth. + "value of type" -> "type or expression" in comment. + * lib/mktime.c, strftime.c: Propagate intprops.h comment nits. + +2005-03-26 Jim Meyering + + Comment nits. + * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'. + Correct typos: s/or/of/. + +2005-03-26 Jim Meyering + + * modules/check-include-files: Move to ../ and rename to... + * check-module: ...this. + +2005-03-25 Jim Meyering + + * modules/xvasprintf (Files): Add xalloc.h. + +2005-03-23 Paul Eggert + + * modules/gettext (Files): config/config.rpath -> + build-aux/config.rpath + * modules/iconv (Files): Likewise. + Problem reported by Oskar Liljeblad. + +2005-03-23 Jim Meyering + + * modules/check-include-files: New script to check for + missing dependencies, multiple includes, etc. + + * modules/c-strtold (Depends-on): Add xalloc. + * modules/c-strtod (Depends-on): Add xalloc. + * modules/hash (Depends-on): Add xalloc. + (Files): Remove lib/xalloc.h. + + * modules/gethrxtime (Files): Add lib/gethrxtime.h. + * modules/userspec (Files): Add lib/inttostr.h. + +2005-03-23 Jim Meyering + + * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'. + +2005-03-22 Jim Meyering + + * modules/stat-macros: New module. + * modules/canonicalize, modules/euidaccess, modules/file-type, + * modules/filemode, modules/lchown, modules/makepath, + * modules/rmdir, modules/stat: Depend on new stat-macros module + rather than listing lib/stat-macros.h manually. + Don't add stat-macros.h to lib_SOURCES or list it in Files: section. + +2005-03-22 Jim Meyering + + * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro. + +2005-03-22 Bruno Haible + + * config/srclist.txt: Replace target directory 'config' with + 'build-aux'. + * config/config.guess, config.sub, config.rpath, depcomp, install-sh: + * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to + ../build-aux/. + +2005-03-21 Paul Eggert + + * modules/chdir-long (Depends-on): Add mempcpy. + + * modules/acl, modules/backupfile, modules/c-strtod, + modules/c-strtold, modules/canon-host, modules/canonicalize, + modules/cloexec, modules/closeout, modules/dirfd, modules/dirname, + modules/exclude, modules/exitfail, modules/file-type, + modules/filemode, modules/fpending, modules/fsusage, modules/getcwd, + modules/getdate, modules/getline, modules/getpagesize, + modules/getpass, modules/getugroups, modules/group-member, + modules/hard-locale, modules/hash, modules/human, modules/idcache, + modules/inttostr, modules/long-options, modules/makepath, + modules/md5, modules/memcasecmp, modules/memcoll, + modules/modechange, modules/mountlist, modules/path-concat, + modules/pathmax, modules/physmem, modules/posixtm, modules/posixver, + modules/quote, modules/quotearg, modules/readtokens, modules/readutmp, + modules/safe-read, modules/safe-write, modules/same, modules/savedir, + modules/settime, modules/sha1, modules/sig2str, modules/strdup, + modules/strftime, modules/strndup, modules/strverscmp, + modules/timespec, modules/unlocked-io, modules/userspec, + modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol, + modules/yesno: + Remove lib_SOURCES line from Makefile.am section, as this is now + done automatically by the corresponding Autoconf macro. + +2005-03-21 Jim Meyering + + Changes imported from coreutils. + + * lib/cycle-check.c: Don't include xalloc.h. + + * lib/path-concat.c: Don't include assert.h. + (path_concat): Remove assertion that would have triggered + for ABASE starting with more than one slash. + Reported by Andreas Schwab. + + * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT + properly when ABASE is an absolute file name. + Correct the description of this function. + Include . + Add an assertion and a test driver. + This fixes a bug introduced on 2004-07-02. + Andreas Schwab reported the resulting failure of cp --parents: + http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html + +2005-03-21 Jim Meyering + + * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR. + * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl. + +2005-03-21 Jim Meyering + and Paul Eggert + + * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4, + m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4, + m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4, + m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4, + m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4, + m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4, + m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4, + m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4, + m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4, + m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4, + m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4, + m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4, + m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4, + m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4, + m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4, + m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4: + Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files + for these modules. + +2005-03-18 Paul Eggert + + * lib/strftime.c (my_strftime): If the underlying strftime returns 0 + (which shouldn't happen), generate nothing instead of returning 0 + immediately, so that nstrftime (NULL, ...) doesn't return 0. + +2005-03-16 Bruno Haible + + * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of + HAVE_LONGLONG_64BIT. + +2005-03-16 Bruno Haible + + * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of + HAVE_LONGLONG_64BIT. + +2005-03-16 Bruno Haible + + * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of + HAVE_LONGLONG_64BIT. + +2005-03-15 Paul Eggert + + * lib/strftime.c (my_strftime): Prepend space to format so that we can + reliably distinguish strftime failure from empty output on POSIX + hosts. + +2005-03-15 Paul Eggert + + * lib/iconvme.c (SIZE_MAX): New macro, if not already defined. + (iconv_string): Don't guess a size-zero buffer, as that might cause + buffer overrun. Instead, avoid multiplying by MB_LEN_MAX if the + result would be 'too large', where 'too large' is (heuristically) + the square root of SIZE_MAX, divided by MB_LEN_MAX to allay + overflow concerns. This will prevent some unwanted malloc failures + when the inputs are very large. + +2005-03-15 Karl Berry + + * config/srclist.txt (config.rpath): from gettext. + * config/config.rpath: update. + +2005-03-15 Bruno Haible + + * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not' + to 'negate'. + + * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p + variable. + + * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc + results. + +2005-03-14 Simon Josefsson + + * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love + . + +2005-03-14 Paul Eggert + + * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT, + TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from + intprops.h. + * lib/strtol.c: Likewise. + +2005-03-14 Jim Meyering + + * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT + && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[] + to be nonzero so that we (and caller) can detect the difference + between a valid zero-length expansion and an error return, even + when the underlying strftime fails before writing anything into + that location. + +2005-03-14 Bruno Haible + + * m4/lib-link.m4, gettext.m4, nls.m4, po.m4: + Update from GNU gettext 0.14.3. + +2005-03-10 Jim Meyering + + * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir. + +2005-03-10 Jim Meyering + + * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long + so that this module works on systems without fchdir. + +2005-03-09 Paul Eggert + + Factor int-properties macros into a single file, except for + glibc-related files. + * lib/intprops.h: New file. + * lib/getloadavg.c: Include it instead of limits.h. + (INT_STRLEN_BOUND): Remove. + * lib/human.c: Include intprops.h. + (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself. + * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than + 302/1000. + * lib/inttostr.h: Include intprops.h instead of limits.h. + (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove. + * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros, + for consistency with intprops.h. + (time_t_is_integer, twos_complement_arithmetic): Use them. + * lib/sig2str.h: Include , intprops.h. + (INT_STRLEN_BOUND): Remove. + * lib/strftime.c (TYPE_SIGNED): Remove. + (INT_STRLEN_BOUND): Switch to same implementation as intprops.h. + * lib/strtol.c: Adjust comments to match intprops.h. + * lib/userspec.c: Include intprops.h. + (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove. + * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise. + * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT + instead of rolling our own expressions. + * lib/xstrtol.c: Include xstrtol.h first, to test interface. + + * lib/strftime.c: Include . Use bool where appropriate, + instead of int. + (my_strftime): Do not mishandle years close to INT_MAX, by doing + the right thing even if adding 1900 would overflow. Similarly + for tm_mon + 1 and tm_yday + 1. + Make %Y always equivalent to %C%y, and similarly for %G and %g. + (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional. + (DO_SIGNED_NUMBER): New macro. + (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1. + +2005-03-07 Bruno Haible + + * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions. + +2005-03-07 Bruno Haible + + * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks. + +2005-03-04 Derek R. Price + + * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions. + (func_import): Only replace files via --import when they have actually + changed. + +2005-03-03 Derek R. Price + + * m4/mmap-anon.m4: New file. + * m4/pagealign_alloc.m4: New file. + +2005-03-03 Derek R. Price + Bruno Haible + + * modules/pagealign_alloc: New file. + * MODULES.html.sh (Memory management functions): Add pagealign_alloc. + +2005-03-03 Derek R. Price + Bruno Haible + + * lib/pagealign_alloc.h: New file. + * lib/pagealign_alloc.c: New file. + +2005-03-03 Bruno Haible + + * m4/inttypes.m4, isc-posix.m4, once-only.m4: + Use an all-permissive copyright notice, recommended by RMS. + +2005-03-02 Bruno Haible + + * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because + of AIX, the replacement has to be done only after is + included, therefore not in config.h. stpncpy.h does the replacement, + and stpncpy.c uses it. + +2005-03-02 Bruno Haible + + * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that + stpncpy.c uses it. + +2005-03-01 Paul Eggert + + Remove workaround for bug in Linux kernel 2.6.8 or thereabouts. + The workaround isn't strictly needed for POSIX conformance, and + it's too much of a pain to configure and maintain. We'll ask + people to fix their kernels instead. + * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h. + (NANOSLEEP_BUG_WORKAROUND): Remove. + (xnanosleep): Remove the workaround. + +2005-03-01 Paul Eggert + + * modules/gettime (Makefile.am): Remove lib_SOURCES line. + Reported by Derek Price. + (Include): Add "timespec.h". + + * modules/xnanosleep (Depends-on): Remove gethrxtime. + +2005-03-01 Paul Eggert + + * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting + to detect nanosleep bug. + +2005-03-01 Bruno Haible + + * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed. + +2005-02-26 Paul Eggert + + * modules/gethrxtime: New file. + * modules/xnanosleep (Files): Add m4/xnanosleep.m4. + (Depends-on): Add gethrxtime. + (configure.ac): Add gl_XNANOSLEEP. + (Makefile.am): Remove lib_SOURCES line. + +2005-02-25 Paul Eggert + + * m4/gethrxtime.m4, m4/xnanosleep.m4: New files. + * m4/gettime.m4 (gl_GETTIME): Check for nanotime. + +2005-02-25 Paul Eggert + + * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files. + * lib/timespec.h (gettime): Return void, since it always + succeeds now. All uses changed. + * lib/gettime.c (gettime) Likewise. + [HAVE_NANOTIME]: Prefer nanotime. + Assume gettimeofday succeeds, as POSIX requires. + Assime time () succeeds, since other code already does. + * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h. + (timespec_subtract): Remove. + (NANOSLEEP_BUG_WORKAROUND): New constant. + (xnanosleep): Use gethrxtime rather than gettime; this simplifies + things considerably. Use it only on GNU/Linux hosts, since the + workaround shouldn't be needed elsewhere. + +2005-02-24 Bruno Haible + + * modules/gettext (Files): Add m4/glibc2.m4. + +2005-02-24 Bruno Haible + + * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4: + * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4: + * m4/progtest.m4: + Update from GNU gettext 0.14.2. + * m4/glibc2.m4: New file, from GNU gettext 0.14.2. + +2005-02-24 Bruno Haible + + * lib/localcharset.c: Update from GNU gettext 0.14.2. + * lib/config.charset: Update from GNU gettext 0.14.2. + +2005-02-24 Bruno Haible + + * lib/gettext.h: Update from GNU gettext 0.14.2. + +2005-02-23 Simon Josefsson + + * m4/iconvme.m4: New file. + +2005-02-23 Jim Meyering + + * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's + change. + Thanks to Bruno Haible for catching it. + +2005-02-22 Simon Josefsson + + * modules/iconvme: New file. + + * MODULES.html.sh: Add iconvme. + +2005-02-22 Simon Josefsson + + * lib/iconvme.h, lib/iconvme.c: New files, from libc. + +2005-02-22 Simon Josefsson + + * config/srclist.txt: Sync iconvme.h, iconvme.c from libc. + +2005-02-22 Jim Meyering + + * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo: + s/ifndef/ifdef/. + +2005-02-20 Neil Conway + + * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is + returned by OSX/Darwin if the specified buffer is not large + enough for the hostname. + +2005-02-03 Sergey Poznyakoff + + * lib/argp-help.c (__argp_help): Create a fake struct argp_state and + pass it to _help, otherwise the latter coredumps trying to + dereference state.root_argp. + +2005-02-03 Paul Eggert + + * modules/chdir-long (Depends-on): Add memrchr. + * modules/memrchr (Files): Add lib/memrchr.h. + (Include): "memrchr.h". + +2005-02-03 Paul Eggert + + * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h. + +2005-02-03 Paul Eggert + + * lib/memrchr.h: New file. + * lib/chdir-long.c: Include it. + * lib/memrchr.c [!defined _LIBC]: Include it rather than + Don't bother including stddef.h. + +2005-02-01 Paul Eggert + + * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double + inclusion. + Include , for dev_t. + (ME_DUMMY, ME_REMOTE): Move from here.... + * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here. + (ME_DUMMY): Count "subfs" as a dummy. Problem reported by + Dmitry V. Levin. + Include mountlist.h first, to test the interface. + +2005-01-29 Bruno Haible + + * lib/progname.c (program_name): Initialize. + Needed when linking statically on MacOS X. + +2005-01-28 Paul Eggert + + Sync from coreutils. + * modules/getloadavg (Files): Remove m4/getloadavg.m4. + (Depends-on): Add c-strtod. + (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG. + +2005-01-28 Paul Eggert + + Sync from coreutils. + * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove. + + Remove files that are specific to coreutils. + * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove. + +2005-01-28 Bruno Haible + + * modules/javacomp: New file. + * MODULES.html.sh (Java): Add javacomp. + +2005-01-28 Bruno Haible + + * m4/javacomp.m4: New file, from GNU gettext. + +2005-01-28 Bruno Haible + + * lib/javacomp.sh.in: New file, from GNU gettext. + * lib/javacomp.h: New file, from GNU gettext. + * lib/javacomp.c: New file, from GNU gettext. + +2005-01-26 Simon Josefsson + + * lib/gai_strerror.c: Use GPL in header. + +2005-01-26 Bruno Haible + + * modules/javaexec: New file. + * MODULES.html.sh (Java): Add javaexec. + +2005-01-26 Bruno Haible + + * m4/javaexec.m4: New file, from GNU gettext. + +2005-01-26 Bruno Haible + + * lib/javaexec.sh.in: New file, from GNU gettext. + * lib/javaexec.h: New file, from GNU gettext. + * lib/javaexec.c: New file, from GNU gettext. + +2005-01-24 Sergey Poznyakoff + + * modules/lchown (Depends-on): Remove lchown.h + +2005-01-24 Sergey Poznyakoff + + * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H + must be defined if the header file was not found, in order + to provide a replacement. Reported by Todd Vierling + +2005-01-24 Sergey Poznyakoff + + * lib/argp-help.c (hol_entry_help): Avoid using non-constant + initializers for struct pentry_state. + (__argp_error): Check return value of __asprintf + (__argp_failure): Translate error message + + * lib/argp-parse.c: Removed braces around the expansion of N_() + +2005-01-23 Paul Eggert + + * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4, + backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4, + c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4, + clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4, + dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4, + exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4, + file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4, + free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4, + getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4, + getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4, + getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4, + gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4, + group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4, + idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4, + link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4, + makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4, + memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4, + memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4, + modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4, + path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4, + posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4, + readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4, + restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4, + savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4, + sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4, + stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4, + strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4, + strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4, + strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4, + time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4, + uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4, + unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4, + utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4, + xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4, + xstrtol.m4, xstrtoumax.m4, yesno.m4: + Use an all-permissive copyright notice, recommended by RMS. + +2005-01-21 Paul Eggert + + * modules/chdir-long (Depends-on): Remove mempcpy. + +2005-01-21 Jim Meyering + + * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the + same value as for Solaris 9. + + * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on + component length. This included changing the parameter to be + of type `char *' rather than `char const *'. + * lib/chdir-long.h (chdir_long): Update prototype. + + * lib/openat.c (fdopendir, fstatat): New functions. + * lib/openat.h: Include headers required for use of DIR and struct + stat. + [AT_SYMLINK_NOFOLLOW]: Define. + (fdopendir, fstatat): Add prototypes. + +2005-01-21 Bruno Haible + + * modules/classpath: New file. + * MODULES.html.sh (Java): Add classpath. + +2005-01-21 Bruno Haible + + * lib/classpath.h: New file, from GNU gettext. + * lib/classpath.c: New file, from GNU gettext. + +2005-01-20 Simon Josefsson + + * modules/version-etc-fsf: New file. + +2005-01-20 Simon Josefsson + + * lib/version-etc-fsf.c: New file, with version_etc_copyright. + * lib/version-etc.c: Remove version_etc_copyright. + * lib/version-etc.h (version_etc_copyright): Use [] instead of * in + prototype, suggested by Paul Eggert . + +2005-01-20 Simon Josefsson + + * lib/base64.h (isbase64): Add. + + * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of + using a unsigned prototype, don't inline. + (base64_decode): Use it. + +2005-01-20 Paul Eggert + + * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume + it. + +2005-01-20 Paul Eggert + + * lib/save-cwd.c (save_cwd): Remove code to support the case + where fchdir is missing or flaky. + +2005-01-20 Paul Eggert + + * MODULES.html.sh (Command-line arguments): Add version-etc-fsf. + +2005-01-19 Paul Eggert + + * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h; + AC_LIBSOURCES now does this. + * MODULES.html.sh (Sizes of integer types ): New element, + with new ullong_max module. + +2005-01-19 Bruno Haible + + * modules/sh-quote: New file. + * MODULES.html.sh (Executing programs): Add sh-quote. + +2005-01-19 Bruno Haible + + * lib/sh-quote.h: New file, from GNU gettext. + * lib/sh-quote.c: New file, from GNU gettext. + +2005-01-18 Paul Eggert + + Merge from coreutils. + * m4/ullong_max.m4: New file. + * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX. + (gl_MACROS): Assume localeconv exists. + +2005-01-18 Paul Eggert + + Merge changes from coreutils, as described below in several + changelogs dated today. + + * lib/save-cwd.c: Include "save-cwd.h" before other include files. + (O_DIRECTORY): Remove; not needed here, since "." must be + a directory. All uses removed. + (save_cwd): Use __sgi || __sun, not sun || __sun. __sun is + universal on Suns, and we also need to test for IRIX. + Revamp code to use 'if' rather than '#if'. + Avoid unnecessary comparison of cwd->desc to 0. + + * lib/utimens.c (futimens): Robustify the previous patch, by checking + for known valid error numbers rather than observed invalid ones. + +2005-01-18 Paul Eggert + + * modules/ullong_max: New file. + + * modules/chdir-long, modules/openat: New files. + * modules/save-cwd (Depends-on): Depend on chdir-long. + (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES. + +2005-01-18 Jim Meyering + + Merge from coreutils. + * m4/chdir-long.m4, m4/openat.m4: New files. + * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c, + save-cwd.h. Add AC_LIBOBJ for save-cwd. + * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown + is sane and DOES follow symlinks. Besides, testing 20 different + systems found no broken chown implementations. + Prompted by a change in rsync's copy of this macro. + * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG. + + * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES. + + * m4/utimes.m4: Work around tests/touch/empty-file failure on a system + (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes' + NULL-means-set-to-current-time semantics. + Remove temporary file immediately, rather than waiting + for configure's at-exit trap code to do it. + +2005-01-18 Jim Meyering + + * lib/version-etc.c (version_etc_copyright): Update copyright date. + + * lib/utimens.c (futimens): Account for the fact that futimes + can also fail with errno == ENOSYS or errno == ENOENT. + Patch from Dmitry V. Levin. + + Change the name of the robust chdir function from chdir to chdir_long. + * lib/save-cwd.c: Include chdir-long.h rather than chdir.h. + (restore_cwd): Use chdir_long, not chdir. + * lib/chdir-long.c: Renamed from chdir.c. + * lib/chdir-long.h: Renamed from chdir.h. + [!defined PATH_MAX]: Define chdir_long to chdir on systems like the + Hurd. + +2005-01-18 Bruno Haible + + * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4: + * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4: + * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4: + * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4: + * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4: + * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4: + * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4: + * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4: + * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4: + * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4: + * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4: + * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4: + * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4: + * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4: + Use an all-permissive copyright notice, recommended by RMS. + +2005-01-18 Bob Proulx + + * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to + simplify offsetof() macro construct to avoid compile failure with + native HP-UX 11.0 ANSI C compiler. + +2005-01-17 Bruno Haible + + * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming, + redundant because stpncpy.m4 takes care of it. + +2005-01-17 Bruno Haible + + * lib/progreloc.c: Include xalloc.h instead of xmalloc.h. + +2005-01-17 Bruno Haible + + * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be + used. + +2005-01-17 Bruno Haible + + * lib/fwriteerror.h (fwriteerror): Change specification to include + fclose. + * lib/fwriteerror.c: Include . + (fwriteerror): At the end, close the file stream. Record whether + stdout was already closed. + +2005-01-17 Bruno Haible + + * lib/execute.c (environ): Declare if needed. + * lib/pipe.c (environ): Likewise. + Reported by Michael Schloh von Bennewitz . + +2005-01-11 Sergey Poznyakoff + + * modules/argp: Depend on vsnprintf + +2005-01-10 Jim Meyering + + * modules/closeout (Depends-on): Add atexit. + +2005-01-06 Bruno Haible + + * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here. + +2005-01-04 Paul Eggert + + * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional + definitions to be after all include files, to avoid collisions. + Problem reported by Bob Proulx. + +2005-01-04 Jim Meyering + + Changes imported from coreutils. + * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX" + as the mkstemp template, use a temporary directory and an + 8.3-friendly template to avoid trouble on systems like DJGPP. + Reported by Juan M. Guerrero via Stepan Kasal. + * m4/(gl_FUNC_MKSTEMP): Include for the declaration of + close. Remove the temporary directory right away, rather than waiting + for configure's at-exit trap code to do it. + Suggestion from Stepan Kasal. + +2005-01-01 Simon Josefsson + + * gnulib-tool: Print #include directives when --import'ing. + +2004-12-28 Simon Josefsson + + * tests/test-base64.c: Include required header files. Remove + unused variables. + +2004-12-28 Paul Eggert + + * modules/error (Depends-on): Remove gettext. + +2004-12-28 Paul Eggert + + * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h"; + not needed. This removes a dependency on the gettext module. + [defined _LIBC]: Do not include ; not needed. + +2004-12-24 Paul Eggert + + * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro. + (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold). + +2004-12-24 Paul Eggert + + * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not + HAVE_DECL_STRTOLD. + +2004-12-23 Paul Eggert + + * modules/getdate (Depends-on): Remove alloca-opt. + +2004-12-23 Paul Eggert + + * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA. + +2004-12-23 Paul Eggert + + * lib/argp-parse.c: Include . + (alignof, alignto): New macros. + (parser_init): Don't assume that void * is aligned sufficiently + for struct option. + + * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no + need to extend the stack. + (YYINITDEPTH): New macro, so that the initial stack isn't overly + large. + +2004-12-22 Sergey Poznyakoff + + * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers. + +2004-12-19 Paul Eggert + + * modules/regex (lib_SOURCES): Remove regex.c, undoing previous + (2004-10-24) change. Apparently this was a false alarm. + + * modules/getdate: Depend on alloca-opt, not alloca. + +2004-12-19 Paul Eggert + + * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H. + Remove now-obsolete comment about AIX. + * lib/getdate.y: Include only if HAVE_ALLOCA. + (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA. + (YYMAXDEPTH): New macro. + +2004-12-18 Simon Josefsson + + * modules/alloca: Depend on alloca-opt, instead of duplicating it. + +2004-12-18 Bruno Haible + + * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction. + +2004-12-18 Bruno Haible + + * lib/fatal-signal.c (fatal_signals): Make non-const. + (init_fatal_signals): New function. + (uninstall_handlers, install_handlers): Ignore signals that were set to + SIG_IGN. + (at_fatal_signal): Call init_fatal_signals. + (init_fatal_signal_set): Likewise. Ignore signals that were set to + SIG_IGN. + Reported by Paul Eggert. + +2004-12-18 Bruno Haible + + * doc/alloca.texi: New file. + * doc/alloca-opt.texi: New file. + +2004-12-17 Jim Meyering + + * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'. + Otherwise, install-sh could exit with improper exit status when + exiting via a trapped interrupt. Thanks to a report from Bob Proulx. + +2004-12-16 Simon Josefsson + + * tests/test-base64.c: Add license. + +2004-12-15 Stepan Kasal + + * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command. + +2004-12-12 Paul Eggert + + * modules/getcwd (Files): Add m4/d-ino.m4. + Suggested by Mark D. Baushke. + +2004-12-08 Paul Eggert + + * lib/getdate.y (textint): New member "negative". + (time_zone_hhmm): New function. + Expect 14 shift-reduce conflicts, not 13. + (o_colon_minutes): New rule. + (time, zone): Use it to add support for +HH:MM, UTC+HH:MM. + (yylex): Set the "negative" member of signed numbers. + +2004-12-08 Paul Eggert + + * doc/getdate.texi (Time of day items, Time zone items): + Describe new formats +00:00, UTC+00:00. + +2004-12-07 Paul Eggert + + * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change: + spurious "-l"s. Problem reported by Stepan Kasal. + +2004-12-06 Paul Eggert + + * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug + in Autoconf 2.59. Problem reported by Mark D. Baushke. + +2004-12-04 Simon Josefsson + + * modules/getaddrinfo (License): Add LGPL, reported by Yoann + Vandoorselaere . + +2004-12-04 Paul Eggert + + Changes imported from coreutils. + * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale + exist. + * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist. + +2004-12-04 Paul Eggert + + Changes imported from coreutils. + * lib/hard-locale.c: Assume exists. + Include "strdup.h". + (GLIBC_VERSION): New macro. + (hard_locale): Assume setlocale exists. + Rewrite to avoid #ifdef. + Use strdup rather than malloc + strcpy. + * lib/human.c: Assume exists. + (human_readable): Assume localeconv exists. + +2004-12-04 Paul Eggert + + * modules/hard-locale (Depends-on): Add strdup. + +2004-12-01 Jakub Jelinek + + * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC, + convert T2, not T. (Imported from libc.) + +2004-11-30 Simon Josefsson + + * modules/restrict (License): Change to LGPL. + +2004-11-30 Simon Josefsson + + * m4/restrict.m4: Add copyright and copying conditions. + +2004-11-30 Simon Josefsson + + * m4/base64.m4: New file. + +2004-11-30 Simon Josefsson + + * MODULES.html.sh (Extra functions based on ANSI C 89): Add + base64. + + * tests/test-base64.c: New file. + + * modules/base64: New file. + +2004-11-30 Paul Eggert + + * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): + Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working. + + * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h. + +2004-11-30 Paul Eggert + + * lib/getcwd.c (is_ENAMETOOLONG): New macro. + (__getcwd.c): Don't restore errno; glibc doesn't. + [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd + first, falling back to our code only if its results look suspicious. + Ensure that the resulting buffer is only as large as necessary. + + * lib/readutmp.c: Include readutmp.h first. + Include , since readutmp.h no longer does that. + * lib/readutmp.h: Don't include , + , ; not needed to establish interface. + (errno): Remove decl. + (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed. + (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME, + UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros. + +2004-11-28 Simon Josefsson + + * lib/base64.h, base64.c: New file. + +2004-11-27 Paul Eggert + + * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25. + +2004-11-26 Paul Eggert + + * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4. + (Depends-on): Remove pathmax, same. Add mempcpy. + (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD. + (Makefile.am): Append getcwd.h to lib_SOURCES. + (Include): Add getcwd.h. + (Maintainer): Change from Jim Meyering to "all, glibc", + since getdate now uses intended-for-glibc code. + * modules/xgetcwd (Files): Remove m4/getcwd.m4. + (Depends-on): Depend on getcwd. Do not depend on pathmax. + +2004-11-25 Paul Eggert + + Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using + HP's ANSI C compiler. + * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl. + Declaring int functions causes warnings on some modern systems and + shouldn't be needed to compile on ancient ones. + * lib/same.c (MIN) [defined MIN]: Don't define, since it's already + defined. + + * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but + with the following changes. + (__set_errno): Parenthesize properly. + Include . + (MIN, MAX, MATCHING_INO): New macros. + (__getcwd): Define with prototype, not K&R form. + Use heuristics to allocate default buffer on stack if possible. + If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2) + behavior, and to avoid the PATH_MAX limit when computing + ../../../../... + Use MATCHING_INO to compare inode number to file. + Check for arithmetic overflow in size calculations. + Fix bug in reallocation of dot array that caused getcwd to fail + on directories nested deeper than 75. + Be more careful about saving errno on error. + Do not use realloc; use only free+malloc, as this is a bit + more flexible and avoids a needless copy operation. + Do not inspect st_dev and st_ino for symbolic links; POSIX + doesn't specify the latter. + Check for closedir errors. + Avoid needless casts. + Use "#ifdef weak_alias" around weak_alias, to be like other + glibc code. + The following changes to getcwd.c have effect only when used in + gnulib; they have no effect inside glibc proper. + (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove, + as alloca isn't used. + (alloca, __alloca): Likewise. + [!_LIBC]: Include "getcwd.h", "mempcpy.h". + Include , , , + unconditionally, as gnulib assumes C89 or better. + Do not include . + (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove + no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or + better. + (NULL) [!defined NULL]: Remove; we assume C89 or better. + Include in a way that is compatible with modern Autoconf. + (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN): + New macros, if not already defined. + Include if _LIBC, not if __GNU_LIBRARY__. + Use "_LIBC", not "defined _LIBC", for consistency. + (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has + a mempcpy module. + (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros. + (GETCWD_RETURN_TYPE): Remove. All uses replaced by char *. + * lib/xgetcwd.c: David MacKenzie's old code was removed, so give + credit only to Jim Meyering and adjust the copyright dates. + Do not include , , , + , , "pathmax.h". + Instead, include "xgetcwd.h" (first) and "getcwd.h". + (INITIAL_BUFFER_SIZE): Remove. + (xgetcwd): Rely on getcwd, since we now depend on a reliable one. + +2004-11-25 Paul Eggert + + * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from + GL_FUNC_GETCWD_PATH_MAX for consistency. All uses changed. + Use the _ONCE methods, for efficiency. + Check for fcntl.h. In test program, include + and if available. Remove old K&R cruft from + test program. Check for common errors in GNU/Linux, + OpenBSD, and Solaris. Just set gl_cv_func_getcwd_path_max; + don't do AC_LIBOBJ, as that's getcwd.m4's job. + * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from + AC_FUNC_GETCWD_NULL. All used changed. Change cache variable + name accordingly. + (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros. Revamp to + accommodate new getcwd.c. + * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX. + * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY. + * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since + that's all we need now. + +2004-11-23 Sergey Poznyakoff + + * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally: + argp-parse.c depends on getopt internals, that means we should + always use our getopt, to be on the safe side. + * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in + order not to spoil the result of an eventual previous invocation + of gl_GETOPT_SUBSTITUTE. + +2004-11-23 Sergey Poznyakoff + + * lib/getopt_.h: Re-addition of __getopt_argv_const caused + redefinition warnings. To avoid them, include the defines + in `#if !defined __need_getopt ... #endif'. The only place + where __getopt_argv_const is used is in definitions + of getopt_long and getopt_long_only below, which are as well + protected by `#ifndef __need_getopt'. + [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef + __need_getopt after including and These + headers might have defined it. + +2004-11-23 Paul Eggert + + * m4/utimens.m4 (gl_UTIMENS): Check for futimes function. + +2004-11-23 Paul Eggert + + * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros. + (futimens): New function, which uses futimes if available. + (futimens, utimens): Support timespec==NULL, with same semantics + as utime and utimens. + * lib/utimens.h (futimens): New decl. + +2004-11-23 Jim Meyering + + * lib/getopt_.h: Remove trailing blanks. + +2004-11-23 Jim Meyering + + * lib/__fpending.c: Add comment. + +2004-11-22 Paul Eggert + + * modules/canonicalize (Depends-on): Add xreadlink. + Problem reported by James Youngman. + +2004-11-20 Paul Eggert + + * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID): + New macros. + (getopt, getopt_long, getopt_long_only, optarg, opterr, optind, + optopt): Use them instead of invoking ## directly; otherwise, the + symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt. + +2004-11-19 Bruno Haible + + * lib/strtok_r.c: Move comments from here... + * lib/strtok_r.h: ... to here. + +2004-11-17 Paul Eggert + + * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc + implementations that mishandle size_t overflow. + +2004-11-17 Paul Eggert + + * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc + might fail. Problem reported by Yoann Vandoorselaere. + * lib/calloc.c (rpl_calloc): Defend against buggy calloc + implementations that mishandle size_t overflow. + +2004-11-16 Paul Eggert + + * modules/canon-host (Depends-on): Add strdup. + +2004-11-16 Paul Eggert + + * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo. + +2004-11-16 Paul Eggert + + * lib/canon-host.c: Include "strdup.h". + (canon_host): Use getaddrinfo if available, so that IPv6 works. + Use strdup instead of malloc/strcpy to duplicate strings. + + * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit. + (human_space_before_unit): New constant. + * lib/human.c (human_readable): Support it. + + * lib/xgetcwd.c: Include , for PATH_MAX. + (xgetcwd): Set errno correctly when failing. + Work around Solaris 9 bug: getcwd sets errno==ERANGE even though + the failure is actually due to a PATH_MAX problem. + + Further getopt changes to make it more likely that glibc will + buy the changes back. + * lib/getopt.c (POSIXLY_CORRECT): New constant. + (getopt): Use it, so to preserve glibc semantic + * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const * + when compiling for libc. + * lib/getopt_.h (__getopt_argv_const): Bring it back. + (getopt_long, getopt_long_only): Use it. + + * lib/getopt.c (_getopt_initialize, _getopt_internal_r, + _getopt_internal): New arg POSIXLY_CORRECT. All callers changed. + (getopt): Argv is now char * const *, as per standard. + (_getopt_internal_r, _getopt_internal): Argv is now char **, + not char *__getopt_argv_const *. + * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only, + _getopt_long_only_r): Likewise. + * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise. + * lib/getopt_int.h (_getopt_internal, _getopt_internal_r, + _getopt_long_r, _getopt_long_only_r): Likewise. + * lib/getopt_.h (__getopt_argv_const): Remove. + (getopt): Argv is now char * const *, as per standard. + + * lib/getdate.y (tORDINAL): New token. + (day, relunit): Allow it for relative times. + (relative_time_table): Use tORDINAL for ordinals. + +2004-11-16 Paul Eggert + + * doc/getdate.texi (General date syntax): "next" is 1, not 2. + Document that "second" isn't allowed as an ordinal number. + +2004-11-16 Jim Meyering + + * modules/closeout (Depends-on): Add fpending. + +2004-11-15 Jim Meyering + + * lib/closeout.c: Include "__fpending.h" once again. + Include . + (close_stdout): Don't fail just because stdout was closed initially, + since some programs don't write to stdout in the normal course of + operation (other than --version and --help), and we don't want this + function to make e.g. `touch file >&-' fail. + But do fail if it was closed and someone has tried to write to it. + E.g., `printf foo >&-' must fail. + +2004-11-13 Jim Meyering + + * m4/jm-macros.m4: Do require gl_FUNC_FPENDING. + +2004-11-12 Simon Josefsson + + * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a + small doc fix is still pending. + +2004-11-11 Simon Josefsson + + * modules/strtok_r: New file. + + * MODULES.html.sh (Support for systems lacking POSIX:2001): Add + strtok_r. + +2004-11-11 Simon Josefsson + + * m4/strtok_r.m4: New file. + + * m4/getopt.m4: Replace opterr. + +2004-11-11 Simon Josefsson + + * lib/strtok_r.h, strtok_r.c: New file. + +2004-11-11 Paul Eggert + + * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead + of replacing opterr, getopt, etc. This should handle the + powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson. + +2004-11-11 Paul Eggert + + * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that + we can stop lying to compilers about the constness of argv when we + are compiled outside glibc. + (getopt, getopt_long, getopt_long_only): Use it. + * lib/getopt.c (_getopt_initialize, _getopt_internal_r, + _getopt_internal, getopt): Likewise. + * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only, + _getopt_long_only_r): Likewise. + * lib/getopt_int.h (_getopt_internal, _getopt_internal_r, + _getopt_long_r, _getopt_long_only_r): Likewise. + + * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]: + Include and , and if available. + Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for + the other external symbols. + (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style + declaration, since the above renaming now works around collisions. + +2004-11-11 Jim Meyering + + * lib/linebreak.c: Remove trailing blanks. + * lib/alloca_.h: Likewise. + * lib/acosl.c: Likewise. + * lib/euidaccess.c: Likewise. + * lib/allocsa.h: Likewise. + +2004-11-10 Simon Josefsson + + * m4/getaddrinfo.m4: New file. + +2004-11-10 Simon Josefsson + + * lib/getaddrinfo.h, lib/getaddrinfo.c: New files. + +2004-11-10 Simon Josefsson + + * MODULES.html.sh (Support for systems lacking POSIX:2001): Add + getaddrinfo. + + * modules/getaddrinfo: New file. + +2004-11-10 Paul Eggert + + * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV. + +2004-11-10 Paul Eggert + + * lib/mktime.c (SHR): New macro, which is a portable + substitute for >> that should work even on Crays. + (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it. + Problem reported by Mark D. Baushke in + . + * lib/getdate.y (SHR): Likewise. + (tm_diff): Use it. + * lib/strftime.c (SHR): Likewise. + (tm_diff): Use it. + * lib/quotearg.c (struct quoting_options): Use unsigned int for + quote_these_too, so that right shifts are well defined. All uses + changed. + +2004-11-10 Jim Meyering + + Ensure that no close failure goes unreported. + * lib/closeout.c (close_stdout): Always close stdout. I.e., don't + return early when it seems there's nothing to flush. + Don't include __fpending.h. + +2004-11-10 Jim Meyering + + * modules/closeout (Depends-on): Remove fpending. + +2004-11-10 Jim Meyering + + * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING. + +2004-11-09 Paul Eggert + + * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove. Move its body to + gl_FUNC_STRFTIME. + (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE + and AC_REQUIRE when possible, to avoid duplicate checks. + Check for . + +2004-11-09 Paul Eggert + + * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too. + +2004-11-09 Bruno Haible + + * m4/sockpfaf.m4: New file. + +2004-11-05 Bruno Haible + + * lib/readlink.c: Include stddef.h, needed for size_t on Woe32. + Reported by Mark D. Baushke . + +2004-11-04 Bruno Haible + + 2004-09-11 Bruno Haible + * allocsa.valgrind: New file. + 2004-02-06 Bruno Haible + * allocsa.h (sa_alignof): Define differently with HP-UX cc, to + avoid a bug of this cc on HP-UX 10.20 dealing with enums. + Reported by Christopher Seip . + +2004-11-04 Bruno Haible + + * modules/allocsa (Files): Add lib/allocsa.valgrind. + (Makefile.am): Distribute it. + +2004-11-03 Paul Eggert + + * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1 + with errno == ERANGE if the buffer is too small. + Problem reported by Mark D. Baushke. + +2004-11-03 Albert Chin + Paul Eggert + + * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t + equivalent, substitute $ac_type for equivalent type rather than + blindly using uint32_t *always* which won't work if uint32_t is not + available. Define _UINT32_T to work around typedef of uint32_t if + , , or used on Solaris + 2.5.1. + +2004-11-02 Paul Eggert + + * m4/jm-macros.m4: Sync from coreutils. + (gl_MACROS): Check for mbrlen, for pathchk. + (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk. + +2004-11-02 Paul Eggert + + * lib/xreadlink.c (MAXSIZE): New macro. + (xreadlink): Use it instead of SSIZE_MAX. Ensure initial buffer + size does not exceed MAXSIZE. Avoid cast. + As suggested by Mark D. Baushke in + , + if readlink fails with buffer size just under MAXSIZE, try again + with MAXSIZE. + +2004-11-02 Paul Eggert + + * config/srclist.txt: Add mktime.c; glibc bought all our changes. + +2004-11-02 Derek R. Price + and Paul Eggert + + * lib/getdate.y [!TEST]: Include , since we use sprintf now. + (get_date): Overparenthesize to avoid GCC warning. + +2004-11-02 Bruno Haible + + * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv() + returns void. + +2004-11-02 Bruno Haible + + * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv() + function returns void. + +2004-11-01 Paul Eggert + + * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of + fflush_unlocked, flockfile, funlockfile, funlockfile, + fputs_unlocked, putc_unlocked. + +2004-11-01 Paul Eggert + + * lib/getpass.c (fflush_unlocked, flockfile, funlockfile) + (funlockfile, fputs_unlocked, putc_unlocked): Don't define if + already declared. + +2004-10-29 Paul Eggert + + * modules/getdate (Files): Add doc/getdate.texi. + (Depends-on): Add setenv, xalloc. + +2004-10-29 Paul Eggert + + * lib/getdate.y: Add support for TZ="foo" within a date string. + Fix some bugs near time_t boundaries. Reject dates with + out-of-range components, e.g., "Sept 31". + Include , "setenv.h", "xalloc.h". + (ISDIGIT_LOCALE): Remove; unused. + Note that the TZ and time functions used here are not reentrant. + (mktime_ok, get_tz): New functions. + (TZBUFSIZE): New constant. + (get_date): Parse leading TZ="foo". Reject out-of-range components;. + This requires that we sometimes generate our own TZ="XXX..." setting. + +2004-10-29 Paul Eggert + + * doc/getdate.texi: New file, from coreutils with modifications for + the new TZ parsing. + +2004-10-27 Derek R. Price + + * lib/mktime.c (not_equal_tm): Remove redundant check. + +2004-10-24 Paul Eggert + + * modules/regex (lib_SOURCES): Add regex.c. + Reported by James Youngman in + . + +2004-10-24 Paul Eggert + + * lib/getdate.y: Use Bison 1.875 features, and some minor + code cleanups. This change does not affect semantics. + Don't include ; no longer needed. + Don't include unlocked-io.h; only the "#if TEST" code uses + stdio, and performance isn't crucial there. + (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by + Bison 1.875 features as described below. + All uses of "PC." replaced by "pc->". + (YYSTYPE): Add a forward declaration. + (yylex, yyerror): Use full prototypes in forward decls. + Use "%pure-parser" rather than obsolescent "%pure_parser". + Use %parse-param and %lex-param instead of obsolescent + YYPARSE_PARAM and YYLEX_PARAM. + (meridian_table, month_and_day_table, time_units_table, + relative_time_table, time_zone_table, military_table, + lookup_zone, lookup_word, get_date): + Use NULL instead of 0 where appropriate. + (to_hour): Avoid abort (), to avoid a dependency on + stdlib.h. + (yyerror, yylex): Now accepts parser_control * arg. + (main) [TEST]: Use '\0' rather than 0 for char. + +2004-10-22 Paul Eggert + + * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for . + +2004-10-22 Paul Eggert + + * lib/getpagesize.c (getpagesize): Don't assume exists. + It's now the caller's responsibility to handle the case where + !HAVE_GETPAGESIZE && !defined getpagesize. + + * lib/mktime.c (leapyear): Arg is long int, not int. + +2004-10-18 Paul Eggert + + * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc. + +2004-10-17 Paul Eggert + + * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was + missing. Problem reported by James Youngman. + +2004-10-16 Simon Josefsson + + * gnulib-tool: Fix comments. Fix parse problem. + (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES. + +2004-10-15 Paul Eggert + + * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD + implementation of getopt_long. Problem reported by Alexander Taler in: + http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html + +2004-10-15 Bruno Haible + + * gnulib-tool: Untabify. Initialize supplied_libname. + (func_usage): More homogenous output. + (func_modules_transitive_closure, func_modules_to_filelist, + func_emit_lib_Makefile_am): New functions. + (func_import): New function, extracted from big case statement. Use + func_get_license, func_modules_transitive_closure, + func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize + opt_lgpl. Don't use test -a, as it's not portable. + (func_create_testdir): Use func_modules_transitive_closure, + func_modules_to_filelist, func_emit_lib_Makefile_am. + +2004-10-15 Bruno Haible + + * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed. + +2004-10-15 Bruno Haible + + * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate + the portions belonging to each module. + Suggested by Derek Robert Price . + +2004-10-12 Simon Josefsson + + * lib/getpass.c (fflush_unlocked, flockfile, funlockfile) + (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map + to real functions. + +2004-10-11 Yoann Vandoorselaere + + * modules/vsnprintf: New file. + +2004-10-11 Yoann Vandoorselaere + + * m4/vsnprintf.m4: New file. + +2004-10-11 Yoann Vandoorselaere + + * lib/vsnprintf.h: New file. + * lib/vsnprintf.c: New file. + +2004-10-11 Bruno Haible + + * MODULES.html.sh (Support for systems lacking ISO C 99): Add + vsnprintf. + +2004-10-10 Paul Eggert + + * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only). + +2004-10-07 Bruno Haible + + * lib/snprintf.c (snprintf): Avoid a memory allocation if the result + fits into the provided buffer. + +2004-10-06 Paul Eggert + + * lib/diacrit.c, diacrit.h: Add GPL notice. + + * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL + notice. + * lib/atanl.c (atanl): Keep the code as similar to glibc as possible. + * lib/logl.c (logl): Keep the code as similar to glibc as possible. + This avoids a potential constant-folding bug. + +2004-10-05 Bruno Haible + + * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check + for the declaration of strsep. + +2004-10-05 Bruno Haible + + * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP. + +2004-10-04 Simon Josefsson + + * modules/memmem: New file. + * tests/test-memmem.c: New file. + * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem. + +2004-10-04 Simon Josefsson + + * m4/memmem.m4: New file. + +2004-10-04 Simon Josefsson + + * lib/memmem.h: New file. + * lib/memmem.c: New file, taken from glibc. + +2004-10-04 Simon Josefsson + + * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of + '#ifdef USE_UNLOCKED_IO'. + +2004-10-04 Simon Josefsson + + * config/srclist.txt: Add memmem from glibc. + +2004-10-04 Paul Eggert + + * modules/xalloc (Files, Makefile.am): Remove xstrdup.c. + + * modules/argmatch, modules/argp, modules/closeout, modules/error, + modules/exclude, modules/getdate, modules/getline, + modules/getndelim2, modules/getpass, modules/getpass-gnu, + modules/getusershell, modules/linebuffer, modules/md5, + modules/mountlist, modules/posixtm, modules/readtokens, + modules/readutmp, modules/regex, modules/sha1, + modules/version-etc, modules/yesno: + Remove dependency on unlocked-io. + +2004-10-04 Paul Eggert + + * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove. All uses removed. + + * m4/unlocked-io.m4: Add copyright notice. + (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO. + +2004-10-04 Paul Eggert + + * lib/xalloc.h (xmemdup): Renamed from xclone. All uses changed. + * lib/xmalloc.c (xmemdup): Likewise. + * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC, + XFREE): Remove these long-obsolescent macros. + * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c + * lib/xstrdup.c: Remove. + + * lib/regex.c (re_comp): Cast gettext return value to char *, + Problem reported by Martin Neitzel via Mark D. Baushke. + +2004-10-04 Paul Eggert + + * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y, + getndelim2.c, getpass.c, getusershell.c, linebuffer.c, + md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c, + regex.c, sha1.c, version-etc.c, yesno.c: + Include "unlocked-io.h" only if USE_UNLOCKED_IO. + * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now + the includer's responsibility. + + Sync from coreutils. + + * lib/modechange.c (mode_compile): Don't decrement a pointer that + points to the start of a string, as the C Standard says the + resulting behavior is undefined. + + * lib/backupfile.h (enum backuptype): Rename none -> no_backups, + simple -> simple_backups, numbered_existing -> + numbered_existing_backups, numbered -> numbered_backups + to avoid shadowing problems. All uses changed. + * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise. + * lib/backupfile.c (check_extension, numbered_backup): + Rename locals to avoid shadowing 'basename'. + * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than + once. + + * lib/.cppi-disable: Add getopt_.h, getopt_int.h. + * lib/.cvsignore: Add getopt.h. + +2004-10-04 Bruno Haible + + * modules/README: New file. + * gnulib-tool (func_all_modules, func_verify_module): modules/README is + not a module. + +2004-10-02 Jim Meyering + + * lib/dirfd.h, getpagesize.h: Add copyright notice. + +2004-10-01 Yoann Vandoorselaere + + * modules/strsep: New file. + +2004-10-01 Yoann Vandoorselaere + + * m4/strsep.m4: New file. + +2004-10-01 Yoann Vandoorselaere + + * lib/strsep.h: New file. + * lib/strsep.c: New file. + +2004-10-01 Simon Josefsson + + * lib/snprintf.c (snprintf): Handle size==0. + +2004-10-01 Simon Josefsson + Bruno Haible + + * lib/snprintf.c: Include , , . + (snprintf): Declare 'args'. + +2004-10-01 Paul Eggert + + * lib/snprintf.c: Remove comments as to why each header is needed. + +2004-10-01 Bruno Haible + + * MODULES.html.sh: Add strsep. + +2004-09-30 Simon Josefsson + + * modules/snprintf: New file. + +2004-09-30 Simon Josefsson + + * m4/snprintf.m4: New file. + +2004-09-30 Simon Josefsson + + * lib/snprintf.h, lib/snprintf.c: New files. + +2004-09-30 Sergey Poznyakoff + + * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL + (hol_entry_help): Never translate an empty string. + Do not translate option tag (opt->name) if OPTION_NO_TRANS is set + * lib/argp.h (OPTION_NO_TRANS): New option. + +2004-09-30 Paul Eggert + + * modules/argp (Maintainer): Replace Simon Josefsson + by Sergey Poznyakoff. + +2004-09-30 Paul Eggert + + * config/srclist.txt: Comment-out argp/argp.h, until we get the argp + changes merged back into glibc. + +2004-09-30 Paul Eggert + + * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf. + +2004-09-29 Oskar Liljeblad + + * lib/xvasprintf.c: Include xalloc.h. + (xvasprintf): Use xalloc_die, not xmalloc_die. + +2004-09-29 Bruno Haible + + * modules/alloca-opt: New file, derived from modules/alloca. + * modules/allocsa: Depend on alloca-opt instead of alloca. + * modules/setenv: Likewise. + * modules/vasnprintf: Likewise. + * MODULES.html.sh: Add alloca-opt. + +2004-09-28 Simon Josefsson + + * gnulib-tool: New parameter --lgpl, to asseert that modules are + LGPL, and to replace license template from GPL to LGPL. + +2004-09-28 Paul Eggert + + * modules/dummy: Change license to LGPL. + +2004-09-28 Paul Eggert + + * lib/dummy.c: Change copyright notice to FSF, and license to GPL. + +2004-09-24 Simon Josefsson + + * modules/minmax (License): Change from GPL to LGPL. + +2004-09-23 Simon Josefsson + + * gnulib-tool (--import): Typo. + +2004-09-23 Simon Josefsson + + * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default. + +2004-09-22 Bruno Haible + + * modules/*: Add 'License' field. + * gnulib-tool: Accept --extract-license option. + (func_get_license): New function. + +2004-09-21 Bruno Haible + + * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4. + Reported by Simon Josefsson. + +2004-09-20 Paul Eggert + + * modules/inttostr (Files): Add m4/longlong.m4, since it uses + gl_AC_TYPE_LONG_LONG. + +2004-09-20 Paul Eggert + + * config/srclist.txt: Add getsubopt.c, since libc bought our changes. + +2004-09-18 Simon Josefsson + and Paul Eggert + + * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal + calls with autoreconf. Define GL_LIB. + +2004-09-14 Karl Berry + + * config/srclist.txt: unsync setenv.c, sigh. + +2004-09-13 Paul Eggert + + * lib/argp-pvh.c (argp_program_version_hook): Provide initial value. + Problem reported by Bruno Haible in: + http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html + +2004-09-13 Paul Eggert + + * config/srclist.txt: Comment out argp-pvh.c. + +2004-09-11 Paul Eggert + + * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy, + in case some system header has #define'd it. Problem reported by + Soeren D. Schulze in + . + +2004-09-09 Karl Berry + + * regex.[ch]: delete from the root. These were supposed to be + synced with emacs cvs, but this has not happened for about + a year, and anyway nothing else uses emacs regex.[ch]. + bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700. + lib/regex[.ch] is untouched. + +2004-09-09 Bruno Haible + + * modules/vasnprintf (Files): Add m4/eoverflow.m4. + +2004-09-09 Bruno Haible + + * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with + modifications. + * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW. + +2004-09-08 Oskar Liljeblad + + * modules/xvasprintf: New file. + * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf. + +2004-09-08 Oskar Liljeblad + + * lib/xvasprintf.h: New file. + * lib/xvasprintf.c: New file. + * lib/xasprintf.c: New file. + +2004-09-08 Bruno Haible + + * m4/stdint.m4: New file, taken from GNU clisp with modifications. + +2004-09-08 Bruno Haible + + * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting + length is > INT_MAX. + * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any + more. + +2004-09-08 Bruno Haible + + * lib/stdint_.h: New file, taken from GNU clisp. + +2004-09-08 Bruno Haible + Oskar Liljeblad + + * modules/stdint: New file. + * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint. + +2004-08-19 Paul Eggert + + Import from coreutils. + * lib/userspec.c: Don't use , so that we don't use alloca on + strings on unbounded length. alloca's performance benefits aren't + that important here. + (V_STRDUP): Remove. + (parse_with_separator): New function, with most of the internals + of the old parse_user_spec. Allow user to omit both user and group, + for compatibility with FreeBSD. + Clone only the user name, not the entire spec. + Do not set *uid, *gid unless entirely successful. + Avoid memory leak in some failing cases. + Fix regression for USER.GROUP reported by Dmitry V. Levin in + + (parse_user_spec): Rewrite to use parse_with_separator. + +2004-08-19 Paul Eggert + + * modules/userspec: Don't depend on alloca. + +2004-08-19 Paul Eggert + + * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA. + +2004-08-17 Paul Eggert + + * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise, + readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check, + utimecmp, utimens, xnanosleep. Rename sha to sha1. + +2004-08-16 Simon Josefsson + + * gnulib-tool: Use sed instead of autoconf --trace, inspired by + libtoolize behaviour by "Gary V. Vaughan" . + Add --dry-run for --import. + Let user provided command line parameters override configure.ac + settings. + +2004-08-12 Simon Josefsson + + * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro, + as discussed with Paul Eggert in threads rooted at + + and + . + Before, the test was empty, and relied on ELIDE_CODE in source + code.) + (gl_PREREQ_GETOPT): New macro. + (gl_GETOPT): Use them. + +2004-08-12 Simon Josefsson + + * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack. + * lib/getopt_.h: Renamed from getopt.h. + +2004-08-12 Simon Josefsson + + * gnulib-tool: Add --source-base, --m4-base, --libtool options. + Change default library name from libfoo to libgnu. + Now, if you have a configure.ac that says: + gl_SOURCE_BASE(gl) + gl_M4_BASE(gl/m4) + gl_MODULES(error getopt etcetera) + gl_INIT + you can import all you need by running: + ../gnulib/gnulib-tool --import + + * modules/getopt (Files): Rename getopt.h to getopt_.h. + (Makefile.am): Rewrite, use logic from argz. + (Include): Use instead of "getopt.h". + +2004-08-12 Paul Eggert + + * modules/argp (Files): Add m4/unlocked-io.m4. + (Depends-on): Add extensions. + +2004-08-12 Paul Eggert + + * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody + uses HAVE_ARGP_H or HAVE_ARGP_PARSE. + Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS. + Check for program_invocation_name, program_invocation_short_name, + flockfile, funlockfile, features.h, _getopt_long_only_r. + +2004-08-12 Paul Eggert + + * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of + its complicated substitute. + * lib/argp-help.c: Include , for program_invocation_short_name + and program_invocation_name. + (__argp_basename) [!_LIBC]: Remove; the only use was + replaced by its body. + (__argp_short_program_name): Change condition from + !defined __argp_short_program_name to + ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME), + to match argp-namefrob.h. + (__argp_failure): Don't assume strerror_r returns char *. + * lib/argp-parse.c (N_): Define unconditionally. + (argp_default_options): Fill out initializers with 0 to avoid + gcc warnings. + +2004-08-12 Paul Eggert + + * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h), + getopt1.c. + +2004-08-11 Paul Eggert + + Merge from coreutils. + + * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy. + + * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require + gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T. + +2004-08-11 Paul Eggert + + Merge from coreutils. + + * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing + wmemchr or wmemcpy. Problem reported by Robert Dahlem + for Reliant Unix 5.43. + + * lib/obstack.c: Include and if available. + (union fooround): Use uintmax_t, not long int. + The rest is a merge from libc: + [defined _LIBC]: Include . + (_obstack) [defined _LIBC]: Remove after 2.3.4. + + * lib/settime.c (settime): Recode to avoid warning with + Sun Forte C 6U2. + + * lib/strverscmp.c: Convert to UTF-8. + +2004-08-11 Paul Eggert + + * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4, + m4/uintmax_t.m4. + +2004-08-09 Paul Eggert + + * modules/xalloc-die: New file. + * modules/xalloc: Remove dependencies on error, gettext, exitfail. + + * modules/md5 (Files): Add m4/uint32_t.m4. + * modules/sha1: Renamed from modules/sha. + (Files): + Rename lib/sha.h to lib/sha1.h. + Rename lib/sha.c to lib/sha1.c. + Rename m4/sha.m4 to m4/sha1.m4. + (lib_SOURCES): Likewise. + (configure.ac): Rename gl_SHA to gl_SHA1. + (Include): sha.h -> sha1.h. + +2004-08-09 Paul Eggert + + * m4/uint32_t.m4, m4/uintptr_t.m4: New files. + * m4/sha1.m4: Renamed from sha.m4. + (gl_SHA1): Renamed from gl_SHA. All uses changed. + +2004-08-09 Paul Eggert + + * lib/obstack.h (obstack_empty_p): + Don't assume that chunk->contents is suitably aligned. + * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk): + Likewise. Problem reported by Benno in + . + + * lib/chown.c (rpl_chown): Work even if the file is writeable but not + readable. This could be improved further but it'd take some work. + +2004-08-08 Simon Josefsson + + * modules/xgethostname (Depends-on): Remove exit and error (not + used). + + * modules/getpass-gnu: Add getpass.h. + (Depends-on): Add stdbool. + * modules/getpass: Add getpass.h. + +2004-08-08 Simon Josefsson + + * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU): + Check getpass declaration. + +2004-08-08 Simon Josefsson + + * lib/xgethostname.c: Don't include error.h (not used). + + * lib/getpass.h: Add. + * lib/getpass.c: Include getpass.h first. + +2004-08-08 Paul Eggert + + * lib/xalloc-die.c: New file. + * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove. + All uses removed. + * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted): + Likewise. Move inclusions of gettext.h, error.h, exitfail.h to + xalloc-die.c. + (_, N_, xalloc_die): Move to xalloc-die.c. + * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup, + so that we needn't mess with xalloc_msg_memory_exhausted. + + * lib/sha1.h: Renamed from sha.h. + (SHA1_H): Renamed from _SHA_H. + (sha1_ctx): Renamed from sha_ctx. + (sha1_init_ctx): Renamed from sha_init_ctx. + (sha1_process_block): Renamed from sha_process_block. + (sha1_process_bytes): Renamed from sha_process_bytes. + (sha1_finish_ctx): Renamed from sha_finish_ctx. + (sha1_read_ctx): Renamed from sha_read_ctx. + (sha1_stream): Renamed from sha_stream. + (sha1_buffer): Renamed from sha_buffer. + * lib/sha1.c: Likewise; renamed from sha.c. + Do not include . + Include rather than . + +2004-08-08 Bruno Haible + + * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from + FILESYSTEM_PREFIX_LEN. + * lib/progreloc.c: Likewise. + * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN. + +2004-08-06 Simon Josefsson + + * modules/progname (Depends-on): Don't depend on stdbool. + +2004-08-06 Simon Josefsson + + * modules/getsubopt: New file. + * MODULES.html.sh (Support for systems lacking POSIX:2001): Add + getsubopt. + +2004-08-06 Paul Eggert + + More merge from coreutils. + + * m4/utimens.m4, m4/utimecmp.m4: New files. + * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4, + fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4, + prereq.m4, sha.m4: Import changes from coreutils. + +2004-08-06 Paul Eggert + + More merge from coreutils. + * modules/raise, modules/readtokens0, modules/utimens: + * modules/utimecmp, module/xnanosleep: New files. + * modules/strftime: Add lib/strftime.h. + Change include from to "strftime.h". + * modules/yesno: Add lib/yesno.h. + * modules/backupfile: Remove lib/addext.c. + * modules/euidaccess: Add stat-macros.h. + * modules/canonicalize, modules/euidaccess, + modules/filemode, modules/lchown, modules/makepath, + modules/rmdir, modules/stat: Likewise. + +2004-08-06 Paul Eggert + + Merge from tar. + * lib/argp-help.c (make_hol, hol_append): Don't assume that + SIZE_MAX is a valid preprocessor constant. + (__argp_basename): Change from "#ifndef _LIBC" + to "#ifndef __argp_short_program_name", so that + we don't compile these functions for tar. + + More merges from coreutils. + * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h: + * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c: + * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files. + * lib/addext.c: Remove; no longer needed. + * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h, + lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c, + lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c, + lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c, + lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y, + lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c, + lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c, + lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h, + lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c, + lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c, + lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h, + lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c, + lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c, + lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c, + lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c, + lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h, + lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c: + Import changes from coreutils. + +2004-08-05 Simon Josefsson + + * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it. + +2004-08-05 Simon Josefsson + + * m4/getsubopt.m4: New file. + +2004-08-05 Paul Eggert + + Merge from coreutils. + + * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4: + * m4/getcwd-path-max.m4: New files. + + * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming. + FILESYSTEM_PREFIX_LEN -> + FILE_SYSTEM_PREFIX_LEN. + FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX -> + FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX. + FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR -> + FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR. + + * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the + prerequisite modules now handle the DOS stuff. + Don't check for unistd.h. + +2004-08-05 Paul Eggert + + Merge from coreutils. + + * lib/.gdb-history: Remove; this doesn't belong here. + + * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c: + * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h: + * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c: + * lib/getcwd.c: New files. + + * lib/dirname.h: Include . + (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN, + for consistency with POSIX terminology. All uses changed. + (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros. + (strip_trailing_slashes): Use bool for booleans. + * lib/stripslash.c (strip_trailing_slashes): Likewise. + + * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it + sometimes returns a positive errno value even when it succeeds. + (print_errno_message) [!LIBC]: Fall back on strerror if + __strerror_r fails. + + * lib/path-concat.c (mempcpy): Don't define if a system header defines + it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h. + (longest_relative_suffix): New function. + (path_concat): Use it. Assume first argument is not NULL. + Port to DOS. Omit redundant separators. + Report an error instead of returning NULL. + Use mempcpy instead of memcpy. + (xpath_concat): Remove: not declared or used. + + * lib/same.h: Include + (same_name): Return bool, not int. + * lib/same.c (same_name): Likewise. + (errno): Don't declare; we assume C89 or better now. + + * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros, + if not already defined. + + * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now. + * lib/dup-safer.c (errno): Likewise. + +2004-08-05 Paul Eggert + + Merge from coreutils. + * modules/c-strtod, modules/c-strtold, modules/canonicalize: + * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files. + * modules/path-concat: Don't depend on strdup. + +2004-08-03 Simon Josefsson + + * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined. + * lib/progname.h: Don't include stdbool.h. + +2004-08-03 Paul Eggert + + * modules/fatal: Remove, as the "fatal" module wasn't used or working. + * MODULES.html.sh (func_all_modules): Remove fatal. + +2004-08-03 Paul Eggert + + * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working. + +2004-08-03 Paul Eggert + + * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or + working. + +2004-08-02 Simon Josefsson + + * lib/getsubopt.h: New file, with comments from Bruno Haible. + * lib/getsubopt.c: New file, from glibc, but slightly modified based on + suggestions from Paul Eggert . + +2004-08-01 Simon Josefsson + + * lib/xgetdomainname.c: Include stdlib.h, for free(). + +2004-07-19 Bruno Haible + + * MODULES.html.sh (func_all_modules): Add dummy. + +2004-07-16 Simon Josefsson + + * modules/dummy: New file. + +2004-07-16 Simon Josefsson + + * lib/dummy.c: New file. + +2004-07-16 Bruno Haible + + * lib/backupfile.h: Add extern "C" for C++. + * lib/closeout.h: Likewise. + * lib/copy-file.h: Likewise. + * lib/findprog.h: Likewise. + * lib/full-write.h: Likewise. + * lib/pathname.h: Likewise. + * lib/progname.h: Likewise. + * lib/stpcpy.h: Likewise. + * lib/stpncpy.h: Likewise. + * lib/strcase.h: Likewise. + * lib/strstr.h: Likewise. + * lib/xalloc.h: Likewise. + + * lib/mbswidth.h: Add extern "C" for C++. + Reported by Albert Chin-A-Young . + +2004-07-13 Robert Millan + + * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g. + +2004-07-09 Simon Josefsson + + * lib/getndelim2.c: Include stddef.h, for ptrdiff_t. (FreeBSD 4.9 + failed without this.) + +2004-07-09 Paul Eggert + + * modules/chown (Files): Add lib/fchown-stub.c, since + gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub). + +2004-07-09 Paul Eggert + + * lib/fchown-stub.c: New file. + +2004-06-24 Jim Meyering + + * lib/obstack.h (obstack_base): Cast to (void *), per documentation. + +2004-06-22 Paul Eggert + + * modules/argz: Omit "#include". + + * MODULES.html.sh (func_all_modules): Add calloc, to match + 2004-06-01 addition of calloc module. + +2004-06-22 Paul Eggert + + * m4/argz.m4: New file, which is autoupdated from libtool. + +2004-06-22 Paul Eggert + + * lib/argz.c, lib/argz_.h: New files, which are autoupdated from + libtool. + +2004-06-22 Paul Eggert + + * config/srclist-update: Don't insist on "USA." before the + close-comment, as libtool omits the period and puts the */ on a + separate line. + * config/srclist.txt: Add argz.c, argz_.h, argz.m4. + * config/srclistvars.sh: Add LIBTOOL (for eggert only). + +2004-06-22 Gary V. Vaughan + + * modules/argz: New file. + * MODULES.html.sh (func_all_modules): Add argz. + +2004-06-12 Jim Meyering + and Paul Eggert + + * modules/hash (Files): Add lib/xalloc.h. + * modules/pipe (Depends-on): Add wait-process. + * modules/stat (Depends-on): Add xalloc. + * modules/userspec (Files): Add lib/userspec.h. + * modules/xstrto + + Upgrade from gettext-0.13. + * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4, + m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4, + m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4. + +2004-06-10 Jim Meyering + + * lib/calloc.c: New file. + +2004-06-06 Paul Eggert + + * lib/getdate.y (yylex): Allow space between sign and number. + Problem reported by Dan Jacobson. + +2004-06-01 Paul Eggert + + Merge from coreutils CVS. + + * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4, + makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4, + putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4, + strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4, + xstrtol.m4: Fix copyright date and/or serial number. + + * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h. + See if we need an fchown replacement. + (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro. + (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK, + and use the replacement function if we detect either defect. + + * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR, + gl_UTIMECMP. + +2004-06-01 Paul Eggert + and Jim Meyering + + Merge from coreutils CVS. + + * lib/stat-macros.h: New file, with contents from file-type.h + and coreutils' system.h. + * lib/file-type.c: Include "stat-macros.h". + * lib/file-type.h (file_type): Move all macro definitions to new file, + stat-macros.h. + + * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]: + Wrap old code with this conditional. + [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown + function that does not dereference symlinks. + * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown. + + * lib/xreadlink.c: Include xreadlink.h first, to catch .h file + dependency problems. + (xreadlink): Accept new arg SIZE, for efficiency. + All decls and uses changed. + * lib/xreadlink.h: Include , for size_t. + + * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h, + gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h. + + * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h, + sysexits.h. + +2004-06-01 Jim Meyering + + * m4/calloc.m4: New file. + +2004-05-31 Paul Eggert + + * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI + C B3910B A.05.55 [Dec 04 2003]. Problem reported by Jim Meyering. + Also, fix a typo in a diagnostic. + +2004-05-30 Paul Eggert + + * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC + or AC_FUNC_REALLOC. + +2004-05-30 Paul Eggert + + * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these + macros to be defined. + (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if + the allocator returns NULL because the requested size is zero. + +2004-05-20 Paul Eggert + + * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this + var. Add comment explaining why libc still defines it. This + merges the following patch from glibc: + http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html + +2004-05-20 Andreas Schwab + + * m4/free.m4: Replace free if it not known to work, not the other + way round. + +2004-05-19 Paul Eggert + + * lib/obstack.c (_obstack): Remove unused variable. It hasn't been + present in glibc since revision 1.1 of this file. + * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast, + obstack_alignment_mask, obstack_alloc, obstack_base, + obstack_blank, obstack_blank_fast, obstack_chunk_size, + obstack_copy, obstack_copy0, obstack_finish, obstack_grow, + obstack_grow0, obstack_init, obstack_int_grow, + obstack_int_grow_fast, obstack_make_room, obstack_memory_used, + obstack_next_free, obstack_object_size, obstack_ptr_grow, + obstack_ptr_grow_fast, obstack_room): Remove declarations of + nonexistent functions. + +2004-05-18 Karl Berry + + * config/srclist.txt: break link for vasnprintf.c. + +2004-05-17 Paul Eggert + + Port obstack to the AS/400, where pointers are 16 bytes wide and + you cannot cast an integer to a valid pointer. This patch is + currently waiting to be integrated into glibc; see + . + + * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove. + All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN. + (__BPTR_ALIGN, __PTR_ALIGN): New macros. + (struct obstack): temp member is now a union of a pointer and + an integer, instead of an integer. All integer uses changed. + This does not affect the physical layout of struct obstack, + except on hosts (like the AS/400) where the size or alignment of + void * is greater than that of ptrdiff_t. + (obstack_finish) [! (defined __GNUC__ && defined __STDC__ && + __STDC__)]: Store temporary in pointer member of union, not + integer member. + * lib/obstack.c: Include , for offsetof. + (struct fooalign): Remove; it doesn't need a name. + (union fooround): Change double to long double, and add void *. + (DEFAULT_ALIGNMENT): Use offsetof to compute. + (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant, + not a macro. Hence the values are always int; so remove all + casts-to-int in uses. + +2004-05-17 Paul Eggert + + * config/srclist.txt: Break link for argp-help.c and argp-parse.c until + we can get this patch merged into glibc. + +2004-05-17 Derek R. Price + Paul Eggert + + * m4/argp: Depend on alloca. + +2004-05-17 Derek R. Price + Paul Eggert + + * lib/argp-help.c, argp-parse.c: Assume rather than + freecoding. + +2004-05-17 Bruno Haible + + * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a + precision that consists of a '.' followed by an empty digit string. + Patch by Tor Lillqvist . + +2004-05-16 Paul Eggert + + * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always, + for backward compatibility with older code. We need our own + alloca.h if _AIX is defined. Define HAVE_ALLOCA if we discover + it under some other name, and our alloca.h will define it. + +2004-05-16 Paul Eggert + Derek Price + + * lib/alloca.c: Include , to get our interface. + * lib/alloca_.h: Use __alloca on AIX, so that we don't have to + include first. Use C89 prototype for alloca; this + requires including for size_t. Use extern "C" if C++. + Use #elif for simplicity, since we can assume C89 now. + Don't try to source the system alloca.h since it will not be found + and to prevent recursively including its replacement. + * lib/fnmatch.c: Include instead of opencoding. + * lib/regex.c: Likewise. + +2004-05-16 Derek Price + Paul Eggert + + getline cleanup. This changes the getndelim2 API: both order of + arguments, and meaning of delim2 (now uses EOF, not 0, to indicate + no delimiter). + + * lib/getline.c: Don't include stddef.h or stdio.h, since our + interface does that. + (getline): Always use getdelim, so that we don't have two + copies of this code. + * lib/getndelim2.c: Include , , + if available. + (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined. + (GETNDELIM2_MAXIMUM): New macro. + (getndelim2): Reorder arguments. delim==EOF now means no delimiter, + instead of the old practice of delim2==0. All callers changed. + Return -1 on overflow, instead of returning junk. + Do not set *linesize unless allocation succeeds. + * lib/getndelim2.h: Do not include stddef.h; no longer needed, now + that we include sys/types.h. + * lib/getnline.h: Likewise. + * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro. + (getndelim2): Reorder arguments. + * lib/getnline.c (getnline, getndelim): + Don't discard the NMAX argument. + (getnline): Invoke getndelim, to avoid code duplication. + * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead + of (size_t) -1 by callers of the getnline family. + +2004-05-13 Paul Eggert + + * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC. + Check for gettimeofday. + * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC. + Check for settimeofday, stime. + +2004-05-13 Paul Eggert + + * lib/nanosleep.c (suspended): Change its type from int to + sig_atomic_t volatile. + (first_call): Make it private to rpl_nanosleep, and have it + be zero initially as that's a bit faster. + (my_usleep): Round up fractional times instead of truncating them, + as this is the usual meaning for 'sleep'. + + * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday' + doesn't work. + * lib/settime.c: Include , for stime (on Solaris 8, anyway). + (ENOSYS): Define if not defined. + (settime): Fall back on stime if it exists and settimeofday fails. + But don't bother with fallbacks if a method fails with errno == EPERM. + +2004-05-11 Jim Meyering + + Prior to this change, the save_cwd caller required read access to the + current directory on most systems (ones with the fchdir function). + + * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only + fails, try write-only, and finally, resort to using xgetcwd. + +2004-05-06 Paul Eggert + + * lib/obstack.c, obstack.h: Import changes from libc. + +2004-04-28 Bruno Haible + + * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it + also implicitly appends .exe to executables. + * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now + accepts Windows pathnames. + * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN): + Treat Cygwin like Windows, since it now accepts Windows pathnames. + * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN): + Treat Cygwin like Windows, since it now accepts Windows pathnames. + Reported by Derek Robert Price . + +2004-04-21 Karl Berry + + * config/srclist.txt (localcharset.c): break sync. + +2004-04-20 Paul Eggert + + * m4/host-os.m4: Add a copyright notice. + +2004-04-20 Jim Meyering + + Change UTILS_ to gl_ in AC_DEFINE'd names. + Change utils_- and jm_-prefixed variables, too. + * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from + UTILS_FUNC_MKDIR_TRAILING_SLASH. + * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP. + + * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD. + Don't emit trailing blanks. + Also rename jm_-prefixed variables to have gl_ prefix. + + * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS. + Also rename jm_-prefixed variables to have gl_ prefix. + + * m4/jm-macros.m4: Reflect the renamings. + * m4/prereq.m4: Likewise. + +2004-04-20 Jim Meyering + + * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak + memory. + +2004-04-20 Jim Meyering + Bruno Haible + + * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak + memory when realloc fails. + +2004-04-19 Jim Meyering + + * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE, + now that readutmp.c may call `free (0)'. + +2004-04-19 Bruno Haible + + * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well. + * m4/inttypes_h.m4: Likewise. + * m4/stdint_h.m4: Likewise. + * m4/intmax_t.m4: Likewise. + * m4/uintmax_t.m4: Likewise. + +2004-04-18 Jim Meyering + + * m4/prereq.m4: Don't forbid jm_ prefix. + + * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4: + * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4: + * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4: + * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4: + * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4: + * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4: + * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4: + * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4: + * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4: + * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4: + * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4: + * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4: + * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4: + * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4: + * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4: + * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4, + * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4: + * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4: + Change jm_ to gl_ in AC_DEFINE'd names. Update all uses. + +2004-04-18 Jim Meyering + + * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc + failure, don't leak memory and do call END_UTMP_ENT. + +2004-04-16 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro. It is specific to + coreutils' stat program. + (gl_PREREQ): Don't require jm_PREREQ_STAT. + +2004-04-11 Paul Eggert + + * lib/inttostr.h: Include unconditionally, since we assume + C89. + (CHAR_BIT): Remove, since we assume C89. + Include if available, as per current Autoconf CVS advice. + +2004-03-31 Jim Meyering + + * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC. + Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC. + * m4/xalloc.m4: Likewise. + +2004-03-30 Paul Eggert + + Merge from coreutils. + + * m4/inttostr.m4: New file. + * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff. + Require AM_STDBOOL_H and gl_TIMESPEC instead. + Require gl_CLOCK_TIME. + * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE. + +2004-03-30 Paul Eggert + + * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int + not bool, to be more consistent with Unix conventions. + Suggested by Bruno Haible. + + Merge from coreutils. + + * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c: + * lib/umaxtostr.c: New files. + + * lib/getdate.h: Include stdbool.h, and timespec.h instead of + the usual dance. + (get_date): Change signature to support fractional time stamps. + All callers changed. + * lib/getdate.y: Include "getdate.h" first, as we can now + assume C89 and don't need to worry about 'const'. + Similarly, include "unlocked-io.h" near start, not in middle. + Include . + (textint.value): Use long int rather than int. + (textint.digits): Use size_t rather than int. + (BILLION, LOG10_BILLION): New constants. + (parser_control): New member rel_ns. Members day_ordinal, + time_zone, month, day, hour, minutes, rel_year, rel_month, + rel_day, rel_hour, rel_minutes, rel_seconds + are now long int, not int. Member seconds is now struct timespec, + not int. New member timespec_seen. Members dates_seen, days_seen, + local_zones_seen, rels_seen, times_seen, zones_seen are now size_t, + not int. + (%union.intval): Now long int, not int. + New member timespec. + (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens. + (seconds, signed_seconds, unsigned_seconds): New nonterminals. + (spec): Now is a timespec or an item list. + (timespec, items): New nonterminals. + (time, rel, relunit, number, get_date): + Add support for fractional seconds. + (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax. + (gmtime, localtime, mktime): Remove decls; not needed with C89. + (to_hour): First arg is now long int, not int. + (to_year): Returns long int, not int. + Don't treat year -70 like 70. + (tm_diff): Returns long int, not int. + (lookup_word): Use bool instead of int when appropriate. + (yylex): Use size_t for count, not int. + Detect overflow when parsing large integer constants. + Add support for fractions. + (get_date): Make pointers 'const' if possible. + Use more-portable code to detect integer overflow. + (main) [TEST]: Adjust to above changes. Test for localtime failure. + Don't use ctime; it's not reliable if the year has >4 digits. + + * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set. + This is for compatibility with BSD. + + * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define. + (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise. + From coreutils' system.h. + + * lib/userspec.c: Don't include "posixver.h". + (parse_user_spec): Fall back on USER.GROUP parsing, regardless + of POSIX version, as POSIX 1003.1-2001 allows that behavior as a + compatible extension. Simplify code by removing a boolean int + that was always nonzero if a string was nonnull. + +2004-03-30 Jim Meyering + + Merge from coreutils. + + Avoid a configure-time warning about sys/ucred.h on OSF V4.0. + * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since + on some systems one must include before it. + Reported by Christian Krackowizer. + +2004-03-30 Jim Meyering + + Merge from coreutils. + + * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h. + + * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading + an empty input stream. + + * lib/readtokens.c: Include . + (readtoken): Use `size_t' rather than int/long. + All callers adjusted. + Use `bool' rather than `int' where appropriate. + Use memset rather than an explicit loop. + Use x2nrealloc rather than xrealloc. + Allow the use of `\0' as a delimiter. + (readtokens): Likewise. + * lib/readtokens.h (readtoken, readtokens): Update prototypes. + +2004-03-30 Jim Meyering + + * m4/realloc.m4: Remove file, since now it does no more than + AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via + the `configure.ac' section of module/realloc. + * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC. + +2004-03-30 Bruno Haible + + * lib/getloadavg.c (getloadavg): Don't assume setlocale returns + nonnull. + +2004-03-29 Paul Eggert + + Merge changes to getloadavg.c from coreutils and Emacs. + + * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale): + Define to an expression, not to the empty string. + Include cloexec.h and xalloc.h. + (getloadavg): Restore LC_NUMERIC locale after setting it temporarily. + Use set_cloexec_flag rather than rolling our own. + * lib/cloexec.c, lib/cloexec.h: New files. + +2004-03-29 Paul Eggert + + * m4/cloexec.m4: New file. + +2004-03-18 Paul Eggert + + * lib/getopt.h: Sync with libc CVS. + +2004-03-18 Paul Eggert + Bruno Haible + + * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether declares + mbswidth. + +2004-03-18 Paul Eggert + Bruno Haible + + * lib/mbswidth.h: Include only if + HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have + . + * lib/mbswidth.c: Include and before . + +2004-03-09 Paul Eggert + + * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c: + Sync with libc CVS. + * lib/getopt_int.h: New file, also synced from libc. + +2004-03-09 Paul Eggert + + * config/srclistvars.sh: Add GNUWWWLICENSES for eggert. + * config/srclist.txt: Sync getopt with libc. Add getopt_int.h. + Bring back getopt.c, getopt.h, getopt1.c. + +2004-03-07 Paul Eggert + + * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK. + All uses changed. Check for sa_sigaction member; this fixes + a bug first reported by Jason Andrade in + . + +2004-03-07 Paul Eggert + + * lib/c-stack.c (SIGACTION_WORKS): New macro. Use it instead of long + '#if' expressions. Unlike the code it replaces, it does not + depend on (defined _SC_PAGESIZE). However, it does depend on + HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug + first reported by Jason Andrade in + . + +2004-02-25 Simon Josefsson + + * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared. + +2004-02-25 Simon Josefsson + + * lib/strdup.h: New file. + * lib/strdup.c: Include it. + * lib/path-concat.c: Include strdup.h. Drop strdup declaration. + * lib/userspec.c: Include strdup.h. Drop strdup declaration. + +2004-02-23 Karl Berry + + * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files + (from fencepost.gnu.org:/gd/gnuorg). + +2004-02-23 Karl Berry + + * config/srclistvars.sh (GNUORG) [karl]: redefine. + * config/srclist.txt: add maintain/standards documents. + +2004-02-18 Bruno Haible + + * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE. + Reported by Derek Robert Price . + +2004-02-16 Karl Berry + + * config/mkinstalldirs, install-sh: update from automake. + +2004-02-06 Karl Berry + + * m4/po.m4: update from gettext 0.14.1. + +2004-02-06 Karl Berry + + * lib/config.charset: update from gettext 0.14.1. + +2004-02-05 Paul Eggert + + Add comments and code, prompted by suggestions from Bruno Haible + for sh-quote. + * lib/quotearg.h (quotearg_alloc): New decl. Improve the comments + describing the enum quoting_style values. + * lib/quotearg.c (quotearg_alloc): New function. + (quotearg_buffer_restyled): Treat lone { and } as special. + Treat = as special. Work around bug with older shells + that "see" a '\' that is really the 2nd byte of a multibyte char. + Quote empty string with shell_quoting_style. + +2004-02-03 Bruno Haible + + * m4/pipe.m4: New file, from GNU gettext. + +2004-02-03 Bruno Haible + + * lib/pipe.h: New file, from GNU gettext. + * lib/pipe.c: New file, from GNU gettext. + +2004-01-27 Bruno Haible + + * m4/execute.m4: New file, from GNU gettext. + +2004-01-27 Bruno Haible + + * lib/execute.h: New file, from GNU gettext. + * lib/execute.c: New file, from GNU gettext. + * lib/w32spawn.h: New file, from GNU gettext. + +2004-01-24 Paul Eggert + + Merge from diffutils. + + * lib/file-type.c (file_type): Add typed memory objects. + * lib/file-type.h (S_TYPEISTMO): New macro. + + * lib/c-stack.h (c_stack_action): Remove argv argument. + * lib/c-stack.c (c_stack_action): Likewise. All uses changed. + (die): Don't calculate message unless segv_action returns. + (get_stack_location, min_address_from_argv, max_address_from_argv, + volatile stack_base, volatile_stack_size): Remove. + (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume + that every segmentation violation is a stack overflow. (Ouch!) + See Debian bug 136249 (still outstanding) for more info about why + HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels. + +2004-01-24 Paul Eggert + + Exit-status fix from coreutils. + + Use exit_failure consistently in place of EXIT_FAILURE, + so that program exit statuses are consistent on failure. + + * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]: + Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE. + * lib/argmatch.h: Comment fix to match the above. + * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]: + Now a macro referring to exit_failure, instead of a separate + variable. Include "exitfail.h" to get it. + * lib/xstrtol.h: Include "exitfail.h". + (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2. + + * lib/long-options.c (parse_long_options): Use prototype + for usage function arg. Pass it EXIT_SUCCESS rather than 0, + for clarity. + +2004-01-21 Jim Meyering + + * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal + so as not to conflict with a different-sized __mktime_internal + function in GNU libc. + * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise. + Problem building statically-linked `ls' reported by Michael Brunnbauer. + +2004-01-20 Karl Berry + + * config/config.guess: update from config. + + * config/srclistvars.sh: GNUWWWLICENSES for karl. + +2004-01-20 Bruno Haible + + Safer stack allocation. + * lib/setenv.c: Include allocsa.h. + (alloca): Remove fallback definition. + (freea): Remove macro. + (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa + instead of freea. + +2004-01-20 Bruno Haible + + * m4/eealloc.m4: New file, from GNU gettext. + +2004-01-20 Bruno Haible + + * m4/allocsa.m4: New file, from GNU gettext. + +2004-01-20 Bruno Haible + + * lib/xallocsa.h: New file, from GNU gettext. + * lib/xallocsa.c: New file, from GNU gettext. + +2004-01-20 Bruno Haible + + * lib/wait-process.c: On Windows, include windows.h. Needed on mingw. + +2004-01-20 Bruno Haible + + * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument. + * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE + specially. + +2004-01-20 Bruno Haible + + * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid() + patch. + +2004-01-20 Bruno Haible + + * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration. + +2004-01-20 Bruno Haible + + * lib/eealloc.h: New file. + +2004-01-20 Bruno Haible + + * lib/binary-io.h: Avoid warnings on Cygwin. + +2004-01-20 Bruno Haible + + * lib/allocsa.h: New file, from GNU gettext. + * lib/allocsa.c: New file, from GNU gettext. + +2004-01-18 Karl Berry + + * doc/gpl.texi, doc/lgpl.texi: new files. + +2004-01-18 Karl Berry + + * config/srclistvars.sh (GNUWWWLICENSES): new variable. + * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there. + +2004-01-15 Paul Eggert + + Merge from coreutils. + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t. + * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION. + (gl_DEFAULT_POSIX2_VERSION): Move + the documentation from 'configure' into 'config.hin', + so that 'configure --help' isn't burdened by it and + we don't have to worry about its formatting there. + Reword the documentation so that it's more succinct + and can be run together into a single paragraph. + * m4/same.m4 (gl_SAME): Check for pathconf. + +2004-01-15 Paul Eggert + + Merge from coreutils. + + * lib/posixver.c: Include posixver.h. + + * lib/same.c: Include , . + (_POSIX_NAME_MAX): Define if not defined. + (MIN): New macro. + (same_name): If file names are silently truncated, report + that the file names are the same if they are the same after + the silent truncation. + + * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the + conversion function. + * lib/xstrtod.c (xstrtod): Likewise. All callers changed to + include c-strtod.h and use c_strtod. Don't include stdlib.h; no + longer needed. + +2004-01-15 Jim Meyering + + Merge from coreutils. + + * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME + if no library is required. + * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX. + * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE. + * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58. + (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58. + * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW. + * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the + value, $ac_cv_search_crypt, if it's "none required". + * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro. + * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG, + not gl_FUNC_GETLOADAVG. + * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH, + gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS. + +2004-01-15 Jim Meyering + + Merge from coreutils. + + * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code. These + days, gcc-3.x does better all by itself. Patch from Dean Gaudet: + http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html + + * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new, + optional configure-time default. + + * lib/version-etc.c (version_etc_copyright): Update copyright date. + + * lib/xreadlink.c (xreadlink): Correct outdated comment. + +2004-01-15 Alexandre Duret-Lutz + + Merge from coreutils. + + * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the + value, $ac_cv_search_nanosleep, if it's "none required". + +2004-01-14 Paul Eggert + + * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided + with like-named macro in fnmatch.c. + (EXT): Use an internal constant instead. + + Merge fnmatch patches from glibc. + * lib/fnmatch.c (mbsinit): Remove define. + Add libc_hidden_ver (__fnmatch, fnmatch). + * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate. + Adjust to renaming of collseq_table_lookup to __collseq_table_lookup. + +2004-01-14 Karl Berry + + * config/install-sh: update from automake. + +2004-01-13 Karl Berry + + * config/install-sh: update from automake. + +2004-01-09 Karl Berry + + * config/install-sh: update from automake. + +2004-01-05 Karl Berry + + * config/config.{sub,guess}: update from config. + +2003-12-31 Karl Berry + + * config/depcomp: update from automake. + +2003-12-14 Karl Berry + + * lib/config.charset: update from gettext-runtime. + +2003-12-03 Paul Eggert + + * lib/getgroups.c (getgroups): xmalloc takes one argument, not two. + Bug reported by Alfred M. Szmidt. + +2003-12-03 Bruno Haible + + * m4/gettext.m4: Upgrade from gettext-0.13. + * m4/po.m4: Upgrade from gettext-0.13. + * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here. + * m4/intmax.m4: New file, from gettext-0.13. + * m4/printf-posix.m4: New file, from gettext-0.13. + +2003-11-29 Karl Berry + + * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc. + +2003-11-25 Paul Eggert + Bruno Haible + + * lib/printf-parse.h: Don't include sys/types.h. + (ARG_NONE): New macro. + (char_directive): Change type of *arg_index fields to size_t. + * lib/printf-parse.c: Don't include sys/types.h. + (SSIZE_MAX): Remove macro. + (PRINTF_PARSE): Change the type of the arg_index variables to size_t. + Remove unnecessary overflow check. + * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index + fields. + +2003-11-25 Bruno Haible + + * modules/vasnprintf (Files): Remove m4/ssize_t.m4. + +2003-11-25 Bruno Haible + + * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require + gt_TYPE_SSIZE_T. + +2003-11-24 Paul Eggert + + * modules/alloca: Remove dependency on xalloc. + +2003-11-24 Paul Eggert + + * lib/alloca.c: Remove dependency on xalloc module. + (xalloc_die): Remove. + (memory_full) [!defined emacs]: New macro. + [!defined emacs]: Don't include xalloc.h. + (alloca): Invoke memory_full, not xalloc_die, if malloc fails or + address arithmetic overflows. Change datatypes a bit to avoid + unnecessary casts. + +2003-11-22 Jim Meyering + + * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments: + s/size/size_t/. + +2003-11-21 Karl Berry + + * config/config.{sub,guess}: update from config. + +2003-11-18 Karl Berry + + * config/config.{sub,guess}: update from config. + + * config/(printf-{parse,args}.[ch]): sync broken, sigh. + +2003-11-17 Paul Eggert + + * README: Mention that S+T cannot overflow if S is the size of + an existing object and T is sufficiently small. + +2003-11-17 Jim Meyering + + On systems without utime and without a utimes function capable of + dealing with a NULL struct utimbuf* argument, this utime replacement + could -- in unusual circumstances -- leak a file descriptor. + * lib/utime.c: Include and . + (utime_null): Be sure to close `fd' and to preserve errno. + Reported by Geoff Collyer via Arnold Robbins. + +2003-11-17 Bruno Haible + + * modules/vasnprintf (Files): Add m4/ssize_t.m4. + (Depends-on): Add xsize. + +2003-11-17 Bruno Haible + + * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T. + +2003-11-17 Bruno Haible + + * lib/vasnprintf.c (alloca): Remove fallback definition. + (freea): Remove definition. + (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes. + Reported by Paul Eggert. + +2003-11-16 Paul Eggert + Bruno Haible + + Protect against address arithmetic overflow. + * lib/printf-args.h: Include stddef.h. + (arguments): Change type of field 'count' to size_t. + * lib/printf-args.c (printf_fetchargs): Use size_t instead of + 'unsigned int' where appropriate. + * lib/printf-parse.h: Include sys/types.h. + (char_directive): Change type of *arg_index fields to ssize_t. + (char_directives): Change type of fields 'count', max_*_length to + size_t. + * lib/printf-parse.c: Include sys/types.h and xsize.h. + (SSIZE_MAX): Define fallback value. + (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t + instead of 'int' where appropriate. Check a_allocated, d_allocated + against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1. + * lib/vasnprintf.c: Include xsize.h. + (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate. + Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against + overflow. Avoid wraparound when converting a width or precision from + decimal to binary. + +2003-11-16 Bruno Haible + + Update from GNU gettext. + * lib/printf-parse.c: Generalize to it can be compiled for wide + strings. + (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros. + * lib/vasnprintf.c: Generalize to it can be compiled for wide strings. + (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF, + SNPRINTF): New macros. + Don't include if the file is used inside libintl. + (local_wcslen): New function, for Solaris 2.5.1. + (VASNPRINTF): Use it instead of wcslen. + +2003-11-16 Bruno Haible + + * lib/xsize.h (xmax): New function. + (xsum, xsum3, xsum4): Declare as "pure" functions. + +2003-11-12 Paul Eggert + + * modules/xalloc (Files): Undo latest change, since xalloc.h + no longer needs SIZE_MAX or PTRDIFF_MAX. + +2003-11-12 Paul Eggert + + * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or + gl_PTRDIFF_MAX. + +2003-11-12 Paul Eggert + + * lib/xstrtol.c (__xstrtol): Remove "break" immediately after + "return", to pacify some unknown compiler. Problem reported + by Joerg Schilling. + +2003-11-12 Paul Eggert + + * lib/xalloc.h: Do not include or . + (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for + the heuristic, rather than PTRDIFF_MAX and SIZE_MAX. This + heuristic is just as accurate as far as we know, and it removes a + dependency on size_max.m4 and ptrdiff_max.m4. + +2003-11-11 Bruno Haible + + * modules/xsize (Files): Add m4/size_max.m4. + * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4. + +2003-11-11 Bruno Haible + + * m4/size_max.m4: New file. + * m4/ptrdiff_max.m4: New file. + * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX. + * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro. + (gl_XALLOC): Invoke it. + +2003-11-11 Bruno Haible + + * lib/xsize.h (SIZE_MAX): Remove fallback definition. + * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are + defined. + +2003-11-10 Paul Eggert + + * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX && + PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have + rejected some allocations of exactly SIZE_MAX - 2 bytes. + From Bruno Haible. + [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX, + not (size_t) -1, since it's defined here. + +2003-11-09 Karl Berry + + * config/mkinstalldirs, depcomp, mdate-sh: update from automake. + +2003-11-06 Paul Eggert + + * lib/xalloc.h [HAVE_STDINT_H]: Include . + (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]: + Reject sizes of exactly SIZE_MAX bytes. + * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX + is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts. + +2003-11-05 Bruno Haible + + * lib/xsize.h: Include limits.h, to avoid a possible collision with + SIZE_MAX defined in on Solaris. + +2003-11-04 Jim Meyering + + * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd + variable names, rather than @VAR@. + * modules/poll: Likewise. + +2003-11-04 Bruno Haible + + * modules/xsize: New file. + * modules/linebreak: Depend on xsize. + * MODULES.html.sh (func_all_modules): Add xsize. + +2003-11-04 Bruno Haible + + * m4/xsize.m4: New file. + +2003-11-04 Bruno Haible + + * lib/xsize.h: New file. + * lib/linebreak.c: Include xsize.h. + (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc() + argument for overflow. + Suggested by Paul Eggert. + +2003-11-03 Karl Berry + + * config/config.{guess,sub}: update from config. + +2003-11-03 Jim Meyering + + * modules/userspec (lib_SOURCES): Add userspec.h. + (Include): Add "userspec.h". + Improve description. + +2003-11-03 Jim Meyering + + * lib/userspec.c: Include "userspec.h". + * lib/userspec.h: New file. + +2003-11-03 Bruno Haible + + * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid. + +2003-11-03 Bruno Haible + + * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if + available, to avoid (extremely rare) race condition. + Suggested by Paul Eggert. + +2003-11-02 Karl Berry + + * config/srclist.txt (vasprintf.c): sync broken, sigh. + +2003-10-31 Paul Eggert + + * lib/mountlist.h (struct mount_entry.me_type_malloced): New member. + * lib/mountlist.c (SIZE_MAX): Define if not defined already. + (read_filesystem_list): Set and use me_type_malloced. + Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or + whatever the type happens to be), for brevity and consistency. + Check for size calculation overflow on Alphas running OSF/1. + +2003-10-31 Jim Meyering + + * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized. + + * lib/linebuffer.c: Include for declaration of memset. + +2003-10-30 Paul Eggert + Bruno Haible + + * lib/vasprintf.c: Include , . + (vasprintf): Fail if the resulting length doesn't fit in an 'int'. + +2003-10-30 Paul Eggert + + * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to + netbsd*-gnu*. Suggested by Robert Millan. + +2003-10-29 Paul Eggert + + * modules/group-member: Depend on stdbool. + +2003-10-29 Paul Eggert + + * m4/xalloc.m4 (gl_XALLOC): Undo previous change. + +2003-10-29 Paul Eggert + + * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu. Add comments + to it, and to knetbsd*-gnu and kfreebsd*-gnu. Remove the '*' from + after the 'gnu' in these cases. This fixes some bugs in the + previous change, and is based on suggestions by Robert Millan. + +2003-10-29 Paul Eggert + + * lib/xalloc.h (xalloc_oversized): Now a macro, not a function, + so that it works even if SIZE_MAX < N. Do not include ; + no longer needed. + * lib/quotearg.c (quotearg_n_options): Use it. + * lib/group-member.c: Include . + (free_group_info): Arg is now const *; don't free arg. + (get_group_info): Now returns bool and accepts struct group_info *, + rather than returning a malloc'ed struct group_info *. + All uses changed. Check for overflow in internal size calculation. + + * lib/getusershell.c (readname): Simplify the code by using x2nrealloc + rather than xmalloc/xrealloc. + * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by + using x2realloc rather than xmalloc/xrealloc. Also, fix a C + conformance bug: the old code used a pointer after freeing the + storage that it addressed. + * lib/hash.c (hash_initialize): Simplify the code by using + xalloc_oversized rather than doing it by hand. + * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need + the buffer preserved. Use free and xmalloc instead. + * lib/quotearg.c (quotearg_n_options): Likewise. + Use a simpler test for size overflow. Don't use xalloc_oversized + because unsigned int might be wider than size_t (!); this suggests + that we should switch from unsigned int to size_t for slot numbers. + +2003-10-28 Paul Eggert + + * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and + GNU/KNetBSD. These implementations use glibc atop the FreeBSD and + NetBSD kernels. Requested by Richard Stallman. + +2003-10-27 Paul Eggert + + * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc + to allocate the returned structure. Do not allocate a subarray, + as x2nrealloc will do that. + (add_exclude): Use x2nrealloc to reallocate ex->exclude, + instead of xnrealloc. + (add_exclude_file): Use x2realloc instead of malloc + xnrealloc. + +2003-10-27 Bruno Haible + + * lib/stdbool_.h: Better support for BeOS. + +2003-10-26 Paul Eggert + + * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h + now uses inline. + +2003-10-26 Paul Eggert + + * lib/xalloc.h (xalloc_oversized): New static inline function, for + callers that want to do their own size-overflow checking. Include + , since xalloc_oversized returns bool. + * lib/xalloc.c (array_size_overflow): Remove. All callers changed + to use xalloc_oversized. + + Add two functions x2realloc, x2nrealloc, for programs that grow + arrays dynamically by doubling their sizes. + * lib/xalloc.h (x2realloc, x2nrealloc): New decls. + * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc): + New functions. + + Port to C99 semantics for 'inline' of external functions. + Bug reported by Bruno Haible. + * lib/xmalloc.c (xnmalloc_inline): New static inline function, + with the old contents of xnmalloc. + (xnmalloc, xmalloc): Use it. + (xnrealloc_inline): New static inline function, + with the old contents of xnrealloc. + (xnrealloc, xrealloc): Use it. + + * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for + that. + +2003-10-26 Karl Berry + + * config/srclist.txt (COPYING.DOC): no longer available from + /gd/gnuorg; don't know where the ultimate source is. + +2003-10-25 Paul Eggert + + Fix several address-calculation bugs in the hash modules, + plus some minor code cleanup. + + * lib/hash.h: Include , for bool. + * lib/hash.c: Don't include , since hash.h does it now. + * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used, + hash_get_n_entries, hash_get_max_bucket_length, + hash_get_entries, hash_do_for_each, hash_string, hash_initialize, + hash_rehash): Use size_t rather than unsigned. + * lib/hash.c (struct hash_table, hash_get_n_buckets, + hash_get_n_buckets_used, hash_get_n_entries, + hash_get_max_bucket_length, hash_table_ok, hash_print_statistics, + hash_get_entries, hash_do_for_each, hash_string, is_prime, + next_prime, hash_initialize, hash_rehash, hash_delete, hash_print): + Likewise. + (SIZE_MAX): Define if not defined. + (hash_get_max_bucket_length, hash_table_ok, hash_lookup, + hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each, + hash_print): + Use const * when possible. + (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P. + (check_tuning): Fix bug: if tuning parameters were very close to + 0 or 1, rounding errors could have caused subscript violations. + (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast. + (hash_initialize): Add 'fail:' label + to free table and return NULL, and use it to simplify code. + Use calloc rather than clearing the storage ourself. + (hash_initialize, hash_rehash): Check for arithmetic overflow in + buffer size calculations. + * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned. + Include , for size_t. + * lib/hash-pjw.c (hash_pjw): Likewise. + Switch to method described by Bruno Haible. + Include , for CHAR_BIT. + (SIZE_BITS): New macro. + +2003-10-23 Paul Eggert + + * m4/getline.m4 (AM_FUNC_GETLINE): + Don't include getndelim2.o twice into LIBOBJS; this breaks on some + hosts. Problem reported by Derek Robert Price in + . + This patch can be withdrawn after Autoconf 2.58 is required for gnulib. + * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise. + +2003-10-21 Paul Eggert + + * lib/getndelim2.c (getndelim2): When size calculation overflows, + ceiling the allocation at NMAX bytes rather than silently + discarding input bytes before NMAX is reached. This makes + a difference only if NMAX exceeds SIZE_MAX / 2. + + * lib/obstack.c: Merge from glibc. + [defined _LIBC]: Include , not "obstack.h". + Add libc_hidden_def (_obstack_newchunk). + (_obstack_free) [! defined _LIBC]: Remove. + [defined _LIBC]: Make a strong alias from obstack_free, rather than + a clone of the function body. + (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove. + [defined _LIBC && !defined USE_IN_LIBIO]: Include . + + * lib/obstack.h: Indenting cleanup, to make it easier to merge with + glibc. + (obstack_grow, obstack_grow0): Remove unnecessary parentheses around + arg to memcpy. + + * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg. + (obstack_ptr_grow_fast, obstack_int_grow_fast): + Don't use lvalue casts, as GCC plans to remove support for them + in GCC 3.5. Reported by Joseph S. Myers. This bug + was also present in the non-GCC version, indicating that this + code had always been buggy and had never been widely used. + (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank): + Use the fast variant of each macro, rather than copying the + definiens of the fast variant; that way, we'll be more likely to + catch future bugs in the fast variants. + +2003-10-20 Bruno Haible + + * modules/wait-process: New file. + * MODULES.html.sh (func_all_modules): Add wait-process. + +2003-10-20 Bruno Haible + + * m4/wait-process.m4: New file. + +2003-10-20 Bruno Haible + + * lib/wait-process.h: New file, from GNU gettext. + * lib/wait-process.c: New file, from GNU gettext. + +2003-10-19 Jim Meyering + + * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on + HPUX 10.20. + +2003-10-18 Karl Berry + + * config/config.guess: update from config. + +2003-10-16 Paul Eggert + + * lib/getgroups.c: Include , . + (getgroups): First arg is int, not size_t. + Don't let 'free' mangle errno. + +2003-10-16 Paul Eggert + + * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL. + +2003-10-16 Karl Berry + + * config/config.{guess,sub}: update from config. + +2003-10-16 Jim Meyering + + * lib/xmalloc.c: Include , for declarations of memset and + memcpy. + +2003-10-15 Paul Eggert + + * lib/exclude.c: Do not include or . + (SIZE_MAX): Remove. + (new_exclude, add_exclude_file): Initial size no longer needs to + be a power of 2. + (add_exclude, add_exclude_file): Use xnrealloc instead of rolling + our own address arithmetic overflow checking. + + * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't. + (fnmatch): Do not alloca more than 2000 wide characters; + instead, use malloc for large buffers. + Check for address arithmetic overflow, and return -1 + with errno set to ENOMEM in that case. + * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro. + (NEW_PATTERN): Do not alloca more than 8000 bytes; + instead, return -1. Check for address arithmetic overflow. + +2003-10-14 Paul Eggert + + Handle invalid suffixes and overflow independently, so that + callers can treat them independently as needed. Fix some bugs in + suffix handling, e.g., "100k@" was not diagnosed as an invalid + suffix for a human-readable blocksize. The major caller-visible + change is the addition of a new + LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating + that both overflow and suffix chars were found. + + * lib/human.c (humblock): Don't check separately for invalid suffix + char; that is xstrtoumax's job (now that its bug is fixed). + * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined + INTMAX_MAX]: New macros. + * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM, + TYPE_MAXIMUM): New macros. + (bkm_scale, bkm_scale_by_power): Return strtol_error, not int. + (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values + if overflow occurs, as it's what __strtol does and it's more useful + in practice. + (__xstrtol): If __strtol reports some error other than ERANGE, + reflect it to the caller as LONGINT_INVALID. If it reports + ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW + | LONGINT_INVALID_SUFFIX_CHAR if both errors occur. + * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum + value. + (_STRTOL_ERROR): Handle it. Abort when given unknown error codes. + * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros. + * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) + [defined UINTMAX_MAX]: New macros. + +2003-10-14 Bruno Haible + + * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list. + +2003-10-14 Bruno Haible + + * m4/sig_atomic_t: New file, from GNU gettext. + * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T. + +2003-10-14 Bruno Haible + + * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert. + * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert. + Also use volatile where needed. + +2003-10-12 Paul Eggert + + * modules/xalloc: Do not depend on 'exit'. Depend on 'stdbool'. + Change maintainer from Bruno Haible to 'all'. + +2003-10-12 Paul Eggert + + * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE. + +2003-10-12 Paul Eggert + + * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls. + (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate, + and define in terms of the other primitives. + * lib/xmalloc.c: Include stdbool.h; do not include exit.h. + (SIZE_MAX): Define if not already defined. + (array_size_overflow): New function. + (xalloc_die): Abort instead of exiting if 'error' returns. + (xnmalloc, xnrealloc, xzalloc, xclone): New functions. + (xmalloc, xrealloc): Use them. + (xcalloc): Check for address arithmetic overflow. + * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be + a bit faster than strcpy. + +2003-10-10 Simon Josefsson + + * modules/argp (Depends-on): Add restrict and strcase. + +2003-10-10 Simon Josefsson + + * m4/argp.m4: Add AC_C_INLINE. + +2003-10-08 Paul Eggert + + Merge getpass from libc, plus a few fixes. + + * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1. + Include . + Include if HAVE_STDIO_H, otherwise define + __fsetlocking to empty. + [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but + do include . + Do not include ; not needed. + [_LIBC]: Include . + (NOTCANCEL_MODE): New macro. + (flockfile, funlockfile) [_LIBC]: New macros. + (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr) + [!_LIBC]: New macros. + (call_fclose): New function. + (getpass): Use it. Save tty stream separately; this simplifies the + code and makes it more reliable if stdin happens to equal stdout. + Invoke __fsetlocking on tty. + Handle thread cancellation if needed. + Namespace cleanup (use __tcgetattr, __getline). + Use bool for Booleans. + [USE_IN_LIBIO]: Handle wide streams. + [!_LIBC]: Unconditionally do the fseek, since we don't know what + stream might go where. + + * lib/unlocked-io.h: Include , so that the caller + doesn't have to include before us. + (clearerr_unlocked, feof_unlocked, ferror_unlocked, + fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked, + fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked, + putc_unlocked, putchar_unlocked): Define to the unlocked counterpart + if not declared, so that we can use getpass.c code from libc without + rewriting it. + (flockfile, ftrylockfile, funlockfile): New macros. + +2003-10-08 Paul Eggert + + * modules/getpass: Depend on stdbool. + +2003-10-08 Paul Eggert + + * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h. + +2003-10-07 Karl Berry + + * config/config.{guess,sub}: update from config. + +2003-10-06 Jim Meyering + Bruno Haible + + This lets translators provide better translations for the + "Written by ..." part of --version output. + * lib/version-etc.h: Include stdarg.h. + (version_etc_copyright): Declare as readonly. + (version_etc): Make this function variadic with a NULL-terminated list + of author name strings. + (version_etc_va): New declaration. + * lib/version-etc.c: Include stdarg.h, stdlib.h. + (version_etc_copyright): Declare as readonly. + (version_etc_va): New function. Provide a different translatable string + for each possible number of authors < 10. Abbreviate when there are 10 + authors or more. + (version_etc): Make this function variadic. Call version_etc_va. + Suggestion from Gary V. Vaughan. + + * lib/long-options.h (parse_long_options): Change prototype: the + authors string is moved to the end and becomes variadic. + * lib/long-options.c: Include stdarg.h. + (parse_long_options): Make this function variadic, too. + Call version_etc_va, not version_etc. + +2003-10-06 Bruno Haible + + * modules/version-etc-2: Remove file. + * MODULES.html.sh (func_all_modules): Remove version-etc-2. + +2003-10-06 Bruno Haible + + * modules/fatal-signal: New file. + * MODULES.html.sh (func_all_modules): Add fatal-signal. + +2003-10-06 Bruno Haible + + * m4/fatal-signal.m4: New file. + * m4/signalblocking.m4: New file, from GNU gettext. + +2003-10-06 Bruno Haible + + * lib/version-etc-2.h: Remove file. + * lib/version-etc-2.c: Remove file. + +2003-10-06 Bruno Haible + + * lib/fatal-signal.h: New file, from GNU gettext. + * lib/fatal-signal.c: New file, from GNU gettext. + +2003-10-05 Paul Eggert + + * README: Rework advice for preventing empty .o files. + Don't recommend ELIDE constructs. Recommend , + not . + +2003-10-04 Karl Berry + + * lib/argp*: update from libc. + +2003-10-04 Karl Berry + + * config/config.{guess,sub}: update from config. + +2003-10-02 Bruno Haible + + * modules/lchown (Include): Add lchown.h. + * modules/time_r (Include): Use "..." syntax. + * modules/xgetdomainname (Include): Add xgetdomainname.h. + +2003-10-01 Simon Josefsson + + * MODULES.html.sh (func_all_modules): Move gethostname from section + 'based on' to section 'lacking' POSIX:2001. + +2003-10-01 Larry Jones + + * lib/getpass.c (getpass): Use a no-op fseek when switching from input + to output mode on the same stream. + +2003-09-29 Paul Eggert + + * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]: + Fix arg typo in previous patch. + +2003-09-28 Jim Meyering + + * lib/error.c: Correct cpp indentation. + +2003-09-27 Paul Eggert + + * modules/free: New file. + +2003-09-27 Paul Eggert + + * m4/free.m4: New file. + +2003-09-27 Paul Eggert + + * lib/minmax.h (MIN, MAX) + [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]: + Omit the special code that used __typeof__, since we worry that + it could be more trouble than it's worth. See: + http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html + http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html + + * lib/free.c: New file. + +2003-09-27 Oskar Liljeblad + + Trivial fixes to Makefile.am parts of module listings. + * modules/strstr: Append strstr.h to lib_SOURCES. + * modules/strcase: Likewise, for strcase.h. + +2003-09-27 Karl Berry + + * config/mkinstalldirs: update from automake. + +2003-09-26 Paul Eggert + + * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define. + (error_tail): Do not loop, reallocating temporary buffer, since + the output cannot contain more wide characters than the input + contains bytes, the size must be big enough already. This avoids + one potential size overflow calculation. Check for size overflow + when calculating temporary buffer size. Free temporary buffer + when done, if it was allocated with malloc; this plugs a memory + leak. Remove casts from void * to pointers, that are no longer + needed now that we're assuming C89 or better. + + Merge error changes from glibc. + + * lib/error.c, error.h: Update copyright notice header to match glibc. + * lib/error.c [defined _LIBC]: Include , . + (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]: + Disable cancellation while printing error. + * lib/error.h: Prepend __ to parameter names. + +2003-09-26 Jim Meyering + + * lib/error.c (error_tail): Move some declarations + into inner scope where the local variables are used. + +2003-09-26 Bruno Haible + + * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX + stpncpy(). + Don't define stpncpy through config.h; it's now done through stpncpy.h. + +2003-09-26 Bruno Haible + + * lib/stpncpy.h (gnu_stpncpy): New declaration. + (stpncpy): Define as alias for gnu_stpncpy. + * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy. + +2003-09-25 Simon Josefsson + + * lib/xgetdomainname.h: New file. + * lib/xgetdomainname.c: New file. + +2003-09-25 Simon Josefsson + Bruno Haible + + * modules/getdomainname: New file. + * modules/xgetdomainname: New file. + * MODULES.html.sh (func_all_modules): Add getdomainname, + xgetdomainname. + +2003-09-25 Simon Josefsson + Bruno Haible + + * m4/getdomainname.m4: New file. + +2003-09-25 Simon Josefsson + Bruno Haible + + * lib/getdomainname.h: New file. + * lib/getdomainname.c: New file. + +2003-09-25 Karl Berry + + * lib/argp-fmtstream.c, argp-help.c: update from libc. + +2003-09-25 Karl Berry + + * config/install-sh: update from automake. + +2003-09-25 Bruno Haible + + * modules/version-etc-2: New file, from modules/version-etc with + modifications. + * MODULES.html.sh (func_all_modules): Add version-etc-2. + +2003-09-25 Bruno Haible + + * lib/version-etc-2.h: New file, from version-etc.h with modifications. + * lib/version-etc-2.c: New file, from version-etc.c with modifications. + +2003-09-24 Simon Josefsson + + * modules/xgethostname: Add xgethostname.h. + +2003-09-24 Paul Eggert + + * lib/linebuffer.c (freebuffer): Don't free the argument, just + the buffer associated with the argument. Bug reported by + Simon Josefsson. + +2003-09-24 Paul Eggert + + * README: Document assumptions that 'int' is at least 32 bits + wide, that integer arithmetic is 2's complement without overflow, + that there are no holes in integer values, that adding sizes of + two nonoverlapping objects can't overflow, and that all-bits-zero + yields scalar zero. Fix spelling and capitalization typos. + +2003-09-19 Karl Berry + + * lib/argp.h: update from libc. + +2003-09-17 Paul Eggert + + * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first, + to avoid spurious warnings like "AC_RUN_IFELSE was called before + gl_USE_SYSTEM_EXTENSIONS" from autoreconf. + +2003-09-17 Paul Eggert + + * gnulib-tool: Use "test -h", not "test -L", for portability + to Solaris 8 /bin/sh. (This bug is fixed in Solaris 9.) + (tags_regexp): Remove, since \| doesn't conform to POSIX. + (sed_extract_prog): Issue s commands one-by-one, rather than + using \| in one s command. + +2003-09-16 Paul Eggert + + * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon + input error, instead of returning NULL the next time we are called + (and therefore losing track of errno). + +2003-09-16 Bruno Haible + + * gnulib-tool (func_create_testdir): Warn about duplicated + dependencies. + +2003-09-15 Paul Eggert + + * modules/argmatch, modules/fatal, modules/obstack, + modules/xalloc, modules/xgethostname: Sort dependencies by + importance, not alphabetically. + +2003-09-15 Paul Eggert + + * lib/getndelim2.c (getndelim2): Don't trash errno when a read + fails, so that the caller gets the proper errno. + + * lib/readutmp.c (read_utmp): Likewise. + Check for fstat error. Close stream and free storage + when failing. + +2003-09-14 Karl Berry + + * config/srclist.txt (strdup.c): disable for c89 changes. + +2003-09-14 Jim Meyering + + * lib/getloadavg.c: Correct cpp indentation. + * lib/strdup.c: Likewise. + * lib/vasnprintf.c: Likewise. + +2003-09-14 Bruno Haible + + * modules/fwriteerror: New file. + * MODULES.html.sh (func_all_modules): Add fwriteerror. + +2003-09-14 Bruno Haible + + * lib/fwriteerror.h: New file. + * lib/fwriteerror.c: New file. + +2003-09-12 Paul Eggert + + * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack, + modules/xgethostname, modules/xalloc: Depend on exit. + +2003-09-12 Paul Eggert + + * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it. + + * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX + and AC_MINIX, too, so that their extensions are available. + + * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove. All uses removed. + This macro has been superseded by gl_BACKUPFILE. + + More patches to assume C89 or better. + + * m4/error.m4 (gl_ERROR): Don't check for vprintf. + + * m4/check-decl.m4 (jm_CHECK_DECLS): Include , + unconditionally. + * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h. + * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): + Include , unconditionally. + * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free. + * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h. + * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C + headers or for string.h. + * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h + or strtoul. + + * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C + headers. + * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise. + * m4/userspec.m4 (gl_USERSPEC): Likewise. + * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise. + * m4/xstrtod.m4 (gl_XSTRTOD): Likewise. + * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise. + * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h, + memcpy, memset. + (jm_FUNC_GNU_STRFTIME): Don't require standard C headers. + * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h. + * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h, + strtol. + * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h. + * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h. + * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol, + strtoul. + +2003-09-12 Paul Eggert + + * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h. + * lib/obstack.c [!defined _LIBC]: Likewise. + * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h + * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise. + * lib/exitfail.c: Don't include stdlib.h; no longer needed. + + More changes to assume C89 or better. + + * lib/error.c (error_tail): Assume vprintf. + + * lib/argmatch.c (getenv): Remove decl. + * lib/progreloc.c (get_full_program_name): Define via prototype. + * lib/setenv.c (clearenv): Likewise. + * lib/stpncpy.c: Do not include or ; not + needed. + * lib/strdup.c: Include , unconditionally. + (malloc, memcpy): Remove decls. + * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove. + (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove. + Include , , , unconditionally. + (memcpy): Remove macro. + (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally. + (__P): Remove. All uses removed. + (PTR): Remove. All uses changed to void *. + (CHAR_BIT, NULL): Remove. + (spaces, zeros, memset_space, memset_zero) + [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]: + Remove. + (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove. + (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days): + Define with prototype. + Remove now-unnecessary prototype decl. + (extra_args_spec): Assume ANSI C. All uses changed. + (extra_args_spec_iso): Remove. + (my_strftime, emacs_strftimeu): Define via prototype. + * lib/strtod.c: Include , , + unconditionally. + (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls. + * lib/strtoimax.c: Include unconditionally. + (strtoul, strtol): Remove decls. + * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX, + LONG_MAX): Remove. + Include , , , unconditionally. + (LOCALE_PARAM_DECL): Remove. All uses changed to LOCALE_PARAM_PROTO. + (LOCALE_PARAM_PROTO): New macro. + (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R. + (INTERNAL (strtol), strtol): Define with a prototype. + (PARAMS): Remove. All uses removed. + * lib/tempname.c: Include unconditionally. + * lib/userspec.c: Include , unconditionally. + * lib/xgethostname.c (main): Define with a prototype. + * lib/xmalloc.c: Include "xalloc.h" first, to check interface. + Include unconditionally. + (calloc, malloc, realloc, free): Remove decls. + * lib/xstrtod.c: Include "xstrtod.h" first, to check interface. + Include unconditionally. Sort include file names. + (strtod): Remove. + (xstrtod): Define with a prototype. + * lib/xstrtol.c: Include , unconditionally. + (strtol, strtoul): Remove decls. + +2003-09-11 Paul Eggert + + More patches to assume C89 or better. + * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check. + * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h, + string.h, memchr, STDC_HEADERS. + +2003-09-11 Paul Eggert + + * lib/strndup.c: Don't include , . + Include , unconditionally. + Remove now-unnecessary cast to char *. + * lib/strnlen.c: Include unconditionally. + * lib/yesno.c (yesno): Define with a prototype. + +2003-09-11 Bruno Haible + + * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment. + +2003-09-10 Jim Meyering + + * lib/error.c: Correct indentation of cpp directives. + +2003-09-10 Bruno Haible + + * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove check. + * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove check. + * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove check. + * m4/unicodeio.m4 (gl_UNICODEIO): Remove check. + * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove + and checks. + * m4/xreadlink.m4 (gl_XREADLINK): Remove check. + * m4/yesno.m4 (gl_YESNO): Remove check. + +2003-09-10 Bruno Haible + + * lib/strcspn.c: Include unconditionally. + * lib/strpbrk.c: Include unconditionally. + * lib/strstr.c: Include unconditionally. + * lib/unicodeio.c: Include unconditionally. + * lib/setenv.c: Include and unconditionally. + * lib/unsetenv.c: Likewise. + * lib/xreadlink.c: Include unconditionally. + * lib/yesno.c: Include unconditionally. + (rpmatch): Add prototype. + +2003-09-09 Paul Eggert + + More patches to assume C89 or better. + * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h. + * m4/getopt.m4 (gl_GETOPT): Don't check for string.h. + * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers + or for string.h. + * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for + stdlib.h. + * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard + C headers. + * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h, + string.h. + * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free. + * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv. + * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers, + or for string.h. + * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h. + * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard + C headers. + * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers, + memcpy. + * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy. + * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h. + * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h. + * m4/memcoll.m4 (gl_MEMCOLL): Likewise. + * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h. + * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h, + string.h, free. + * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers. + * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers. + * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard + C headers, or for string.h. + * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h. + (gl_PREREQ_OBSTACK): Don't check for stdlib.h. + * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C + headers, memory.h, stdlib.h, string.h, strings.h. + * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h. + * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv. + * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy, + strchr. + * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C + headers, memory.h, string.h. + * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h. + * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h, + free. + * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C + headers. + * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free. + * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers. + * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers. + * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h. + * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h. + +2003-09-09 Paul Eggert + + More K&R removal. + + * lib/acosl.c (main): Use a prototype. + * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c, + tanl.c: Likewise. + + * lib/getloadavg.c (getloadavg, main): Define via prototypes. + + * lib/getopt.h (struct option.name): Assume C89, and use 'const'. + (getopt, etopt_long, getopt_long_only, _getopt_internal) + [defined __GNU_LIBRARY__]: Assume C89, so we can always declare + with a prototype. + * lib/getopt.c (const): Remove macro. + Include unconditionally. + (my_index): Remove; all uses changed to strchr. + (strlen): Remove decl. + (exchange): Remove forward decl; no longer needed. + (exchange, _getopt_initialize, _getopt_internal, getopt, main): + Define with prototype. + * lib/getopt1.c (const): Remove macro. + (getopt_long, getopt_long_only, main): Define with prototype. + + * lib/getugroups.c: Include unconditionally. + + * lib/getusershell.c: Include unconditionally. + (getusershell, setusershell, endusershell, readname, main): + Define with prototypes. + + * lib/group-member.c: Include group-member.h first. + Include unconditionally. + + * lib/hard-locale.c: Include hard-locale.h first. + Include , unconditionally. + + * lib/hash.c (free, malloc): Remove decls. + Include unconditionally. + + * lib/human.c: Include , unconditionally. + (getenv): Do not declare. + + * lib/idcache.c: Include unconditionally. + + * lib/long-options.c: Include long-options.h first, to test interface. + Include unconditionally. + + * lib/makepath.c: Include makepath.h first, to test interface. + Include and unconditionally. + + * lib/linebuffer.c: Include . + (free): Remove decl. + + * lib/malloc.c: Include , for malloc; don't bother with + stddef.h. rpl_malloc returns void *, not char *. + * lib/realloc.c (rpl_realloc): Likewise. Also, define with a + prototype. + + * lib/md5.h: Include unconditionally. + (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case. + (__P): Remove; all uses removed. + * lib/md5.c: Include "md5.h" first. + (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream, + md5_buffer, md5_process_bytes, md5_process_block): + Define with prototypes. + * lib/sha.h (__P): Remove all uses. (It wasn't defined??) + * lib/sha.c: Include "sha.h" first. + Include , unconditionally. + + * lib/memchr.c (__ptr_t): Remove; all uses changed to void *. + * lib/memcmp.c (__ptr_t): Likewise. + * lib/memrchr.c (__ptr_t): Likewise. + * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c: + Include unconditionally. + * lib/memchr.c, memrchr.c: Include unconditionally. + * lib/memchr.c: Include unconditionally. + * lib/memchr.c (LONG_MAX): Remove. + * lib/memrchr.c (LONG_MAX): Likewise. + * lib/memchr.c (__memchr): Define via a prototype. + * lib/memrchr.c (__memrchr): Likewise. + * lib/memcmp.c (__P): Remove, and remove all uses. + (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment): + Remove forward decls; no longer needed. + * lib/memcpy.c, memmove.c, memset.c: Include . + Use types required by C89 in prototype. + + * lib/mkdir.c: Include , unconditionally. + * lib/savedir.c: Likewise. + * lib/mkdir.c (free): Remove decl. + * lib/rmdir.c (rmdir): Define with a prototype. + * lib/savedir.c: Include savedir.h first, to test interface. + + * lib/mktime.c (STDC_HEADERS): Remove. + Include , unconditionally. + + * lib/modechange.c: Include unconditionally. + (malloc): Remove decl. + + * lib/mountlist.c: Include , unconditionally. + (free): Remove decl. + + * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]: + Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H. + (This type really should be intptr_t, but that's a C99ism.) + (_obstack_memcpy): Remove: all uses changed to memcpy. + Include unconditionally. + (struct obstack): Assume __STDC__ for types of members + chunkfun, freefun, extra_arg. + (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1, + _obstack_memory_used, obstack_alloc_failed_handler, obstack_init, + obstack_begin, obstack_specify_allocation, + obstack_specify_allocation_with_arg, obstack_chunkfun, + obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]: + Remove unprototyped decls and the macros that use them. + * lib/obstack.c (POINTER): Remove. All uses changed to void *. + (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN, + _obstack_begin, _obstack_begin_1, _obstack_allocated_p) + (defined __STDC__ && __STDC__)]: + Remove nonprototyped code. + Include unconditionally. + (_obstack_begin, _obstack_begin_1, _obstack_newchunk, + _obstack_allocated_p, _obstack_free, obstack_free, + _obstack_memory_used, print_and_abort): + Define using prototypes. + (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base, + obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0, + obstack_finish, obstack_grow, obstack_grow0, obstack_make_room, + obstack_next_free, obstack_object_size, obstack_room) [0]: + Remove unused, unprototyped code. + + * lib/path-concat.c: Include , unconditionally. + + * lib/physmem.c (physmem_total, physmem_available, main): Define + with prototypes. + + * lib/posixtm.c: Include , unconditionally. + (main): Define with a prototype. + + * lib/posixver.c (getenv): Remove decl. + + * lib/putenv.c (malloc): Returns void *, not char *. + Include unconditionally. + (strchr, memcpy, NULL): Do not define. + + * lib/readtokens.c: Include readtokens.h first, to test interface. + Include , unconditionally. + (init_tokenbuffer): Define with a prototype. + + * lib/regex.c (PARAMS): Remove. All uses removed. + All uses of _RE_ARGS removed, too. + Include , , , + unconditionally. + (bzero): Assume memset exists. + (memcmp, memcpy, NULL): Remove. + (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed + char, or assignments to local vars of type signed char. + (init_syntax_once, PREFIX(extract_number_and_incr), + PREFIX(print_partial_compiled_pattern), + PREFIX(print_compiled_pattern), PREFIX(print_double_string), + convert_mbs_to_wcs, print_fastmap, re_set_syntax, + PREFIX(regex_grow_registers), PREFIX(regex_compile), + PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1), + PREFIX(insert_op2), PREFIX(at_begline_loc_p), + PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space, + wcs_compile_range, byte_compile_range, truncate_wchar, + PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers, + re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2, + count_mbs_length, wcs_re_match_2_internal, + byte_re_match_2_internal, PREFIX(group_match_null_string_p), + PREFIX(alt_match_null_string_p), + PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate), + re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror, + regfree, PREFIX(extract_number)): Define with prototype. Remove + now-unnecessary declaration, if any. + (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec, + regcomp, regexec): + Remove now-unnecessary casts among pointer types. + * lib/regex.h (_RE_ARGS): Remove. All uses removed. + + * lib/rename.c: Include , unconditionally. + (free): Remove decl. + + * lib/rpmatch.c: Include unconditionally. + + * lib/same.c: Include , unconditionally. + (free): Remove decl. + + * lib/save-cwd.c: Include unconditionally. + * lib/xgetcwd.c: Likewise. + + * lib/stat.c: Include , unconditionally. + (free): Remove decl. + + * lib/strchrnul.c (strchrnul): Define with a prototype. + Fix bug: c_in was not converted to char before searching. + + The following changes are not K&R related: + + * lib/group-member.h: Include , so that this file is + self-contained. + * lib/makepath.h: Likewise. + + * lib/getusershell.c (readname, default_index, line_size, readname): + Use size_t, not int, for sizes. + (readname): If the size overflows, report an error instead of + looping forever. + +2003-09-09 Paul Eggert + + * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from + libc. + +2003-09-09 Paul Eggert + + * README: New section: portability guidelines. + +2003-09-09 Derek Robert Price + + * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the + C89 spec. + +2003-09-09 Derek Robert Price + + * lib/getndelim2.c: Assume stdlib.h per the C89 spec. + +2003-09-08 Paul Eggert + + Assume C89 or better; remove K&R cruft. + A few of these changes were first proposed by Derek Robert Price + in . + + * lib/addext.c: Include unconditionally. + * lib/backupfile.c: Include , unconditionally. + Don't declare getenv or malloc. + + * lib/alloca.c: Include , unconditionally. + (POINTER_TYPE, pointer): Remove; all uses changed to void *. + (NULL): Remove. + (find_stack_direction, alloca): Use prototypes. + + * lib/atexit.c (atexit): Define using a prototype. + + * lib/basename.c, dirname.c, stripslash.c: + Include unconditionally. + + * lib/bcopy.c: Include . + (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'. + + * lib/canon-host.c: Include , unconditionally. + + * lib/error.h (error, error_at_line, error_print_progname) + [! (defined (__STDC__) && __STDC__)]: Remove decls. + * lib/error.c: Include error.h first, to check interface. + Include , , unconditionally. + (VA_START): Remove; all uses changeed to va_start. + (exit, strerror): Remove decls. + (error_print_progname): Prototype uncondionally. + Don't include ; no longer needed. + (private_strerror): Remove. + (error_tail): Always define. + (error, error_at_line): Assume C89 or better; always use prototypes. + * lib/fatal.c: Include "fatal.h" first, to test interface. + Include , , unconditionally. + (VA_START): Remove; all uses changed to va_start. + [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for + this case. + (exit): Remove decl. + (fatal): Prototype unconditionally. Assume va_start works. + Abort at end, to pacify gcc. + + * lib/euidaccess.c (main): Define with a prototype. + + * lib/exclude.c: Include , unconditionally. + + * lib/exitfail.c: Include unconditionally. + + * lib/fnmatch_.h (__P): Remove. All uses changed to assume + prototypes. + * lib/fnmatch.c: Include fnmatch.h first, to test interface. + Include , , unconditionally. + (getenv): Remove decl. + (fnmatch): Define using a prototype. + * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed. + (FCT): Define using a prototype. + + * lib/getdate.y: Include , unconditionally. + + * lib/gethostname.c: Include . + (gethostname): Define with prototype. Length is size_t, not int. + +2003-09-08 Paul Eggert + + Assume C89 or better; remove K&R cruft. + * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h. + * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h, + string.h, getenv, malloc. + * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard + headers. + * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h. + * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and + do not check for strerror. + * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h. + * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h. + * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and + do not check for doprnt or vprintf. + * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove. All uses removed. + * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h. + +2003-09-08 Paul Eggert + + * lib/getversion.c: Remove; was migrated to backupfile.c in 1997. + getversion.c should have been removed then, but was accidentally + preserved. + + * lib/utime.c [!HAVE_UTIMES_NULL]: Include , . + (utime_null): Fix typo: 'st' was sometimes called 'sb'. + +2003-09-08 Karl Berry + + * config/config.sub, config.guess, srclistvars.sh: update from savannah + config, forget about prep. + + * config/depcomp, missing: update from automake. + +2003-09-07 Paul Eggert + + * modules/time_r: Depend on 'restrict'. Fix from Simon Josefsson in + . + +2003-09-07 Paul Eggert + + * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to + copy_tm_result. Bug reported by Simon Josefsson in + . + +2003-09-06 Paul Eggert + + * m4/time_r.m4: New file. + * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h. + * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime + is. Check for timegm declaration. + (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME. + Do not check for gmtime_r. + Replace mktime if __mktime_internal does not exist and if mktime + hasn't been replaced already. + +2003-09-06 Paul Eggert + + * lib/time_r.c, lib/time_r.h: New files. + + * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to + __localtime_r. + (__localtime_r) [!defined _LIBC]: New macro. Include . + (__mktime_internal) [!defined _LIBC]: Now extern, not static. + + * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to + __gmtime_r. + (my_strftime_localtime_r): Remove; all uses changed to __localtime_r. + (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros. + Include . + + * lib/timegm.c: Switch to glibc implementation, with the following + changes: + [defined HAVE_CONFIG_H]: Include . + [!defined _LIBC]: Include "timegm.h" rather than . + (__mktime_internal) [!defined _LIBC]: New decl. + (__gmtime_r) [!defined _LIBC]: New macro and function. + (timegm): Use a prototype, since gnulib assumes C89. + Do not bother declaring tmp to be const, as it's not really usefu. + * lib/timegm.h: Hoist "#include " out of #ifdef. + (timegm): Declare only if HAVE_DECL_TIMEGM. + +2003-09-06 Paul Eggert + + * MODULES.html.sh (func_all_modules): Add time_r. + * modules/time_r: New file. + * modules/mktime, modules/strftime, modules/timegm: Depend on time_r. + * modules/timegm: Depend on mktime. Change maintainer to "all, glibc". + +2003-09-03 Paul Eggert + + * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k. + Bug reported by Lute Kamstra in + . + + * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow", + "yesterday", "today", and "now" rather than tMINUTE_UNIT. Of + course with correspondingly smaller numbers for tomorrow and + yesterday. From Tadayoshi Funaba. Originally installed into + sh-utils on 1999-08-07, but the patch got lost (I guess during the + coreutils merge?). + +2003-08-31 Simon Josefsson + + * modules/timegm: New file. + * MODULES.html.sh (func_all_modules): Add timegm. + +2003-08-31 Simon Josefsson + + * m4/timegm.m4: New file. + +2003-08-31 Simon Josefsson + + * lib/timegm.h: New file. + * lib/timegm.c: New file. Based on + wget-1.8.2/src/http.c:mktime_from_utc. + +2003-08-31 Karl Berry + + * lib/argp.h: update from libc. + +2003-08-28 Bruno Haible + + * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here. + This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch' + followed by '#define fnmatch fnmatch_posix' gives an error. + +2003-08-28 Bruno Haible + + * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a + warning on QNX, which defines O_BINARY to 000000. + +2003-08-27 Jim Meyering + + * m4/mkstemp.m4: Require that the system mkstemp be able to create + 70 temporary files, not just 30. Tru64 V4.0F's mkstemp function + would fail after 32. Reported by Danny Levinson. Details here: + http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html + +2003-08-24 Bruno Haible + + * lib/binary-io.h: Include , to avoid a compilation error when + MSVC7 is included later. + +2003-08-22 Simon Josefsson + + * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES. + +2003-08-20 Karl Berry + + * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial. + +2003-08-20 Bruno Haible + + * modules/progname: New file. + * MODULES.html.sh (func_all_modules): Add progname. + +2003-08-20 Bruno Haible + + * lib/progname.h: New file, from GNU gettext. + * lib/progname.c: New file, from GNU gettext. + * lib/progreloc.c: New file, from GNU gettext. + +2003-08-19 Jim Meyering + + * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here: + http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html + +2003-08-19 Bruno Haible + + * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for any + more. + +2003-08-19 Bruno Haible + + * lib/xstrdup.c: Assume exists. + +2003-08-18 Paul Eggert + + * modules/stdbool: Add BUILT_SOURCES. Prefer $@ to target name + in makefile rules. + +2003-08-18 Jim Meyering + + * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB). + * m4/lib-ld.m4: Likewise. + +2003-08-18 Jim Meyering + + * lib/setenv.h: Indent nested cpp directive. + * lib/vasnprintf.c: Remove trailing blanks. + +2003-08-17 Simon Josefsson + + * modules/xstrndup: New file. + * MODULES.html.sh (func_all_modules): Add xstrndup. + +2003-08-17 Simon Josefsson + + * modules/argp: Fix autoconf macro name. Add more dependencies. + +2003-08-17 Simon Josefsson + + * m4/xstrndup.m4: New file. + +2003-08-17 Simon Josefsson + + * m4/argp.m4: New file. + +2003-08-17 Simon Josefsson + Bruno Haible + + * lib/xstrndup.h: New file. + * lib/xstrndup.c: New file. + +2003-08-17 Bruno Haible + + * modules/strndup (Files, Include): Add lib/strndup.h. + +2003-08-17 Bruno Haible + + * modules/euidaccess (Files): Add lib/euidaccess.h. + +2003-08-17 Bruno Haible + + * lib/strndup.h: New file. + +2003-08-17 Bruno Haible + + * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS + like AC_GNU_SOURCE. + * modules/extensions (configure.ac): Comment out the invocation of + gl_USE_SYSTEM_EXTENSIONS. + +2003-08-16 Paul Eggert + + Merges from coreutils, etc. + * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax + error in gl_FUNC_MATCH. This fixes a bug I introduced on 2003-05-28. + * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE, + fixing a typo. + * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD. + * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL. + +2003-08-16 Paul Eggert + + Document merge from coreutils. + * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES. + * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES. + * modules/utime: Add m4/utimes-null.m4. + +2003-08-16 Paul Eggert + + * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white + space, undoing this 2003-08-12 change: + + +2003-08-16 Paul Eggert + + * config/srclist.txt: Get regex.h, strdup.c, strtoll.c, + strtoul.c from libc, undoing this 2003-08-12 change: + + +2003-08-16 Jim Meyering + + Merges from coreutils. + * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_) + prefix. Adjust cache variables similarly. Create 500 rather than + just 300 files, to exercise bug on Darwin6.5, too. + * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined + $missing_dir. + * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not + AM_SYS_POSIX_TERMIOS. + Reported by mkc@mathdogs.com. + Also change use of $am_cv_sys_posix_termios + to $ac_cv_sys_posix_termios. Reported by Andreas Schwab. + * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS + and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB. + * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point + in /proc/mounts until it finds one with matching device number. This + is unnecessary when the FILE argument *is* a mount point. No stat call + is necessary in that case. So, disable the statvfs-testing code on + systems with GNU libc. Reported by Andrei Gaponenko via Tim Waugh + as RedHat bug# 84846. + * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size + to 1MB, so as not to render systems with no stack size limit (e.g., + linux-2.2.x) unusable. Suggestion and code from Bruno Haible. + Include . On some systems, + it is required for the definition of _SC_PAGESIZE. + +2003-08-16 Jim Meyering + + Merge from coreutils. + * lib/xstrtoimax.c: #else #if -> #elif. + * lib/xstrtoumax.c: Likewise. + +2003-08-16 Jim Meyering + + * m4/utimes.m4 (gl_FUNC_UTIMES): New file. + * m4/utimes.m4: Removed. + * m4/utimes-null.m4: Renamed from utimes.m4. + + * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size + to 1MB, so as not to render systems with no stack size limit (e.g., + linux-2.2.x) unusable. Suggestion and code from Bruno Haible. + Include . On some systems, + it is required for the definition of _SC_PAGESIZE. + +2003-08-16 Jim Meyering + and Paul Eggert + + Merges from coreutils, etc. + + * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define + using the latest version from cvs. This avoids problems with #line + directives using a vendor (Sun) compiler. + (jm_MACROS): Bump prerequisite from 2.52g to 2.57. + Don't set GETGROUPS_LIB here; now it's + done via getgroups.m4's wrapper function. + AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here, + rather than just in sh-util/configure.in, so that the + now-shared-by-fileutils-and-textutils lib/Makefile.am are all the + same. + Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new + AC_FUNC_GETLOADAVG where to find getloadavg.c. + Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME, + UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR, + gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME. + Remove code that is now done by the newly-required macros. + Append $(EXEEXT) to DF_PROG. + AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown. + Do not invoke or require the following here, + since prereq.m4 or some gnulib .m4 now does this for us: + gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME, + jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC, + jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP, + jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV, + jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX, + AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF, + vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE, + AC_FUNC_OBSTACK. + Do not replace the following functions, as this is now the job + of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname, + getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul + strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp, + atexit getpass, strdup, getpagesize. + Replace 'raise'. + Do not check for the following functions, as this is now the job + of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime, + getcwd, getmntinfo, resolvepath. But check for sysctl, setreuid, + setregid. + (jm_CHECK_ALL_HEADERS): Do not check for fenv.h. + Check for sys/sysctl.h. + (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE, + jm_CHECK_TYPE_STRUCT_TIMESPEC. Invoke gt_TYPE_SSIZE_T instead + of checking for ssize_t ourselves. + + * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them. + Require every macro that gnulib/modules/* suggests for us. + (jm_PREREQ_ADDEXT): New macro. + (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4. + Require jm_AC_TYPE_LONG_LONG instead of invoking it. + + * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro. + (gl_PHYSMEM): Use it. + Also check for `table' function. + Check for new headers and functions. + Add check for sys/sysmp.h. + With suggestions from Kaveh Ghazi. + Ignore headers that are present but cannot be compiled. This + avoids spurious warnings on Solaris 9 sparc with Forte Developer 7 + C 5.4. + +2003-08-15 Paul Eggert + + Document merge from coreutils. + * modules/userspec: Depend on posixver. + * modules/strftime: Depend on tzset. + +2003-08-15 Paul Eggert + + * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces, + rather than tab, after '#' in shell-script copyright notices. + Suggested by Bruno Haible. + +2003-08-15 Paul Eggert + + * config/srclist-update: Use three spaces, rather than tab, after '#' + in shell-script copyright notices. Suggested by Bruno Haible. + Remove unnecessary parenthesization in regular expression. + +2003-08-15 Jim Meyering + + Merge from coreutils. + * lib/xgethostname.c: Include . + (xghostname): Don't exit for anything other than memory-related + failure; just return NULL. + * lib/userspec.c: Include "posixver.h". + (parse_user_spec): Accept `.' as a separator only + in pre-POSIX-200112 mode. + * lib/strtoimax.c: Use #elif rather than #else #if. + * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]: + Remove function, now that we can rely on a working tzset function. + [!_LIBC]: Ensure that the required autoconf test has been run. + [!defined _NL_CURRENT && HAVE_STRFTIME]: + Use underlying_strftime for %r. + * lib/sha.c: Merge in some clean-up and optimization changes from + glibc. + * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file. + Ensure that it is a multiple of 64. + Rearrange loop exit tests so as to avoid performing an + additional fread after encountering an error or EOF. + * lib/realloc.c: Update copyright date. + +2003-08-15 Jim Meyering + and Paul Eggert + + Merge from coreutils. + * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit + member but strut utmpx does not. Needed for AIX 4.3.3. + (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define. + +2003-08-15 Jim Meyering + and Paul Eggert + + Merges from coreutils, etc. + * m4/strftime.m4 (_jm_STRFTIME_PREREQS): + Require gl_FUNC_TZSET_CLOBBER. + * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit, + ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination + members. + +2003-08-14 Paul Eggert + + Help the merge from coreutils. + * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro. + (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it. + * m4/tzset.m4: Use it too. + +2003-08-14 Paul Eggert + + * modules/tzset: New file. + +2003-08-14 Jim Meyering + + Merges from coreutils. + * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED + variable names, rather than @FNMATCH_H@. + * modules/alloca: Likewise for $(ALLOCA_H). + + * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of + the three copies of the literal target, `fnmatch.h'. + * modules/alloca (alloca.h): Likewise. + +2003-08-14 Jim Meyering + + Merge from coreutils. + * m4/tzset.m4: New file. + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the + MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since + otherwise, AIX 5.1 systems would end up using the latter. + MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting + whether a file system is remote doesn't work 2) the MOUNTED_VMOUNT + code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1 + code reports merely /MOUNT_POINT. Reported by Mike Jetzer. + +2003-08-14 Jim Meyering + + Merge from coreutils. + * lib/obstack.h: Whitespace changes. + * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc, + and xcalloc return values. + (read_filesystem_list) [MOUNTED_GETFSSTAT]: + Use MNT_NOWAIT, rather than MNT_WAIT. Otherwise, `df DIR' could + hang on OSF/1 5.1 for DIR on both local and remote file systems. + Reported by (and fix confirmed by) Nelson H. F. Beebe. + (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any + error from mntctl. + Use mntctl's return value to drive the entry-processing loop, since + we can't rely on the value of the vmt_length member in the last + entry. On some systems doing so could result in exhausting + virtual memory. Based in part on a patch from Mike Jetzer. + +2003-08-14 Jim Meyering + and Paul Eggert + + Merges from coreutils, plus other fixes. + * lib/physmem.c: Merge in portability changes from gcc/libiberty + to support AIX, IRIX, Tru64, and Windows. See the ChangeLog there + for credits and details. Thanks to Kaveh Ghazi for helping + to keep these files in sync. + (ARRAY_SIZE): Define it. + (physmem_total, physmem_available): Add comments. From Kaveh Ghazi. + * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'. + (memcasecmp): Don't assume size_t fits in unsigned int. + Remove casts and duplicate code. + * lib/md5.c: Include and unconditionally. + (memcpy): Remove definition. + Merge in some clean-up and optimization changes from glibc. + [BLOCKSIZE]: Move definition to top of file. + Ensure that it is a multiple of 64. + Rearrange loop exit tests so as to avoid performing an + additional fread after encountering an error or EOF. + * lib/md5.h (md5_uintptr): Define. + * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to + return to the initial working directory. Preserve errno + for caller. + * lib/idcache.c: Include "xalloc.h". + (xmalloc, xrealloc): Remove decls. + (getuser): Remove casts no longer required in C89. + * lib/human.c: Include stdio.h, for sprintf. + * lib/group-member.c: Include "xalloc.h". + (xmalloc, xrealloc): Remove decls. + (get_group_info): Remove casts no longer required in C89. + * lib/getusershell.c (readname): Remove casts no longer required in + C89. + * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions. + * lib/getline.c: Whitespace fix, from coreutils. + +2003-08-13 Paul Eggert + + * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC. + Check for isascii. + + * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4, + lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4: + Undo previous (whitespace-only) change. + +2003-08-13 Paul Eggert + + * lib/exclude.c: Include + (IN_CTYPE_DOMAIN): New macro. + (is_space): New fn. + (add_exclude_file): If LINE_END is a space, ignore trailing spaces + and empty lines. + + * lib/argp-help.c, argp-parse.c, config.charset, getopt.h: + Undo previous (whitespace-only) change. + +2003-08-13 Paul Eggert + + * config/srclist-update: Change update back to the old behavior, + leaving whitespace alone. Use one 'sed' command rather than a + pipeline. + (fixlicense): Now a variable, not a function. + (remove_trailing_blanks): Remove. + (fixfile): Don't invoke unexpand or cat, or remove trailing blanks. + * config/config.guess, config.sub, install-sh, missing, texinfo.tex: + Undo previous (whitespace-only) change. + +2003-08-12 Paul Eggert + + Merge from coreutils. + * modules/euidaccess: Add lib_SOURCES, include for new + file euidaccess.h + +2003-08-12 Paul Eggert + + * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4, + lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4: + Normalize leading white space and remove trailing white space. + + Merge from coreutils + * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl. + + * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext + 0.12.1. These files are now being upgraded automatically by + ../config/srclist-update. + +2003-08-12 Paul Eggert + + * lib/argp-help.c, argp-parse.c, config.charset, getopt.h: + Normalize leading white space and remove trailing white space. + * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright + notice, as per ../config/srclist-update. + + Merge from coreutils. + * lib/euidaccess.h: New file. + * lib/euidaccess.c: Include it. + * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h, + vasnprintf.h, vasprintf.h. Remove strdup.c, gettext.h. + * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space. + +2003-08-12 Paul Eggert + + * config/srclist-update: Add copyright notice. + (remove_id_lines, remove_trailing_blanks): New constants. + (fixfile): Use them to normalize spacing a bit in copied files. + * config/config.guess, config.sub, install-sh, missing, texinfo.tex: + Normalize leading white space and remove trailing white space. + + * config/texinfo.tex: Sync with texinfo. + + * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c, + strtoul.c from libc, to merge coreutils whitespace changes. + + * config/srclist.txt: Get the following m4 files from gettext: + codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4, + inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4, + longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4, + wint_t.m4. + +2003-08-12 Karl Berry + + * config/srclist.txt: can't sync vasnprintf.c any more, changes have + been made. + +2003-08-11 Paul Eggert + + * modules/gnu-source, m4/gnu-source.m4: + Remove; we're assuming Autoconf 2.54 or later now. + Suggested by Bruno Haible. + * MODULES.html.sh (func_all_modules): Remove gnu-source. + +2003-08-11 Bruno Haible + + * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen. + +2003-08-11 Bruno Haible + + * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1. + (vasnprintf): Use it instead of wcslen. + +2003-08-11 Bruno Haible + + * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum + value to ensure that _Bool promotes to int. Use #define for _Bool when + using the Solaris C compiler. Adds comments suggested by Paul Eggert. + +2003-08-10 Karl Berry + + * lib/regex.h: update from libc (whitespace fix). + +2003-08-09 Paul Eggert + + Merge some files from coreutils. These changes were + originally made by Jim Meyering. + * lib/acl.c: Include before ; + many older Unixes require this. + * lib/alloca.c (alloca): Remove cast to argument of free; + no longer needed in C89. + * lib/alloca_.h, regex.h: Fix white space to match + what GNU indent does. + +2003-08-09 Paul Eggert + + * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371"; + apparently Emacs's Unicode mode got confused before my 2003-08-05 + checkin. + +2003-08-08 Paul Eggert + + * m4/extensions.m4: New file. + * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): + Require gl_USE_SYSTEM_EXTENSIONS. + * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): + Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE. + +2003-08-08 Paul Eggert + + * MODULES.html.sh (func_all_modules): Add extensions, gnu-source. + * modules/extensions, modules/gnu-source: New files. + * modules/timespec, modules/unlocked-io: Depend on extensions. + +2003-08-07 Paul Eggert + + * modules/restrict: New file. + * MODULES.html.sh (func_all_modules): Add restrict. + * modules/regex: Depend on restrict. + +2003-08-07 Paul Eggert + + * m4/restrict.m4: New file. + * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT. + +2003-08-07 Bruno Haible + + * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not + lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2). + +2003-08-07 Bruno Haible + + * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This + makes the module 'getndelim2' compatible with the module 'getline'. + +2003-08-05 Paul Eggert + + * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII + byte with "\201" to avoid glitches when editing that source file + with multi-gnome-terminal. + +2003-08-05 Paul Eggert + + * lib/bumpalloc.h: Remove. + +2003-08-05 Paul Eggert + + * MODULES.html.sh (func_all_modules): Remove bumpalloc. + * modules/bumpalloc: Remove. + +2003-08-04 Paul Eggert + + * lib/getloadavg.c: Change copyright notice and spacing to conform to + GNU coding style. + + Merge from coreutils. + * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is + 1. From glibc. + * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion + from Karl Berry, implemented by Jim Meyering. + * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns; + from Dmitry V. Levin. + Remove anachronistic cast of xrealloc. + * lib/fnmatch_.h (__const): Remove. Use 'const'. + * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper + type. Otherwise, it wouldn't compile with at least /bin/cc on + ymp-cray-unicos9.0.2.X. + Combine two mostly-identical uses of alloca into one. + Thanks to the Cray-Cyber project for access to a Cray Y-MP. + +2003-08-04 Dave Love + + [From Emacs.] + + * lib/getloadavg.c: Check `__unix' as well as `unix'. Use #ifdef, not + #if. Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE. Check + F_SETFD, not FD_SETFD. Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not + obsolete NLIST_NAME_UNION. + [__GNU__]: Undef BSD and FSCALE. + [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT. + +2003-08-03 Paul Eggert + + * lib/stdbool_.h (_Bool): Make it signed char, instead of + an enum type, so that it's guaranteed to promote to int. See: + + +2003-08-03 Karl Berry + + * config/depcomp: update from automake. + +2003-07-31 Paul Eggert + + * lib/strerror.c: Include config.h, limits.h. Declare sprintf. + (strerror): Don't assume that a printable int fits in 14 bytes. + +2003-07-31 Bruno Haible + + * modules/getpass-gnu: New file. + * MODULES.html.sh (func_all_modules): Add getpass-gnu. + +2003-07-31 Bruno Haible + + * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro. + +2003-07-24 Karl Berry + + * config/missing: update from automake. + +2003-07-24 Derek Robert Price + Bruno Haible + + * lib/getline.h (getline, getdelim): Change return type to ssize_t. + * lib/getline.c (getline, getdelim): Likewise. + Remove _GNU_SOURCE define; now it's defined in config.h through + m4/getline.m4. + +2003-07-23 Karl Berry + + * config/config.sub: update from prep. + +2003-07-22 Paul Eggert + + * modules/xalloc (Depends-on): Add exitfail. + * modules/xmemcoll: Likewise. + +2003-07-22 Paul Eggert + + * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and + over-parenthesization in macros. + + Sync with coreutils. + + * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not + required by C99. + + Use `exit_failure' for xalloc and xmemcoll instead of their own + private exit-failure variables. + * lib/xalloc.h (xalloc_exit_failure): Remove. + * lib/xmalloc.c: Likewise. Include exitfail.h. + (xalloc_die): Use exit_failure instead of xalloc_exit_failure. + * lib/xmemcoll.h (xmemcoll_exit_failure): Remove. + * lib/xmemcoll.c: Likewise. Include exitfail.h. + (xmemcoll): Use exit_failure instead of xalloc_exit_failure. + +2003-07-20 Jim Meyering + + * modules/closeout (Depends-on): Add exitfail. + Suggestion from Bruno Haible. + +2003-07-19 Karl Berry + + * config/config.sub: update from prep. + +2003-07-18 Paul Eggert + + * lib/closeout.h (close_stdout_set_status, close_stdout_status): + Remove. + * lib/closeout.c: Likewise. Include "closeout.h" right after config.h, + to test that it can stand by itself. Include "exitfail.h". + Clients should set exit_failure instead. + (EXIT_FAILURE): Remove; no longer needed. Do not include . + +2003-07-18 Bruno Haible + + * modules/getndelim2: New file. + * modules/getline: Share files with module getndelim2. + * modules/getnline: Depend on getndelim2 instead of sharing files with + it. Add getnline.c to lib_SOURCES. + * MODULES.html.sh (func_all_modules): Add getndelim2. + +2003-07-18 Bruno Haible + + * m4/getndelim2.m4: New file. + * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and + invoke gl_PREREQ_GETNDELIM2. + (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by + gl_PREREQ_GETNDELIM2. + * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by + gl_GETNDELIM2. + +2003-07-18 Bruno Haible + + * lib/getndelim2.h: New file. + * lib/getndelim2.c: Make into a module of its own. Include config.h, + getndelim2.h. + (getndelim2): Make non-static. Change return type to ssize_t. + * lib/getline.h: Change argument names. + * lib/getline.c: Include getndelim2.h instead of getndelim2.c. + * lib/getnline.c: Include getndelim2.h. + +2003-07-18 Andreas Schwab + + * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno. + +2003-07-17 Karl Berry + + * config/config.sub: update from prep. + +2003-07-17 Bruno Haible + + * modules/getnline: New file. + * modules/getline: Add lib/getndelim2.c to source file list. + * MODULES.html.sh (func_all_modules): Add getnline. + +2003-07-17 Bruno Haible + + * m4/getnline.m4: New file. + +2003-07-17 Bruno Haible + + * m4/Makefile.am.in: Remove file. + * m4/Makefile.am: Remove file. + * m4/Makefile.in: Remove file. + +2003-07-17 Bruno Haible + + * lib/getnline.h: New file. + * lib/getnline.c: New file. + * lib/getndelim2.c: New file, extracted from getline.c. + (getndelim2): Renamed from getdelim2, with added nmax argument. + * lib/getline.c: Include getndelim2.c. + (getdelim2): Moved out to getndelim2.c. + (getline, getdelim): Update. + +2003-07-17 Bruno Haible + + * lib/Makefile.am: Remove file. + * lib/Makefile.in: Remove file. + +2003-07-17 Bruno Haible + + * configure.in: Remove file. + * Makefile.in: Remove file. + +2003-07-17 Bruno Haible + + * MODULES.html.sh: Put the right before . + +2003-07-16 Karl Berry + + * config/srclist-update: was running fixlicense twice, which caused + texinfo.tex to be nullified for some reason. Simplify, + $gplsrc is no longer needed as far as I can see? + +2003-07-16 Jim Meyering + + * modules/save-cwd: Depend on xgetcwd. From Derek Price. + +2003-07-15 Paul Eggert + + * config/srclist.txt: Get the following files from gettext-runtime/intl + instead: config.charset, localcharset.c, localcharset.h, ref-add.sin, + ref-del.sin. From Bruno Haible. + * config/srclist-update (fixfile): Change grep pattern again, since the + previous fix didn't work (there was another trailing $). Use + '[$]' to escape the $s. + +2003-07-15 Karl Berry + + * lib/vasnprintf.c: update from gettext. + +2003-07-15 Karl Berry + + * config/srclist-update (fixfile): Change grep pattern, since 'Id' + gets expanded when surrounded by '$'. + +2003-07-15 Jim Meyering + + * modules/save-cwd: Don't depend on error. From Derek Price. + +2003-07-15 Jim Meyering + + * lib/makepath.c (make_path): Enclose diagnostic in _(...). + +2003-07-14 Simon Josefsson + + * modules/mempcpy: New file. + * MODULES.html.sh (func_all_modules): Add mempcpy. + +2003-07-14 Simon Josefsson + + * m4/mempcpy.m4: New file. + +2003-07-14 Simon Josefsson + + * lib/mempcpy.h: New file. + * lib/mempcpy.c: New file. + +2003-07-14 Paul Eggert + + * modules/getdate, modules/posixtm: Depend on mktime. + +2003-07-14 Paul Eggert + + * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h, + sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c, + unicodeio.c, unicodeio.h, unlocked-io.h: + Switch from LGPL to GPL. + +2003-07-14 Paul Eggert + + * lib/asnprintf.c, asprintf.c, config.charset, gettext.h, + localcharset.c, localcharset.h, mkdtemp.c, printf-args.c, + printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin, + ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h, + vasprintf.c, vasprintf.h: Regenerate. These files are now being + updated automatically by ../config/srclist-update. This changes + their license from LPGL to GPL. + +2003-07-14 Paul Eggert + + * config/srclist.txt: Add tons more gettext files. $GETTEXT is now + assumed to refer to the root of the most recent stable gettext version. + * config/srclistvars.sh: Add defaults for eggert. + * config/srclist-update: Convert LGPL to GPL in shell scripts, too. + Match "This program" as well as "The program". This is needed + for gettext. + +2003-07-14 Jim Meyering + + Don't emit diagnostics. Let callers do that. + * lib/save-cwd.c: Don't include "error.h". + (save_cwd): Don't call error. Ensure that errno is valid + when returning nonzero. + + * lib/save-cwd.h (restore_cwd): Update prototype. + * lib/save-cwd.c (restore_cwd): Remove two parameters. + Simplify. Don't call error upon failure. Let callers do that. + (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4 + when auditing is enabled. But don't bother updating the #if. + +2003-07-11 Alexandre Duret-Lutz + + * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13; + it breaks C++ compilation. + [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*. + +2003-07-10 Simon Josefsson + + * modules/strchrnul (Makefile.am): Add strchrnul.h. + +2003-07-10 Jim Meyering + + * m4/clock_time.m4: Remove trailing blank. + * m4/intmax_t.m4: Likewise. + +2003-07-10 Jim Meyering + + * lib/vasnprintf.c: Remove trailing blanks. + Make cpp indentation consistent. + +2003-07-09 Paul Eggert + + * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h, + posixver.c, strftime.c, strnlen.c, strverscmp.c: + Switch from LGPL to GPL. + +2003-07-09 Paul Eggert + + * config/srclist.txt: Sort sublists. Add + $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files + that differ from gnulib for one reason or another; we'd like this list + to be smaller but for now let's document what we have. + +2003-07-08 Paul Eggert + + * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding + the use of GNU extensions. Change "x=`eval echo $x`" to the shorter + and sweeter "eval x=$x". + * config/srclist.txt: Get lib/argp* from glibc. + +2003-07-07 Paul Eggert + + * lib/mktime.c: Fix some boundary cases and remove need for floating + point. + + Issue a compile-time diagnostic if time_t is floating point, or if + two's complement arithmetic is not in effect, or if arithmetic + right shift does not propagate the sign. These assumptions were + all in the original code but they weren't checked. + + (TIME_T_MIDPOINT, verify): New macros. + (__isleap): Remove; it has integer overflow problems. + (leapyear): New function, without those problems. + (ydhms_tm_diff): Remove; splitting into two parts. + (ydhms_diff): New function, containing the arithmetic part of + the old ydhms_tm_diff function. Issue a compile-time + diagnostic if we are not using C99 integer division. + Avoid casts when possible. + (guess_time_tm): New function, containing the checking part of + the old ydhms_tm_diff function. Return the new value, rather than + the difference between it and the old. Accept a new argument T + so that *T specifies the old value. Check for overflow in the result. + + (__mktime_internal): Use a time_t offset, not a long int offset. + This undoes the 2003-06-04 change, which is no longer needed now + that we have better overflow checking. + (localtime_offset): Likewise. + + (__mktime_internal): Avoid harmful overflow on hosts where time_t + and long are 64-bit but int is only 32-bit. + (ydhms_diff): Use long int to store year1 and yday1. + Issue a compile-time diagnostic if long int is not wide enough. + + (__mktime_internal): Use long int to store adjusted year and yday. + Use plain C rather than preprocessor commands, if that doesn't + affect efficiency. + Check for overflow (and try to repair) after each probe + rather than checking only at the very end. This avoids some bugs + (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time + does not equal GMT offset at maximum time). + Use integer to check for overflow rather than floating point; this + is more portable to non-IEEE hosts, and is a tad faster. + When we detect that we are oscillating between two values, + don't check whether tm_isdst has the requested value, since + we already know the answer. When tm_isdst has the wrong value, + use a different heuristic to find the right one, based on the + extreme values actually observed in practice in tz2003a, + rather than the (overly optimistic) "previous 3 calendar quarters". + + (not_equal_tm, print_tm, check_result): Use "const T" rather than + "T const" to accommodate glibc style. + (check_result): Use less-confusing report format. "long" -> "long int. + (main): Likewise. + Don't loop if the iteration overflows time_t. + Allow a negative step in the iteration. + +2003-07-06 Karl Berry + + * config/depcomp: update from automake. + * config/config.sub: update from prep. + +2003-07-03 Karl Berry + + * config/config.guess: update from prep. + +2003-07-01 Paul Eggert + + * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since + xreadlink.c now includes it unconditionally. + +2003-07-01 Paul Eggert + + * lib/xreadlink.c: Include unconditionally, instead of + having it depend on HAVE_SYS_TYPES_H. + +2003-07-01 Bruno Haible + + * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include . + should be sufficient. + Reported by Paul Eggert. + +2003-06-26 Karl Berry + + * config/depcomp: update from automake. + +2003-06-26 Bruno Haible + + * modules/human: Depend on module stdbool. + +2003-06-25 Bruno Haible + + * modules/readlink: New file. + * modules/xreadlink: Depend on it. + * MODULES.html.sh (func_all_modules): Add readlink. + +2003-06-25 Bruno Haible + + * m4/readlink.m4: New file. + +2003-06-25 Bruno Haible + + * lib/readlink.c: New file. + +2003-06-22 Karl Berry + + * config/srclist.txt: update mkinstalldirs from automake. + * config/mkinstalldirs: update. + +2003-06-22 Bruno Haible + + Portability to mingw32. + * m4/ssize_t.m4: New file, from GNU gettext. + * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T. + * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T. + +2003-06-22 Bruno Haible + + * modules/safe-read: Add m4/ssize_t.m4. + * modules/xreadlink: Add m4/ssize_t.m4. + +2003-06-20 Bruno Haible + + Assume C89, so PARAMS isn't needed. + * lib/unicodeio.h (PARAMS): Remove. + * lib/unicodeio.c: Don't use PARAMS. + +2003-06-18 Karl Berry + + * config/config.{guess,sub}: update from prep. + +2003-06-18 Jim Meyering + + Merge changes from coreutils. + * lib/readutmp.c: Include and unconditionally. + Remove explicit declarations of xmalloc and realloc. + Include xalloc.h. + (read_utmp): Remove anachronistic cast of xmalloc. + +2003-06-17 Paul Eggert + + Assume C89, so PARAMS isn't needed. + * lib/backupfile.h (PARAMS): Remove. All uses removed. + * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h, + lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h, + lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h, + lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h, + lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h, + lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h, + lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h, + lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h, + lib/xstrtod.h, lib/xstrtol.h: Likewise. + * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h, + lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h; + no longer needed. Anyway, config.h should always be included before any + other file. + +2003-06-11 Simon Josefsson + + * modules/sysexits: New file. + * MODULES.html.sh (func_all_modules): Add sysexits. + +2003-06-11 Simon Josefsson + + * lib/sysexit_.h: New file. + +2003-06-11 Derek Price + + * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is + necessary. + +2003-06-11 Bruno Haible + + * m4/sysexits.m4: New file. + +2003-06-10 Simon Josefsson + + * lib/argp.h: New file, from glibc. + * lib/argp-ba.c: New file, from glibc. + * lib/argp-eexst.c: New file, from glibc. + * lib/argp-fmtstream.c: New file, from glibc. + * lib/argp-fmtstream.h: New file, from glibc. + * lib/argp-fs-xinl.c: New file, from glibc. + * lib/argp-help.c: New file, from glibc. + * lib/argp-namefrob.h: New file, from glibc. + * lib/argp-parse.c: New file, from glibc. + * lib/argp-pv.c: New file, from glibc. + * lib/argp-pvh.c: New file, from glibc. + * lib/argp-xinl.c: New file, from glibc. + +2003-06-10 Simon Josefsson + + * modules/strchrnul: New file. + +2003-06-10 Simon Josefsson + + * modules/argp: New file. + +2003-06-10 Simon Josefsson + + * m4/strchrnul.m4: New file. + +2003-06-10 Simon Josefsson + + * lib/strchrnul.h: New file. + * lib/strchrnul.c: New file. + +2003-06-10 Bruno Haible + + * MODULES.html.sh (func_all_modules): Add strchrnul and argp. + +2003-06-07 Karl Berry + + * config/config.{guess,sub}: update from prep. + +2003-06-07 Jim Meyering + + * modules/strtod: Use $(...) notation, not @...@ for + AC_REPLACE'd variables. + * modules/localcharset: Likewise. + +2003-06-07 Jim Meyering + + * lib/readtokens.h: Put `Free Software Foundation, Inc.' + in place of my name in the copyright comment. + Remove definition and uses of __P. + + From coreutils. + * lib/stat.c: Don't declare xmalloc explicitly. + Instead, include "xalloc.h". + * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc, + xrealloc, and xcalloc return values. + * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h". + Improve comment. + * lib/xgetcwd.h: Remove definition/uses of PARAMS. + +2003-06-07 Bruno Haible + + * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to + avoid AC_CONFIG_LINKS. + * modules/fnmatch (Makefile.am): Use explicit creation rule for + fnmatch.h, to avoid AC_CONFIG_LINKS. + * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe. + +2003-06-07 Bruno Haible + + * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX, + gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking + AC_CONFIG_LINKS. Needed to allow for a different name of the lib + directory. + * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking + AC_CONFIG_LINKS. Needed to allow for a different name of the lib + directory. + +2003-06-06 Jim Meyering + + Merge from coreutils. + * lib/same.c: (same_name): Declare *_basename locals to be `const'. + Consolidate declarations and initializations of *_base* locals. + + Merge from coreutils. + This avoids a core dump on systems without GNU putenv, + when running `env -u SOME_ALREADY_UNSET_VARIABLE'. + * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define. + (unsetenv): New static function, from GNU libc. + (rpl_putenv): Use it. + + * lib/modechange.c: Remove trailing blanks. + + Merge from coreutils. + * lib/fsusage.c: Remove declaration of statfs. + It conflicted with one from OSF/1 5.1 in . + + * lib/posixtm.c: Include unconditionally. + +2003-06-06 Jim Meyering + + * lib/stdbool_.h: Renamed from stdbool.h.in. + +2003-06-06 Jim Meyering + Bruno Haible + + * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h. + Adjust Makefile.am snippet not to redirect directly to target. + Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables. + +2003-06-05 Paul Eggert + + * lib/mktime.c (__mktime_internal): When resolving a tm_isdst + mismatch, look in future quarters as well as past. This fixes a + bug when processing fall-backwards gaps immediately after a long + period of daylight-saving time. + + * lib/mktime.c: Assume freestanding C89 or better. + (HAVE_LIMITS_H): Remove. Assume it's 1. + (__P): Remove; not used. + (CHAR_BIT, INT_MIN, INT_MAX): Remove; defines them. + (mktime, not_equal_tm, print_tm, check_result, + main): Use prototypes. Use const * where appropriate. + (main): Fix typo in testing code that uncovered by above changes. + (Local Variables): Remove -DHAVE_LIMITS_H from compile-command. + +2003-06-04 Paul Eggert + + * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H. Check for + locale.h, localeconv. This merges changes from coreutils. + + * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS. + It can be removed after the next Autoconf is released. + * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner + needed. + +2003-06-04 Paul Eggert + + * lib/mktime.c: Fix Debian bug 177940 + . + (localtime_offset): Now long int, not time_t, because we want it + to be guaranteed to be signed. All uses changed. + (__mktime_internal): If overflow would occur when adding offset, + don't add it. + + Merge 'human' changes from coreutils. Rewrite to support + locale-specific notations like thousands separators. + * lib/human.c: Simplify authorship notice. + Include human.h immediately after config.h. + , : Do not include; no longer needed. + : Do not include, since human.h does. + (SIZE_MAX, UINTMAX_MAX): New macros. + : Include if HAVE_STRINGS_H, not if !HAVE_STRING_H. + : Include if HAVE_LOCALE_H and HAVE_LOCALECONV. + (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro. + (power_letter): Renamed from suffixes. + (generate_suffix_backwards): Remove. + (adjust_value): Now takes int style (because of human.h changes) + and long double value (for greater precision on some platforms). + (group_number): New function. + (human_readable): Use it. Use integer options, not enum. + Put the options before the sizes in the arg list. + Support all the new options. + The old human_readable function has been removed; + use inttostr.h instead. + (human_readable, default_block_size, humblock): + Use uintmax_t, not int, for block sizes. + (human_readable_inexact, block_size_types): Remove. + (block_size_opts): New constant. + (human_options): Renamed from human_block_size, with new signature + that allows block sizes up to UINTMAX_MAX. All callers changed. + * lib/human.h: Add copyright and authorship notice. + Include and unconditionally. + (PARAMS): Remove. All uses removed. + (LONGEST_HUMAN_READABLE): Add support for thousands separator. + (enum human_inexact_style): Remove tag; now a nameless enum. + (human_floor, human_ceiling, human_round_to_even): Now have + values 2, 0, 1 rather than -1, 1, 0. + (human_group_digits, human_suppress_point_zero, human_autoscale, + human_base_1024, human_SI, human_B): New constants. + (human_readable_inexact, human_block_size): Remove. + (human_readable): Size args are now uintmax_t, not int. + (human_options): New decl. + + * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are + unnecessary now that we assume C89 or better. This change + imported from coreutils. + + * lib/mktime.c (__mktime_internal): Do not reject negative timestamps + arbitrarily. This is the same patch as 2003-05-28, but it got lost + in the 2003-05-30 sync from glibc. + + .h files should stand alone, but we shouldn't include + if we can get away with just . + + * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c, + malloc.c, putenv.c, realloc.c, strcasecmp.c: Include + rather than , as we merely need size_t. + * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include , + to get size_t. + * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h: + Include , to get FILE. + * lib/memcasecmp.c: Don't include , as we can assume + memcasecmp.h has included and all we need is size_t. + * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks + our interface, instead of including + +2003-06-04 Paul Eggert + + * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for + now, as glibc mktime is buggy on non-glibc systems. + +2003-06-03 Karl Berry + + * config/config.sub: update from prep. + +2003-06-02 Paul Eggert + + [from coreutils] + Fix some minor time-related bugs with POSIX time arguments. + Some valid time stamps were being rejected (notably -1, and + time stamps before 1900 on 64-bit hosts). And some invalid + time stamps were being accepted, e.g. September 31. + + * lib/posixtm.h (posixtime): Return bool instead of time_t, so + that we can return (time_t) -1 successfully. + * lib/posixtm.c: Likewise. + [HAVE_STDBOOL_H]: Include . + (bool, false, true) [!HAVE_STDBOOL_H]: New type. + (t): Remove static var. + (year, posix_time_parse): Now takes struct tm * arg to modify, instead + of static var. All uses changed. + (year): Do not reject years before 1900; they can occur with + 64-bit time_t. + (posix_time_parse): Do not check for out-of-range components; + that is now the caller's responsibility, since our checks were + only approximations. + (posixtime): Use mktime to check for out-of-range components, + since it knows them exactly. + If mktime returns (time_t) -1, check whether an error actually occurred + by invoking localtime on -1. + (main) [TEST_POSIXTIME]: Check for input data errors, and report + posixtime failures better. + Improve the test data (in comments only). + +2003-06-02 Karl Berry + + * config/mkinstalldirs (version): new variable. + (--version): new option. + (usage): improve message. + +2003-05-30 Karl Berry + + * lib/mktime.c: update from libc. + +2003-05-30 Bruno Haible + + * modules/gettext: Add files m4/nls.m4 and m4/po.m4. + * config/config.rpath: Upgrade to gettext-0.12.1. + +2003-05-30 Bruno Haible + + * m4/gettext.m4: Upgrade to gettext-0.12.1. + * m4/nls.m4: New file, from gettext-0.12.1. + * m4/po.m4: New file, from gettext-0.12.1. + * m4/progtest.m4: Upgrade to gettext-0.12.1. + +2003-05-30 Bruno Haible + + * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1. + * lib/localcharset.h: Likewise. + * lib/localcharset.c: Likewise. + +2003-05-29 Karl Berry + + * config/config.rpath: update from gettext. + +2003-05-28 Paul Eggert + + Assume the headers required for C89 freestanding compilers. + * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h. + * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise. + * m4/human.m4 (gl_HUMAN): Likewise. + * m4/pathmax.m4 (gl_PATHMAX): Likewise. + * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise. + * m4/userspec.m4 (gl_USERSPEC): Likewise. + * m4/xreadlink.m4 (gl_XREADLINK): Likewise. + * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise. + * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h. + +2003-05-28 Paul Eggert + + Assume the headers required for C89 freestanding compilers. + * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c, + lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c, + lib/xstrtol.c: Include without checking for HAVE_LIMITS_H. + * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c, + lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't + define, since is guaranteed to do that. + * lib/fatal.c: Include without checking for __STDC__. + * lib/exclude.c: Include unconditionally. + * lib/tempname.c: Include unconditionally. + * lib/hash.c: Include , since we no longer define CHAR_BIT. + * lib/modechange.c, rpmatch.c (NULL): Don't define, since + does that. + * lib/quote.c: Dont include or ; not needed. + * lib/safe-read.c (INT_MAX): Don't define, since does that. + * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer + needed. + * lib/xstrtol.c: Likewise. + * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed. + * lib/savedir.c: Include instead of defining NULL. + + * lib/addext.c (addext): Use assignment rather than cast, to avoid + warnings on some platforms. + + * lib/mktime.c (__mktime_internal): Do not reject negative timestamps + arbitrarily. + +2003-05-26 Jim Meyering + + Merge in a change from coreutils: + * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one + that is guaranteed to be `no'. Use `no_such_member' to indicate + that condition, rather than `-1' which is slightly misleading. + Change the name of the cache variable to have the gl_ prefix. + Prompted by a patch from Richard Dawe for DJGPP. + +2003-05-24 Karl Berry + + * config/config.guess: update from prep. + +2003-05-22 Karl Berry + + * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg. + +2003-05-20 Karl Berry + + * config/config.guess: update from prep. + +2003-05-18 Karl Berry + + * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF + might actually be set by the user. + + * config/depcomp, install-sh, mdate-sh: update from automake. + +2003-05-17 Bruno Haible + + * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an + invalid expansion for AC_EGREP_CPP. + * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise. + * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise. + Suggested by Akim Demaille in + http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html + +2003-05-12 Jim Meyering + + * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect + the space-padded-by-default conversion specifiers, %e, %k, %l. + +2003-05-12 Bruno Haible + + * lib/linebreak.c (iconv_string_length): Don't return -1 just because + the string is longer than 4 KB. + +2003-05-11 Karl Berry + + * config/config.{guess,sub}: update from prep. + +2003-05-09 Bruno Haible + + * modules/error: Add m4/strerror_r.m4 to file list. + +2003-05-03 Bruno Haible + + Upgrade to Unicode-4.0. + * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD, + U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615, + U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5, + U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B + from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1. + (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width + of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2. + Change width of U+E0100..U+E01EF from 1 to 0. + +2003-04-25 Jim Meyering + + * lib/copy-file.c (copy_file_preserving): Declare buf_size to be + of type size_t, not int. + +2003-04-25 Bruno Haible + + * lib/copy-file.c: Include , for size_t. + +2003-04-21 Paul Eggert + + * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some + code which expansion is under static control. Patch imported from + Akim Demaille's patch to Bison; see + . + +2003-04-14 Bruno Haible + + * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF. + +2003-04-11 Jim Meyering + + Merge changes from Coreutils. + + 2003-03-22 Jim Meyering + + * lib/strftime.c (widen): Cast alloca return value to proper type. + + 2003-01-19 Ulrich Drepper + + From GNU libc. + * lib/strftime.c (my_strftime): Handle very large width + specifications for numeric values correctly. Improve checks for + overflow. + + 2003-01-19 Jim Meyering + + * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical + definitions. + (nl_get_alt_digit) [! defined my_strftime]: Define. + (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of + _nl_get_alt_digit and _nl_get_walt_digit. + + * lib/strftime.c (my_strftime): Merge in locale-related changes from + libc. These changes have no effect outside of _LIBC. + +2003-04-10 Bruno Haible + + * modules/findprog: New file. + * MODULES.html.sh (func_all_modules): Add it. + +2003-04-10 Bruno Haible + + * m4/findprog.m4: New file. + * m4/eaccess.m4: New file. + +2003-04-10 Bruno Haible + + * lib/findprog.h: New file, from GNU gettext. + * lib/findprog.c: New file, from GNU gettext. + +2003-04-05 Jim Meyering + + Merge changes from Coreutils. + + * lib/exclude.h (PARAMS): Remove definition and uses. + * lib/exclude.c: Remove uses of `PARAMS'. + + * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test. + Add test-cases for DOS filenames. Declare program_name. + (main): Set up program_name. Patch by Rich Dawe. + + * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any + error from mntctl. + Use mntctl's return value to drive the entry-processing loop, since + we can't rely on the value of the vmt_length member in the last + entry. On some systems doing so could result in exhausting + virtual memory. Based in part on a patch from Mike Jetzer. + +2003-04-04 Bruno Haible + + * modules/linebreak: New file. + * MODULES.html.sh (func_all_modules): Add it. + +2003-04-04 Bruno Haible + + * m4/linebreak.m4: New file. + +2003-04-04 Bruno Haible + + * lib/linebreak.h: New file, from GNU gettext. + * lib/linebreak.c: New file, from GNU gettext with slight + modifications. + * lib/lbrkprop.h: New file, from GNU gettext. + +2003-04-03 Bruno Haible + + * modules/utf8-ucs4: New file. + * modules/utf16-ucs4: New file. + * modules/ucs4-utf8: New file. + * modules/ucs4-utf16: New file. + * MODULES.html.sh (func_all_modules): Add them. + +2003-04-03 Bruno Haible + + * m4/utf-ucs4.m4: New file. + * m4/ucs4-utf.m4: New file. + +2003-04-03 Bruno Haible + + * lib/utf8-ucs4.h: New file, from GNU gettext. + * lib/utf16-ucs4.h: New file, from GNU gettext. + * lib/ucs4-utf8.h: New file, from GNU gettext. + * lib/ucs4-utf16.h: New file, from GNU gettext. + +2003-04-02 Bruno Haible + + * modules/binary-io: New file. + * MODULES.html.sh (func_all_modules): Add it. + +2003-04-02 Bruno Haible + + * lib/binary-io.h: New file, from GNU gettext. + +2003-04-01 Bruno Haible + + * modules/pathname: New file. + * MODULES.html.sh (func_all_modules): Add it. + +2003-04-01 Bruno Haible + + * lib/pathname.h: New file, from GNU gettext. + * lib/concatpath.c: New file, from GNU gettext. + +2003-03-30 Bruno Haible + + * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown(). + +2003-03-30 Bruno Haible + + * lib/copy-file.c (copy_file_preserving): Don't set owner if the + function chown() doesn't exist. + +2003-03-28 Bruno Haible + + * modules/copy-file: New file. + * MODULES.html.sh (func_all_modules): Add it. + +2003-03-28 Bruno Haible + + * m4/copy-file.m4: New file. + +2003-03-28 Bruno Haible + + * lib/copy-file.h: New file, from GNU gettext. + * lib/copy-file.c: New file, from GNU gettext. + +2003-03-18 Jim Meyering + + * lib/quote.c (quote_n): Fix typo in comment. + +2003-03-18 Bruno Haible + + * m4/onceonly.m4: Use m4_defn instead of defn, for better error + checking. + * m4/onceonly_2_57.m4: Likewise. + +2003-03-17 Bruno Haible + + * m4/onceonly.m4: Require autoconf 2.54 or newer. + (m4_quote): Remove macro. + * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer. + +2003-03-14 Jim Meyering + + Merge changes from Coreutils. + * lib/obstack.h (obstack_object_size): Declare temporary, __o, + to be const, in order to avoid warnings. + (obstack_room): Likewise. + (obstack_empty_p): Likewise. + +2003-03-14 Bruno Haible + + * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, + AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly. + +2003-03-13 Paul Eggert + + Merge changes from Bison. + * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to + (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5 + when compiling Bison 1.875's `bitset bset = obstack_alloc + (bobstack, bytes);'. Problem reported by Nelson H. F. Beebe. + * lib/hash.c: Include unconditionally. + +2003-03-13 Paul Eggert + + * m4/onceonly.m4 (m4_quote): New macro. + (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE): + Quote AC_FOREACH variable-expansions properly. + +2003-03-13 Paul Eggert + + * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version. + +2003-03-09 Paul Eggert + + * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't. + Reported by Bruce Becker; see: + http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html + +2003-03-03 Paul Eggert + Bruno Haible + + * lib/mbswidth.h: Include . Needed for UnixWare 7.1.1. + Reported by John Hughes, see + http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html + +2003-02-20 Bruno Haible + + * MODULES.html.sh (func_all_modules): Add poll. + +2003-02-19 Paolo Bonzini + + * modules/poll: New file. + +2003-02-19 Paolo Bonzini + + * lib/poll_.h: New file. + * lib/poll.c: New file. + +2003-02-19 Paolo Bonzini + + * m4/poll.m4: New file. + +2003-02-18 Paolo Bonzini + + * modules/mathl: New file. + +2003-02-18 Paolo Bonzini + + * lib/mathl.h: New file. + * lib/acosl.c: New file. + * lib/asinl.c: New file. + * lib/atanl.c: New file. + * lib/ceill.c: New file. + * lib/cosl.c: New file. + * lib/expl.c: New file. + * lib/floorl.c: New file. + * lib/frexpl.c: New file. + * lib/ldexpl.c: New file. + * lib/logl.c: New file. + * lib/sincosl.c: New file. + * lib/sinl.c: New file. + * lib/sqrtl.c: New file. + * lib/tanl.c: New file. + * lib/trigl.c: New file. + * lib/trigl.h: New file. + +2003-02-18 Paolo Bonzini + + * m4/mathl.m4: New file. + +2003-02-18 Bruno Haible + + * MODULES.html.sh (func_all_modules): Add mathl. + +2003-02-17 Bruno Haible + + * modules/mkdtemp: New module. + * MODULES.html.sh (func_all_modules): Add it. + +2003-02-17 Bruno Haible + + * m4/mkdtemp.m4: New file, from GNU gettext with modifications. + +2003-02-17 Bruno Haible + + * lib/mkdtemp.h: New file, from GNU gettext. + * lib/mkdtemp.c: New file, from GNU gettext. + +2003-02-02 Jim Meyering + + * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in + e.g. glibc-2.2.93. + +2003-01-31 Bruno Haible + + * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to + 'rpl_rename'. + * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to + 'rpl_strnlen'. + * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to + 'rpl_strtod'. + * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to + 'rpl_utime'. + +2003-01-31 Bruno Haible + + * lib/rename.c: #undef rename before defining rpl_rename. + * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen. + +2003-01-30 Bruno Haible + + * modules/vasnprintf, modules/vasprintf: New modules. + * MODULES.html.sh (func_all_modules): Add them. + +2003-01-30 Bruno Haible + + * m4/signed.m4: New file, from GNU gettext. + * m4/longdouble.m4: New file, from GNU gettext. + * m4/wchar_t.m4: New file, from GNU gettext. + * m4/wint_t.m4: New file, from GNU gettext. + * m4/vasnprintf.m4: New file. + * m4/vasprintf.m4: New file. + +2003-01-30 Bruno Haible + + * lib/printf-args.h: New file, from GNU gettext. + * lib/printf-args.c: New file, from GNU gettext. + * lib/printf-parse.h: New file, from GNU gettext. + * lib/printf-parse.c: New file, from GNU gettext. + * lib/vasnprintf.h: New file, from GNU gettext. + * lib/vasnprintf.c: New file, from GNU gettext. + * lib/asnprintf.c: New file, from GNU gettext. + * lib/vasprintf.h: New file, from GNU gettext with modifications. + * lib/vasprintf.c: New file, from GNU gettext. + * lib/asprintf.c: New file, from GNU gettext. + +2003-01-29 Bruno Haible + + * modules/stpncpy: New module. + * MODULES.html.sh (func_all_modules): Add it. + +2003-01-29 Bruno Haible + + * m4/stpncpy.m4: New file. + +2003-01-29 Bruno Haible + + * lib/stpncpy.h: New file, from GNU gettext with modifications. + * lib/stpncpy.c: New file, from GNU gettext with modifications. + +2003-01-28 Bruno Haible + + * modules/c-ctype: New module. + * MODULES.html.sh (func_all_modules): Add it. + +2003-01-28 Bruno Haible + + * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by + Paul Eggert. + * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by + Paul Eggert. + +2003-01-27 Bruno Haible + + * modules/xsetenv: New module. + * MODULES.html.sh (func_all_modules): Add it. + +2003-01-27 Bruno Haible + + * lib/xsetenv.h: New file, from GNU gettext. + * lib/xsetenv.c: New file, from GNU gettext. + +2003-01-23 Jim Meyering + + * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this + from working on systems without dirfd (at least Irix and OSF1/Tru64). + +2003-01-23 Bruno Haible + + * modules/minmax: New module. + * MODULES.html.sh (func_all_modules): Add it. + +2003-01-23 Bruno Haible + + * lib/minmax.h: New file, from GNU gettext, with comments from Paul + Eggert. + +2003-01-22 Bruno Haible + + * modules/exit: New module. + * MODULES.html.sh (func_all_modules): Add it. + +2003-01-22 Bruno Haible + + * lib/exit.h: New file, from GNU gettext. + +2003-01-19 Bruno Haible + + * gnulib-tool: Recognize option --extract-maintainer. + (func_get_maintainer): New function. + * modules/*: Add Maintainer entry. + +2003-01-16 Jim Meyering + + * m4/regex.m4: The `regex' struct is both input and output. + Initialize it before each use. Patch by Tim Waugh. + +2003-01-16 Bruno Haible + + * MODULES.html.sh: Add a table of contents. Add the module name as + leftmost column. Add hyperlinks. + +2003-01-15 Bruno Haible + + * m4/md5.m4 (gl_MD5): Require AC_C_INLINE. + +2003-01-15 Bruno Haible + + * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix. + * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL + suffix. + +2003-01-15 Bruno Haible + + * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites. + +2003-01-15 Bruno Haible + + * lib/stpcpy.h (stpcpy): Use ANSI C function declarations. + * lib/strcase.h (strcasecmp, strncasecmp): Likewise. + +2003-01-14 Jim Meyering + + * lib/same.c (same_name): Tweak a comment. + +2003-01-14 Bruno Haible + + * lib/same.c (same_name): Reorder tests so as to avoid calling stat() + when a string comparison is sufficient. + +2003-01-14 Bruno Haible + + * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not + 'unsigned int'. + +2003-01-14 Bruno Haible + + * lib/hash-pjw.c: Add comment about low quality of this function. + +2003-01-13 Bruno Haible + + * modules/stpcpy: Distribute lib/stpcpy.h. + * modules/setenv: Depend on alloca. Distribute lib/setenv.h. + +2003-01-13 Bruno Haible + + * modules/*: Add a description. + * modules/strpbrk: Fix Makefile.am snippet. + * modules/strtoimax: Fix dependencies. + * modules/strtoumax: Likewise. + +2003-01-13 Bruno Haible + + * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS. + * modules/alloca (Makefile.am): All object files depend on alloca.h. + * modules/stdbool (Makefile.am): All object files depend on stdbool.h. + +2003-01-13 Bruno Haible + + * gnulib-tool (func_create_testdir): Store config/* files in the main + directory. + * config.rpath: Move to ... + * config/config.rpath: ... here. + * modules/gettext: Contains config/config.rpath, not config.rpath. + * modules/iconv: Likewise. + +2003-01-12 Paul Eggert + + Finish renaming getstr -> getdelim2 and readline -> readlinebuffer, + to avoid collisions with libcurses and libreadline. + + * m4/getstr.m4: Remove. + * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC. + +2003-01-12 Paul Eggert + + Finish renaming getstr -> getdelim2 and readline -> readlinebuffer, + to avoid collisions with libcurses and libreadline. + + * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h. + * lib/getstr.h, getstr.c: Remove. + * lib/getline.c: Include "getline.h", to check interface. + Move body of old getstr.c here: this defines MIN_CHUNK and + declares getdelim2, which is renamed from getstr. + (getline, getdelim): Adjust to renaming of getstr -> getdelim2. + + * lib/linebuffer.c (readlinebuffer): Renamed from readline. + All uses changed. + * lib/linebuffer.h: Likewise. + (readline): Remove backward-compatibility macro. + +2003-01-12 Paul Eggert + + Finish renaming getstr -> getdelim2 and readline -> readlinebuffer, + to avoid collisions with libcurses and libreadline. + * getstr: Remove. + * MODULES.html.sh: Remove getstr. + * modules/getline: Depend on unlocked-io, not getstr. + +2003-01-12 Jim Meyering + + * lib/makepath.c: Don't test HAVE_ERRNO_H. It's not necessary. + +2003-01-10 Bruno Haible + + * modules/alloca: Change Makefile.am requirements. Simplify Include + requirements. Add lib/alloca_.h to file list. + +2003-01-10 Bruno Haible + + * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H. + +2003-01-10 Bruno Haible + + * lib/alloca_.h: New file. + * lib/getdate.y: Unconditionally include alloca.h. + * lib/makepath.c: Likewise. + * lib/setenv.c: Likewise. + * lib/userspec.c: Likewise. + +2003-01-09 Karl Berry + + * MODULES.html.sh: include `dirname $0` in PATH, to find + gnulib-tool. + +2003-01-09 Bruno Haible + + * modules/stdbool: Change configure.ac, Makefile.am requirements. + Simplify Include requirements. Add lib/stdbool.h.in to file list. + +2003-01-09 Bruno Haible + + * m4/stdbool.m4 (AM_STDBOOL_H): New macro. + +2003-01-09 Bruno Haible + + * lib/stdbool.h.in: New file. + +2003-01-09 Bruno Haible + + * gnulib-tool (func_all_modules): Ignore files ending in ~. + * MODULES.html.sh: Likewise. + +2003-01-08 Jim Meyering + + * lib/full-write.c: Undefine and define-away `const' after inclusion + of errno.h, not before. Suggestion from Bruno Haible. + +2003-01-08 Bruno Haible + + * modules/full-read: Depend on full-write. + +2003-01-08 Bruno Haible + + * lib/safe-read.c: Include specification header first, to ensure its + selfcontainedness. + * lib/full-write.c: Likewise. + +2003-01-07 Jim Meyering + + * lib/full-write.c: Rework so that it may serve to define full_read, + too. + * lib/full-read.c: Simply #define FULL_READ and include full-write.c. + +2003-01-07 Bruno Haible + + * lib/strtoimax.c: Include as an alternative to + . + * lib/xstrtol.h: Likewise. + * lib/xstrtoimax.c: Likewise. + * lib/xstrtoumax.c: Likewise. + * lib/human.h: Likewise. + + * lib/tempname.c: Include too. Avoids a compilation error + on systems that have but not . + +2003-01-07 Bruno Haible + + * MODULES.html.sh: Add copyright notice. + (missed_files): Omit CVS directory entries. + (func_module): Make it work with sed-3.02. + * MODULES.txt: Remove file. + +2003-01-06 Jim Meyering + + * lib/version-etc.c: Update year in translatable copyright string. + +2003-01-03 Karl Berry + + * config/config.{guess,sub}: update from prep. + +2003-01-02 Karl Berry + + * doc/COPYING.DOC: belatedly updated to 1.2. + +2003-01-01 Karl Berry + + * gnulib-tool (func_verify_module): report module name $module in + error message, not $1. + * gnulib-tool (create-testdir): don't complain if destdir couldn't + be created, only if it doesn't exist. + * gnulib-tool (last_checkin_date): don't expand the $Date here. + +2002-12-31 Paul Eggert + + * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP. + +2002-12-31 Paul Eggert + + * lib/memcoll.c (memcoll): Fall back on a simple algorithm using + memcmp if strcoll doesn't work. + +2002-12-31 Bruno Haible + + * lib/utime.c (utime_null): No need to call ftruncate if the file was + nonempty. + +2002-12-31 Bruno Haible + + * lib/memcoll.c (STRCOLL): New macro. + (memcoll): Use it. + +2002-12-31 Bruno Haible + + * lib/localcharset.h: New file. + * lib/localcharset.c: Include it. + * lib/unicodeio.c: Likewise. + +2002-12-31 Bruno Haible + + * lib/getstr.h (getstr): Define, to avoid clash with libcurses. + * lib/linebuffer.h (readline): Define, to avoid clash with libreadline. + +2002-12-31 Bruno Haible + + * lib/getline.h: Include , for size_t. + + * lib/unicodeio.h: Include , for size_t. + * lib/unicodeio.c: Don't include . + +2002-12-31 Bruno Haible + + * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not + HAVE_TM_ZONE. + +2002-12-24 Karl Berry + + * config/config.guess: update from prep. + +2002-12-24 Bruno Haible + + General infrasructure. + * m4/README: Rewritten. + * m4/onceonly.m4: New file. + * m4/onceonly_2_57.m4: New file. + + Module atexit. + * m4/atexit.m4: New file. + + Module strtod. + * m4/strtod.m4: New file. + + Module strtol. + * m4/strtol.m4: New file. + + Module strtoul. + * m4/strtoul.m4: New file. + + Module memchr. + * m4/memchr.m4: New file. + + Module memcmp. + * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro. + (jm_FUNC_MEMCMP): Invoke it. + + Module memcpy. + * m4/memcpy.m4: New file. + + Module memmove. + * m4/memmove.m4: New file. + + Module memset. + * m4/memset.m4: New file. + + Module strcspn. + * m4/strcspn.m4: New file. + + Module strpbrk. + * m4/strpbrk.m4: New file. + + Module strstr. + * m4/strstr.m4: New file. + + Module strerror. + * m4/strerror.m4: New file. + + Module mktime. + * m4/mktime.m4: Renamed from jm-mktime.m4. + (gl_PREREQ_MKTIME): New macro. + (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME. + + Module malloc. + * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro. + (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC. + Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it. + + Module realloc. + * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro. + (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC. + Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it. + + Module strftime. + * m4/tm_gmtoff.m4: New file, extracted from strftime.m4. + * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME. + Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and + gl_TM_GMTOFF. + (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros. + + Module xalloc. + * m4/xalloc.m4: New file. + + Module alloca. + * m4/alloca.m4: New file. + + Module putenv. + * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro. + (jm_FUNC_PUTENV): Invoke it. + + Module setenv. + * m4/setenv.m4 (gt_FUNC_SETENV): New macro. + (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4 + when invoked twice. + (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old + gt_FUNC_SETENV. + + Module memrchr. + * m4/memrchr.m4: New file. + + Module stpcpy. + * m4/stpcpy.m4: New file. + + Module strcase. + * m4/strcase.m4: New file. + + Module strdup. + * m4/strdup.m4: New file. + + Module strnlen. + * m4/strnlen.m4: New file. + + Module strndup. + * m4/strndup.m4: New file. + + Module xstrtod. + * m4/xstrtod.m4: New file. + + Module xstrtol. + * m4/xstrtol.m4: New file. + + Module getdate. + * m4/getdate.m4: New file. + + Module unlocked-io. + * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4. + (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros. + * m4/jm-glibc-io.m4n: Remove file. + + Module long-options. + * m4/long-options.m4: New file. + + Module md5. + * m4/md5.m4: New file. + + Module sha. + * m4/sha.m4: New file. + + Module getstr. + * m4/getstr.m4: New file. + + Module getline. + * m4/getline.m4 (gl_PREREQ_GETLINE): New macro. + (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use , not + , for size_t. Use the function name gnu_getline, not + simply getline. Infoke gl_PREREQ_GETLINE. + + Module obstack. + * m4/obstack.m4: New file. + + Module hash. + * m4/hash.m4: New file. + + Module readtokens. + * m4/readtokens.m4: New file. + + Module strverscmp. + * m4/strverscmp.m4: New file. + + Module stdbool. + * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for + OSF/1. + + Module strtoll. + * m4/strtoll.m4: New file. + + Module strtoull. + * m4/strtoull.m4: New file. + + Module strtoimax. + * m4/strtoimax.m4: New file. + + Module strtoumax. + * m4/strtoumax.m4: New file. + + Module xstrtoimax. + * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from + jm_AC_PREREQ_XSTRTOIMAX. + Moved the strtol prerequisites to strtol.m4. + Moved the strtoll prerequisites to strtoll.m4. + Moved the strtoimax prerequisites to strtoimax.m4. + + Module xstrtoumax. + * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from + jm_AC_PREREQ_XSTRTOUMAX. + Moved the strtoul prerequisites to strtoul.m4. + Moved the strtoull prerequisites to strtoull.m4. + Moved the strtoumax prerequisites to strtoumax.m4. + + Module chown. + * m4/chown.m4 (gl_PREREQ_CHOWN): New macro. + (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN. + + Module dup2. + * m4/dup2.m4: New file. + + Module ftruncate. + * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro. + (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE. + + Module getgroups. + * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro. + (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS. + + Module gettimeofday. + * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro. + (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke + gl_PREREQ_GETTIMEOFDAY. + + Module mkdir. + * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro. + (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR. + + Module mkstemp. + * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro. + (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke + jm_AC_TYPE_UINTMAX_T. + (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME. + + Module stat. + * m4/stat.m4 (gl_PREREQ_STAT): New macro. + (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT. + + Module lstat. + * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro. + (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT. + + Module timespec. + * m4/timespec.m4 (gl_TIMESPEC): New macro. + (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for . + * m4/st_mtim.m4: Indentation. + + Module nanosleep. + * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro. + (jm_FUNC_NANOSLEEP): Add check for . Invoke + gl_PREREQ_NANOSLEEP. + + Module regex. + * m4/regex.m4 (jm_PREREQ_REGEX): New macro. + (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX. + (gl_REGEX): New macro. + + Module rename. + * m4/rename.m4 (gl_PREREQ_RENAME): New macro. + (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME. + + Module rmdir. + * m4/rmdir.m4: New file. + + Module utime. + * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros. + * m4/utime.m4 (gl_PREREQ_UTIME): New macro. + (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME. + + Module dirname. + * m4/dirname.m4: New file. + + Module getopt. + * m4/getopt.m4: New file. + + Module unistd-safer. + * m4/unistd-safer.m4: New file. + + Module fnmatch. + * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include , for exit() + declaration. + (gl_PREREQ_FNMATCH_EXTRA): New macro. + (gl_FUNC_FNMATCH_POSIX): New macro. + (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke + gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not + simply fnmatch. + + Module exclude. + * m4/exclude.m4: New file. + + Module human. + * m4/human.m4: New file. + + Module acl. + * m4/acl.m4: Nop. + + Module backupfile. + * m4/backupfile.m4: New file. + * m4/d-ino.m4: Indentation. + + Module fsusage. + * m4/fsusage.m4 (gl_FSUSAGE): New macro. + (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac. + (gl_PREREQ_FSUSAGE_EXTRA): New macro. + + Module dirfd. + * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP + requirements. + + Module euidaccess. + * m4/euidaccess.m4: New file. + + Module file-type. + * m4/file-type.m4: New file. + + Module fileblocks. + * m4/fileblocks.m4: New file. + + Module filemode. + * m4/filemode.m4: New file. + + Module isdir. + * m4/isdir.m4: New file. + + Module lchown. + * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro. + (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN. + + Module makepath. + * m4/makepath.m4: New file. + + Module modechange. + * m4/modechange.m4: New file. + + Module mountlist. + * m4/mountlist.m4: New file. + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros. + Indentation. + + Module path-concat. + * m4/path-concat.m4: New file. + + Module pathmax. + * m4/pathmax.m4: New file. + + Module same. + * m4/same.m4: New file. + + Module save-cwd. + * m4/save-cwd.m4: New file. + + Module savedir. + * m4/savedir.m4: New file. + + Module xgetcwd. + * m4/xgetcwd.m4: New file. + * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros. + + Module xreadlink. + * m4/xreadlink.m4: New file. + + Module safe-read. + * m4/safe-read.m4: New file. + + Module safe-write. + * m4/safe-write.m4: New file. + + Module closeout. + * m4/closeout.m4: New file. + + Module stdio-safer. + * m4/stdio-safer.m4: New file. + + Module getpass. + * m4/getpass.m4: New file. + + Module getugroups. + * m4/getugroups.m4: New file. + + Module group-member. + * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro. + (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER. + + Module idcache. + * m4/idcache.m4: New file. + + Module userspec. + * m4/userspec.m4: New file. + + Module gettime. + * m4/clock_time.m4: New file. + * m4/gettime.m4: New file. + + Module settime. + * m4/settime.m4: New file. + + Module posixtm. + * m4/posixtm.m4: New file. + + Module gethostname. + * m4/gethostname.m4: New file. + + Module canon-host. + * m4/canon-host.m4: New file. + + Module gettext. + * m4/codeset.m4: New file, from gettext-0.11.5. + * m4/gettext.m4: New file, from gettext-0.11.5. + * m4/glibc21.m4: New file, from gettext-0.11.5. + * m4/iconv.m4: New file, from gettext-0.11.5. + * m4/intdiv0.m4: New file, from gettext-0.11.5. + * m4/inttypes-pri.m4: New file, from gettext-0.11.5. + * m4/inttypes.m4: New file, from gettext-0.11.5. + * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications. + * m4/isc-posix.m4: New file, from gettext-0.11.5. + * m4/lcmessage.m4: New file, from gettext-0.11.5. + * m4/lib-ld.m4: New file, from gettext-0.11.5. + * m4/lib-link.m4: New file, from gettext-0.11.5. + * m4/lib-prefix.m4: New file, from gettext-0.11.5. + * m4/progtest.m4: New file, from gettext-0.11.5. + * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications. + * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications. + * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications. + + Module localcharset. + * m4/localcharset.m4: New file. + + Module hard-locale. + * m4/hard-locale.m4: New file. + + Module mbswidth. + * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use + onceonly macros. + * m4/mbrtowc.m4: Add comment. + + Module memcasecmp. + * m4/memcasecmp.m4: New file. + + Module memcoll. + * m4/memcoll.m4: New file. + + Module unicodeio. + * m4/unicodeio.m4: New file. + + Module rpmatch. + * m4/rpmatch.m4: New file. + + Module yesno. + * m4/yesno.m4: New file. + + Module exitfail. + * m4/exitfail.m4: New file. + + Module c-stack. + * m4/c-stack.m4 (gl_C_STACK): New macro. + (jm_PREREQ_C_STACK): Check for . Use onceonly macros. + + Module error. + * m4/error.m4 (gl_ERROR): New macro. + (jm_PREREQ_ERROR): Use onceonly macros. + + Module fatal. + * m4/fatal.m4: New file. + + Module getloadavg. + * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros. + (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros. + + Module getpagesize. + * m4/getpagesize.m4: New file. + + Module getusershell. + * m4/getusershell.m4: New file. + + Module physmem. + * m4/physmem.m4: New file. + + Module posixver. + * m4/posixver.m4: New file. + + Module quotearg. + * m4/quotearg.m4: New file. + + Module quote. + * m4/quote.m4: New file. + + Module readutmp. + * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4. + + Module sig2str. + * m4/sig2str.m4: New file. + + Other. + * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to + ulonglong.m4. + * m4/intmax_t.m4: New file. + * m4/d-type.m4: Indentation. + * m4/jm-macros.m4: Update. + * m4/prereq.m4 (jm_PREREQ): Update. + (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4. + (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4. + (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4. + (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4. + (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4. + (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4. + (jm_PREREQ_HASH): Remove, obsoleted by hash.m4. + (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4. + (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4. + (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4. + (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4. + (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4. + (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4. + (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4. + (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4. + (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4. + (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4. + (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4. + * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros. + +2002-12-24 Bruno Haible + + * MODULES.txt: Update according to m4/ changes. + + Module gettext. + * config.rpath: New file, from gettext-0.11.5. + + * modules/*: New module descriptions. + * gnulib-tool: New file. + * MODULES.html.sh: New file. + +2002-12-21 Karl Berry + + * doc/fdl.texi: update to version 1.2. + +2002-12-19 Karl Berry + + * config/config.guess: update from prep. + +2002-12-18 Bruno Haible + + * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r. + * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise. + +2002-12-17 Bruno Haible + + * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h, + stdlib.h, string.h. + +2002-12-17 Bruno Haible + + * lib/canon-host.c (strdup): Remove unused declaration. + + * lib/fsusage.c: Include full_read.h. + (get_fs_usage): Use full_read instead of safe_read. + + * lib/utime.c (utime_null): Use SAFE_READ_ERROR. + +2002-12-12 Karl Berry + + * config/config.guess: update from prep. + +2002-12-11 Bruno Haible + + * m4/setenv.m4: New file, from gettext-0.11.5. + +2002-12-11 Bruno Haible + + * lib/setenv.h: Rewritten to cope with systems that have setenv() but + not unsetenv(). + * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following + modifications: + + 2002-12-11 Bruno Haible + + * setenv.c (alloca): Fall back to malloc. + (freea): New macro. + (setenv): Use freea() to free memory allocated with alloca(). + + 2002-11-13 Bruno Haible + + * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C + function declarations. + * unsetenv.c (unsetenv): Likewise. + + 2002-03-04 Bruno Haible + + Portability to AIX 4.3.3. + * unsetenv.c: New file, extracted from setenv.c. + * setenv.c: Move the unsetenv() function to unsetenv.c. + + 2001-12-20 Bruno Haible + + * setenv.c (__add_to_environ): Don't call realloc(NULL,...), + use malloc instead. For SunOS 4. + + 2001-12-11 Bruno Haible + + * setenv.c: Declare alloca. + (compar_fn_t): New typedef. + (KNOWN_VALUE, STORE_VALUE): Use it. + + * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c, + setenv.h. + +2002-12-10 Paul Eggert + + Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7. + * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS): + Choose values that are less likely to collide with system fnmatch + options. + * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not + defined (e.g., a pure POSIX system). + (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME + instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems. + +2002-12-06 Paul Eggert + + Undo the 2001-07-02 change for jm-glibc-io, as it was too much of + a pain in practice to deal with generated m4 files. This change + goes together with the 2002-12-04 unlocked-io.h change in ../lib. + + * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n + and jm-glibc-io.m4, as they are no longer a special case. + * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the + kludge and the auto-generation stuff. Check only whether the + functions are declared, not whether they exist, since older hosts + that don't declare the functions can't use the optimization anyway. + +2002-12-06 Jim Meyering + + * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'. + + Merge in changes from libc's misc/error.c, in preparation + for the merge of gnulib's changes back into libc. + + * lib/error.c (_): Define only if not already defined. + Move definition to follow all #include directives. + Include unlocked-io.h only if !_LIBC. + [_LIBC]: Include . + [USE_IN_LIBIO]: Include + (fflush): Tweak definition to use INTUSE. + (putc): Define. + +2002-12-05 Paul Eggert + + * lib/alloca.c [defined emacs]: Include "lisp.h". + (xalloc_die) [defined emacs]: New macro. + (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE. + [! defined emacs]: Include . + (POINTER_TYPE) [!defined POINTER_TYPE]: New macro. + (pointer): Typedef to POINTER_TYPE *. + (malloc): Remove decl; we now always use xmalloc. + (alloca): Use old-style definition, since Emacs needs this. + Check for arithmetic overflow when computing combined size. + +2002-12-04 Paul Eggert + + Do not generate unlocked-io.h automatically, since it's easier to + maintain it by hand. + + * lib/unlocked-io.h: New file, from GNU diffutils, + but with proper copyright notice and attribution. + * lib/gen-uio: Remove. + * lib/Makefile.am: Add copyright notice. + (libfetish_a_SOURCES): Add unlocked-io.h. + (BUILT_SOURCES, all-local): Remove unlocked-io.h. + (DISTCLEANFILES, io_functions): Remove macros. + (EXTRA_DIST): Remove gen_uio. + (unlocked-io.h): Remove rule. + +2002-12-04 Jim Meyering + + Reflect the fact that stat.c and lstat.c are no longer generated. + * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c. + (DISTCLEANFILES): Likewise. + (EXTRA_DIST): Likewise. + (all_local): Don't depend on stat.c or lstat.c. + (stat.c, lstat.c): Remove rules. + (EXTRA_DIST): Remove xstat.in. + + * lib/xstat.in: Remove file. Contents moved into stat.c. + * lib/stat.c: New file. Contents mostly from xstat.in. + * lib/stat.c: Rework so that it may serve to define rpl_lstat, too. + * lib/lstat.c: New file. Simply #define LSTAT and include stat.c. + + * lib/safe-read.c: Rework so that it may serve to define safe_write, + too. + * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c. + +2002-12-03 Jim Meyering + + * lib/safe-read.c, safe-write.c: Change variable names and comments, + but not semantics, to minimize the differences between these two files. + (safe_read): Change comment to mention SAFE_READ_ERROR. + + * lib/safe-read.c (IS_EINTR): Define. + (safe_read): Use IS_EINTR in place of in-function cpp directives. + +2002-12-02 Jim Meyering + + * lib/safe-read.c (EINTR): Define. + (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define. + (INT_MAX): Provide fallback. + (safe_read): Rewrite to iterate IFF the read fails with EINTR. + + * lib/safe-read.h (SAFE_READ_ERROR): Define. + +2002-12-02 Bruno Haible + + * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): + Define, taken from safe-read.c. + (INT_MAX): Provide fallback. + (safe_write): Rewrite to iterate IFF the write fails with EINTR. + * lib/safe-write.h (SAFE_WRITE_ERROR): Define. + + * lib/safe-read.c (EINTR): Remove definition. + (safe_read): Don't use EINTR if it is absent. + +2002-12-01 Jim Meyering + + * lib/safe-read.c: (safe_read): Also exit the loop when read returns + zero. + (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define. + +2002-11-27 Paul Eggert + + * lib/hash.c (hash_lookup, hash_get_first, hash_get_next, + hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();' + with `if (! (value < limit)) abort ();', for readability. + +2002-11-26 Karl Berry + + * lib/strdup.c: copy from libc again, with jim's ok. + * lib/.cppi-disable: re-add strdup.c + +2002-11-25 Karl Berry + + * lib/strtoll.c: copy from libc, meaning we now #include + instead of "strtol.c". + +2002-11-25 Karl Berry + + * config/install-sh: update from automake for variable quoting, $0 in + error msgs, etc. + + * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry. + * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new + entry. + +2002-11-25 Jim Meyering + + * lib/mktime.c: Sync from libc, now that it has the latest fix. + +2002-11-24 Karl Berry + + * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c, + regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl. + +2002-11-24 Jim Meyering + + Update from coreutils: + + * lib/mktime.c: Merge in changes from libc. + + Avoid a link-time failure on some Linux systems. + * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static' + (otherwise). + (__mon_yday): Declare with the STATIC attribute. + (__mktime_internal): Likewise. + Based on a report from Greg Schafer. + +2002-11-23 Jim Meyering + + * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc: + Use `unsigned', not `int', as type of index. + + * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include . + + * lib/fsusage.c: Remove unneeded parentheses around operands of + `defined'. + +2002-11-22 Paul Eggert + + * lib/quotearg.h: Allow multiple inclusion by surrounding with + "#ifndef QUOTEARG_H_". Include , for size_t, + so that we can be included first. + (PARAMS): Remove; we now assume C89 or later. All uses removed. + * lib/quotearg.c: Include quotearg.h immediately after config.h. + No need to include stddef.h or sys/types.h any more. + Surround local include files with "", not "<>". + Assume HAVE_LIMITS_H unconditionally, as we assume C89. + Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX, + HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS. + (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC. + (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT. + (ISPRINT): Remove; no longer needed now that we assume C89. + + (clone_quoting_options, quotearg_buffer, quotearg_n_options): + Preserve errno. + + (quotearg_buffer_restyled, quotearg_n, quotearg_n_style, + quotearg_char): Use SIZE_MAX rather than + (size_t) -1 when we are talking about "infinity". + + (quotearg_buffer_restyled): Fix bug when quoting trigraphs. + +2002-11-22 Paul Eggert + + * lib/hash.c: Avoid use of , as the GNU Coding Standards + hint that one should use `if (! x) abort ();' rather than `assert + (x);', and anyway it's one less thing to worry about configuring. + (hash_lookup, hash_get_first, hash_get_next, hash_find_entry, + hash_rehash, hash_insert): Use abort rather than assert. + +2002-11-22 Bruno Haible + + * lib/safe-read.h: Assume C89. Add comments. + (safe_read): Change return type to size_t. + * lib/safe-read.c (safe_read): Change return type to size_t. Handle + byte counts > SSIZE_MAX correctly. + * lib/safe-write.h: New file. + * lib/safe-write.c: New file. + * lib/full-read.h: New file. + * lib/full-read.c: New file. + * lib/full-write.h: Assume C89. Add comments. + * lib/full-write.c: Include safe-write.h. + (full_write): Rewritten to use safe_write. + Suggested by Jim Meyering and Paul Eggert. + +2002-11-21 Jim Meyering + + * lib/strdup.c (strdup): Tweak comment and initial #if/#include. + + Merge in changes from the coreutils. + + 2002-09-25 Paul Eggert + * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include + . + (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro. + (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than + int. Work more efficiently if X is the same width as uintmax_t. + Do not compare X to -1, to avoid bogus compiler warning. + (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast. + Don't assume that f_frsize and f_bsize are the same type. + + * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid + warning on FreeBSD. + + * lib/makepath.c (make_path): Restore umask *before* creating the final + component. + (make_path): Minor reformatting. + + * lib/xmalloc.c: Adjust to work with new autoconf macros, + AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef + HAVE_MALLOC/HAVE_REALLOC. + + * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as + dummy ones. At least on GNU/Linux systems, `auto' means something + else. + From Michael Stone. + +2002-11-21 Bruno Haible + + Remove case insensitive option matching. + * lib/argmatch.h (argcasematch): Remove declaration. + (ARGCASEMATCH): Remove macro. + (__xargmatch_internal): Remove case_sensitive argument. + (XARGMATCH): Update. + (XARGCASEMATCH): Remove macro. + * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove + case_sensitive argument. + (argcasematch): Remove function. + (__xargmatch_internal): Remove case_sensitive argument. + (main): Use XARGMATCH instead of XARGCASEMATCH. + + * lib/xmalloc.c: Change compile-time error message. Add comment about + required autoconf version. + +2002-11-20 Paul Eggert + + Merge argmatch cleanups from Bison. Assume C89. + + * lib/argmatch.c: Include config.h here, not in argmatch.h. + Include stdlib.h, for EXIT_FAILURE. + Always include , since we assume C89. + (EXIT_FAILURE): Remove pre-C89 bug workaround. + * lib/argmatch.h: Do not include or . + Include instead, since it's all we need for size_t. + (PARAMS): Remove. All uses removed. + (ARRAY_CARDINALITY): Do not bother to #undef. + (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg, + ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH): + Remove unnecessary parentheses. + (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH): + Insert necessary parentheses. + (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros. + (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT. + +2002-11-19 Bruno Haible + + * lib/mbswidth.c: Include mbswidth.h right at the beginning. + * lib/mbswidth.h: Include , for size_t. + + * lib/mbswidth.h (PARAMS): Remove macro. + (mbswidth, mbsnwidth): Use ANSI C function declarations. + * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise. + + * lib/gcd.h (PARAMS): Remove macro. + (gcd): Use ANSI C function declarations. + * lib/gcd.c (gcd): Likewise. + +2002-11-15 Bruno Haible + + * lib/strcspn.c: Include . + (strcspn): Use ANSI C function declaration. Change return type to + size_t. Use NULL. + * lib/strpbrk.c: Minimize diffs to glibc. Include . + (strpbrk): Use NULL. + * lib/strpbrk.h (PARAMS): Remove macro. + (strpbrk): Use ANSI C function declaration. + * lib/strstr.c: Don't include . + * lib/strstr.h (PARAMS): Remove macro. + (strstr): Use ANSI C function declarations. + +2002-11-14 Karl Berry + + * config/mkinstalldirs: `do' on separate line, instead of + `for var; do'. + +2002-11-06 Bruno Haible + + * lib/gcd.h (gcd): Change argument type to 'unsigned long'. + * lib/gcd.c (gcd): Likewise. + +2002-11-05 Bruno Haible + + * lib/gcd.h: New file, from gettext-0.11.5. + * lib/gcd.c: New file, from gettext-0.11.5. + +2002-11-05 Bruno Haible + + * lib/error.c [!_LIBC]: Include gettext.h instead of . + * lib/getopt.c [!_LIBC]: Include gettext.h instead of . + * lib/obstack.c [!_LIBC]: Include gettext.h instead of . + * lib/regex.c [!_LIBC]: Include gettext.h instead of . + + * lib/argmatch.c: Include gettext.h instead of and + . + * lib/makepath.c: Include gettext.h instead of and + . + + * lib/closeout.c: Include gettext.h instead of . + * lib/human.c: Include gettext.h instead of . + * lib/quotearg.c: Include gettext.h instead of . + * lib/rpmatch.c: Include gettext.h instead of . + * lib/unicodeio.c: Include gettext.h instead of . + * lib/userspec.c: Include gettext.h instead of . + * lib/version-etc.c: Include gettext.h instead of . + * lib/xmalloc.c: Include gettext.h instead of . + (textdomain): Remove definition. + * lib/xmemcoll.c: Include gettext.h instead of . + + * lib/long-options.c: Remove include of and definition of + _. + * lib/same.c: Remove include of and definition of _. + +2002-11-04 Owen Taylor + + * lib/config.charset: A few additions for Solaris. + +2002-11-04 Bruno Haible + + Make it possible to build libcharset with CC=gcc CFLAGS="-x c++". + * lib/localcharset.c (locale_charset): Declare as extern "C". + +2002-11-04 Bruno Haible + + * lib/config.charset: msdos in uk_UA uses CP1125. + +2002-11-04 Bruno Haible + + * lib/stpcpy.h: New file, from GNU gettext-0.11.5. + * lib/strcase.h: New file, from GNU gettext-0.11.5. + * lib/strpbrk.h: New file, from GNU gettext-0.11.5. + * lib/strstr.h: New file, from GNU gettext-0.11.5. + * lib/xgetcwd.h: New file, from GNU gettext-0.11.5. + +2002-11-04 Bruno Haible + + * lib/localcharset.c (locale_charset): Don't return an empty string. + +2002-11-04 Bruno Haible + + * lib/localcharset.c (get_charset_aliases): Add more Windows specific + aliases. + +2002-11-04 Bruno Haible + + * lib/config.charset: Update for newest glibc. Add canonical names + ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS. + +2002-11-04 Bruno Haible + + * lib/config.charset: Add support for NetBSD. + +2002-11-04 Bruno Haible + + * lib/config.charset [msdosdjgpp]: For Russian, use CP866. + +2002-11-01 Bruno Haible + + * configure.in: Add AC_CONFIG_AUX_DIR call. + (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile, + test/Makefile. + * Makefile.in (subdirs): Add m4, lib. Remove doc, test. + +2002-09-28 Karl Berry + + * config/srclist.txt: can't copy install-sh/mkinstalldirs from + installed automake until the next release, since changes have been + made. + +2002-09-25 Karl Berry + + * lib/strdup.c: copy from libc/string (via ../config/srclist*). + * lib/getopt*: copy from libc/posix. + * lib/gettext.h: copy from gettext. + * lib/.cppi-disable: add strdup.c, gettext.h. + +2002-09-25 Karl Berry + + * config/srclist.txt: enable gettext.h check. + * config/config.{guess,sub}: update from prep. + * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update + from automake 1.6.3. + See srclist*. + +2002-08-23 Stefan Monnier + + * regex.c (PATFETCH): Remove the translating fetch. + (PATFETCH_RAW): Rename to PATFETCH. + (set_image_of_range): New fun. + (SET_RANGE_TABLE_WORK_AREA): Use it. + (regex_compile): Don't translate the pattern chars so eagerly. + Only do it when inserting an `exactn' bytecode or when handling + a char-range. + (mutually_exclusive_p): Avoid empty statement. + +2002-07-06 Jim Meyering + + * m4/README: Don't mention Makefile.am.in. + Outline how I've tested changes to .m4 files. Yep, it's a pain. + +2002-07-01 Jim Meyering + + * lib/c-stack.c: Include sys/time.h. + From Volker Borchert. + +2002-06-26 Paul Eggert + + * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc. + +2002-06-26 Paul Eggert + + * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT): + New macro. Use it uniformly instead of + (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H). + It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1 + reported by Vin Shelton. + +2002-06-22 Paul Eggert + + * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]: + Do not assume SA_SIGINFO behavior. + Bug reported by Jim Meyering on NetBSD 1.5.2. + +2002-06-22 Jim Meyering + + * m4/c-stack.m4: New file, from diffutils-2.8.2. + * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK. + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE, + now that configure.ac uses AC_GNU_SOURCE. + (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU. + * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH. + + Update to latest tools. Suggestions from Paul Eggert. + * m4/stdbool.m4: New file, from diffutils-2.8.2. + * m4/gnu-source.m4: Update from diffutils-2.8.2. + * m4/fnmatch.m4: Likewise. + * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h) + to AC_HEADER_STDBOOL + +2002-06-22 Jim Meyering + + * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about + redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h. + +2002-06-22 Jim Meyering + + * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2. + + * lib/exitfail.c, exitfail.h: Likewise. + * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h. + + * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place + of fnmatch.h. + (EXTRA_DIST): Add fnmatch_loop.c. + (libfetish_a_SOURCES): Add c-stack.c and c-stack.h. + + * lib/fnmatch_loop.c: New file, from diffutils-2.8.2. + * lib/fnmatch.c: Update from diffutils-2.8.2. + * lib/fnmatch_.h: New file. From diffutils-2.8.2. + * lib/fnmatch.h: Remove file. + +2002-06-21 Jim Meyering + + * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2. + * m4/mbrtowc.m4: Likewise. + + * m4/mbstate_t.m4: Update from diffutils-2.8.2. + * m4/mbswidth.m4: Reflect name change: + s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T. + * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise. + + * m4/lib-link.m4: Update from gettext-0.11.2. + * m4/gettext.m4: Likewise. + + * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h. + From Alfred M. Szmidt. + +2002-06-18 Paul Eggert + + * lib/file-type.h: Report an error if neither S_ISREG nor + S_IFREG is defined, instead of using a test specific to glibc + 2.2. This should be safe, since POSIX requires S_ISREG and + Unix Version 7 had S_IFREG. We don't need to check for + since we don't use any symbols that it defines. + +2002-06-15 Richard Dawe + + * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than + $@-t, so that each temporary file name is unique and valid in the first + 8 characters, for operation under DOS. + +2002-06-15 Paul Eggert + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author. + +2002-06-15 Jim Meyering + + Work even with DJGPP 2.03, which lacks support for symlinks. + From Richard Dawe. + * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK + is defined. + * lib/lchown.c (S_ISLNK): Likewise. + +2002-06-15 Jim Meyering + + * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef. + For GNU libc 2.2 and newer, ensure that and + have been included before this file. + +2002-06-14 Jim Meyering + + * lib/file-type.h: Use the version from diffutils-2.8.2. + * lib/file-type.c: Likewise. + +2002-06-07 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h. + They're needed at least for NetBSD 1.5.2. + ($statxfs_includes): Include those same headers. + ($statxfs_includes): Include sys/vfs.h if available. + ($statxfs_includes): Likewise for sys/statvfs.h. + Check for the following members in both structs statfs and statvfs: + f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen. + +2002-06-01 Jim Meyering + + * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro: + s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/. + +2002-05-28 Jim Meyering + + * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'. + Reported by Volker Borchert. + +2002-05-27 Jim Meyering + + Fix a problem seen only on nonconforming systems whereby ls.c's + use of localtime, and then of gettimeofday would cause trouble: + the localtime call used to initialize rpl_gettimeofday's save + mechanism would clobber ls's current local time information so + that in any long listing the first file would always be listed + with date 1970-01-01. Analysis by Volker Borchert. + + * lib/gettimeofday.c (localtime): Undefine. + (rpl_localtime): New function. + +2002-05-27 Jim Meyering + + * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace + localtime. + + * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to + use the replacement function; it wouldn't resolve at link time. + Reported by Volker Borchert. + +2002-05-22 Jim Meyering + + * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and + file-type.h. + * lib/file-type.h: New file. + * lib/file-type.c (file_type): New file/function. Extracted from + diffutils. + +2002-04-30 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT. + +2002-04-29 Paul Eggert + + * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed. + +2002-04-29 Paul Eggert + + * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h. + Do not check for alloca.h (no longer used) or stdbool.h (was never + used?). Add AM_C_PROTOTYPES since hard-locale.h uses it. + +2002-04-29 Paul Eggert + + * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1. + +2002-04-29 Jim Meyering + + * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN. + * m4/prereq.m4: Add jm_PREREQ_STRNLEN. + Use AC_FUNC_STRNLEN here instead. + + * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]). + With autoconf-2.53a, it's part of AC_PROG_CC. + +2002-04-28 Paul Eggert + + * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str). + * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR. + +2002-04-28 Paul Eggert + + * lib/sig2str.h, lib/sig2str.c: New files. + * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h. + +2002-04-28 Paul Eggert + + * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid + depending on and WTERMSIG. Default to 64 instead + of 127, since 64 is the largest conceivable number for ancient + nonstandard hosts. + * lib/sig2str.c: Do not include ; no longer needed. + +2002-04-28 Jim Meyering + + * lib/sig2str.c (WTERMSIG): Remove definition (unused). + +2002-04-24 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro. + (jm_PREREQ): Use it. + + * m4/getloadavg.m4: Check for these headers: locale.h unistd.h + mach/mach.h fcntl.h. + Check for this function: setlocale. + +2002-04-24 Jim Meyering + + * lib/gettext.h: New file, from Gettext. + * lib/Makefile.am (INCLUDES): Remove -I../intl. + (libfetish_a_SOURCES): Add gettext.h. + +2002-04-16 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members: + ut_pid, ut_id, ut_exit. + +2002-04-16 Jim Meyering + + * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c). + (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define. + (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define. + +2002-04-12 Jim Meyering + + * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove + now-bogus check for f_type in sys/mount.h. Instead, just test for the + existence of the getmntinfo function. Needed for Darwin 5.3. + + * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro. + This is necessary at least on Darwin 5.3. + + * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use + AC_FUNC_STRNLEN. Otherwise, we'd end up putting two copies of + strnlen.o in the library, and that makes some versions of ranlib + object. + +2002-04-12 Jim Meyering + + * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro. + +2002-04-09 Jim Meyering + + * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message + to be more precise. Rather than saying we're checking whether the + function `works', say what we're testing. + * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise. + Reported by Bruno Haible. + +2002-03-10 Jim Meyering + + * lib/makepath.c (make_path): Remove a comma from a diagnostic. + Suggestion from Santiago Vila. + +2002-03-08 Jim Meyering + + * lib/rename.c: Mention that this wrapper is needed also on + mips-dec-ultrix4.4 systems. + +2002-03-02 Jim Meyering + + * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME, + not HAVE_CLOCK_SETTIME. + +2002-02-27 Paul Eggert + + * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used. + Check for clock_settime. + +2002-02-27 Paul Eggert + + * lib/nanosleep.h: Rename to.... + * lib/timespec.h: New name for nanosleep.h. All uses changed. + + * lib/gettime.c: New file. + * lib/settime.c: New file. + * lib/stime.c: Remove. + + * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c, + timespec.h. Remove nanosleep.h. + +2002-02-25 Paul Eggert + + * m4/acl.m4: New file. + * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL. + Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now. + +2002-02-25 Paul Eggert + + * lib/acl.c, lib/acl.h: New files. + * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c. + +2002-02-24 Jim Meyering + + * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent + prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't + cause trouble. Reported by Nelson Beebe. + +2002-02-23 Paul Eggert + + * lib/path-concat.c (xpath_concat): Reorder code to pacify + compilers that don't know that xalloc_die never returns. + +2002-02-20 Jim Meyering + + * lib/getdate.c: Regenerate using bison-1.33. + +2002-02-17 Jim Meyering + + * config/config.guess (main): Don't use `head -1'; it's no longer + portable. Use `sed 1q' instead. + +2002-02-16 gettextize + + * m4/codeset.m4: Upgrade to gettext-0.11. + * m4/gettext.m4: Upgrade to gettext-0.11. + * m4/glibc21.m4: Upgrade to gettext-0.11. + * m4/iconv.m4: Upgrade to gettext-0.11. + * m4/isc-posix.m4: Upgrade to gettext-0.11. + * m4/lcmessage.m4: Upgrade to gettext-0.11. + * m4/lib-ld.m4: New file, from gettext-0.11. + * m4/lib-link.m4: New file, from gettext-0.11. + * m4/lib-prefix.m4: New file, from gettext-0.11. + * m4/progtest.m4: Upgrade to gettext-0.11. + +2002-02-15 Paul Eggert + + * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro. + (jm_PREREQ): Use it. + +2002-02-15 Paul Eggert + + * lib/posixver.c, lib/posixver.h: New files. + * lib/Makefile.am (libfetish_a_SOURCES): Add them. + +2002-02-02 Paul Eggert + Bruno Haible + + * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument. + (fwrite_success_callback): New declaration. + * lib/unicodeio.c (unicode_to_mb): New function, extracted from + print_unicode_char. Call failure callback instead of error. + (fwrite_success_callback): New function. + (exit_failure_callback): New function. + (fallback_failure_callback): New function. + (print_unicode_char): Call unicode_to_mb. + +2002-01-26 Jim Meyering + + * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g. + * m4/strnlen.m4: Remove file, now that it's part of autoconf. + +2002-01-26 Jim Meyering + + * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h. + +2002-01-22 Paul Eggert + + * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO. + +2002-01-22 Jim Meyering + + * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES). + Otherwise, some versions of automake would omit the rule that makes + Makefile from Makefile.in. + +2002-01-21 Paul Eggert + + * lib/xmemcoll.h, lib/xmemcoll.c: New files. + * lib/Makefile.am (libfetish_a_SOURCES): Add them. + * lib/memcoll.c: Include errno.h, and declare errno if not defined. + (memcoll): Set errno to zero if there is no error. + + * lib/quotearg.c (quotearg_buffer_restyled): + Fix bug with quoting buffers containing NUL when backslashing escapes. + This bug was exposed by the other changes in this patch. + (quotearg_n_options): New arg ARGSIZE. + All callers changed. + (quoting_options_from_style): New function. + (quotearg_n_style): Use it. + (quotearg_n_style_mem): New function. + + * lib/quotearg.h (quotearg_n_style_mem): New function. + +2002-01-19 Jim Meyering + + * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN. + Remove useless quotes: DF_PROG="df". + * m4/strnlen.m4: New file. + +2002-01-16 Paul Eggert + + * lib/backupfile.c (ISDIGIT): Comment fix. + * lib/getdate.y (ISDIGIT): Likewise. + * lib/posixtm.c (ISDIGIT, year): Likewise. + * lib/strverscmp.c (ISDIGIT): Likewise. + * lib/userspec.c (ISDIGIT): Likewise. + +2002-01-16 Jim Meyering + + * lib/getdate.y: Add three semicolons, each just before a closing + brace. Bison (as of version 1.31) no longer papers over that mistake. + +2002-01-05 Jim Meyering + + * lib/version-etc.c (version_etc_copyright): Update copyright year. + +2001-12-19 Paul Eggert + + * lib/closeout.c (close_stdout_status): If ferror (stdout), do + not silently exit merely because the output buffer happens to + have nothing pending. + +2001-12-18 Paul Eggert + + See the big note in ../ChangeLog. + * lib/human.c (suffixes): Prefer K to k for 1024. + (generate_suffix_backwards): New function. + (human_readable_inexact): Use it. + * lib/xstrtol.c (__xstrtol): If there is no number but there + is a valid suffix, assume 1. "MB" now means decimal, "MiB" binary. + Accept 'K' as well as 'k'. + +2001-12-15 Jim Meyering + + * lib/regex.h (__restrict_arr): Update from libc. + + * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs + as `remote' if the name starts with `//'. Suggested by Michael Stone. + (STREQ): Define. + +2001-12-14 Jim Meyering + + * m4/jm-macros.m4 (jm_MACROS): Check for iswspace. + Suggestion from Bruno Haible. + +2001-12-10 Jim Meyering + + * lib/linebuffer.c: Remove explicit declarations of xmalloc and + xrealloc, Instead, include "xalloc.h". + (initbuffer): Don't cast xmalloc return value to char*. + (readline): Reword comment. + Don't cast xrealloc return value to char* + Return NULL, not 0. + +2001-12-09 Jim Meyering + + * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning + about `signed and unsigned type in conditional expression'. + * lib/posixtm.c (posix_time_parse): Likewise. + + * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning. + + * lib/readtokens.c (readtoken): Declare an index to be of type unsigned + to avoid a pedantic warning. + + * lib/getstr.c: Don't include assert.h. + (getstr): Remove warning-evoking assertions. + Return -1 if offset parameter is out of bounds. + Change the type of a local from int to size_t. + + * lib/strftime.c (my_strftime_localtime_r): Include this function + definition in the `#if ! HAVE_TM_GMTOFF' block. + + * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc. + Include xalloc.h instead. + +2001-12-02 Jim Meyering + + * lib/tempname.c: Don't declare getenv, thus reverting the change of + 2001-11-18. It's no longer necessary, now that stdlib.h is always + included. + + * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded, + __unbounded, and __ptrvalue. Reported by Uwe H. Steinfeld. + +2001-11-30 Akim Demaille + + * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared + before being defined. + +2001-11-27 Paul Eggert + + * lib/quotearg.h (quotearg_n, quotearg_n_style): + First arg is int, not unsigned. + * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise. + (SIZE_MAX, UINT_MAX): New macros. + (quotearg_n_options): Abort if N is negative. + Avoid overflow check on hosts where size_t is 64 bits and int + is 32 bits, as overflow is impossible there. + Fix off-by-one typo that caused unnecessary reallocation. + +2001-11-27 Jim Meyering + + * lib/tempname.c: Merge with version from libc. + * lib/regex.c: Likewise. + + * lib/tempname.c: Include stdlib.h unconditionally. On some old + systems for which STDC_HEADERS is 0, it was not included, resulting in + a warning about an integer-to-pointer conversion problem with getenv. + Reported by Volker Borchert. + +2001-11-26 Jim Meyering + + * lib/gtod.h: Remove file. + * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h. + * lib/gettimeofday.c: Don't include gtod.h. + (GTOD_init): Remove function. + (rpl_gettimeofday): Do its job here instead, rather than aborting. + Suggestion from Volker Borchert. + +2001-11-23 Jim Meyering + + * lib/hash.h (struct hash_table): Don't define here. Merely declare + it. + * lib/hash.c (struct hash_table): Define it here instead. + +2001-11-22 Jim Meyering + + * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif. + +2001-11-20 Jim Meyering + + * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that + SunOS 4.1.4 and Solaris 2.5.1 lose, too. + +2001-11-19 Jim Meyering + + * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary + directory. Use "conftestXXXXXX" as the template. + Suggestion from Paul Eggert. + + * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor + immediately, so the test doesn't mistakenly hit the max-open-files + limit. + +2001-11-18 Paul Eggert + + * lib/tempname.c (TMP_MAX): Remove; no longer needed. + (TEMPORARIES): New macro. + (__gen_tempname): Use TEMPORARIES rather than TMP_MAX. This + removes an artificial limitation (e.g. HP-UX 10.20, where + TMP_MAX is 17576). + +2001-11-18 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv. + +2001-11-18 Jim Meyering + + * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning + on SunOS 4. + + * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those + files will be created before anything else. + +2001-11-17 Paul Eggert + + * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define + WINSIZE_IN_PTEM if defines struct winsize. + +2001-11-17 Jim Meyering + + * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro. + Prompted by a report from Bob Proulx. + + * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here. + Instead, require UTILS_FUNC_MKSTEMP. + +2001-11-17 Jim Meyering + + * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM. + Now, that's done as part of AC_FUNC_STRTOD. + +2001-11-17 Jim Meyering + + * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26 + that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable + rather than group writable. Patch by Juan F. Codagnone. + + * lib/readtokens.c: Remove explicit declarations of xmalloc and + xrealloc, Instead, include "xalloc.h". + + * lib/mountlist.c: Include unlocked-io.h after all system headers. + Remove explicit declarations of xmalloc, xrealloc, + and xstrdup. Instead, include "xalloc.h". + + * lib/argmatch.c, closeout.c, error.c, exclude.c: Include + unlocked-io.h. + * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c: + Likewise. + * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise. + + * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise. + Reported by Padraig Brady. + + * lib/mkstemp.c: #undef mkstemp. + Include config.h. + (rpl_mkstemp): Rename from mkstemp. + Protoize. + +2001-11-16 Jim Meyering + + * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include . + (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to + determine the amount of total physical memory, use pstat_getstatic. + HPUX-11 doesn't define _SC_PHYS_PAGES. + (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]: + If sysconf couldn't be used to determine the amount of available + physical memory, use both pstat_getstatic and pstat_getdynamic. + Based on a patch from Bob Proulx. + +2001-11-10 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function. + (jm_PREREQ): Use it. + +2001-11-09 Jim Meyering + + * m4/jm-macros.m4: Require autoconf-2.52f. + (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD): + Use these AC_-prefixed names, not the AM_-prefixed ones. + + * m4/afs.m4 (jm_AFS): Quote the body. Patch by Akim Demaille. + +2001-11-05 Jim Meyering + + * lib/xstat.in (slash_aware_lstat): Correct a misleading comment. + +2001-11-04 Jim Meyering + + * m4/fpending.m4: Remove unused cruft that saved, set, and restored + $DEFS. + +2001-11-03 Jim Meyering + + * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg + of AC_DEFUN. + + * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to + know the name of the variable in the macro definition. + +2001-11-03 Jim Meyering + + * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args + in argmatch_to_argument call. + + * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an + argument. + + * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or + e.g., a fault due to an attempt to free a NULL pointer. + +2001-11-01 Jim Meyering + + * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro. + * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD. + +2001-11-01 Jim Meyering + + * lib/dirfd.c, lib/dirfd.h: New files. + * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h. + + * lib/hash.c (hash_print) [TESTING]: Clean up. + +2001-10-22 Paul Eggert + + * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__, + to avoid a warning if -Wall. + +2001-10-22 Jeff Bailey + + * README: New file + * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi + (per RMS's instructions, this is now the canonical source) + * lgpl/, gpl/: New directories. + +2001-10-21 Paul Eggert + + * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job. + +2001-10-21 Jim Meyering + + * lib/obstack.c (_): Honor the setting of ENABLE_NLS. Otherwise, + this code would end up calling gettext even in packages built + with --disable-nls. + * lib/getopt.c (_): Likewise. + * lib/regex.c (_): Likewise. + +2001-10-20 Paul Eggert + + * m4/error.m4 (jm_PREREQ_ERROR): + Do not invoke AC_CHECK_FUNCS with strerror_r, as + AC_FUNC_STRERROR_R does that. + Check for strerror declaration. + + * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files + are supposed to have them these days. + (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached. + Merge changes from latest Autoconf CVS. + Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p, + and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since + POSIX decided to standardize on the int flavor of strerror_r. + +2001-10-20 Paul Eggert + + * lib/error.c (strerror_r): Do not declare unless !_LIBC. + Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P. + Use strerror_r that is only a macro, even if it is not a function. + (strerror): Check for HAVE_DECL_STRERROR before declaring. + (private_strerror): Use prototypes, not old-style function definition. + (print_errno_message): New function. + Support the POSIX 'int'-flavored strerror_r, as well as the traditional + char*-flavored one. + (error_tail, error, error_at_line): Use it. + +2001-10-11 Jim Meyering + + * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ... + and quote_n (1, ... to avoid clobbering a buffer. + +2001-10-05 Jim Meyering + + * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and + hash-pjw.h. + * lib/hash-pjw.c: New file (factored out of fileutils' remove.c). + * lib/hash-pjw.h: New file. + +2001-09-30 Jim Meyering + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if + `struct fsstat' has the `f_fstypename' member. + Use that to define FS_TYPE, which is now used to make + the getfsstat link test tighter. + +2001-09-30 Jim Meyering + + * lib/mountlist.c [MOUNTED_GETFSSTAT]: + Include , for Apple Darwin. + Include sys/mount.h and sys/fs_types.h only if available. + (FS_TYPE): Define. + (read_filesystem_list): Use FS_TYPE. + +2001-09-29 Paul Eggert + + * lib/exclude.c (excluded_filename): 0 -> false, since it's + a boolean context. + +2001-09-29 Jim Meyering + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS) + [one-argument getmntent function]): Include stdio.h before mntent.h. + SunOS 4.1.x needs it for the declaration of `FILE'. + Patch by Volker Borchert. + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS) + Check for these headers: sys/param.h sys/ucred.h sys/mount.h + sys/fs_types.h, and make the link-test for getfsstat guard #include + directives with appropriate #if HAVE_*_H tests so that we can + detect getfsstat on Apple Darwin1.3.7 systems. + Reported by Nelson Beebe. + Fix harmless typo in cache variable name: s/getsstat/getfsstat/. + +2001-09-28 Paul Eggert + + Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which + #defines strtoimax. Also treat the other strto* functions + like strtoimax. + + * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): + Check for strtoul and strtoumax, + as those declarations are made even in the signed case. + * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): + Likewise, for strtol and strtoimax. + +2001-09-28 Paul Eggert + + Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which + #defines strtoimax. Also treat the other strto* functions + like strtoimax. + + * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL. + (strtoul): Do not declare if HAVE_DECL_STRTOUL. + (strtoimax, strtoumax): Do not declare if already defined as a macro. + +2001-09-26 Jim Meyering + + Most macros in unlocked-io.h had the wrong number of arguments. + * lib/gen-uio: New script. + (USE_UNLOCKED_IO): Define to 1 if not already defined. + * lib/unlocked-io.hin: Remove file. + * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script, + rather than trying to embed it here. + (EXTRA_DIST): Add gen-uio. Remove unlocked-io.hin + Reported by Padraig Brady. + +2001-09-25 Volker Borchert + + * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable + `result'. + +2001-09-24 Jim Meyering + + * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS. + +2001-09-23 Jim Meyering + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test + instead of the mere test for existence of mntent.h. The latter + would get a false-positive on AIX 3.4 systems. + In the outer getmntent if-block, don't die if neither of the getmntent + tests succeeds. Instead, just fall through and continue with the + remaining tests. + +2001-09-23 Jim Meyering + + * lib/mountlist.c: Remove useless parentheses in #if directives. + (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when + the deprecated MOUNTED symbol is no longer defined in mntent.h. + +2001-09-22 Jim Meyering + + * m4/gettext.m4: New file. From gettext. + * m4/lcmessage.m4: Sync with gettext -- this changes only comments. + * m4/progtest.m4: Likewise + * m4/isc-posix.m4: Decrement serial number to sync with gettext. + * m4/glibc21.m4: Likewise. + + * m4/libintl.m4: Remove. No longer used. + +2001-09-22 Jim Meyering + + * lib/localcharset.c: Update from latest gettext. + * lib/config.charset: Likewise. + +2001-09-20 Jim Meyering + + * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of + strtoimax. + * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of + strtoumax. + +2001-09-20 Jim Meyering + + * lib/xstrtol.c (strtoimax): Guard declaration with + `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'. + The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0) + have their own, conflicting declaration of strtoimax in sys/inttypes.h. + (strtoumax): Likewise, for completeness (it wasn't necessary). + +2001-09-17 Paul Eggert + + * lib/strtoimax.c (HAVE_LONG_LONG): + Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned. + (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base), + to work around bug in IBM C compiler. + +2001-09-17 Jim Meyering + + * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4, + * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4, + * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4, + * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4, + * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED, + whenever the right hand side need not be expanded by the shell. + +2001-09-16 Paul Eggert + + * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C + library. It's not correct, as some older glibcs are buggy. + fnmatch wasn't fixed until glibc 2.2. + + Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no + special shell magic here. + +2001-09-16 Jim Meyering + + * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro. + * m4/jm-macros.m4: Require it. + +2001-09-16 Jim Meyering + + * lib/mkdir.c: New file. + +2001-09-15 Jim Meyering + + * m4/jm-macros.m4: Check for help2man. + +2001-09-11 Jim Meyering + + * m4/host-os.m4 (UTILS_HOST_OS): New file/macro. + The body, by Paul Eggert, was moved here from configure.in. + * m4/jm-macros.m4: Require UTILS_HOST_OS. + +2001-09-04 Paul Eggert + + * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro. + (jm_PREREQ): Use it. + +2001-09-04 Paul Eggert + + * lib/xreadlink.c (xreadlink): Omit size_t* arg. All uses changed. + Use ssize_t, not int, to store result of readlink. + Check for ssize_t overflow as well as size_t overflow, + as POSIX says the result of readlink is implementation-defined + when ssize_t overflows. + Remove unnecessary cast to char*. + Use free+malloc instead of realloc, as the storage doesn't need + to be preserved and it's clearer and can be more efficient that way. + (SIZE_MAX, SSIZE_MAX): New macros, if doesn't declare. + * lib/xreadlink.h (xreadlink): Update prototype. + +2001-09-04 Paul Eggert + + * lib/xgetcwd.c: Revert some of the previous change; intead, + fix the HAVE_GETCWD_NULL code to behave more like the + !HAVE_GETCWD_NULL code used to. + + Include "xalloc.h". + (xgetcwd): Do not return NULL when memory is exhausted; instead, + invoke xalloc_die. + +2001-09-03 Paul Eggert + + * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and + sys/param.h, as pathmax.h includes them. + +2001-09-03 Paul Eggert + + * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD. + (jm_PREREQ_XGETCWD): New macro. + + * m4/getcwd.m4: New file. + +2001-09-03 Paul Eggert + + * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more + like the HAVE_GETCWD_NULL code. + Include pathmax.h if not HAVE_GETCWD. + Do not include xalloc.h. + (INITIAL_BUFFER_SIZE): New symbol. + Do not use xmalloc / xrealloc, since the caller is responsible for + handling errors. Preserve errno around `free' during failure. + Do not overrun buffer when using getwd. + +2001-09-03 Paul Eggert + + * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined + __GLIBC__ && __GLIBC__ >= 2), to decide whether to use + getcwd (NULL, 0). + +2001-09-03 Paul Eggert + + * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between + usage of FNM_CASEFOLD and FNM_LEADING_DIR. The bug was + spotted by Jim Meyering. + +2001-09-03 Jim Meyering + + * lib/xreadlink.c (xreadlink): Preserve errno around `free' during + failure. + +2001-09-02 Jim Meyering + + * lib/error.c: Update from GNU libc. + +2001-09-01 Jim Meyering + + * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name. + Used by df. + +2001-09-01 Jim Meyering + + * lib/xreadlink.c: New file. + * lib/xreadlink.h: New file. + * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and + xreadlink.h. + + * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it + doesn't conflict with sparc Solaris 7's definition in + /usr/include/sys/int_types.h. + + * lib/exclude.c: Use `""', not `<>' to #include non-system header + files. + (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp + and strncasecmp as r-values. Unixware didn't have declarations. + +2001-08-31 Paul Eggert + + * lib/xstrtol.h: Add copyright notice. + (_DECLARE_XSTRTOL): Improve quality of diagnostic for + LONGINT_INVALID_SUFFIX_CHAR. + +2001-08-31 Paul Eggert + + * lib/xstrtol.c (strtoimax): New decl. + +2001-08-31 Paul Eggert + + * lib/xgetcwd.c: Don't include pathmax.h. + Include stdlib.h and unistd.h if available. + Include xalloc.h. + (xmalloc, xstrdup, free): Remove decls. + (xgetcwd): Don't assume sizes fit in unsigned. + Check for overflow when computing sizes. + Simplify reallocation code. + +2001-08-31 Paul Eggert + + * lib/savedir.c (savedir): Remove size parameter, as POSIX says that + a directory's st_size can have an arbitrary value, so the old + usage could waste an arbitrary amount of memory. All uses + changed. + * lib/savedir.h: Update prototype. + +2001-08-31 Paul Eggert + + * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c. + + * lib/strtoimax.c: Renamed from strtoxmax.c, removing the + old strtoimax.c. + + Also, make the following further changes to make this file's + configuration more similar to that of strtol.c: + (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED. All uses changed. + (strtoumax, uintmax_t, strtoull, strtol): Remove. + (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED. + (strtoimax): Renamed from strtoumax. All uses of unsigned values + changed to signed values. + + And make the following changes as well: + Fix copyright notice, as 1999 was missing. + (verify): New macro. + (strtoimax): Check sizes at compile-time, not run-time. + Prefer strtol to strtoll if both work. + (main): Remove; it was not that useful and was a pain to maintain. + + * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c. + +2001-08-31 Jim Meyering + + * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication. + Use an initial, malloc'd, buffer of length 128 rather than + a statically allocated one of length 1024. + +2001-08-30 Paul Eggert + + Simplify code, partly by assuming autoconf 2.52 semantics. + + * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4. + + * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52. + (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52. + All uses removed. + (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T): + Move AC_REQUIRE to next-to-top level, to avoid confusion. + Use 2.52's AC_CHECK_TYPE instead of merely looking for the header. + * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require + jm_AC_HEADER_INTTYPES_H. + * m4/jm-macros.m4 (jm_MACROS): Likewise. + + * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4. + + * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): + Quote first arg of AC_DEFUN. + Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG + since they are needed to parse the include file even if we need + only xstrtoimax. Simplify logic behind the args to AC_REPLACE. + * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise, + but with opposite signedness. + +2001-08-30 Paul Eggert + + Merge 'exclude' changes from tar 1.13.22. + This fixes one or two unlikely storage allocation overflow bugs, + but doesn't change user-visible behavior otherwise. + +2001-08-30 Paul Eggert + + * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE. + (jm_PREREQ_EXCLUDE): New macro. + +2001-08-30 Paul Eggert + + * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct + tm to be declared. + +2001-08-30 Paul Eggert + + * lib/hash.c: Remove '2001' from copyright notice. + +2001-08-30 Paul Eggert + + * lib/full-write.h: New file. + * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h. + * lib/full-write.c: Correct credits, as cccp.c no longer + exists and anyway it was so heavily changed from the old cccp + code as to be unrecognizable. Include full-write.h. + (full_write) Return size_t, with short writes meaning failure. + All callers changed. This fixes a bug with large buffers + on 64-bit hosts. + * lib/utime.c: Include full-write.h. + +2001-08-30 Paul Eggert + + * lib/exclude.c (bool): Declare, perhaps by including stdbool.h. + (): Include only if HAVE_SYS_TYPES_H. + (, , , , ): + Include if available. + (): Include + (SIZE_MAX): Define if or doesn't. + (verify): New macro. Use it to verify that EXCLUDE macros do not + collide with FNM macros. + (struct patopts): New struct. + (struct exclude): Use it, as exclude patterns now come with options. + (new_exclude): Support above changes. + (new_exclude, add_exclude_file): + Initial size must now be a power of two to simplify overflow checking. + (free_exclude, fnmatch_no_wildcards): New function. + (excluded_filename): No longer requires options arg, as the options + are determined by add_exclude. Now returns bool, not int. + (excluded_filename, add_exclude): + Add support for the fancy new exclusion options. + (add_exclude, add_exclude_file): Now takes int options arg. + Check for arithmetic overflow when computing sizes. + (add_exclude_file): xrealloc might modify errno, so don't + realloc until after errno might be used. + + * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS): + New macros. + (free_exclude): New decl. + (add_exclude, add_exclude_file): Now takes int options arg. + (excluded_filename): No longer requires options arg, as the options + are determined by add_exclude. Now returns bool, not int. + +2001-08-30 Paul Eggert + + * lib/alloca.c (alloca): Arg is of type size_t, not unsigned. + +2001-08-27 Jim Meyering + + * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c + + * lib/version-etc.c (N_): Remove definition. + Revert most of last change. + Instead, simply don't mark the `Copyright...' string for translation. + Based on advice from Paul Eggert. + + * lib/strtoxmax.c: Tweak comment. + +2001-08-26 Jim Meyering + + * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX. + + * m4/xstrtoimax.m4: New file. + * m4/xstrtoumax.m4: Add comments explaining why we + AC_REPLACE_FUNCS(strtol). + +2001-08-26 Jim Meyering + + * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year + of copyright with `%s' so translators don't get an untranslated + message in 2002. + (COPYRIGHT_YEAR): Define. + (version_etc): Use fprintf rather than fputs. + Suggestion from Ulrich Drepper. + + * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c. + + * lib/strtoll.c: New file, from GNU libc. + * lib/xstrtoimax.c: New file. + + * lib/xstrtol.h: Add xstrtoimax. + * lib/strtoumax.c: New file. Simply include "strtoumax.c". + * lib/strtoimax.c: New file. Likewise, but first define + STRTOUXMAX_SIGNED. + + * lib/strtoumax.c: Factor to work both for unsigned and signed types, + ... + * lib/strtoxmax.c: ... then renamed to this. + +2001-08-18 Paul Eggert + + * m4/inttypes.m4: Add AC_PREREQ(2.13). + (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too. + (jm_AC_TYPE_INTMAX_T): New macro. + (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4. + + * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro. + + * m4/longlong.m4: Renamed from ulonglong.m4. + * m4/inttypes.m4: Renamed from inttypes_h.m4. + * m4/uintmax_t.m4: Removed. + +2001-08-13 Paul Eggert + + * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice. + Port to Solaris 8, where 'sed' requires a space after the 'r' + command, and where sh dislikes "$/". Clean up the spacing a bit. + Redirect output to $tmp just once. + +2001-08-12 Paul Eggert + + * lib/addext.c (): Include. + (errno): Declare if not defined. + (addext): Work correctly when pathconf returns -1 and leaves + errno alone because there is no limit. Also, work even if + pathconf returns a value greater than SIZE_MAX. + +2001-08-12 Jim Meyering + + * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4, + d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4, + fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4, + group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4, + jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4, + link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4, + mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4, + prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4, + rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, + strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4, + utime.m4, utimes.m4, xstrtoumax.m4: + Quote the first argument in each use of AC_DEFUN. + +2001-08-12 Jim Meyering + + * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]: + Simply `return getcwd (NULL, 0);'. + [! (defined __GLIBC__ && __GLIBC__ >= 2)]: + Use 1300 as initial value for length, not PATH_MAX. + + * lib/pathmax.h: Clean up cpp syntax. + +2001-08-12 Jim Meyering + + * lib/gettimeofday.c: New file. + * lib/gtod.h: New file. + * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h. + +2001-08-05 Jim Meyering + + * m4/jm-macros.m4: Require autoconf-2.52. + +2001-08-04 Jim Meyering + + * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if + stmt, to get in sync with glibc. + +2001-08-03 Paul Eggert + + The following changes are from gettext 0.10.39 as maintained by + Bruno Haible. + + * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID): + Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID + with inverted sense. All uses changed. + + * lib/mbswidth.c: Don't include . + Include and unconditionally. + (iswcntrl, mbsinit, ISCNTRL): New macros. + (mbsnwidth): Use K&R style function declarations. + Don't bother checking for MB_LEN_MAX == 1, since the compiler + can optimize it when MB_CUR_MAX == 1. + The width of control characters is zero, not 1. + +2001-08-03 Paul Eggert + + The following changes are from gettext 0.10.39 as maintained by + Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ. + + * m4/codeset.m4: Upgrade to serial AM1. + (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET; + all uses changed. Quote first arg of AC_DEFUN. + (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset. + + * m4/iconv.m4: Upgrade to serial AM2. + (AM_ICONV): Renamed from jm_ICONV; all uses changed. + Add --with-libconv-prefix. + Quote first arg of AC_DEFUN. Add description for ICONV_CONST. + (am_cv_func_iconv): Renamed from jm_cv_func_iconv. + (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv. + (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv. + * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings. + + * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN. + * m4/getline.m4 (AM_FUNC_GETLINE): Likewise. + * m4/glibc21.m4 (jm_GLIBC21): Likewise. + * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise. + * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise. + * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise. + * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise. + * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise. + * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise. + + * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for + string.h any more. + + * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no", + not the default value. + + 2001-06-25 Bruno Haible + * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES. + Also check for mbsinit. Needed for SCO 3.2v5.0.2. + Also include ; this is where AIX 3.2.5 declares wcwidth. + Also check for iswcntrl, used for wcwidth fallback. + Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability + to Autoconf 2.13. + +2001-08-03 Jim Meyering + + * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include', + as it was in the original. Reported by Paul Eggert. + +2001-07-16 Jim Meyering + + * m4/gettimeofday.m4: New file. + Prompted by a report from Bernhard Baehr. + +2001-07-15 Jim Meyering + + * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h + stuff. Now it's in ../Makefile.cfg. + +2001-07-15 Jim Meyering + + * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin. + (BUILT_SOURCES): Add unlocked-io.h. + (io_functions): Define. + (unlocked-io.h): New rule. + (DISTCLEANFILES): Add unlocked-io.h. + (all-local): Depend on unlocked-io.h, to ensure it is created. + + * lib/unlocked-io.hin: New file + + * lib/regex.c: Update from glibc. + +2001-07-05 Jim Meyering + + * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake + recommendation. + (libfetish_a_SOURCES): Put all .h files here instead. + Remove a thus-exposed (better checks in automake) duplicate and + two unnecessary .h files. + +2001-07-04 Jim Meyering + + * m4/Makefile.am.in (glibc-io.struct): New target. Rework the code + that generates jm-glibc-io.m4 so that it doesn't trigger any make + distcheck failure. + +2001-07-02 Jim Meyering + + The following changes were prompted by suggestions from Bruno Haible. + + * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4 + is now generated. + * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted + definition of EXTRA_DIST. + (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to + ensure that the generated file is created/updated whenever the list + of $(unlocked_functions) is changed. + (jm-glibc-io.m4): New rule. + (unlocked-io.h): New rule -- currently unused. + +2001-06-24 Jim Meyering + + * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an + unmatched right bracket, rather than kludging it with an extra, + falsely-matching quote in a comment. Patch by Akim Demaille. + +2001-06-11 Jim Meyering + + * lib/regex.c: Update from GNU libc. + +2001-05-27 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx. + Check for ut_type in struct utmp. + +2001-05-27 Jim Meyering + + * lib/readutmp.h (UT_TYPE): Define. + +2001-05-24 Jim Meyering + + * lib/argmatch.c: Include "quote.h". + (argmatch_invalid): Remove explicit `' quotes. Instead, use the + quote function. Reported by Göran Uddeborg. + +2001-05-22 Jim Meyering + + * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime), + now that we use the package-supplied version unconditionally. + (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason. + +2001-05-21 Jim Meyering + + * m4/regex.m4: Change a couple backticks to single quotes to avoid + shell syntax errors. + +2001-05-21 Alexandre Duret-Lutz + + * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__. + +2001-05-20 Paul Eggert + + * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): + Don't bother to check library strftime, since + we'll be using our own my_strftime function anyway. + Define my_strftime instead of strftime. + +2001-05-20 Alexandre Duret-Lutz + + * lib/dirname.c (dir_name): Compute append_dot using path, not newpath + which is not yet declared. + +2001-05-15 Jim Meyering + + * m4/regex.m4: Use proper quoting so brackets appear in the test + program. + Reported by, and with help from, Bruno Haible. + +2001-05-13 Jim Meyering + + * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if + undefined. + +2001-05-11 Paul Eggert + + dirname code cleanup. base_name now behaves more compatibly + with POSIX basename when given file names that have trailing + slashes, and similarly for dir_name. Add new primitives + base_len and dir_len. Put the directory-name-related decls + into dirname.h. + + * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h. + * lib/backupfile.c (base_name): Likewise. + * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise. + * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise. + * lib/makepath.c (strip_trailing_slashes): Likewise. + * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN, + ISSLASH): Likewise. + * lib/rename.c (strip_trailing_slashes): Likewise. + * lib/same.c (base_name): Likewise. + * lib/stripslash.c (ISSLASH): Likewise. + + * lib/addext.c: Include after size_t is defined. + * lib/backupfile.c: Likewise. + + * lib/addext.c (addext): Use base_len to trim redundant + trailing slashes instead of doing it ourselves. + But do not trim the last slash if it is not redundant. + + * lib/backupfile.c (find_backup_file_name, + max_backup_version): Use base_len instead of rolling it ourselves. + Handle the case of "" and (on DOS) "C:" correctly. + + * lib/basename.c: Do not include , ; no longer + needed. Include , . + (base_name): Allow file names ending in slashes, other than names + that are all slashes. In this case, return the basename followed + by the slashes. This is more general, and can be used in places + where the original base_name purposely had an assertion failure. + (base_len): New function. + + * lib/dirname.c: Include instead of . + Do not include ; no longer needed. + Include xalloc.h. + (memrchr): Remove decl. + (dir_name_r): Remove. + (dir_len): Renamed from dirlen. All callers changed. + Rewrite in terms of base_name, for simplicity and consistency. + (dir_name): Never return NULL. All callers changed. + Do not include in test program; no longer needed. + return 0; is fine for test program. + + * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN): + New macros. + (base_name, base_len, dir_len, strip_trailing_slashes): New decls. + + * lib/path-concat.c (path_concat): Use base_len to compute + base length, not strlen; this means we cannot rely on memcpy + to null-terminate. + + * lib/same.c (STREQ): Remove. + (same_name): Handle the case where the basename ends in trailing '/'. + + * lib/stripslash.c (strip_trailing_slashes): Return nonzero if + a slash was stripped. Do not strip the last slash after a + file system prefix. + +2001-05-11 Paul Eggert + + * lib/Makefile.am (libfetish_a_SOURCES): + Add strftime.c, since we now compile it on all hosts. + + * lib/strftime.c (my_strftime): + Define to nstrftime if emacs, but only if my_strftime is not defined. + (extra_args, extra_args_spec, extra_args_spec_iso): Rename from + ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively. + Add one more extra argument: a nanoseconds value. + All uses changed. + (ns): New macro. + (my_strftime function): Add %N format. + (emacs_strftimeu): Renamed from emacs_strftime, + with extra ut argument. + +2001-05-09 Paul Eggert + + * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used. + +2001-04-21 Jim Meyering + + * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask + doesn't interfere. + +2001-04-21 Alexandre Duret-Lutz + + * m4/ftruncate.m4: Check for chsize. + Link with ftruncate.o unconditionally if ftruncate is missing. + This was required when cross-compiling to i586-mingw32msvc. + +2001-04-08 Jim Meyering + + * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is + recomputed; that's necessary when the offset spans a DST transition. + Patch by David J. MacKenzie. Reported by Hon-Yin Kok. + +2001-04-02 Jim Meyering + + * lib/regex.h, regex.c: Update from GNU libc. + +2001-03-24 Jim Meyering + + * m4/jm-macros.m4: Require autoconf-2.49d. + +2001-03-20 Bruno Haible + + * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv. + +2001-03-19 Paul Eggert + + * lib/version-etc.c (version_etc_copyright): Update to 2001. + +2001-03-17 Jim Meyering + + * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP, + now that the version in autoconf is equivalent. + (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP. + + * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R. + Suggestion from Akim Demaille. + + * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME. + (jm_PREREQ_TEMPNAME): New function. + +2001-03-16 Paul Eggert + + * lib/tempname.c (uint64_t): Define to uintmax_t if + not defined, and if UINT64_MAX is not defined. + Required at least for Vax Ultrix4.3, which doesn't define uint64_t. + Reported by John David Anglin. + +2001-03-15 Bruno Haible + + * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also + resolve alias if codeset is empty. + * lib/config.charset (BeOS): Use wildcard syntax. + +2001-03-13 Jim Meyering + + * lib/path-concat.c (path_concat) + [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when + concatenating e.g., `C:' and `foo'. + From Bruno Haible. + +2001-03-06 Bruno Haible + + * lib/localcharset.c (locale_charset): Don't use + setlocale(LC_CTYPE,NULL). Don't return NULL. + * lib/unicodeio.c (print_unicode_char): Simplify accordingly. + +2001-03-06 Bruno Haible + + * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add + support for DOS/DJGPP. + +2001-03-01 Paul Eggert + + * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system + lacks mkstemp. Compile our own tempname.c if we compile our own + mkstemp.c, as mkstemp relies on tempname. + +2001-03-01 Jim Meyering + + * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that + AH_VERBATIM really does output its argument verbatim. + +2001-02-28 Paul Eggert + + * lib/Makefile.am (libfetish_a_SOURCES): + Add dup-safer.c, fopen-safer.c. + (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h. + + * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h: + * lib/unistd-safer.h: New files. + +2001-02-25 Paul Eggert + + The mkstemp replacement is taken from glibc 2.2.2, with some + portability fixes for use outside glibc, as follows: + + * lib/tempname.c (struct_stat64): New macro. + (direxists, __gen_tempname): Use it. + This avoids a portability problem with Solaris 8. + + * lib/tempname.c (): Include if HAVE_CONFIG_H. + (, , ): + Include only if STDC_HEADERS || _LIBC. + (): Include only if HAVE_FCNTL_H || _LIBC. + (): Include only if HAVE_UNISTD_H || _LIBC. + (): Include only if HAVE_SYS_TIME_H || _LIBC. + (__set_errno): Define this macro if doesn't. + (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE): + Define these macros if doesn't. + (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR): + Define these macros if + doesn't. Ignore S_ISDIR if STAT_MACROS_BROKEN. + (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64, + __xstat64): Define if not _LIBC. + (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC). + (__gen_tempname): Invoke gettimeofday only if + HAVE_GETTIMEOFDAY || _LIBC; + otherwise, fall back on plain "time". + Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600. + + * lib/mkstemp.c (__GT_FILE): Define to zero if not defined. + + * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2. + +2001-02-18 Paul Eggert + + * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h. + +2001-02-17 Paul Eggert + + * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC. + * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): + Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc). + * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise. + +2001-02-17 Paul Eggert + + * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit): + Remove workaround macros for hosts that have mbrtowc but not + mbstate_t, as we now insist on proper declarations for both + before using mbrtowc. + +2001-02-17 Jim Meyering + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for + getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt + further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on + UnixWare 7.1.1. + + * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc., + rather than AC_CACHE_VAL. + +2001-02-17 Jim Meyering + + * lib/strtoul.c: Sync from GNU libc. Use double quotes, not <...> + around included file name. + + * lib/strnlen.c (__strnlen): Merge in a change from GNU libc. + + * lib/strftime.c: Update from GNU libc (the only changes were to + comments). + +2001-02-17 Jim Meyering + + * lib/regex.c: Update from libc. + +2001-02-17 Bruno Haible + + * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype + clash. + +2001-02-16 Paul Eggert + + * lib/alloca.c (malloc): Undef before defining, since stdlib.h + may have defined it. Needed for Encore Umax-3.0.9.16b systems. + Reported by Mark Hounschell via Paul Eggert. + +2001-02-07 Jim Meyering + + * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug. + +2001-02-05 Jim Meyering + + * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because + it includes the patch required for `large file' support with at least + HP-UX's 10.20 /bin/cc. + +2001-02-03 Jim Meyering + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of + AS_IF, now that it works once again (mysteriously). + * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise. + +2001-01-30 Jim Meyering + + Don't use filenames that are 8.3-equivalent to "conftest" on DOS. + * m4/chown.m4: Rename conftestchown to conftest.chown. + * m4/rename.m4: s/conftestdir/conftest.d1/ and + s/conftestdir2/conftest.d2/. + * m4/utimes.m4: s/conftestdata/conftest.data/ + Inspired by Pavel Roskin's change in autoconf. + +2001-01-30 Bruno Haible + + * lib/config.charset: Update for FreeBSD 4.2. + +2001-01-27 Jim Meyering + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was + a use of AS_IF. + * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise. + +2001-01-26 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that + quotearg.c includes it. + +2001-01-26 Jim Meyering + + * lib/quotearg.c: Include stddef.h. + * lib/quote.c: Include stddef.h. + Reported by Axel Kittenberger. + + * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking + line in double quotes so that it evokes a better diagnostic. + [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise. + Reported by Axel Kittenberger. + +2001-01-24 Stefan Monnier + + * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not' + as if it was a `charset'. + +2001-01-21 Bruno Haible + + * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration + has const. + +2001-01-21 Bruno Haible + + * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg, + to avoid a warning. Add back 'const' to inptr. + +2001-01-20 Jim Meyering + + Be sure that headers are checked before used in code compiled + for the type checks. + * m4/jm-macros.m4 (jm_MACROS): Remove all header checks. + In place of that, invoke jm_CHECK_ALL_TYPES. + (jm_CHECK_ALL_HEADERS): New functions with the above checks. + (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS. + Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES; + The check for ssize_t was mistakenly run before the test for unistd.h. + + The configure-time check for stdbool.h was missing. + * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH. + (jm_PREREQ_HASH): New function. + +2001-01-17 Jim Meyering + + * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE, + for autoconf-2.49c. + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise. + +2001-01-16 Jim Meyering + + * lib/basename.c: Include , needed by assert on SunOS 4. + From Bruno Haible. + +2001-01-14 Jim Meyering + + * m4/rename.m4: Use temporary directories named conftestdir{,2}, not + foo and bar. Create conftestdir/ in the script, not in the C code. + Remove directories in the script, not in the C code. + Remove conftestdir{,2} before trying to create the directory. + Make the entire configure script fail if the mkdir fails. + +2001-01-14 Jim Meyering + + * lib/rename.c: New file. From Volker Borchert. + Include stdlib.h, string.h or strings.h, and xalloc.h. + Use strip_trailing_slashes rather than open-coding it. + +2001-01-03 Paul Eggert + + * lib/strftime.c: Sync with glibc time/strftime.c 1.81. + +2001-01-03 Jim Meyering + + * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration + of local `inptr' to avoid warning with some system declarations of + iconv. + +2001-01-02 Volker Borchert + + * m4/rename.m4: New file. + * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME. + +2001-01-01 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available), + even on systems with utmpx.h. It's necessary for the declaration of + utmp's ut_user member. Reported by Andreas Jaeger. + + * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if + available. They are required for the declarations of getgrgid and + getpwuid resp. + (_jm_DECL_HEADERS): Check for grp.h and pwd.h. + Reported by Andreas Jaeger. + +2001-01-01 Alexandre Duret-Lutz + + * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by + expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN, + so `make install' also works in VPATH builds. + +2000-12-31 Alexandre Duret-Lutz + + * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR, + prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it + can be used in subdirectories. + +2000-12-29 Paul Eggert + + * lib/modechange.c: Do not assume that mode_t uses the + traditional octal encoding. E.g. "chmod 1 FOO" should set + the other-execute bit of FOO even if S_IXOTH != 1. + + (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH, + WOTH, XOTH, ALLM): New macros. + (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR, + S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH): + Use them. + (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID. + (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above. + (mode_compile): + No need to use uintmax_t; unsigned long is long enough. + Don't bother to get suffix since we don't use it. + +2000-12-26 Jim Meyering + + * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work + better with autoheader. + +2000-12-24 Jim Meyering + + * lib/hash.c (is_prime): Return explicit boolean values. + (hash_get_first): Return NULL to appease Irix5.6's 89. + Reported by Nelson Beebe. + +2000-12-19 Bruno Haible + + * lib/localcharset.c (locale_charset): Add support for Win32. + +2000-12-18 Paul Eggert + + * lib/physmem.h, lib/physmem.c: New files. + + * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c. + (noinst_HEADERS): Add physmem.h. + + * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and + 't' for compatibility with Solaris 8 sort. + +2000-12-18 Bruno Haible + + * lib/config.charset: Add support for BeOS. + +2000-12-17 Jim Meyering + + * m4/dos.m4 (jm_AC_DOS): New file and macro. + * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS. + +2000-12-16 Jim Meyering + + This bug had a serious impact on chown: `chown N:M FILE' (for integer + N and M) would have treated it like `chown N:N FILE'. + + * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/. + +2000-12-16 Jim Meyering + + * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define + SHELLS_FILE to a file name that's useful on djgpp systems. + Include stdlib.h. + (ADDITIONAL_DEFAULT_SHELLS): Define. + (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS. + Based mostly on a patch from Prashant TR. + +2000-12-16 Bruno Haible + + * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB, + VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256, + CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312. + +2000-12-08 Andreas Schwab + + * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an + invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set. + +2000-12-07 Jim Meyering + + * lib/stripslash.c (ISSLASH): Define. + (strip_trailing_slashes): Use ISSLASH rather than comparing against + `/'. + From Prashant TR. + + * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define. + (dir_name_r): Declare this function as static. + [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd + manifest itself on a name containing a mix of slashes and + backslashes. + Make this function work with names starting with a DOS-style + drive letter and colon prefix. + (dir_name): Append `.' if necessary. + Based mostly on patches from Prashant TR and Eli Zaretskii. + + * lib/dirname.h (dir_name_r): Remove prototype. + +2000-12-06 Paul Eggert + + * m4/off_t-format.m4: Remove this file. + * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT. + +2000-12-06 Jim Meyering + + * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the + replacement strtoull, we may well need the replacement strtoul, too. + Check for declarations of strtoul and strtoull. + Check for strtol. Mainly as a cue to cause automake to include + strtol.c -- that file is included by each of strtoul.c and strtoull.c. + Check for limits.h -- strtol.c needs it. + +2000-12-05 Jim Meyering + + * lib/dirname.c (dir_name_r): Add `const' in a few local declarations. + +2000-12-04 Jim Meyering + + * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc. + Also include memory.h, stdlib.h, unistd.h if appropriate. + Reported by Andreas Jaeger (conflicting declaration of malloc). + +2000-12-02 Jim Meyering + + * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro. + * m4/jm-macros.m4 (jm_MACROS): require it. + +2000-12-02 Jim Meyering + + * lib/closeout.h: Make idempotent, to avoid some obscure warnings. + +2000-12-01 Paul Eggert + + * lib/memrchr.c: Include before any system include file. + +2000-11-30 Jim Meyering + + * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h. + +2000-11-30 Jim Meyering + + * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf. + +2000-11-29 Paul Eggert + + * lib/dirname.c (dir_name_r): Fix typo: int -> size_t. + +2000-11-26 Jim Meyering + + * lib/memcoll.c: Include sys/types.h. From Werner Almesberger. + +2000-11-22 Paul Eggert + + * lib/strftime.c (my_strftime): Do not invoke mbrlen with a + size of (size_t) -1; it's not portable. + +2000-11-17 Jim Meyering + + * lib/strstr.c: Update from GNU libc. + +2000-11-17 Akim Demaille + + * lib/obstack.h: Formatting changes. + (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would + prevent type checking. + (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't + cast the value to (void *): assigning a `foo *' to a `void *' + variable is valid. + (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int. + +2000-11-16 Jim Meyering + + * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc. + +2000-11-11 Jim Meyering + + * lib/error.c: Add a couple #includes, merging from GNU libc version. + +2000-11-10 Jim Meyering + + * lib/obstack.h: Update from GNU libc. + * lib/obstack.c: Likewise. + +2000-11-08 Bruno Haible + + * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb. + +2000-11-06 Paul Eggert + + * lib/getusershell.c (setusershell): Use rewind rather than + fseek/fseeko, to avoid configuration hassles with fseeko. + Don't bother opening SHELLS_FILE if shellstream is NULL; + it's not necessary. + +2000-11-05 Jim Meyering + + * lib/makepath.h (make_dir): Declare. + * lib/makepath.c (make_dir): Remove `static' attribute. + Tweak a comment. + +2000-11-04 Jim Meyering + + * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'. + +2000-11-04 Alexandre Duret-Lutz + + * lib/hash.c (hash_get_next): Fix a thinko: when ENTRY is the + last one in a bucket, advance to the next bucket. + +2000-11-02 Vesselin Atanasov + + * lib/fnmatch.c: Do not comment out all the code if we are using + the GNU C library, because in some cases we are replacing buggy + code in the GNU C library itself. + +2000-10-30 Stefan Monnier + + * regex.c (re_iswctype, re_wctype_to_bit): Fix braino. + (regex_compile): Catch bogus \(\1\). + +2000-10-30 Paul Eggert + + * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned. + (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs, + e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero. + +2000-10-30 Paul Eggert + + * lib/error.h, getline.h, modechange.h: + Remove "2000" from Copyright line, as the file hasn't been + changed this year other than in the copyright notice. + + * lib/xalloc.h: Add "2000" to Copyright line, as this file + was changed this year. + +2000-10-29 Jim Meyering + + * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf + renaming. + * m4/ls-mntd-fs.m4: Likewise + +2000-10-29 Jim Meyering + + * lib/xstat.in: Fix grammar in comment. + +2000-10-29 Greg Louis + + * lib/regex.h (__restrict_arr): Move definition out of #ifndef block. + Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but + doesn't define __restrict_arr. + +2000-10-28 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR. + (jm_PREREQ_MEMCHR): New function. + +2000-10-28 Jim Meyering + + * lib/memchr.c: Update from libc. + Adjust for portability: + [HAVE_STDLIB_H]: Include stdlib.h. + [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h. + Undef __memchr, too. + [!weak_alias]: Define __memchr to memchr. + + * lib/regex.c: Update from libc. + * lib/regex.h: Likewise. + * lib/getopt1.c: Likewise. + * lib/memcmp.c: Likewise. + + * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko. + Avoid using fseek, when possible -- it's broken by design. + Patch by Ulrich Drepper. + +2000-10-27 Stefan Monnier + + * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal) + (re_match_2_internal, re_match_2_internal, re_match_2_internal): + Giving in to popular pressure to shut up the compiler with casts. + +2000-10-26 Jim Meyering + + * lib/strftime.c: Update from libc. + +2000-10-25 Stefan Monnier + + * regex.c: More `unsigned char' -> `re_char' changes. + Also change several `int' into `re_wchar_t'. + (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove. + (PUSH_FAILURE_POINTER): Don't cast any more. + (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'. + We want GCC to complain, since this piece of code makes + re_match non-reentrant, which *should* be fixed. + (GET_BUFFER_SPACE): Use size_t rather than unsigned long. + (EXTEND_BUFFER): Use RETALLOC. + (SET_LIST_BIT): Don't cast. + (re_wchar_t): New type. + (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC + that those two functions will always properly return. + (IMMEDIATE_QUIT_CHECK): Cast to void. + (analyse_first): Use recursion rather than an explicit stack. + (re_compile_fastmap): Can't fail anymore. + (re_search_2): Don't check re_compile_fastmap for failure. + (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT. + Now also sets the new value (passed in a new argument). + (re_match_2_internal): Use it. + Also, use a new var `reg' of type size_t when looping through regs + rather than reuse the inappropriate `mcnt'. + +2000-10-25 Jim Meyering + + * lib/obstack.c: Update from libc. + +2000-10-24 Kenichi Handa + + * regex.c (regex_compile): Change the way of handling a range from + a char less than 256 to a char not less than 256. + +2000-10-24 Andrew Innes + + * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on + NT-Emacs only. + (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT, + so that re_search functions only quit when callers expect them to. + +2000-10-23 Jim Meyering + + * lib/hard-locale.c (hard_locale): Revert last change -- it was simply + wrong. That set_locale call must not have any side effects. + From Paul Eggert. + +2000-10-22 Jim Meyering + + * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC. + [CYCLIC]: Remove now-unused definition. + + * lib/save-cwd.c (O_DIRECTORY): Define, if needed. + (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".". + Suggestion from Ulrich Drepper. + +2000-10-21 Jim Meyering + + * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr. + * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro. + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr. + +2000-10-21 Jim Meyering + + * lib/dirname.c (memrchr): Declare if necessary. + (dir_name): Remove the restriction that there be no + trailing slashes. Now, this code skips past them, effectively + ignoring them. + [TEST_DIRNAME] (main): New unit tests. + + * lib/memrchr.c: New file from GNU libc. + Undef __memrchr, too. + [!weak_alias]: Define __memrchr to memrchr. + Guard weak_alias use with `#ifdef weak_alias'. + +2000-10-21 Jim Meyering + + * lib/dirname.c (dir_name_r): New function, factored out of dir_name. + (dir_name): Use dir_name_r. + * lib/dirname.h (dir_name_r): Declare it. + +2000-10-17 Jim Meyering + + * lib/quote.h (PARAMS): Define and use. + Reported by Akim Demaille. + + * lib/getopt.c: Update from libc. + +2000-10-16 Jim Meyering + + * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to + setlocale. + From Jan Fedak. + +2000-10-15 Stefan Monnier + + * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well. + +2000-09-25 Jim Meyering + + * lib/md5.h (rol): Define (from GnuPG). + + * lib/sha.c: Give credit (GnuPG) where due. + (M): Use rol rather than open-coding it. + Add a FIXME comment. + +2000-09-21 Jim Meyering + + * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added. + Reported by Michael Stone. + +2000-09-20 Jim Meyering + + * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c. + (noinst_HEADERS): Add sha.h. + Based on code from Scott G. Miller and from GnuPG. + +2000-09-18 Jim Meyering + + * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of + LIBS. Otherwise, everyone ends up linking with -lelf for some + configurations. + Reported by Mike Stone. + +2000-09-15 Jim Meyering + + * lib/regex.c: Update from libc. + +2000-09-10 Jim Meyering + + * lib/getopt.c (_getopt_internal): Update from glibc. + +2000-09-09 Jim Meyering + + * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't + think it should be used as a general replacement for isascii. + * lib/fnmatch.c: Likewise. + * lib/mbswidth.c: Likewise + * lib/regex.c: Likewise. + + Don't use atoi. + * lib/userspec.c: Include sys/param.h and limits.h. + Include xstrtol.h. + (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define. + (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define. + (parse_user_spec): Use xstrtoul, not atoi when converting numeric + UID, GID. Check range. + +2000-09-06 Jim Meyering + + * lib/getopt.c (_getopt_internal): Update from glibc. + +2000-08-30 Jim Meyering + + * lib/strftime.c: Merge in changes from GNU libc. + +2000-08-26 Jim Meyering + + * m4/jm-macros.m4: Use jm_FUNC_FPENDING. + * m4/fpending.m4: New file. + +2000-08-26 Jim Meyering + + * lib/closeout.c: Include "__fpending.h". + (close_stdout_status): Return right away if there's nothing to flush. + + * lib/Makefile.am (noinst_HEADERS): Add __fpending.h. + * lib/__fpending.c: New file. + * lib/__fpending.h: New file. + +2000-08-20 Jim Meyering + + * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than + `#if !HAVE_UTMPX_H'. The latter would lose on systems with neither + utmp.h nor utmpx.h. Reported by Eli Zaretskii. + +2000-08-11 J. David Anglin + + Improve fileutils installation on systems where running + programs (like install) can't be unlinked. + * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro. + * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT. + +2000-08-07 Paul Eggert + + Standardize on "memory exhausted" instead of "Memory exhausted" + or "virtual memory exhausted". + * lib/obstack.c (print_and_abort): Use "memory exhausted", not + "virtual memory exhausted". + * lib/same.c (same_name): Invoke xalloc_die instead of printing + our own message. + * lib/userspec.c (parse_user_spec): Likewise. + * lib/bumpalloc.h: comment fix + * lib/same.c, userspec.c: Include xalloc.h. + + * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[], + not char *const and pointing to a constant array. + * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise. + (xrealloc): Comment fix. + + * lib/userspec.c (parse_user_spec): + Don't translate a message until just before returning, + to avoid unnecessary translation. + +2000-08-07 Jim Meyering + + * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h, + chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c, + fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h, + getgroups.c, gethostname.c, getopt.h, group-member.c, + hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c, + linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c, + memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h, + pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c, + stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c, + strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c, + utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c, + yesno.c: Back out Copyright date changes for each file with no change + this year. This eases coordination with other programs using the same + source code modules. From Paul Eggert. + +2000-08-06 Paul Eggert + + * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int, + not char, for compatibility with glibc 2.1.3 strftime.c. + +2000-08-03 Greg McGary + + * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER, + ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros. + (EXTEND_BUFFER): Use them. + +2000-08-01 Jim Meyering + + * lib/dirname.c (ISSLASH): Define. + (BACKSLASH_IS_PATH_SEPARATOR): Define. + (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which + both `\' and `/' may be use as path separators. + Based on a patch from Prashant TR. + +2000-07-31 Paul Eggert + + * lib/quotearg.c (quotearg_n_options): Don't make the initial + slot vector a constant, since it might get modified. + +2000-07-31 Jim Meyering + + * lib/xmalloc.c: Use `virtual memory exhausted', not + `Memory exhausted'. + * lib/obstack.c (print_and_abort): Likewise. + +2000-07-30 Paul Eggert + + * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0 + buffer, so that the caller can always quote one small + component of a "memory exhausted" message in slot 0. + From a suggestion by Jim Meyering. + +2000-07-30 Jim Meyering + + * lib/makepath.c (make_path): Quote the other instance, too. + + * lib/quotearg.c (N_STATIC_SLOTVECS): Define. + (STATIC_BUF_SIZE): Define. + (quotearg_n_options): Use only statically allocated storage when + N < N_STATIC_SLOTVECS and the length of the quoted result is smaller + than STATIC_BUF_SIZE. + +2000-07-29 Jim Meyering + + * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS. + * lib/dirname.c (dir_name): Likewise. + + * lib/basename.c (base_name): Use ISSLASH rather than comparing against + `/'. + + * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const. + (dir_name): Assert that there are no trailing slashes. + +2000-07-29 Bruno Haible + + * lib/mbswidth.h (mbswidth): Add a flags argument. + (mbswidth): New declaration. + (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros. + * lib/mbswidth.c (mbswidth): Add a flags argument. + (mbsnwidth): New function. + +2000-07-24 Jim Meyering + + * lib/mbswidth.c: Remove useless #else. From Bruno Haible. + +2000-07-23 Paul Eggert + + * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration. + +2000-07-23 Paul Eggert + + * lib/quotearg.c: Streamline by invoking multibyte code only if needed. + : Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX. + (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX). + (quotearg_buffer_restyled): If a unibyte locale, don't bother to + invoke multibyte primitives. + +2000-07-23 Paul Eggert + + * lib/quotearg.c: + Include even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX), + so that mbstate_t is always defined. + + Do not inspect MB_LEN_MAX, since it's incorrectly defined to + be 1 in at least one GCC installation, and this configuration + error is likely to be common. Ignoring MB_LEN_MAX hurts + performance on hosts that have mbrtowc but have only unibyte + locales, but I assume these hosts are rare. + +2000-07-23 Paul Eggert + + * lib/mbswidth.c (_XOPEN_SOURCE): + Don't define; this causes problems on Solaris 7. + (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare. + +2000-07-23 Jim Meyering + + * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these, + too: getgrgid, getpwuid, getuid. + +2000-07-23 Jim Meyering + + * lib/basename.c (base_name): Add an assertion. + +2000-07-23 Bruno Haible + + * lib/quotearg.c: When the system forces us to redefine mbstate_t, + shadow its mbsinit function. + +2000-07-17 Bruno Haible + + * lib/mbswidth.h: New file. + * lib/mbswidth.c: New file. + * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c. + (noinst_HEADERS): Add mbswidth.h. + +2000-07-17 Bruno Haible + + * lib/config.charset: Add support for FreeBSD. Improve support for + HP-UX and IRIX 6. + +2000-07-16 Bruno Haible + + * m4/mbswidth.m4: New file. + * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH. + +2000-07-15 Jim Meyering + + * lib/makepath.c: Include quote.h. + (make_path): Convert "`%s'" in format strings to "%s", and wrap each + corresponding argument in a `quote (...)' call. + Give better diagnostics. + + * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c. + (noinst_HEADERS): Add quote.h. + + * lib/quote.c (quote, quote_n): New file. Two functions taken verbatim + from tar's src/misc.c. + * lib/quote.h: New file. Prototypes for same. + +2000-07-14 Paul Eggert + + From a suggestion by Bruno Haible. + * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition. + Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT, + to decide whether to define the BeOS workaround macro; + this adjusts to the change to AC_MBSTATE_T. + +2000-07-14 Jim Meyering + + * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require + jm_AC_TYPE_UINTMAX_T. + +2000-07-13 Paul Eggert + + * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style. + + * lib/quotearg.c (quoting_style_args, quoting_style_vals, + quotearg_buffer_restyled): Add support for + clocale_quoting_style. Undo previous change to + locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}" + and "{RIGHT QUOTATION MARK}" msgids. + +2000-07-10 Paul Eggert + + From a suggestion by Bruno Haible. + * m4/mbstate_t.m4 (AC_MBSTATE_T): + Renamed from AC_MBSTATE_T_OBJECT. All uses changed. + Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT + and mbstate_t, to a single-part test that simply defines mbstate_t. + * m4/prereq.m4 (jm_PREREQ_QUOTEARG): + s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/. + +2000-07-10 Jim Meyering + + * m4/strerror_r.m4: Mirror the correction made in autoconf. + + * m4/gnu-source.m4: Output to confdefs.h directly. + Suggestion from Akim Demaille. + +2000-07-09 Paul Eggert + + The old behavior of quoting `like this' doesn't look good with + newer, ISO-style fonts. See: + http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html + + Instead, quote "like this" by default. Let the translator + tailor the locale-specific quoting behavior by providing + translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}. + + * lib/quotearg.c (N_): New macro. + (gettext_default): New function. + (quotearg_buffer_restyled): Use + gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and + gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote. + +2000-07-09 Jim Meyering + + * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required + to link seq. If so, set SEQ_LIBM to -lm. From Bruno Haible. + + * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro. + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it. + +2000-07-09 Jim Meyering + + * lib/Most files: Update copyright dates to include 2000. + +2000-07-08 Jim Meyering + + * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value + if not defined. + (xgethostname): Remove now-unnecessary #ifdef. + Move declaration of `err' into loop where it's used. + +2000-07-05 Paul Eggert + and Bruno Haible + + * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t + only if the test for an object-type mbstate_t fails. This + prevents us from mistakenly reporting that mbstate_t is a + system object type after we "#define mbstate_t int" to work + around its lack. + +2000-07-05 Paul Eggert + and Bruno Haible + + * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't. + +2000-07-05 Bruno Haible + + * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer + to strerror_r. + Include for use of isalpha. + +2000-07-05 Bruno Haible + + * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug + by allocating a larger buffer. Test the gethostname return value for + being >= 0, not == 0, for BeOS. Don't exhaust memory if gethostname + returns an error and ENAMETOOLONG isn't defined. + +2000-07-05 Bruno Haible + + * lib/quotearg.c (struct quoting_options): Simplify quote_these_too + dimension. + +2000-07-04 Jim Meyering + + * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead + of the deprecated AC_CHECKING. + +2000-07-04 Jim Meyering + + * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen. + Reported by Bruno Haible. + +2000-07-04 Jim Meyering + + * lib/quotearg.c: Make inclusion of independent of whether + HAVE_MBRTOWC is set. Required at least for irix-5.6, which + lacks mbrtowc. + +2000-07-03 Paul Eggert + + * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13. + Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H. + +2000-07-03 Paul Eggert + and Bruno Haible + + * lib/quotearg.c (mbrtowc): + Assign to *pwc, and return 1 only if result is nonzero. + (iswprint): Use ISPRINT when substituting our own mbrtowc. + +2000-07-03 Jim Meyering + + * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen. + +2000-07-03 Jim Meyering + + * lib/readutmp.h: [HAVE_UTMPX_H]: Include if HAVE_UTMP_H. + This is necessary to get a definition of e.g., UTMP_FILE on + HP-UX 10.20. + From Bob Proulx. + +2000-07-02 Jim Meyering + + * m4/mbstate_t.m4: Also define mbstate_t, if necessary. + + * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with + AC_LIBOBJ(function_name). + * m4/chown.m4: Likewise. + * m4/fnmatch.m4: Likewise. + * m4/ftruncate.m4: Likewise. + * m4/getgroups.m4: Likewise. + * m4/getline.m4: Likewise. + * m4/group-member.m4: Likewise. + * m4/jm-macros.m4: Likewise. + * m4/lstat.m4: Likewise. + * m4/malloc.m4: Likewise. + * m4/memcmp.m4: Likewise. + * m4/nanosleep.m4: Likewise. + * m4/putenv.m4: Likewise. + * m4/realloc.m4: Likewise. + * m4/regex.m4: Likewise. + * m4/stat.m4: Likewise. + * m4/strftime.m4: Likewise. + +2000-07-02 Jim Meyering + + * lib/quotearg.c (mbstate_t): Don't define here. + +2000-07-02 Jim Meyering + + * lib/nanosleep.c (SIGCONT): Define if not already defined. + +2000-07-01 Jim Meyering + + * m4/uptime.m4: Put double quotes around use of $cross_compiling. + +2000-07-01 Jim Meyering + + * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated + problem. + +2000-07-01 Bruno Haible + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific + macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV. + +2000-07-01 Bruno Haible + + * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV, + per change in ../m4/ls-mntd-fs.m4. + (read_filesystem_list): Ignore symbolic links. + +2000-06-29 Jim Meyering + + * lib/same.c: Include or , as appropriate, + for declaration of strcmp. + + * lib/long-options.c: Include , for declaration of exit. + + * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]: + Avoid warning by casting result to `char *' to remove `const'. + +2000-06-28 Jim Meyering + + * m4/mbstate_t.m4: Use stdlib.h, not stdio.h. The latter is not + included by quotearg.c, for which we perform this test. From + Bruno Haible. + +2000-06-27 Bruno Haible + + * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well. + * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either or + exists, put readutmp.o into LIBOBJS. + +2000-06-27 Bruno Haible + + * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c. + +2000-06-26 Paul Eggert + + savedir now sets errno on failure and invokes xmalloc to get memory. + Fix a couple of other minor bugs while we're at it. + + * lib/savedir.c (): Do not include; there's no need. + (NAMLEN): Remove macro. + (malloc, realloc): Remove decls. + (stpcpy): Likewise. + ("xalloc.h"): Include. + (NAME_SIZE_DEFAULT): New macro. + (savedir): Use xmalloc / xrealloc to allocate memory. + Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero. + Skip "" directory entries. + Use strlen to calculate directory entry length, since the old method + is rarely used these days and isn't worth supporting. + Don't use a pointer after freeing it. + Check for integer overflow when calculating allocation size. + Use memcpy to copy entries, instead of stpcpy. + Set errno properly when returning NULL. + Check for readdir error. + +2000-06-26 Jim Meyering + + * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort. + +2000-06-25 Jim Meyering + + * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around + Linux header bug when _XOPEN_SOURCE is defined to 500. + +2000-06-25 Bruno Haible + + * lib/unicodeio.c (print_unicode_char): Work around ansi2knr + deficiency. + +2000-06-25 Bruno Haible + + * lib/getusershell.c (xmalloc, xrealloc): Remove functions. + Include xalloc.h. + Don't include . Don't declare malloc, realloc. + +2000-06-24 Jim Meyering + + * m4/strerror_r.m4: Revive this file -- to try out an experimental + version of AC_FUNC_STRERROR_R that may work even on BeOS, a system + for which strerror does return char*, but which lacks a conveniently + accessible declaration of the function. If the compile-test says + strerror_r doesn't work, then resort to a `run'-test that works on + BeOS and segfaults on DEC Unix. + +2000-06-24 Jim Meyering + + * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r. + +2000-06-23 Paul Eggert + + * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT. + * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it. Add check for iswprint. + +2000-06-23 Paul Eggert + + * lib/quotearg.c: Include after , for Solaris 2.5. + (mbrtowc, mbstate_t): Define substitutes if + HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT. + (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT, + not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H). + +2000-06-23 Jim Meyering + + * m4/afs.m4: Add missing AC_MSG_RESULT. + Reported by Bruno Haible. + + * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/. + Suggestion from Bruno Haible. + +2000-06-23 Jim Meyering + + * lib/getpass.c: New file, from Bruno Haible. Required for BeOS. + +2000-06-21 Jim Meyering + + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass. + +2000-06-21 Jim Meyering + + * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c. + (noinst_HEADERS): Add getstr.h. + + * lib/getline.c (getstr): Move into a separate file. + * lib/getstr.c (getstr): New file, extracted from getline.c, with + the following changes: new parameter, delim2; both delim[12] + parameters have type `int', not `char'. The latter would lose + with 8-bit delimiters. + * lib/getstr.h: New file. + +2000-06-21 Bruno Haible + + * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller + than 1024, return a memory chunk of least possible size, instead + of size PATH_MAX + 2. In the loop, increment the size proportionally. + Use free/xmalloc instead of xrealloc to avoid copying for very long + paths. + +2000-06-21 Bruno Haible + + * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is + the empty string. + +2000-06-21 Bruno Haible + + * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an + address, not strdup. Include and don't declare free(). + +2000-06-19 Jim Meyering + + * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define. + +2000-06-18 Jim Meyering + + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir. + + * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the + `checking whether...' message to be consistent with that of the + lstat test. + +2000-06-18 Jim Meyering + + * lib/mkdir.c: Remove file, due mainly to copyright incompatibility. + Besides, these days every porting target provides a mkdir function. + + * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as + needed. (this snippet comes from src/system.h). + +2000-06-16 Bruno Haible + + * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C. + +2000-06-15 Paul Eggert + + * lib/human.c (adjust_value): New function. + (human_readable_inexact): Apply rounding style even when + printing approximate values. + +2000-06-14 Paul Eggert + + * lib/human.c (human_readable_inexact): Allow an input block + size that is not a multiple of the output block size, and vice versa. + Reported by Piergiorgio Sartor. + +2000-06-14 Paul Eggert + + * lib/getdate.y (get_date): Apply relative times after time + zone indicator, not before. Reported by Todd A. Jacobs. + +2000-06-13 Jim Meyering + + * lib/Makefile.am (all-local): Depend on lstat.c and stat.c. + + * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c. + +2000-06-12 Paul Eggert + + * lib/xstat.in: Include in lstat, to declare "free". + +2000-06-12 Jim Meyering + + * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with + AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an + optional argument. + * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply + the optional argument, `lib'. + +2000-06-08 Jim Meyering + + * m4/largefile.m4: Remove file (now that it's part of autoconf). + +2000-06-04 Paul Eggert + + Rewrite largefile configuration so that we don't need to run + getconf and don't need AC_CANONICAL_HOST. [I'm leaving the use of + AC_CANONICAL_HOST in configure.in -- jmm] + + * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS, + AC_SYS_LARGEFILE_SPACE_APPEND): Remove. + (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro. + (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from + CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY. + All uses changed. + Instead of inspecting the output of getconf, try to compile the + test program without and with the macro definition. + (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check + for getconf. Instead, check for the needed flags by compiling + test programs. + +2000-06-04 Paul Eggert + + * lib/strnlen.c: Include if HAVE_CONFIG_H. + +2000-06-04 Jim Meyering + + * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like + SunOS 4.1.4 for which gid_t is an unsigned type. + +2000-06-03 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS, + now that autoconf requires that. + + * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required + #undefs. E.g., #undef HAVE_DECL_FERROR_UNLOCKED. + Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that. + +2000-06-03 Jim Meyering + + * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr. + +2000-06-03 Bruno Haible + + * m4/glibc21.m4: New file. + * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21. + +2000-06-03 Bruno Haible + + * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or + newer, don't install charset.alias. + * lib/config.charset: Change the Linux/glibc rules so they become empty + on glibc-2.1 or newer. + +2000-06-02 Jim Meyering + + * lib/mountlist.c: Back out last change. Instead, do this... + * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the + me_dummy member using the same `ignore'-testing code. + * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored + fs_type strings. + From Mark D. Roth. + +2000-05-29 Jim Meyering + + * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore + mounts with the `ignore' attribute. Based on a patch from + Mark D. Roth. + +2000-05-28 Jim Meyering + + * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from + jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK. + * m4/stat.m4: Likewise. + * m4/lstat.m4: Likewise. + * m4/lstat-slash.m4: Remove file (absorbed into autoconf). + + * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R. + * m4/strerror_r.m4: Remove file (absorbed into autoconf). + +2000-05-26 Jim Meyering + + * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'. + +2000-05-24 Jim Meyering + + * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that + autoconf requires that. + * m4/lib-check.m4: Likewise. + * m4/jm-macros.m4: Likewise. + * m4/strftime.m4: Likewise. + + * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in + AC_CHECK_DECLS, now that autoconf requires that. + +2000-05-22 Jim Meyering + + * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK. + * m4/lstat.m4: Likewise. + +2000-05-22 Jim Meyering + + * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block. + +2000-05-20 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro. + (jm_PREREQ): Use it. + +2000-05-18 Jim Meyering + + * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list + back, too, since it may have been modified by allocate_entry. + (hash_delete): Rewrite to use neither the assignment operator + nor the comma operator in an if-expression. + +2000-05-15 Paul Eggert + + * lib/closeout.c: + , , , (STDOUT_FILENO): + Remove; no longer needed. + "quotearg.h": Add include. + (file_name): Do not bother to explicitly initialize to NULL; it's less + efficient on some hosts. + (close_stdout_status): Remove test as to whether stdout was already + closed; it breaks for the case "echo x | sort >&-". + Quote file name colons. + Do not assume that _("write error") lacks format strings. + +2000-05-15 Jim Meyering + + * lib/version-etc.c (version_etc_copyright): Update the copyright + string used in all --version output. + +2000-05-14 Jim Meyering + + * lib/closeout.c (close_stdout_set_file_name): New function. + (close_stdout_status): Use new file-scoped global. + Return right away if fstat says the stdout file descriptor is invalid. + * lib/closeout.h (close_stdout_set_file_name): Declare. + +2000-05-10 Jim Meyering + + * lib/closeout.c [default_exit_status]: New file-scoped variable. + (close_stdout_set_status): New function. + * lib/closeout.h (close_stdout_set_status): Declare. + +2000-05-09 Jim Meyering + + * m4/gettext.m4: Rename this... + * m4/libintl.m4: ...to this. + +2000-05-08 Jim Meyering + + * lib/long-options.c: Don't include closeout.h. + (parse_long_options): Don't call close_stdout for --version. + +2000-05-06 Paul Eggert + + * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to + be 500, instead of _GNU_SOURCE to be 1, to work around glibc + 2.1.3 bug. This avoids a clash when files like regex.c define + _GNU_SOURCE. + +2000-05-06 Jim Meyering + + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit. + (AC_REPLACE_FUNCS): Add strnlen. + + * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file. + * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY. + + * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around + AC_SEARCH_LIBS call for nanosleep. + (LIB_NANOSLEEP): Set and AC_SUBST. + +2000-05-06 Jim Meyering + + * lib/strnlen.c: Undefine __strnlen and strnlen. + [!weak_alias]: Define __strnlen to strnlen. + + * lib/atexit.c: New file, from libiberty. + +2000-05-06 Jim Meyering + + * lib/closeout.c (close_stdout_status): Also check for errors on the + stderr stream. + +2000-05-05 Jim Meyering + + * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around + AC_SEARCH_LIBS call for clock_gettime. + (LIB_CLOCK_GETTIME): Set and AC_SUBST. + + * m4/search-libs.m4: Update from autoconf. + + su doesn't work on Solaris 2.6. + * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include + . Reported by Dragos Harabor. + +2000-05-05 Bruno Haible + + * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and + memcpy instead of xmalloc, xrealloc, path_concat. + (locale_charset): Treat empty environment variables as absent. + (DIRECTORY_SEPARATOR, ISSLASH): New macros. + +2000-05-04 Jim Meyering + + * lib/getopt.c: Update from glibc. + * lib/obstack.c: Likewise. + * lib/obstack.h: Likewise. + * lib/regex.c: Likewise. NB: K&R compiler support is dropped for this + file + + * lib/regex.h: Likewise. + * lib/strndup.c: Likewise. + * lib/strnlen.c: New file, from glibc. + +2000-05-03 Jim Meyering + + * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup. + +2000-05-02 Paul Eggert + + * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if + this is needed to make ftello visible (e.g. glibc 2.1.3). Use + compile-time test, rather than inspecting host and OS, to + decide whether to define _LARGEFILE_SOURCE. + +2000-05-01 Jim Meyering + + * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING. + + * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support. + Based on a patch from Bruno Haible. + +2000-05-01 Jim Meyering + + * lib/full-write.c (full_write): Remove `FIXME' part of comment. + +2000-04-29 Jim Meyering + + * lib/path-concat.c: Declare strdup only if it's not defined. + * lib/canon-host.c: Likewise. + +2000-04-28 Jim Meyering + + * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to + avoid redefinition warning on some systems (HPUX). Otherwise, regex.h + is included first, then limits.h is included by locale.h by libintl.h. + From John David Anglin. + +2000-04-25 Jim Meyering + + * lib/makepath.c (S_IRWXUGO): Define. + (make_path): Always perform explicit chmod if MODE specifies any + of the `special' permission bits. Prompted by a bug report against + install from Mate Wierdl and Joost van Baal. + +2000-04-18 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro. + (jm_PREREQ): Use it. + +2000-04-18 Jim Meyering + + * lib/README: New file. + + * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define + getpagesize. For BeOS. Based on a patch from Bruno Haible. + +2000-04-17 Jim Meyering + + Get it right :-) + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the + actual #define via AH_VERBATIM. Don't need separate AC_DEFINE. + Suggestion from Akim Demaille. + +2000-04-17 Jim Meyering + + * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since + the definition of it to rpl_strftime also defined-away the system's + declaration. + +2000-04-15 Jim Meyering + + Use `C' to denote so-called `contiguous' files, the same way + that tar does. + * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define. + (ftypelet): Use S_ISCTG. + From Michael Deutschmann. + +2000-04-14 Jim Meyering + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg + form of AC_DEFINE. Otherwise, the #ifndef in AH_VERBATIM gets + clobbered. + +2000-04-14 Jim Meyering + + * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime. + +2000-04-13 Jim Meyering + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new + AH_VERBATIM to insert required #ifndef into config.h.in. + Suggestion from Akim Demaille. + +2000-04-12 Jim Meyering + + * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not + `AC_CHECK_HEADER' to check for locale.h. Thanks to a report from + Christian Krackowizer. + + More code moved from ../configure.in into (jm_CHECK_ALL_TYPES). + * m4/jm-macros.m4 (_GNU_SOURCE): Define. + (AC_SYS_LARGEFILE): Require. + (AM_C_PROTOTYPES): Require. + +2000-04-08 Jim Meyering + + * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3 + names don't conflict. Reported by Eli Zaretskii. + +2000-04-07 Jim Meyering + + * lib/putenv.c: Move inclusion of errno.h so it follows that of + sys/types.h, to work around system header problems on AIX 3.2.5. + From Bruno Haible. + +2000-04-07 Bruno Haible + + * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv + bug. Deal with the different error behavior of Irix iconv. + +2000-04-05 Paul Eggert + + * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on + IRIX if the installer said otherwise. + +2000-04-05 Jim Meyering + + Portability tweaks required for ultrix4.3. + * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include . + (jm_CHECK_DECLS): Add getutent to the list of functions. + (_jm_DECL_HEADERS): Add utmpx.h. + From John David Anglin. + + * m4/strftime.m4: Back out the 2000-04-02 change. + Instead of that change, simply undefine putenv in the test program. + +2000-04-05 Jim Meyering + + Portability tweaks required for ultrix4.3. + * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare + getutent. + * lib/readutmp.c: Include sys/types.h before sys/stat.h. + * lib/canon-host.c: Declare strdup. + * lib/path-concat.c: Likewise. + From John David Anglin. + +2000-04-04 Jim Meyering + + Be more DOS 8.3-friendly. + * lib/ref-add.sin: Renamed from ref-add.sed.in. + * lib/ref-del.sin: Renamed from ref-del.sed.in. + * lib/Makefile.am: Reflect renaming. + Reported by Eli Zaretskii. + + Use a temporary file name that won't clash with `charset.alias' + in the DOS 8.3 name space. + * lib/Makefile.am (charset_tmp): Define. + (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t. + (uninstall-local): Likewise. + Reported by Eli Zaretskii. + +2000-04-03 Jim Meyering + + * m4/gettext.m4: Fix typo in comment. + + * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from + textutils/configure.in). Suggestion from Paul Eggert. + (AC_CHECK_FUNCS): Add nl_langinfo. (also from textutils/configure.in) + +2000-04-02 Paul Eggert + + * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment + variable in the shell rather than using putenv, which isn't + portable. This avoids the configure-time inter-test dependency + on the potentially-renamed putenv function. + +2000-03-30 Paul Eggert + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include + before checking struct stat.st_blksize, so that + HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly. + +2000-03-29 Paul Eggert + + * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime, + since strftime.c uses HAVE_STRFTIME to decide whether to use + the underlying strftime. + +2000-03-29 Paul Eggert + + * lib/time/strftime.c (my_strftime): Make sure we call the system + strftime, not ourselves, when invoking the underlying strftime. + +2000-03-24 Jim Meyering + + * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in. + (charset_alias): Define. + (install-exec-local): Factor out common code. + (uninstall-local): Split lines longer than 80. + (ref-add.sed, ref-del.sed): Remove rules... (do the following instead) + (SUFFIXES): Define. + (.sed.in.sed): New rule. Don't redirect directly to $@. + (CLEANFILES): Add ref-add.sed and ref-del.sed. + +2000-03-19 Bruno Haible + + * lib/config.charset: Output a line containing "Packages using this + file". + * lib/ref-add.sed.in, lib/ref-del.sed.in: New files. + * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed, + ref-del.sed): New rules. + +2000-03-17 Jim Meyering + + * lib/unicodeio.c (): Include only #if HAVE_STRING_H. + Otherwise, include + +2000-03-17 Bruno Haible + + * lib/unicodeio.c (utf8_wctomb): New function. + (print_unicode_char): Pass the Unicode character to iconv in UTF-8 + format instead of in UCS-4 with platform dependent endianness. + +2000-03-10 Jim Meyering + + * m4/lib-check.m4: Look for getspnam in -lgen, too. + From Marco Franzen. + +2000-03-07 Paul Eggert + + * lib/savedir.c (savedir): Work even if directory size is + negative; this can happen with some screwy NFS configurations. + +2000-03-06 Jim Meyering + + * lib/localcharset.c (get_charset_aliases): Don't try to free file_name + if it's NULL (because we ran out of memory). From Bruno Haible. + +2000-03-05 Jim Meyering + + * lib/localcharset.c ("path-concat.h"): Include. + (get_charset_aliases): Use path_concat instead of ANSI string + concatenation. + + * lib/unicodeio.h (PARAMS): Define. + Use it to guard prototype. + +2000-03-04 Jim Meyering + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE, + for lib/localcharset.c. + +2000-03-04 Jim Meyering + + * lib/Makefile.am (install-exec-local): Create $(libdir) before + installing into it. + (uninstall-local): Uncomment this rule so `make distcheck' works + once again. + + * lib/unicodeio.c (): Include it. + (errno): Declare if not defined. + + * lib/localcharset.c: Add Bruno's comment justifying use of volatile. + + * lib/config.charset: New version, incorporating remarks from a linux + i18n mailing list. From Bruno Haible. + +2000-03-04 Bruno Haible + + * m4/codeset.m4: New file. + * m4/iconv.m4: New file. + * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV. + +2000-03-03 Jim Meyering + + * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'. + +2000-03-02 Jim Meyering + + * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so + the messages come out on separate lines. + + * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS, + rather than jm_CHECK_DECLARATIONS. + * m4/decl.m4: Remove now-unused file. + + * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and + geteuid. + +2000-03-02 Jim Meyering + + * lib/Makefile.am (EXTRA_DIST): Add config.charset. + +2000-03-01 Jim Meyering + + * lib/localcharset.c: Guard some #includes with `#if HAVE_...'. + * lib/unicodeio.c: Likewise. + +2000-03-01 Bruno Haible + + * lib/config.charset: New file. + * lib/localcharset.c: New file. + * lib/unicodeio.h, lib/unicodeio.c: New files. + * lib/Makefile.am (DEFS): Add -DLIBDIR=... + (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c. + (noinst_HEADERS): Add unicodeio.h. + (all-local, install-exec-local, charset.alias): New targets. + +2000-02-28 Paul Eggert + + * lib/quotearg.c (ALERT_CHAR): New macro. + (quotearg_buffer_restyled): Use it. + +2000-02-27 Jim Meyering + + * m4/check-decl.m4: Add getenv to the list. + +2000-02-27 Jim Meyering + + * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/. + Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'. + + * lib/backupfile.c: Guard inclusion of stdlib.h with + `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'. + Declare malloc if needed. + + * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of + `#ifndef HAVE_DECL..' + now that autoconf always defines the HAVE_DECL_ symbols. + * lib/human.c: Likewise. + * lib/same.c: Likewise. + * lib/strtoumax.c: Likewise. + + * lib/backupfile.c: Arrange for cpp to fail if the configure-time + declaration check was not run. + * lib/hash.c: Likewise. + * lib/human.c: Likewise. + * lib/same.c: Likewise. + * lib/strtoumax.c: Likewise. + + * lib/userspec.c (parse_user_spec): If there is no `:' but there is a + `.', then first look up the entire `.'-containing string as a login + name. + +2000-02-23 Jim Meyering + + * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it + in place of my hack. + +2000-02-18 Paul Eggert + + * lib/getdate.y: Handle two-digit years with leading zeros correctly. + (textint): New typedef. + (parser_control): Member year changed from int to textint. + All uses changed. + (YYSTYPE): Removed; replaced by %union with int and textint members. + (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN, + tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER, + tYEAR_UNIT, tZONE, o_merid): Now of type . + (tSNUMBER, tUNUMBER): Now of type . + (date, number, to_year): Use width of number in digits, not its value, + to determine whether it's a 2-digit year, or a 2-digit time. + (yylex): Store number of digits of numeric tokens. + Reported by John Kendall. + + (parser_control): Changed from struct parser_control to typedef (for + consistency). All uses changed. + + (tID): Removed; not used. + (yylex): Return '?' for unknown identifiers, rather than (unused) tID. + +2000-02-14 Paul Eggert + + * lib/getpagesize.h (getpagesize): Port to VMS for Alpha; + adapted from changes to grep getpagesize.h by Martin P.J. Zinser. + +2000-02-12 Jim Meyering + + * lib/userspec.c (ISDIGIT): Define it. + (isdigit): Remove definition. + (is_number): Use ISDIGIT, not isdigit. + : Include. + (_ and N_): Define. + (parse_user_spec): Mark translatable strings. + +2000-02-10 Jim Meyering + + With these changes, nanosleep.[ch] are finally enough like the other + lib/* replacement files to compile on a few more losing systems. + + * lib/nanosleep.h: Don't include config.h. + Remove prototype from declaration of nanosleep. + (PARAMS): Remove now-unneeded definition. + * lib/nanosleep.c: #undef nanosleep. + (rpl_nanosleep): Rename from nanosleep. + +2000-02-10 Jim Meyering + + * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from + gnu_nanosleep to rpl_nanosleep. + +2000-02-09 Jim Meyering + + * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in + struct spwd, rather than in struct passwd. Reported by Gaël Quéri. + +2000-02-08 Akim Demaille + + * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with + `[' and `]' and remove uses of `changequote'. + (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise. + (AC_SYS_LARGEFILE): Likewise. + * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise. + * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use + of changequote. + * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise. + * m4/readdir.m4 (jm_FUNC_READDIR): Likewise + * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main. + * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise. + +2000-02-05 Jim Meyering + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros. + Remove explicit use of AC_HEADER_TIME. It is required by + jm_CHECK_TYPE_STRUCT_TIMESPEC. Using AC_HEADER_TIME and + `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but + in autoconf whereby the expansion of the latter ended up preceding + the expansion of its prerequisite, AC_HEADER_TIME. + Reported by Volker Borchert. + +2000-02-03 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname. + +2000-02-03 Jim Meyering + + * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION', + rather than with `#if HAVE_UTMPNAME'. + +2000-02-02 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no + definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/. + Reported by Eli Zaretskii. + +2000-02-01 Jim Meyering + + * lib/readutmp.h (UT_USER): Add parens. From Andreas Schwab. + +2000-01-31 Jim Meyering + + * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of + functions. Add the time.h and sys/time.h headers along with the + AC_REQUIRE'ment of AC_HEADER_TIME. + +2000-01-31 Jim Meyering + + * lib/nanosleep.h (nanosleep): Guard declaration with + `#if ! HAVE_DECL_NANOSLEEP'. + Without this, OFS gets a redeclaration error for rpl_nanosleep, due to + the declaration in that vendor's sys/timers.h. + Reported by Christian Krackowizer. + + * lib/quotearg.c (ISASCII): Add #undef and move definition to follow + inclusion of wctype.h to work around Solaris 2.6 namespace pollution. + (ISPRINT): Likewise. + Reported by Tom Tromey. + +2000-01-30 Jim Meyering + + * m4/lib-check.m4: Clean up some kludgy old shadow password tests. + + * m4/prereq.m4 (utmp_includes): Define. + Check for ut_user and ut_name members in both struct utmpx + and struct utmp. + +2000-01-30 Jim Meyering + + * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of + hard-coding uses of ->ut_name. The latter doesn't work with new Linux + header files where only utmpx.ut_user is declared. + + * lib/readutmp.h (UT_USER): Define. + +2000-01-29 Jim Meyering + + * m4/lib-check.m4: New file containing library-related checks from + fileutils and sh-utils (textutils had none). + +2000-01-28 Jim Meyering + + * m4/perl.m4: Change format of warning message to look more like that + from the missing script. Suggestion from François Pinard. + +2000-01-25 Jim Meyering + + * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as + well as time.h in the compile check. + * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it. + Fix typo in cross-compiling case: s/yes/no/. + +2000-01-23 Jim Meyering + + * m4/jm-macros.m4: Move df-related tests here from + fileutils/configure.in + + * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/ + (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters. + + * m4/fsusage.m4: New file. Extracted from fileutils/configure.in. + s/space/ac_fsusage_space/. + (jm_FILE_SYSTEM_USAGE): Take two parameters. + + * m4/ftruncate.m4: New file (derived from part of + fileutils/configure.in). + * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it. + (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT. + + * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN): + AC_SUBST these here, rather than just in sh-util/configure.in, so + that the now-shared-by-fileutils-and-textutils lib/Makefile.am are + all the same. + (AM_FUNC_OBSTACK): Add (from fileutils/configure.in). + (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils. + (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in). + (AC_SUBST(POW_LIBM)): Likewise. + (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in. + +2000-01-23 Jim Meyering + + * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of + obstack.c. + +2000-01-22 Jim Meyering + + * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST. + + * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h. + + * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils' + configure.in + (AC_CHECK_HEADERS): Likewise for sh-utils. + (AC_CHECK_HEADERS): Likewise for textutils. + Merge the three lists of headers. + + * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro. Parts moved here + from fileutils' configure.in. + + * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)' + code. Moved tests into their own function (_jm_DECL_HEADERS) in + check-decl.m4. + + * m4/check-decl.m4: Use #if rather than #ifdef. + Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL. + (jm_CHECK_DECLARATIONS): Add strtoul strtoull. + (_jm_DECL_HEADERS): Define new function. + (jm_CHECK_DECLARATIONS): Require it. + +2000-01-22 Jim Meyering + + * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul. + [! HAVE_DECL_STRTOULL]: Declare strtoull. + Required for some AIX systems. Reported by Christian Krackowizer. + [TESTING] (main): New function. + + 1997-10-17 Eli Zaretskii + * lib/dirname.c (dir_name): Support for DOS-style file names with drive + letters. + + * lib/quotearg.c [HAVE_WCTYPE_H]: Include for decl of + iswprint. + + * lib/strverscmp.c (ISDIGIT): Define. + (strverscmp): Use ISDIGIT, not isdigit. + +2000-01-19 Jim Meyering + + * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include , too. + Use AC_HEADER_TIME. Volker Borchert reported that OpenBSD-2.3/sparc + defines `struct timespec' in + + * m4/c-bs-a.m4: Remove uses of changequote altogether. + Thanks to Akim for explaining. + +2000-01-17 Paul Eggert + + * lib/nanosleep.c (nanosleep): + Don't use SA_INTERRUPT to decide whether to call sigaction, as + POSIX.1 doesn't require SA_INTERRUPT and some systems + (e.g. Solaris 7) don't define it. Use SA_NOCLDSTOP instead; + it's been part of POSIX.1 since day 1 (in 1988). + +2000-01-17 Jim Meyering + + * lib/interlock: Remove unused file. Reported by François Pinard. + +2000-01-16 Paul Eggert + + * lib/quotearg.c (quotearg_buffer_restyled): Do not quote + alert, backslash, formfeed, and vertical tab unnecessarily in + shell quoting style. + +2000-01-16 Jim Meyering + + * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV, + AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME, + jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA, + AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME. + +2000-01-16 Jim Meyering + + * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )' + because the latter didn't work. + +2000-01-15 Jim Meyering + + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell. + (AC_REPLACE_FUNCS): Add memcpy and memset. + Add these, too: stime strcspn stpcpy strstr strtol strtoul. + Add strpbrk. + Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp. + +2000-01-12 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro. + (jm_PREREQ): Use it. + (jm_PREREQ_READUTMP): New macro. + (jm_PREREQ): Use it. + +2000-01-11 Paul Eggert + + Quote multibyte characters correctly. + * m4/c-bs-a.m4: New file. + * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro. + (jm_PREREQ): Use it. + +2000-01-11 Paul Eggert + + * m4/uintmax_t.m4: Port to autoconf 2.13. + +2000-01-08 Jim Meyering + + * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro. + * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it. + +2000-01-04 Jim Meyering + + * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from + jm_STRUCT_DIRENT_D_TYPE. + * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from + jm_STRUCT_DIRENT_D_INO. + * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from + jm_STRUCT_UTIMBUF. + * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/ + renamings. + * m4/utime.m4: Likewise. + + * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro. + * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it. + +2000-01-03 Paul Eggert + + * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt + (for Solaris 7) and in -lposix4 (for Solaris 2.5.1). + +2000-01-02 Jim Meyering + + * m4/search-libs.m4: Escape `$' in $3 of dnl comment. I no longer + remember if this is necessary. + +1999-12-26 Jim Meyering + + * m4/jm-macros.m4: Use it here. + * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro. + +1999-12-23 Jim Meyering + + * m4/jm-macros.m4: Check for clock_gettime (moved from + fileutils/configure.in) + Check for gettimeofday. + +1999-12-20 Jim Meyering + + * m4/strftime.m4: Remove kludge, now that I'm using the fixed + autoconf-2.14a-1999-12-20. + +1999-12-19 Jim Meyering + + * m4/lstat-slash.m4: New file. + * m4/jm-macros.m4: Use the new macro: + jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK. + +1999-12-07 Jim Meyering + + * m4/perl.m4: Require that File::Compare be available, too. + Too many systems seem to lack it. + + * m4/strftime.m4: Add checks for most of the cpp macros tested in + GNU's strftime.c. Prompted by a patch from Paul Eggert. + +1999-11-18 Paul Eggert + + * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a + problem with the QNX 4.25 shell, which doesn't propagate exit + status of failed commands inside shell assignments. + +1999-11-17 Jim Meyering + + * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES. + +1999-11-07 Jim Meyering + + * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE. + +1999-11-06 Jim Meyering + + * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro. + * m4/jm-macros.m4 (jm_MACROS): Use it here. + +1999-11-05 Jim Meyering + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from + configure.in of textutils, fileutils, and sh-utils into this one + (shared between those packages) file. + Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated + AC_STRUCT_ST_BLKSIZE. + +1999-11-03 Jim Meyering + + * m4/ssize_t.m4: Remove file. No longer needed since the new version + of AC_CHECK_TYPE checks includes unistd.h. + * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'. + Suggestion from Akim Demaille. + +1999-10-30 Jim Meyering + + * m4/uintmax_t.m4: Require 2.14a. Remove backslash before backtick in + m4-quoted string. + * m4/ls-mntd-fs.m4: Likewise. + * m4/jm-macros.m4: Likewise. Also, use AC_TYPE_SSIZE_T instead + * m4/jm-winsz1.m4: Likewise. + + * m4/const.m4: Remove file, since the fix made it into the experimental + version of autoconf. + * m4/mktime.m4: Likewise. + + * m4/check-type.m4: Remove file, now that the latest version of + AC_CHECK_TYPE takes a third arg to specify additional #includes. + + * m4/ssize_t.m4: New file, requires experimental version of autoconf. + * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked + AC_CHECK_TYPE. + +1999-10-04 Jim Meyering + + * m4/jm-macros.m4: Don't require autoconf-2.14.1. + +1999-09-22 Paul Eggert + + * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC + 2.95.1 bug with HP-UX 10.20. + +1999-09-17 Jim Meyering + + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup. + Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3 + due to missing strdup (against sh-utils-2.0). + +1999-08-29 Jim Meyering + + * m4/jm-macros.m4: Require jm_BISON. + * m4/bison.m4: New file. + +1999-08-17 Paul Eggert + + * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma + in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20. + +1999-08-05 Jim Meyering + + * m4/getline.m4: Rename test file from conftestdata to conftest.data + to avoid conflicts with `conftest' on 8+3 filesystems. + Suggestion from Eli Zaretskii. + +1999-08-04 Jim Meyering + + * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of + fileutils and sh-utils (textutils's getline test was inadequate). + (AM_FUNC_GETLINE): Run this test. + (AC_CHECK_FUNCS): Check for getdelim. + Reported by Bob Proulx. + +1999-08-02 Jim Meyering + + * m4/jm-macros.m4: Add a comment. + +1999-08-01 Paul Eggert + + * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether + defines strtoumax as a macro (and not as a + function). + +1999-08-01 Paul Eggert + + * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure + that we can shift, multiply and divide unsigned long long + values; Ultrix cc can't do it. + +1999-08-01 Paul Eggert + + * m4/mktime.m4: New file, which is a preview of what should appear + in the next public autoconf release. + +1999-08-01 Paul Eggert + + * m4/lfs.m4: Remove this file. + * m4/largefile.m4: New file. It contains the old contents of + lfs.m4, except that all names with prefix AC_LFS have been + changed to use the prefix AC_SYS_LARGEFILE instead, to be + compatible with future autoconf versions. Also, some minor m4 + quoting problems have been fixed. + +1999-08-01 Paul Eggert + + * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines. + Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl. + (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting, + and simplify the shell code. + +1999-08-01 Jim Meyering + + * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from + m4. + +1999-07-20 Jim Meyering + + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove. + +1999-07-15 Jim Meyering + + * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize. + +1999-05-22 Jim Meyering + + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr. + +1999-05-20 Jim Meyering + + * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine. + Add a colon after each `then' in case $4 is empty. + +1999-05-16 Jim Meyering + + * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS. + +1999-05-10 Jim Meyering + + * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME. + + * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed + AC_FUNC_MKTIME. + +1999-05-10 Andreas Schwab + + * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments. + +1999-05-04 Paul Eggert + + * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS, + not CPPFLAGS, so that linking works correctly in IRIX. + +1999-04-30 Paul Eggert + + * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2. + +1999-04-20 Paul Eggert + + * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long + long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro. + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require + jm_AC_TYPE_UNSIGNED_LONG_LONG. + * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro. + + * m4/lfs.m4: Port to AIX and HP-UX. Support cross-compilation. + +1999-04-20 Jim Meyering + + * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG. + AC_REPLACE xstroull if necessary. From Paul Eggert. + (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq. + +1999-04-18 Jim Meyering + + * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro. + * m4/jm-macros.m4: Use it. + +1999-04-06 Jim Meyering + + * m4/strftime.m4: Remove test for %f. + +1999-03-29 Jim Meyering + + * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the + superset of the AC_TYPE_* checks in the textutils, fileutils, + and sh-utils, plus AC_TYPE_PID_T. Paul Eggert suggested adding + AC_TYPE_PID_T. + +1999-03-28 Jim Meyering + + * m4/jm-macros.m4: Define GNU_PACKAGE here. + Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is + replaced e.g., in the *.sh files of the sh-utils. + +1999-03-20 Jim Meyering + + * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/. + * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX. + Don't depend on AM_GLIBC. Suggestions from Alain Magloire. + +1999-03-19 Jim Meyering + + * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro. + +1999-03-12 Jim Meyering + + * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED. + +1999-03-07 Jim Meyering + + * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are + declared. + +1999-02-17 Jim Meyering + + * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of + brackets in macro definition. From Eli Zaretskii and Alain Magloire. + +1999-02-07 Jim Meyering + + * m4/group-member.m4: New file -- extracted from sh-utils' + configure.in. + + 1999-02-05 Eli Zaretskii + * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names. + +1999-02-06 Jim Meyering + + * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS. + * m4/fnmatch.m4: Likewise. + * m4/getgroups.m4: Likewise. + * m4/lstat.m4: Likewise. + * m4/malloc.m4: Likewise. + * m4/putenv.m4: Likewise. + * m4/realloc.m4: Likewise. + * m4/regex.m4: Likewise. + * m4/stat.m4: Likewise. + * m4/strftime.m4: Likewise. + Suggestion from Alain Magloire. + + * m4/chown.m4: Use `.$ac_objext', not `.o'. + * m4/fnmatch.m4: Likewise. + * m4/getgroups.m4: Likewise. + * m4/getline.m4: Likewise. + * m4/lstat.m4: Likewise. + * m4/malloc.m4: Likewise. + * m4/memcmp.m4: Likewise. + * m4/putenv.m4: Likewise. + * m4/realloc.m4: Likewise. + * m4/regex.m4: Likewise. + * m4/stat.m4: Likewise. + * m4/strftime.m4: Likewise. + Suggestion from Alain Magloire. + + * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires + an argument. + + * m4/regex.m4: Add a run-time Test for proper operation of + re_compile_pattern. + +1999-01-31 Jim Meyering + + * m4/getloadavg.m4: Check for locale.h and the function, setlocale. + +1999-01-30 Jim Meyering + + * m4/check-type.m4: Use 3-arg form of AC_DEFINE. + + * m4/jm-mktime.m4: Make this a wrapper around the official + AM_FUNC_MKTIME rather than my private copy, now that the official one + is up to date. + * m4/mktime.m4: Remove file. + + * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE. + * m4/uptime.m4: Likewise. + * m4/uintmax_t.m4: Likewise. + +1999-01-28 Jim Meyering + + * m4/jm-macros.m4: Use jm_AFS. + * m4/afs.m4: New file (from fileutils' configure.in). + + * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros. + * m4/chown.m4: Likewise. + * m4/d-ino.m4: Likewise. + * m4/d-type.m4: Likewise. + * m4/fnmatch.m4: Likewise. + * m4/getgroups.m4: Likewise. + * m4/gettext.m4: Likewise. + * m4/jm-mktime.m4: Likewise. + * m4/jm-winsz2.m4: Likewise. + * m4/lcmessage.m4: Likewise. + * m4/ls-mntd-fs.m4: Likewise. + * m4/malloc.m4: Likewise. + * m4/memcmp.m4: Likewise. + * m4/putenv.m4: Likewise. + * m4/realloc.m4: Likewise. + * m4/st_mtim.m4: Likewise. + * m4/strftime.m4: Likewise. + +1999-01-16 Jim Meyering + + * m4/jm-macros.m4 (ARGMATCH_DIE): Define. + (ARGMATCH_DIE_DECL): Define. + +1999-01-12 Jim Meyering + + * m4/Makefile.am.in: Rewrite to avoid using fmt. + Reported by Lars Hecking. + +1999-01-10 Jim Meyering + + * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my + gross kludge. + * m4/inttypes_h.m4: Likewise. + * m4/lstat.m4: Likewise. + * m4/malloc.m4: Likewise. + * m4/readdir.m4: Likewise. + * m4/realloc.m4: Likewise. + * m4/st_dm_mode.m4: Likewise. + * m4/stat.m4: Likewise. + * m4/utimbuf.m4: Likewise. + * m4/utimes.m4: Likewise. + + * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the + AC_CHECK_FUNCS hack. Now, it's still a hack, but at least the + comments in config.h.in are meaningful. + + * m4/jm-macros.m4: Require autoconf-2.13 here. + + * m4/regex.m4: By default, don't use the included regex.c on systems + with glibc 2. Suggestion from Uli Drepper. + +1999-01-02 Jim Meyering + + * m4/jm-macros.m4: Replace strcasecmp and strncasecmp. + +1998-12-18 Jim Meyering + + * m4/Makefile.am.in (Makefile.am): Simplify rule. + Based on a suggestion from Lars Hecking. + +1998-11-16 Paul Eggert + + * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11. + +1998-11-16 Jim Meyering + + * m4/lfs.m4: Double-quote the `uname...` expression. + +1998-11-14 Jim Meyering + + * m4/lstat.m4: Correct comment. POSIX does not permit it to succeed. + * m4/stat.m4: Likewise. + +1998-11-03 Jim Meyering + + * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG. + * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG. + +1998-10-18 Jim Meyering + + * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro. + +1998-10-17 Jim Meyering + + * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to + include, though we still hard-code the `require'-like AC_CHECK_HEADERS + calls for those previously hard-coded headers. Instead, take a new + parameter. + (jm_CHECK_DECLARATIONS): Reflect interface change. + * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise. + (jm_CHECK_DECL_LOCALTIME_R): New macro. + + * m4/mktime.m4: Test for spring-forward gap before long-running test. + +1998-10-14 Jim Meyering + + * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0" + instead of "TZ=America/Vancouver". From Paul Eggert. + +1998-10-11 Jim Meyering + + * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro. + This adds a test for a recently added compatibility fix for mktime.c. + * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME. + +1998-09-27 Jim Meyering + + * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH. + + * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro. Extracted from + ../configure.in, including a change from Gordon Matzigkeit to allow + cross-compiling for the Hurd. + + * m4/glibc.m4: New file/macro to test for the GNU C Library + versions 1 and 2. From Gordon Matzigkeit. + Indent. + +1998-09-21 Jim Meyering + + * m4/chown.m4: Declare locals: before, after. From Andries Brouwer. + +1998-08-18 Paul Eggert + + Port nanosecond-resolution times to UnixWare 2.1.2 and + pedantic Solaris 2.6. + + * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from + AC_STRUCT_ST_MTIM. + * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): + Generate name of ns member, instead of just 1 or undef. + Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode. + +1998-08-15 Jim Meyering + + * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file. + * m4/check-type.m4: New file. Replacement for AC_CHECK_TYPE. + * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int) + instead of jm_TYPE_SSIZE_T. + +1998-08-12 Jim Meyering + + * m4/st_dm_mode.m4: New file. From Johan Danielsson. + +1998-08-02 Jim Meyering + + * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM + in acconfig.h manually. + +1998-07-31 Paul Eggert + + * m4/st_mtim.m4: New file. + +1998-07-28 Jim Meyering + + * m4/utimes.m4: Undef stat. + +1998-07-25 Jim Meyering + + * m4/utime.m4 (jm_FUNC_UTIME): New file and macro. + * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro. + +1998-07-09 Manfred Hollstein + + * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the + uid and gid actually remain unchanged. + +1998-07-07 Jim Meyering + + * m4/jm-glibc-io.m4: Remove fclose_unlocked. + +1998-07-04 Jim Meyering + + * m4/regex.m4: Use syscmd, ifelse, and sysval. Mainly as an exercise + to prove that this macro can be used in packages without regex.c. + +1998-07-04 Andreas Schwab + + * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if + is to be used. + +1998-07-03 Jim Meyering + + * m4/gettext.m4: Add -lintl if it's found to be necessary. + + * m4/gettext.m4: New file -- from gettext-0.10.35. + * m4/lcmessage.m4: Likewise. + * m4/progtest.m4: Likewise. + + * m4/regex.m4 (jm_WITH_REGEX): New file and macro. + * m4/jm-macros.m4: Require the new macro. + +1998-06-29 Jim Meyering + + * m4/fstypename.m4: Include sys/param.h. NetBSD 1.3.1 requires this + for the definition of NGROUPS (used in a system header included + by sys/mount.h). + +1998-06-28 Jim Meyering + + * m4/ls-mntd-fs.m4: New file. + * m4/fstypename.m4: New file. + + * m4/jm-macros.m4: Require the new macro. + * m4/jm-glibc-io.m4: New file. + +1998-05-19 Jim Meyering + + * m4/jm-macros.m4: Add jm_FUNC_LCHOWN. + * m4/lchown.m4: New file. + + * m4/Makefile.am.in: New file. + * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in. + +1998-05-14 Jim Meyering + + * m4/Makefile.am (EXTRA_DIST): Add them. + * m4/jm-macros.m4: New file. + * m4/utimbuf.m4: New file. + +1998-05-12 Jim Meyering + + * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4. + +1998-05-11 Jim Meyering + + * m4/isc-posix.m4: New file. + +1998-05-10 Jim Meyering + + * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date. + +1998-05-09 Jim Meyering + + * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4. + (EXTRA_DIST): Remove mktime.m4, now that the new version is included + with automake. + + * m4/ssize_t.m4: New file. + * m4/mktime.m4: Remove file -- the new automake has this now. + +1998-04-26 Jim Meyering + + * m4/assert.m4: New file. + * m4/Makefile.am (EXTRA_DIST): Add assert.m4. + +1998-04-05 Jim Meyering + + * m4/prereq.m4 (jm_PREREQ_REGEX): New macro. + (jm_PREREQ): Use it here. + +1998-03-23 Jim Meyering + + * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H + in acconfig.h. + +1998-03-15 Jim Meyering + + * m4/prereq.m4: New file. + * m4/error.m4: New file. + * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4. + +1998-02-07 Jim Meyering + + * m4/getline.m4: Don't set am_cv_func_working_getline before the + cache-check for the same variable -- that defeated the purpose of + the test; the test program was never run. This was a problem only + on systems with losing getline functions -- HP-UX 10.20 is one. + Reported by Bjorn Helgaas. + +1998-02-06 Jim Meyering + + * m4/Makefile.am (EXTRA_DIST): Add perl.m4. + +1998-01-10 Jim Meyering + + * m4/Makefile.am (EXTRA_DIST): Add const.m4. + + * m4/const.m4: New file. Use an initializer in this declaration + typedef int charset[2]; const charset x; + Reported by Bob Glickstein. + +1997-12-21 Jim Meyering + + * m4/chown.m4: Fix reversed types on -1 args to chown. + From Kaveh Ghazi. + +1997-12-14 Jim Meyering + + * m4/check-decl.m4: s/DECLARATION_/DECL_/g. + Add lseek and memchr. + + * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g. + T.E.Dickey said that some older preprocessors + have a 20-character limit on names. + +1997-11-30 Jim Meyering + + * m4/inttypes_h.m4: New file. + * m4/uintmax_t.m4: New file. + * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4. + +Copyright (C) 1997-2008 Free Software Foundation, Inc. +Copying and distribution of this file, with or without modification, +are permitted provided the copyright notice and this notice are preserved.