X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=ChangeLog;h=e7ca0e6f1b827dab30b05c9e641829330e05295f;hb=204072b;hp=dbf0bea119881fc73ed94f911ff5edc0e82912ce;hpb=3615b190ca4b0f20ec469d0bcdb1070e241aa96c;p=gnulib.git diff --git a/ChangeLog b/ChangeLog index dbf0bea11..c03777bdb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,1595 @@ +2011-09-03 Paul Eggert + + openat: test for fstatat (..., 0) bug + Further testing with tar suggests that fstatat (..., 0) + does not work in general, on AIX 7.1; see + . + So, give up entirely on AIX 7.1's fstatat, and fall back on our + replacement fstatat (which is what older AIX releases were using + anyway). + * lib/fstatat.c (fstatat) [HAVE_FSTATAT]: Do not undef. The only + use is now changed to orig_fstatat. This was probably the right + thing to do anyway. + (FSTATAT_AT_FDCWD_0_BROKEN): Remove; no longer used. + (rpl_fstatat) [FSTATAT_ZERO_FLAG_BROKEN]: Remove. + (rpl_fstatat): Simplify, assuming !FSTATAT_ZERO_FLAG_BROKEN. + (AT_FUNC_NAME) [FSTATAT_ZERO_FLAG_BROKEN]: Now rpl_fstatat. + * m4/openat.m4 (gl_FUNC_FSTATAT): Test for the more-general bug + and define FSTATAT_ZERO_FLAG_BROKEN, not FSTATAT_AT_FDCWD_0_BROKEN, + if the bug is found. + + openat: test for fstatat (AT_FDCWD, ..., 0) bug + This tests for another fstatat bug on AIX 7.1: + fstatat (AT_FDCWD, ..., 0) does not work. See + . + * lib/fstatat.c (FSTATAT_AT_FDCWD_0_BROKEN) + (LSTAT_FOLLOWS_SLASHED_SYMLINK): Default to 0. + (rpl_fstatat): Adjust so that it works around either (or both) + bugs if present. + * m4/openat.m4 (gl_FUNC_FSTATAT): Test for this fstatat bug. + +2011-09-03 Karl Berry + + * doc/regex.texi (Character Class Operators): Avoid literal ":" + in index entries. + +2011-09-02 Bruno Haible + + Allow the user to override the choice of AR, ARFLAGS, RANLIB. + * m4/gnulib-common.m4 (gl_PROG_AR_RANLIB): Don't override the given + values of AR, ARFLAGS, RANLIB. + Reported by John W. Eaton for Octave. + +2011-09-02 Bruno Haible + + Find 'ar' program that fits with --host argument. + * m4/gnulib-common.m4 (gl_PROG_AR_RANLIB): Use AC_CHECK_TOOL. + +2011-09-02 Bruno Haible + + tests: init.sh: Support any non-GNU diff. + * tests/init.sh (compare): If "diff -c" is supported but "diff -u" is + not, use "diff -c". Useful on AIX 6.1, HP-UX 11.31, OSF/1 5.1, + Solaris 8. + +2011-09-02 Bruno Haible + + tests: init.sh: work also with any non-GNU diff that supports -u + * tests/init.sh: Relax check for diff -u support. + Rather than checking for GNU diff via --version, simply check + for support for -u itself. Useful at least on OpenBSD 4.9, + AIX 7.1, IRIX 6.5, and Solaris 10. + +2011-09-01 Bruno Haible + + strtoimax, strtoumax: Document problem on HP-UX 11. + * doc/posix-functions/strtoimax.texi: Mention HP-UX 11.11 problem. + * doc/posix-functions/strtoumax.texi: Likewise. + +2011-09-01 Bruno Haible + + strtoumax: Avoid link error on OSF/1 with DTK cc. + * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Always test whether strtoumax is + defined as a function. + * modules/strtoumax (Depends-on, configure.ac): Test only whether + strtoumax is defined, not whether it is declared. + +2011-09-01 Bruno Haible + + strtoimax: Avoid link error on OSF/1 with DTK cc. + * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Always test whether strtoimax is + defined as a function. + * modules/strtoimax (Depends-on, configure.ac): Test only whether + strtoimax is defined, not whether it is declared. + +2011-09-01 Bruno Haible + + imaxdiv: Avoid link error on OSF/1 with DTK cc. + * m4/imaxdiv.m4 (gl_FUNC_IMAXDIV): Also test whether imaxdiv is defined + as a function. + * modules/imaxdiv (configure.ac): Test whether imaxdiv is defined, not + whether it is declared. + +2011-09-01 Bruno Haible + + imaxabs: Avoid link error on OSF/1 with DTK cc. + * m4/imaxabs.m4 (gl_FUNC_IMAXABS): Also test whether imaxabs is defined + as a function. + * modules/imaxabs (configure.ac): Test whether imaxabs is defined, not + whether it is declared. + +2011-09-01 Bruno Haible + + Tests for module 'strtoumax'. + * modules/strtoumax-tests: New file. + * tests/test-strtoumax.c: New file. + + Tests for module 'strtoimax'. + * modules/strtoimax-tests: New file. + * tests/test-strtoimax.c: New file. + + Tests for module 'imaxdiv'. + * modules/imaxdiv-tests: New file. + * tests/test-imaxdiv.c: New file. + + Tests for module 'imaxabs'. + * modules/imaxabs-tests: New file. + * tests/test-imaxabs.c: New file. + +2011-09-01 Bruno Haible + + pthread: Determine $(LIB_PTHREAD) correctly on IRIX 6.5. + * m4/pthread.m4 (gl_PTHREAD_CHECK): Check for pthread_join, not + pthread_create. + +2011-09-01 Paul Eggert + + openat: work around AIX 7.1 fstatat issue + This should fix the problem that was not properly fixed + in the previous change, dated 2011-08-30. + * lib/fstatat.c: Include twice, the first with + __need_system_stat_h defined. + (orig_fstatat) [HAVE_FSTATAT]: New function. + (rpl_fstatat): Go back to the old way of doing things, + except call orig_fstatat instead of fstatat. + * m4/openat.m4 (gl_FUNC_FSTATAT): Remove unnecessary check for openat. + Remove unnecessary check whether fstatat fills in st_size etc. + +2011-09-01 Bruno Haible + + sys_select: Avoid a syntax error regarding timespec_t on IRIX 6.5. + * lib/sys_select.in.h [__sgi]: When included from , + just include the system's header. + +2011-08-31 Jim Meyering + + tests: avoid spurious assertion failure in test-float.c on ppc64 + * tests/test-float.c (test_long_double): Comment out an assertion, + LDBL_MIN_EXP <= DBL_MIN_EXP, that is failing at least on PowerPC-64 + with gcc-4.4.4. + + maint: indent with spaces, not TABs + I need to get in the habit of running gnulib's "make check". + Both of these would have been caught. + * m4/largefile.m4: Indent with spaces, not TABs. + * lib/parse-datetime.y (iso_8601_time): Likewise. + Spotted by Pádraig Brady. + + test-parse-datetime.c: accommodate a relatively strict gcc warning + * tests/test-parse-datetime.c (gmt_offset): Declare function "static", + to avoid a warning from gcc's -Werror=missing-declarations. + Insert a few spaces-before-funcall-parenthesis. + +2011-08-17 J.T. Conklin + + parse-datetime: accept ISO 8601 date and time rep with "T" separator + The parser now accepts ISO 8601 date-time strings with "T" as the + separator. It has long parsed dates like "2004-02-29 16:21:42" + with a space between the date and time strings. Now it also parses + "2004-02-29T16:21:42" and fractional-second and time-zone-annotated + variants like "2004-02-29T16:21:42.333-07:00" + * lib/parse-datetime.y: Parse ISO 8601 extended date and time + of day representation using the 'T' separator character. + * doc/parse-datetime.texi (General date syntax): replace use of + deprecated --iso-8601 option with --rfc-3339 in example of date + command output formats that can be parsed. + * tests/test-parse-datetime.c (tm_diff): New function, taken from + lib/parse-datetime.y. + (gmt_offset): New function. + (main): Add additional test cases to validate ISO8601 extended + date and time of day parsing. + +2011-08-31 Bruno Haible + + freopen: Documentation. + * doc/posix-functions/freopen.texi: Document the bug with the NULL file + name. + Reported by Claudio Bley . + +2011-08-31 Claudio Bley (tiny change) + + freopen: Don't crash if the filename argument is NULL. + * lib/freopen.c (rpl_freopen): Don't compare the filename if it is + NULL. + +2011-08-30 Paul Eggert + + openat: work around AIX 7.1 fstatat bug + Problem reported by Kevin Brott for GNU tar, in the thread containing + . + * lib/fstatat.c (rpl_fstatat): Do not invoke underlying fstatat if + FSTATAT_ST_SIZE_ETC_BROKEN. + (fstatat) [FSTATAT_ST_SIZE_ETC_BROKEN && HAVE_FSTATAT]: #define to + rpl_fstatat. + * m4/openat.m4 (gl_FUNC_FSTATAT): New macro, with the fstatat-relevant + part of gl_FUNC_OPENAT. Also, check for the AIX 7.1 bug, and use + AC_CHECK_FUNCS_ONCE for fstatat. + (gl_FUNC_OPENAT): Use it. Use AC_CHECK_FUNCS_ONCE for + fchmodat, mkdirat, openat and unlinkat. + +2011-08-30 Bruno Haible + + Avoid endless recursions if config.h includes some header files. + * lib/fopen.c (__need_FILE): Define already before including config.h. + * lib/freopen.c (__need_FILE): Likewise. + * lib/open.c (__need_system_fcntl_h): Likewise. + * lib/stat.c (__need_system_sys_stat_h): Likewise. + * lib/lstat.c (__need_system_sys_stat_h): Likewise. + Reported by Michael Goffioul . + +2011-08-25 Karl Berry + + * config/srclist.txt (ylwrap): new try. + * build-aux/ylwrap: new file. + +2011-08-23 Bruno Haible + + tmpdir: Use a good default directory on native Windows. + * lib/tmpdir.c: Include , pathmax.h. + (P_tmpdir): Default to _P_tmpdir on native Windows. + (path_search): On native Windows, try the value returned by GetTempPath + before trying P_tmpdir. + * modules/tmpdir (Depends-on): Add pathmax. + Suggested by John Darrington . + +2011-08-20 Reuben Thomas + + doc: fix typo in README-release + * top/README-release: Capitalize first word of a sentence. + +2011-08-19 Jim Meyering + + fts: do not exhaust memory when processing million-entry directories + Before this change, traversing (via rm -rf, find, du, etc.) an N-entry + directory would require about 256*N bytes of memory. Thus, it was + easy to construct a directory too large to be processed by any of + those tools. With this change, fts' maximum memory utilization is + now limited to around 30MB. + * lib/fts.c (FTS_MAX_READDIR_ENTRIES): Define. + (fts_read): When we've processed the final entry (i.e., when + ->fts_link is NULL) and fts_dirp is non-NULL, call fts_build + using the parent entry to read any remaining entries. Dispatch + depending on what fts_build returns: + - NULL+stop, aka failure: stop + - NULL otherwise: move up in the dir hierarchy + - non-NULL: handle this new entry + (fts_build): Declare and use new local, continue_readdir. + Prepare to be called from fts_read, when the entries + from a partially-read directory have just been exhausted. + In that case, we'll skip the opendir and instead use the parent's + fts_dirp and derive dir_fd from that. + Finally, in the readdir loop, if we read max_entries entries, + exit the loop ensuring *not* to call closedir. This is required + so that fts_dirp can be reused on a subsequent call. + Prompted by Ben England's report of memory exhaustion in find + and rm -rf vs. NFS: https://bugzilla.redhat.com/719749. + + maint: fts: move decl of `dp' down into while loop; split a long line + * lib/fts.c (fts_build): No semantic change. + + fts: add/use new struct member, fts_dirp + We are about to use this to manage any directory with + too many entries to read all of them into memory at once. + To do that, we'll need to save the DIR* pointer in each + affected FTSENT struct. + * lib/fts_.h: Include . + (struct FTSENT) [fts_dirp]: New member. + * lib/fts.c (closedir_and_clear): Define. + Use it in place of closedir so that we are sure to + clear the new fts_dirp member when done with it. + (fts_alloc): Initialize the new member. + (fts_lfree): Free, if needed. + + maint: fts: give __opendir2 a new parameter and rename + * lib/fts.c (__opendir2): Give it a new parameter, Pdir_fd, rather + than surreptitiously using sole caller's "dir_fd". + (fts_opendir): Rename from __opendir2. + + maint: fts.c: remove __opendir2's now-unused parameter, oflag + * lib/fts.c (__opendir2): Remove unused parameter, oflag. + + maint: fts.c: correct off-by-one indentation + * lib/fts.c (fts_build): Correct indentation, change style + of a couple of block comments, and bracing style. + + maint: fts.c: move __opendir2 #define "up" out of function body + * lib/fts.c (__opendir2): Move "up". No semantic change. + + maint: fts.c: remove #if-0'd FTS_WHITEOUT code + * lib/fts.c: Remove #if-0'd FTS_WHITEOUT code. It's been #if-0'd + out for a long time and besides was useful only on BSD systems. + +2011-08-18 Paul Eggert + + regex: port to Stratus OpenVOS + * lib/regex_internal.h (internal_function) [!_LIBC]: Simply + define to empty, rather than attempting nonportable optimizations. + Problem reported by Paul Green in: + http://lists.gnu.org/archive/html/bug-diffutils/2011-08/msg00047.html + and fix suggested by Eric Blake in: + http://lists.gnu.org/archive/html/bug-gnulib/2011-08/msg00143.html + +2011-08-17 Eric Blake + + getcwd: fix test failures on mingw + * lib/getcwd.c (__getcwd): Early exit for ERANGE. + * tests/test-getcwd.c (test_abort_bug, test_long_name): Don't fail + test if long directory cannot be created, and allow mingw errno. + + getcwd-lgpl: fix m4 to match relaxed test for BSD + * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Relax probe. + (gl_FUNC_GETCWD_SIGNATURE): New macro. + (gl_FUNC_GETCWD_LGPL, gl_FUNC_GETCWD): Use it. + * doc/posix-functions/getcwd.texi (getcwd): Tweak mentions of + signature problem. + + getcwd: fix compilation on mingw64 + * lib/unistd.in.h (includes) [mingw]: Include for + getcwd. + Reported by Marc-André Lureau. + + pipe2: silence compiler warning + * lib/pipe2.c (pipe2): Hide label if it is not used. + +2011-08-15 Ben Pfaff + + relocatable-prog: fix link error + * modules/relocatable-prog (configure.ac) [RELOCATABLE]: Also + invoke AC_LIBOBJ([relocatable]). This invocation was previously + in the gl_RELOCATABLE_LIBRARY macro. That invocation was moved + into modules/relocatable-lib without noticing that + modules/relocatable-prog also invokes gl_RELOCATABLE_LIBRARY and + also needs to build relocatable.c. + +2011-08-12 Paul Eggert + + getaddrinfo: fix sh typo in gai_strerrorA decl checking + * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix typo in the generated + shell code: it contained a 'break' that was not in a loop. + Apparently the macro assumed that AC_CHECK_DECLS is implemenented + via a shell-language loop; this may have been true in old Autoconf + versions, but it's not true in Autoconf 2.68. I found this bug + when testing coreutils git on Solaris 8, whose shell complains + about the syntax error. + +2011-08-12 Simon Josefsson + + * lib/base64.c: Fix comment to reference RFC 4648. + Suggested by Bruno Haible and Gijs van Tulder + . + +2011-08-11 Paul Eggert + + * build-aux/bootstrap (slurp): Remove obsolescent gettext.m4 patch. + + po/Makefile.in.in: fix make -q problem + * build-aux/po/Makefile.in.in (check-macro-version): Remove this + rule, since there's no file named 'check-macro-version' and its + use as a file breaks make -q. + (all): Don't depend on check-macro-version. + (CHECK_MACRO_VERSION): New macro. + (stamp-po): Use it. + + configmake: fix make -q problem + * modules/configmake (configmake.h): Update configmake.h's time stamp + even if the file does not change. Otherwise, 'make -q' fails. + Problem reported by Simon Josefsson in + . + +2011-08-11 Jim Meyering + + git-version-gen: correct the advice in a comment + * build-aux/git-version-gen: Correct comment. + Don't recommend to list .tarball-version in .gitignore. + +2011-08-10 Paul Eggert + + base64: fix off-by-one buffer size bug + Problem and (trivial) fix reported by Gijs van Tulder in + . + * lib/base64.c (base64_decode_alloc_ctx): Allocate one more byte. + * tests/test-base64.c (main): Catch the bug. + +2011-08-10 Eric Blake + + closein: correct comments + * lib/closein.c (close_stdin): Improve comments. + +2011-08-09 Bruno Haible + + More tests for 'fseeko'. + * tests/test-fseeko3.c: New file, from Eric Blake. + * tests/test-fseeko3.sh: New file. + * modules/fseeko-tests (Files): Add them. + (TESTS): Add test-fseeko3.sh. + (check_PROGRAMS): Add test-fseeko3. + +2011-08-09 Eric Blake + + fseeko: remove unneeded hack + * lib/fseeko.c (fseeko): Don't special-case SEEK_END. + + fseeko: fix bug on glibc + * lib/fseeko.c (fseeko): Set stream offset to match fd offset. + Reported by John W. Eaton. + +2011-08-08 Bruno Haible + + unictype/base: Fix interoperability with preinstalled libunistring. + * modules/unictype/base (configure.ac): Bump minimum version to 0.9.4. + Reported by Simon Josefsson. + +2011-08-08 Bruno Haible + + iswblank: Detect declaration correctly. + * m4/iswblank.m4 (gl_FUNC_ISWBLANK): Use correct headers in + AC_CHECK_DECLS invocation. + +2011-08-08 Bruno Haible + + tcgetsid: Detect declaration correctly. + * m4/tcgetsid.m4 (gl_FUNC_TCGETSID): Use correct headers in + AC_CHECK_DECLS invocation. + Reported by Simon Josefsson. + +2011-08-08 Eric Blake + + largefile: fix typo that regressed large file support + * modules/largefile (configure.ac-early): Fix section name. + +2011-08-06 Karl Berry + + * MODULES.html.sh (func_all_files): _Noreturn is no longer + a separate module. + +2011-08-05 Simon Josefsson + + openat: Fix warnings and commens when building unlinkat.c on Hurd. + * lib/unlinkat.c: Mention Hurd in comments. Include stdlib.h to + get prototype for free. + +2011-08-04 Bruno Haible + + Tests for module 'pathmax'. + * modules/pathmax-tests: New file. + * tests/test-pathmax.c: New file. + + canonicalize-lgpl: Support larger filenames on the Hurd. + * lib/canonicalize-lgpl.c (__realpath): Bump path_max fallback to 8192. + Reported by Paul Eggert. + + pathmax: Leave PATH_MAX undefined on the Hurd, and a constant otherwise. + * lib/pathmax.h (PATH_MAX): Leave it undefined on GNU/Hurd. + * lib/chdir-long.h: Include pathmax.h. + * lib/clean-temp.c (PATH_MAX): Remove code that is done by pathmax.h. + * lib/getcwd.c: Include pathmax.h instead of . + (PATH_MAX): Remove code that is done by pathmax.h. + * lib/canonicalize.c (PATH_MAX): Provide a fallback value. + * lib/tmpfile.c: Add a comment. + * m4/pathmax.m4 (gl_PATHMAX): Don't test for pathconf. + * modules/chdir-long (Depends-on): Add pathmax. + * modules/getcwd (Depends-on): Add pathmax. + * tests/test-getcwd.c (test_abort_bug): Avoid syntax error when PATH_MAX + is not defined. + * doc/posix-headers/limits.texi: Mention the pathmax module. + * NEWS: Mention the change. + +2011-08-02 Bruno Haible + + pthread_sigmask: Actually use results of gl_THREADLIB. + * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): Test and require + gl_THREADLIB, not gl_[]THREADLIB. + Reported by Eric Blake. + +2011-08-02 Jim Meyering + + maint.mk: relax the default _gl_TS_function_match regexp + * top/maint.mk (_gl_TS_function_match): Don't require at least one + space between function name and "(" in an "extern" declaration. + That would fail to match a decl with no space there: extern void foo(); + +2011-07-31 Iain Nicol + + git-version-gen: document that EXTRA_DIST must include .version + * build-aux/git-version-gen: In the how-to-use comment, document + that EXTRA_DIST must include .version. Otherwise, "make distcheck" + will fail when run from an unpacked distribution tarball. + +2011-08-01 Bruno Haible + + wctype-h: Fix last change. + * m4/wctype_h.m4 (gl_WCTYPE_H): If towlower is defined, set + REPLACE_TOWLOWER to 0. + Reported by Sam Steingold . + +2011-07-31 Bruno Haible + + frexpl: Update autoconf test. + * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Update overrides of , + according to changes of 2011-06-20. + +2011-07-31 Bruno Haible + + sys_utsname: Add support for Minix. + * lib/sys_utsname.in.h [Minix]: Include before + . + * m4/sys_utsname_h.m4 (gl_SYS_UTSNAME_H): Likewise. + * doc/posix-headers/sys_utsname.texi: Document the Minix problem. + +2011-07-31 Bruno Haible + + strings: Add support for Minix. + * lib/strings.in.h [Minix]: Include before . + * m4/strings_h.m4 (gl_HEADER_STRINGS_H_BODY): Likewise. + * doc/posix-headers/strings.texi: Document the Minix problem. + +2011-07-31 Bruno Haible + + wctype-h: Add support for Minix. + * m4/wctype_h.m4 (gl_WCTYPE_H): Test whether towlower is declared. Set + REPLACE_TOWLOWER. + * modules/wctype-h (Makefile.am): Substitute REPLACE_TOWLOWER. + * lib/wctype.in.h (towlower, towupper): Test REPLACE_TOWLOWER, not + REPLACE_ISWCNTRL. + +2011-07-31 Paul Eggert + + * lib/xalloc.h (DEFAULT_MXFAST): Track 64-bit glibc. + This is a performance improvement for 64-bit hosts: it causes the + value of DEFAULT_MXFAST to track what's in glibc on such hosts. + +2011-07-31 Bruno Haible + + stdioext: Add support for Minix. + * lib/fbufmode.c (fbufmode) [__minix]: Add conditional code. + * lib/fpurge.c (fpurge): Likewise. + * lib/freadahead.c (freadahead): Likewise. + * lib/freadable.c (freadable): Likewise. + * lib/freading.c (freading): Likewise. + * lib/freadptr.c (freadptr): Likewise. + * lib/freadseek.c (freadptrinc): Likewise. + * lib/fseeko.c (rpl_fseeko): Likewise. + * lib/fseterr.c (fseterr): Likewise. + * lib/fwritable.c (fwritable): Likewise. + * lib/fwriting.c (fwriting): Likewise. + * lib/fflush.c (clear_ungetc_buffer): Update comment. + * m4/fpending.m4 (gl_PREREQ_FPENDING): Add a variant for Minix. + +2011-07-31 Bruno Haible + + errno: Port to Minix. + * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Test also whether ENETRESET and + ECONNABORTED are defined. + * lib/errno.in.h (ENETRESET, GNULIB_defined_ENETRESET, ECONNABORTED, + GNULIB_defined_ECONNABORTED): New macros. + * lib/strerror-override.h (strerror_override): Test also + GNULIB_defined_ENETRESET, GNULIB_defined_ECONNABORTED. + * lib/strerror-override.c (strerror_override): Handle also ENETRESET, + ECONNABORTED. + * doc/posix-headers/errno.texi: Mention the Minix problem. + +2011-07-31 Bruno Haible + + Work around declaration collisions on Minix. + * m4/mbsinit.m4 (gl_FUNC_MBSINIT): If mbsinit is declared but not + defined, set REPLACE_MBSINIT. + * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): If mbrtowc is declared but not + defined, set REPLACE_MBRTOWC. + * m4/mbrlen.m4 (gl_FUNC_MBRLEN): If mbrlen is declared but not defined, + set REPLACE_MBRLEN. + * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): If mbsrtowcs is declared but not + defined, set REPLACE_MBSRTOWCS. + * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): If wcrtomb is declared but not + defined, set REPLACE_WCRTOMB. + * m4/wcsrtombs.m4 (gl_FUNC_WCSRTOMBS): If wcsrtombs is declared but not + defined, set REPLACE_WCSRTOMBS. + +2011-07-31 Bruno Haible + + Add support for Minix with ACK compiler. + * m4/gnulib-common.m4 (gl_PROG_AR_RANLIB): New macro. + * gnulib-tool (func_import, func_create_testdir): Emit invocation of + gl_PROG_AR_RANLIB instead of AC_PROG_RANLIB. + +2011-07-31 Bruno Haible + + Documentation about Minix. + * doc/posix-headers/*.texi: Add info about Minix 3.1.8. + * doc/glibc-headers/*.texi: Likewise. + * doc/posix-functions/*.texi: Likewise. + * doc/glibc-functions/*.texi: Likewise. + +2011-07-31 Bruno Haible + + snippet/warn-on-use: Fix indentation. + * m4/warn-on-use.m4 (gl_WARN_ON_USE_PREPARE): Fix indentation. + +2011-07-25 Jim Meyering + + tests: test-update-copyright.sh: remove unnecessary "rm" commands + * tests/test-update-copyright.sh: Remove unused rm -f $TMP.*.bak + commands. + +2011-07-27 Jim Meyering + + maint.mk: avoid sc_prohibit_always-defined_macros failure in coreutils + * top/maint.mk (gl_extract_significant_defines_): Now that + SA_RESETHAND and SA_RESTART are #defined (albeit conditionally) in + gnulib/lib/signal.in.h, and now that we recommend to + define-if-undefined those two symbols in application code, + we must filter them out of the "significant" list. + This avoids a "make syntax-check" failure in coreutils. + +2011-07-26 Eric Blake + + warnings: add comments about previous patch + * m4/absolute-header.m4: Document AS_VAR_PUSHDEF limitation. + * m4/include_next.m4: Likewise. + * m4/warn-on-use.m4: Likewise. + * m4/warnings.m4: Likewise, and simplify use. + Suggested by Stefano Lattarini. + + include-next, warnings: support older autoconf + * m4/include_next.m4 (gl_NEXT_HEADERS_INTERNAL): Use + AS_VAR_PUSHDEF in a way that works with older autoconf. + * m4/warnings.m4 (gl_WARN_ADD): Likewise. + Reported by Daniel P. Berrange. + +2011-07-25 Bruno Haible + + fseek, ftell: Fix doc. + * doc/posix-functions/fseek.texi: Reword statement about + AC_SYS_LARGEFILE. + * doc/posix-functions/ftell.texi: Likewise. + +2011-07-25 Paul Eggert + Bruno Haible + + Add dependencies to the 'largefile' module. + * modules/fopen (Depends-on): Add 'largefile'. + * modules/freopen (Depends-on): Likewise. + * modules/fseeko (Depends-on): Likewise. + * modules/ftello (Depends-on): Likewise. + * modules/glob (Depends-on): Likewise. + * modules/lseek (Depends-on): Likewise. + * modules/lstat (Depends-on): Likewise. + * modules/mkostemp (Depends-on): Likewise. + * modules/mkostemps (Depends-on): Likewise. + * modules/mkstemp (Depends-on): Likewise. + * modules/mkstemps (Depends-on): Likewise. + * modules/open (Depends-on): Likewise. + * modules/openat (Depends-on): Likewise. + * modules/pread (Depends-on): Likewise. + * modules/pwrite (Depends-on): Likewise. + * modules/scandir (Depends-on): Likewise. + * modules/stat (Depends-on): Likewise. + * modules/tmpfile (Depends-on): Likewise. + * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Do not require AC_SYS_LARGEFILE, + since the containing module now depends on the largefile module. + * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Likewise. + * doc/posix-functions/fopen.texi: Mention that the problem of 32-bit + off_t is fixed by gnulib. + * doc/posix-functions/freopen.texi: Likewise. + * doc/posix-functions/fseeko.texi: Likewise. + * doc/posix-functions/fstatat.texi: Likewise. + * doc/posix-functions/ftello.texi: Likewise. + * doc/posix-functions/glob.texi: Likewise. + * doc/posix-functions/lseek.texi: Likewise. + * doc/posix-functions/lstat.texi: Likewise. + * doc/posix-functions/mkstemp.texi: Likewise. + * doc/posix-functions/open.texi: Likewise. + * doc/posix-functions/openat.texi: Likewise. + * doc/posix-functions/pread.texi: Likewise. + * doc/posix-functions/pwrite.texi: Likewise. + * doc/posix-functions/scandir.texi: Likewise. + * doc/posix-functions/stat.texi: Likewise. + * doc/posix-functions/tmpfile.texi: Likewise. + * doc/glibc-functions/mkostemp.texi: Likewise. + * doc/glibc-functions/mkostemps.texi: Likewise. + * doc/glibc-functions/mkstemps.texi: Likewise. + +2011-07-25 Bruno Haible + + fcntl: Move AC_LIBOBJ invocation to module description. + * m4/fcntl.m4 (gl_REPLACE_FCNTL): Don't invoke AC_LIBOBJ. + * modules/fcntl (configure.ac): Invoke AC_LIBOBJ. + + fcntl: Remove call-in from fchdir.m4. + * m4/fcntl.m4 (gl_FUNC_FCNTL): Conditionally invoke gl_TEST_FCHDIR. + * m4/fchdir.m4 (gl_FUNC_FCHDIR): Don't invoke gl_REPLACE_FCNTL. + + dup3: Remove potential call-in from fchdir.m4. + * m4/dup3.m4 (gl_FUNC_DUP3): Add comment about fchdir. + * m4/fchdir.m4 (gl_FUNC_FCHDIR): Remove comment about dup3. + + dup2: Move AC_LIBOBJ invocation to module description. + * m4/dup2.m4 (gl_REPLACE_DUP2): Remove macro. + (gl_FUNC_DUP2): Instead of gl_REPLACE_DUP2, just set REPLACE_DUP2 to 1. + Don't invoke AC_LIBOBJ. + * modules/dup2 (configure.ac): Invoke AC_LIBOBJ. + + dup2: Remove call-in from fchdir.m4. + * m4/dup2.m4 (gl_FUNC_DUP2): Conditionally invoke gl_TEST_FCHDIR. + * m4/fchdir.m4 (gl_FUNC_FCHDIR): Don't invoke gl_REPLACE_DUP2. + + fclose: Move AC_LIBOBJ invocation to module description. + * m4/fclose.m4 (gl_REPLACE_FCLOSE): Remove macro. + (gl_FUNC_FCLOSE): Instead of gl_REPLACE_FCLOSE, just set REPLACE_FCLOSE + to 1. + * modules/fclose (configure.ac): Invoke AC_LIBOBJ. + + fclose: Remove call-in from close.m4. + * m4/fclose.m4 (gl_FUNC_FCLOSE): Invoke gl_FUNC_CLOSE. + * m4/close.m4 (gl_FUNC_CLOSE): Don't invoke gl_REPLACE_FCLOSE. + + close: Move AC_LIBOBJ invocation to module description. + * m4/close.m4 (gl_REPLACE_CLOSE): Remove macro. + (gl_FUNC_CLOSE): Instead of gl_REPLACE_CLOSE, just set REPLACE_CLOSE to + 1. + * modules/close (configure.ac): Invoke AC_LIBOBJ. + + close: Remove call-in from fchdir.m4. + * m4/close.m4 (gl_FUNC_CLOSE): Conditionally invoke gl_TEST_FCHDIR. + * m4/fchdir.m4 (gl_FUNC_FCHDIR): Don't invoke gl_REPLACE_CLOSE. + + open: Move AC_LIBOBJ invocation to module description. + * m4/open.m4 (gl_REPLACE_OPEN): Remove macro. + (gl_FUNC_OPEN): Instead of gl_REPLACE_OPEN, just set REPLACE_OPEN to 1. + * modules/open (configure.ac): Invoke AC_LIBOBJ and gl_PREREQ_OPEN. + + open: Remove call-in from fchdir.m4. + * m4/open.m4 (gl_FUNC_OPEN): Conditionally invoke gl_TEST_FCHDIR. + * m4/fchdir.m4 (gl_FUNC_FCHDIR): Don't invoke gl_REPLACE_OPEN. + + fchdir: Start to remove gl_REPLACE_* idiom. + * m4/fchdir.m4 (gl_TEST_FCHDIR): New macro. + (gl_FUNC_FCHDIR): Invoke it. + +2011-07-25 Paul Eggert + + * lib/ftell.c (ftell): Comment out cast. + + close: use gl_REPLACE_FCLOSE only if defined + * m4/close.m4 (gl_REPLACE_CLOSE): Use gl_REPLACE_FCLOSE only if it + is defined. The close module doesn't depend on the fclose module + any more, so gl_REPLACE_CLOSE's existence cannot be assumed. See + . + I reproduced the problem with "./gnulib-tool --test close sys_socket". + +2011-07-24 Jim Meyering + + test-select.h: avoid warning when using gcc's -Wmissing-declarations + * tests/test-select.h (test_function): Declare as "static". + +2011-07-24 Bruno Haible + + doc: Mention the effects of AC_SYS_LARGEFILE. + * doc/posix-functions/aio_cancel.texi: Mention the effects of AC_SYS_LARGEFILE + on this function. + * doc/posix-functions/aio_error.texi: Likewise. + * doc/posix-functions/aio_fsync.texi: Likewise. + * doc/posix-functions/aio_read.texi: Likewise. + * doc/posix-functions/aio_return.texi: Likewise. + * doc/posix-functions/aio_suspend.texi: Likewise. + * doc/posix-functions/aio_write.texi: Likewise. + * doc/posix-functions/fgetpos.texi: Likewise. + * doc/posix-functions/fopen.texi: Likewise. + * doc/posix-functions/freopen.texi: Likewise. + * doc/posix-functions/fsetpos.texi: Likewise. + * doc/posix-functions/fstatvfs.texi: Likewise. + * doc/posix-functions/ftruncate.texi: Likewise. + * doc/posix-functions/ftw.texi: Likewise. + * doc/posix-functions/getrlimit.texi: Likewise. + * doc/posix-functions/glob.texi: Likewise. + * doc/posix-functions/lio_listio.texi: Likewise. + * doc/posix-functions/lockf.texi: Likewise. + * doc/posix-functions/mkstemp.texi: Likewise. + * doc/posix-functions/mmap.texi: Likewise. + * doc/posix-functions/nftw.texi: Likewise. + * doc/posix-functions/openat.texi: Likewise. + * doc/posix-functions/opendir.texi: Likewise. + * doc/posix-functions/posix_fadvise.texi: Likewise. + * doc/posix-functions/posix_fallocate.texi: Likewise. + * doc/posix-functions/pread.texi: Likewise. + * doc/posix-functions/pwrite.texi: Likewise. + * doc/posix-functions/readdir.texi: Likewise. + * doc/posix-functions/readdir_r.texi: Likewise. + * doc/posix-functions/rewinddir.texi: Likewise. + * doc/posix-functions/scandir.texi: Likewise. + * doc/posix-functions/seekdir.texi: Likewise. + * doc/posix-functions/setrlimit.texi: Likewise. + * doc/posix-functions/statvfs.texi: Likewise. + * doc/posix-functions/telldir.texi: Likewise. + * doc/posix-functions/tmpfile.texi: Likewise. + * doc/posix-functions/truncate.texi: Likewise. + * doc/glibc-functions/fallocate.texi: Likewise. + * doc/glibc-functions/fstatfs.texi: Likewise. + * doc/glibc-functions/fts_children.texi: Likewise. + * doc/glibc-functions/fts_read.texi: Likewise. + * doc/glibc-functions/getdirentries.texi: Likewise. + * doc/glibc-functions/mkostemp.texi: Likewise. + * doc/glibc-functions/mkostemps.texi: Likewise. + * doc/glibc-functions/mkstemps.texi: Likewise. + * doc/glibc-functions/preadv.texi: Likewise. + * doc/glibc-functions/pwritev.texi: Likewise. + * doc/glibc-functions/sendfile.texi: Likewise. + * doc/glibc-functions/statfs.texi: Likewise. + +2011-07-24 Bruno Haible + + doc: Fix typo. + * doc/posix-functions/fstat.texi: Talk about fstat, not stat. + +2011-07-24 Bruno Haible + + doc: Mention fsusage. + * doc/posix-functions/statvfs.texi: Mention the fsusage module. + +2011-07-24 Bruno Haible + + doc: Mention new glibc headers and functions. + * doc/glibc-headers/gshadow.texi: New file. + * doc/glibc-functions/endsgent.texi: New file. + * doc/glibc-functions/fgetsgent.texi: New file. + * doc/glibc-functions/fgetsgent_r.texi: New file. + * doc/glibc-functions/getsgent.texi: New file. + * doc/glibc-functions/getsgent_r.texi: New file. + * doc/glibc-functions/getsgnam.texi: New file. + * doc/glibc-functions/getsgnam_r.texi: New file. + * doc/glibc-functions/putsgent.texi: New file. + * doc/glibc-functions/setsgent.texi: New file. + * doc/glibc-functions/sgetsgent.texi: New file. + * doc/glibc-functions/sgetsgent_r.texi: New file. + * doc/glibc-functions/malloc_info.texi: New file. + * doc/glibc-functions/preadv.texi: New file. + * doc/glibc-functions/pwritev.texi: New file. + * doc/glibc-functions/register_printf_modifier.texi: New file. + * doc/glibc-functions/register_printf_specifier.texi: New file. + * doc/glibc-functions/register_printf_type.texi: New file. + * doc/glibc-functions/pthread_attr_getaffinity_np.texi: New file. + * doc/glibc-functions/pthread_attr_setaffinity_np.texi: New file. + * doc/glibc-functions/pthread_getaffinity_np.texi: New file. + * doc/glibc-functions/pthread_getname_np.texi: New file. + * doc/glibc-functions/pthread_mutex_consistent_np.texi: New file. + * doc/glibc-functions/pthread_mutexattr_getrobust_np.texi: New file. + * doc/glibc-functions/pthread_mutexattr_setrobust_np.texi: New file. + * doc/glibc-functions/pthread_setaffinity_np.texi: New file. + * doc/glibc-functions/pthread_setname_np.texi: New file. + * doc/glibc-functions/pthread_sigqueue.texi: New file. + * doc/glibc-functions/pthread_timedjoin_np.texi: New file. + * doc/glibc-functions/pthread_tryjoin_np.texi: New file. + * doc/glibc-functions/qsort_r.texi: New file. + * doc/glibc-functions/quick_exit.texi: New file. + * doc/glibc-functions/syncfs.texi: New file. + * doc/gnulib.texi: Include them. + (Glibc gshadow.h, Glibc sys/uio.h): New sections. + * doc/posix-functions/psiginfo.texi: Fix info about glibc version. + * doc/posix-functions/pthread_mutex_consistent.texi: Likewise. + * doc/posix-functions/pthread_mutexattr_getrobust.texi: Likewise. + * doc/posix-functions/pthread_mutexattr_setrobust.texi: Likewise. + * doc/glibc-functions/execvpe.texi: Likewise. + +2011-07-24 Paul Eggert + + ftell: don't include + * lib/ftell.c: Don't include . is now + guaranteed to define off_t, and the ftell module depends on the + stdio module. + + ftell: do not assume wraparound signed arithmetic + * lib/ftell.c: Include . + (ftell): Don't assume wraparound signed arithmetic. + +2011-07-24 Bruno Haible + + close: No longer depend on module 'fclose'. + * modules/close (Depends-on): Remove fclose. + * NEWS: Mention the change. + Suggested by Sam Steingold . + +2011-07-24 Bruno Haible + + fsusage: Enable large volume support on AIX >= 5.2. + * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): If 'struct statvfs64' has a + larger f_blocks field than 'struct statvfs', define STAT_STATVFS64 + instead of STAT_STATVFS. + * lib/fsusage.c (get_fs_usage) [STAT_STATVFS64]: Use statvfs64. + + fsusage: Restore previous behaviour on AIX, Cygwin, Interix. + * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Enforce a 64-bit struct statvfs + f_blocks field only on MacOS X. + + fsusage: Support large volumes on glibc/Hurd, HP-UX, Solaris, MacOS X. + * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Require AC_SYS_LARGEFILE. + * modules/fsusage (Depends-on): Add largefile. + +2011-07-24 Paul Eggert + + * README: Modernize discussion of signed integers. + Assuming overflow wraparound is no longer safe. + Mention ones' complement and signed magnitude. + +2011-07-22 Bruno Haible + + select tests, pselect tests: Refactor. + * tests/test-select.h: New file, extracted from tests/test-select.c. + (select_fn): New type. + (test, do_select, do_select_nowait, do_select_wait, test_tty, + test_connect_first, test_accept_first, test_pair, test_socket_pair, + test_pipe): Add my_select argument. + (test_function): Renamed from main. Add my_select argument. + * tests/test-select.c: Move most code to tests/test-select.h. Include + test-select.h. + * modules/select-tests (Files): Add tests/test-select.h. + * tests/test-pselect.c: Include test-select.h instead of test-select.c. + (my_select, main): New functions. + * modules/pselect-tests (Files): Add tests/test-select.h, + tests/macros.h, tests/signature.h. + (Depends-on): Remove select-tests. Add dependencies of test-select.h. + (configure.ac): Check for . + +2011-07-22 Bruno Haible + + sys_select tests: Check the signature of FD_*. + * tests/test-select.c (FD_CLR, FD_ISSET, FD_SET, FD_ZERO): Move + signature tests from here... + * tests/test-sys_select.c (FD_CLR, FD_ISSET, FD_SET, FD_ZERO): ... to + here. + * modules/sys_select-tests (Files): Add tests/signature.h. + +2011-07-22 Paul Eggert + + largefile: new module, replacing large-inode + Pádraig Brady suggested this in . + * MODULES.html.sh: Add largefile, remove large-inode. + * modules/largefile, m4/largefile.m4: New files. + * modules/large-inode, m4/large-inode.m4: Remove. + + fsusage: port to MacOS X 10.7 with 4 TiB file systems + * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Reject statvfs + implementations that use only 32 bits to count blocks. + On typical hosts with 1024-byte blocks, this fails with file + systems as small as 4 TiB. Problem reported by Herb Wartens + and this should also fix a similar + problem reported by Tim Spriggs . + + large-inode: New module + * MODULES.html.sh: Add it. + * modules/large-inode, m4/large-inode.m4: New files. + + extensions: Enable extensions on MacOS X 10.5 and later. + * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Define _DARWIN_C_SOURCE. + +2011-07-22 Kamil Dudka + + file-has-acl: use acl_extended_file_nofollow if available + * lib/acl-internal.h (HAVE_ACL_EXTENDED_FILE): New macro. + (acl_extended_file): New macro. + * lib/file-has-acl.c (file_has_acl): Use acl_extended_file_nofollow. + * m4/acl.m4 (gl_FUNC_ACL): Check for acl_extended_file_nofollow. + +2011-07-21 Bruno Haible + + Declare system functions in a way that works with C++. + * m4/fdopendir.m4 (gl_FUNC_FDOPENDIR) [C++]: In the test program, + declare fdopendir as extern "C". + * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS) [C++]: In the test program, + declare frexpl as extern "C". + * m4/getaddrinfo.m4 (gl_GETADDRINFO) [C++]: In the test program, + declare gai_strerror as extern "C". + * m4/getdomainname.m4 (gl_FUNC_GETDOMAINNAME) [C++]: In the test + programs, declare gai_strerror as extern "C". + * m4/getlogin_r.m4 (gl_FUNC_GETLOGIN_R) [C++]: In the test program, + declare getlogin_r as extern "C". + * m4/ioctl.m4 (gl_FUNC_IOCTL) [C++]: In the test program, declare ioctl + as extern "C". + * m4/ldexpl.m4 (gl_FUNC_LDEXPL_WORKS) [C++]: In the test program, + declare ldexpl as extern "C". + * m4/logb.m4 (gl_FUNC_LOGB) [C++]: In the test programs, declare logb + as extern "C". + * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS) [C++]: In the test + program, declare getmntinfo as extern "C". + * m4/stpncpy.m4 (gl_FUNC_STPNCPY) [C++]: In the test program, declare + stpncpy as extern "C". + * m4/strerror_r.m4 (gl_FUNC_STRERROR_R_WORKS) [C++]: In the test + program, declare __xpg_strerror_r as extern "C". + * m4/strndup.m4 (gl_FUNC_STRNDUP) [C++]: In the test program, declare + strndup as extern "C". + * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT) [C++]: In the test program, + declare memset and bzero as extern "C". + Reported by Sam Steingold . + +2011-07-12 Jim Meyering + + maint.mk: prohibit inclusion of "verify.h" without use + * top/maint.mk (sc_prohibit_verify_without_use): New rule. + +2011-07-19 Pádraig Brady + + timer-time: A new module to check for timer_settime() + * m4/timer_time.m4: Check for the posix function. + * modules/timer-time: Add the new module. + * MODULES.html.sh (Compat checks for POSIX:2008 functions): + Mention it. + +2011-07-19 Paul Eggert + Bruno Haible + + pthread_sigmask: assume POSIX threads if --avoid=threadlib + * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): If gl_THREADLIB is + not defined, assume POSIX threads and look for pthread_sigmask in + $LIBS, without changing $CPPFLAGS. + +2011-07-19 Bruno Haible + + strstr: Update cross-compilation guess. + * m4/strstr.m4 (gl_FUNC_STRSTR): On glibc > 2.12 with x86 or x86_64 + CPUs, guess no, in view of glibc + BZ #12100 . + Suggested by Eric Blake. Reported by Reuben Thomas. + +2011-07-19 Pádraig Brady + + getopt-gnu: suppress core dumps from detection code + * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Use the nocrash module + to suppress core dumps that may well occur on glibc systems. + * modules/getopt-gnu: Depend on nocrash. + +2011-07-16 Paul Eggert + + pthread_sigmask: ensure usleep is declared + * lib/pthread_sigmask.c [PTHREAD_SIGMASK_UNBLOCK_BUG]: + Include , to declare usleep. Needed on Solaris 8, + +2011-07-15 Paul Eggert + + doc: Document NonStop portability issues. + * doc/posix-functions/sigaction.texi (sigaction): + * doc/posix-headers/signal.texi (signal.h): + Document NonStop. See Joachim Schmitz in + http://lists.gnu.org/archive/html/bug-coreutils/2011-07/msg00062.html + +2011-07-15 Bruno Haible + + ffsl, ffsll: Avoid unportable behaviour. + * lib/ffsl.h (FUNC): Use 'unsigned int' instead of 'int'. + +2011-07-15 Bruno Haible + + ffs: More tests. + * tests/test-ffs.c (NBITS): New macro. + (main): Add more tests. + * tests/test-ffsl.c (NBITS): New macro. + (main): Add more tests. + * tests/test-ffsll.c (NBITS): New macro. + (main): Add more tests. + +2011-07-15 Eric Blake + + ffsl, ffsll: new modules + * modules/ffsl: New file. + * modules/ffsll: Likewise. + * m4/ffsl.m4: Likewise. + * m4/ffsll.m4: Likewise. + * lib/ffsl.c: Likewise. + * lib/ffsl.h: Likewise. + * lib/ffsll.c: Likewise. + * m4/string_h.m4 (gl_HEADER_STRING_H_BODY) + (gl_HEADER_STRING_H_DEFAULTS): Add defaults. + * modules/string (Makefile.am): Substitute witnesses. + * lib/strings.in.h (ffsl, ffsll): Declare. + * modules/ffsl-tests: New test file. + * modules/ffsll-tests: Likewise. + * tests/test-ffsl.c: Likewise. + * tests/test-ffsll.c: Likewise. + * MODULES.html.sh (Integer arithmetic functions): Mention it. + * doc/glibc-functions/ffsl.texi (ffsl): Likewise. + * doc/glibc-functions/ffsll.texi (ffsll): Likewise. + + ffs: fix m4 prerequisite + * m4/ffs.m4 (gl_FUNC_FFS): Require strings.h defaults. + + ffs: avoid undefined behavior + * lib/ffs.c (ffs): Provide fallback for non-32-bit int. + * tests/test-ffs.c (naive, main): Avoid signed shifts. + Reported by Bruno Haible. + +2011-07-12 Bruno Haible + + pthread_sigmask: Rely on module 'threadlib'. + * modules/pthread_sigmask (Depends-on): Add threadlib. + * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): Assume gl_THREADLIB + is defined. + +2011-07-12 Bruno Haible + + regex: Depend on module 'strcase'. + * modules/regex (Depends-on): Add strcase, for strcasecmp(). + +2011-07-12 Jim Meyering + + warn-on-use: fix typo in file name + * modules/snippet/warn-on-use (Files): Correct file name: + include /snippet/ component in "build-aux/snippet/warn-on-use.h". + +2011-07-12 Bruno Haible + + strings: Document module. + * doc/posix-headers/strings.texi: Mention module 'strings'. + +2011-07-12 Bruno Haible + + Rename module '_Noreturn' to 'snippet/_Noreturn'. + * modules/snippet/_Noreturn: Renamed from modules/_Noreturn. + (Files, Makefile.am): Update. + * build-aux/snippet/_Noreturn.h: Renamed from build-aux/_Noreturn.h. + * modules/stdlib (Depends-on): Update. + +2011-07-12 Bruno Haible + + * NEWS: Mention the changes. + + Rename module 'warn-on-use' to 'snippet/warn-on-use'. + * modules/snippet/warn-on-use: Renamed from modules/warn-on-use. + (Files, Makefile.am): Update. + * build-aux/snippet/warn-on-use.h: Renamed from build-aux/warn-on-use.h. + * modules/arpa_inet (Depends-on): Update. + * modules/ctype (Depends-on): Update. + * modules/dirent (Depends-on): Update. + * modules/fcntl-h (Depends-on): Update. + * modules/glob (Depends-on): Update. + * modules/iconv-h (Depends-on): Update. + * modules/inttypes-incomplete (Depends-on): Update. + * modules/langinfo (Depends-on): Update. + * modules/locale (Depends-on): Update. + * modules/math (Depends-on): Update. + * modules/netdb (Depends-on): Update. + * modules/poll-h (Depends-on): Update. + * modules/pty (Depends-on): Update. + * modules/search (Depends-on): Update. + * modules/signal (Depends-on): Update. + * modules/spawn (Depends-on): Update. + * modules/stdio (Depends-on): Update. + * modules/stdlib (Depends-on): Update. + * modules/string (Depends-on): Update. + * modules/strings (Depends-on): Update. + * modules/sys_file (Depends-on): Update. + * modules/sys_ioctl (Depends-on): Update. + * modules/sys_select (Depends-on): Update. + * modules/sys_socket (Depends-on): Update. + * modules/sys_stat (Depends-on): Update. + * modules/sys_time (Depends-on): Update. + * modules/sys_times (Depends-on): Update. + * modules/sys_utsname (Depends-on): Update. + * modules/sys_wait (Depends-on): Update. + * modules/termios (Depends-on): Update. + * modules/time (Depends-on): Update. + * modules/unistd (Depends-on): Update. + * modules/wchar (Depends-on): Update. + * modules/wctype-h (Depends-on): Update. + * MODULES.html.sh (Support for building libraries and executables): + Update. + + Rename module 'unused-parameter' to 'snippet/unused-parameter'. + * modules/snippet/unused-parameter: Renamed from + modules/unused-parameter. + (Files, Makefile.am): Update. + * build-aux/snippet/unused-parameter.h: Renamed from + build-aux/unused-parameter.h. + * modules/selinux-h (Depends-on): Update. + * modules/unistr/base (Depends-on): Update. + * MODULES.html.sh (Core language properties): Update. + + Rename module 'link-warning' to 'snippet/link-warning'. + * modules/snippet/link-warning: Renamed from modules/link-warning. + (Files, Makefile.am): Update. + * build-aux/snippet/link-warning.h: Renamed from + build-aux/link-warning.h. + * MODULES.html.sh (Support for building libraries and executables): + Update. + + Rename module 'c++defs' to 'snippet/c++defs'. + * modules/snippet/c++defs: Renamed from modules/c++defs. + (Files, Makefile.am): Update. + * build-aux/snippet/c++defs.h: Renamed from build-aux/c++defs.h. + * modules/arpa_inet (Depends-on): Update. + * modules/ctype (Depends-on): Update. + * modules/dirent (Depends-on): Update. + * modules/fcntl-h (Depends-on): Update. + * modules/glob (Depends-on): Update. + * modules/iconv-h (Depends-on): Update. + * modules/langinfo (Depends-on): Update. + * modules/locale (Depends-on): Update. + * modules/math (Depends-on): Update. + * modules/netdb (Depends-on): Update. + * modules/poll-h (Depends-on): Update. + * modules/pty (Depends-on): Update. + * modules/search (Depends-on): Update. + * modules/signal (Depends-on): Update. + * modules/spawn (Depends-on): Update. + * modules/stdio (Depends-on): Update. + * modules/stdlib (Depends-on): Update. + * modules/string (Depends-on): Update. + * modules/strings (Depends-on): Update. + * modules/sys_ioctl (Depends-on): Update. + * modules/sys_select (Depends-on): Update. + * modules/sys_socket (Depends-on): Update. + * modules/sys_stat (Depends-on): Update. + * modules/sys_time (Depends-on): Update. + * modules/sys_wait (Depends-on): Update. + * modules/termios (Depends-on): Update. + * modules/time (Depends-on): Update. + * modules/unistd (Depends-on): Update. + * modules/wchar (Depends-on): Update. + * modules/wctype-h (Depends-on): Update. + + Rename module 'arg-nonnull' to 'snippet/arg-nonnull'. + * modules/snippet/arg-nonnull: Renamed from modules/arg-nonnull. + (Files, Makefile.am): Update. + * build-aux/snippet/arg-nonnull.h: Renamed from build-aux/arg-nonnull.h. + * modules/argv-iter (Depends-on): Update. + * modules/arpa_inet (Depends-on): Update. + * modules/dirent (Depends-on): Update. + * modules/fcntl-h (Depends-on): Update. + * modules/fnmatch (Depends-on): Update. + * modules/getopt-posix (Depends-on): Update. + * modules/glob (Depends-on): Update. + * modules/iconv-h (Depends-on): Update. + * modules/inttypes-incomplete (Depends-on): Update. + * modules/locale (Depends-on): Update. + * modules/math (Depends-on): Update. + * modules/netdb (Depends-on): Update. + * modules/search (Depends-on): Update. + * modules/signal (Depends-on): Update. + * modules/spawn (Depends-on): Update. + * modules/stdio (Depends-on): Update. + * modules/stdlib (Depends-on): Update. + * modules/string (Depends-on): Update. + * modules/strings (Depends-on): Update. + * modules/sys_socket (Depends-on): Update. + * modules/sys_stat (Depends-on): Update. + * modules/sys_time (Depends-on): Update. + * modules/sys_times (Depends-on): Update. + * modules/sys_utsname (Depends-on): Update. + * modules/time (Depends-on): Update. + * modules/unistd (Depends-on): Update. + * modules/wchar (Depends-on): Update. + * MODULES.html.sh (Support for building libraries and executables): + Update. + +2011-07-12 Paul Eggert + + Improvements on _Noreturn and related modules. + + modules/_Exit-tests: test _Noreturn too + * tests/test-_Exit.c (MTA, Charlie): New functions, taken from the + old tests/test-stdnoreturn.c. This tests the _Noreturn keyword a bit. + (main): Use them. + + stdnoreturn, stdnoreturn-tests: remove modules + They're not needed here and a bit premature for use elsewhere. See + . + * m4/stdnoreturn.m4, modules/stdnoreturn, modules/stdnoreturn-tests: + * tests/test-stdnoreturn.c: Remove files. + * MODULES.html.sh (_Noreturn ): Remove section. + * lib/openat.h, lib/sigpipe-die.h, lib/xalloc.h, lib/xmemdup0.h: + * lib/xstrtol.h: Use _Noreturn rather than including + and using noreturn. + * modules/openat, modules/sigpipe-die, modules/xalloc: + * modules/xmemdup0, modules/xstrtol: + Remove dependency on stdnoreturn. + + _Noreturn: Ignore __STDC_VERSION__; observe _MSC_VER. + * build-aux/_Noreturn.h (_Noreturn): Ignore __STDC_VERSION__. + Reparenthesize to avoid GCC warning. + Support Microsoft's syntax. + * m4/gnulib-common.m4 (gl_COMMON_BODY): Likewise. + + _Noreturn-tests: remove module + * modules/_Noreturn-tests: Remove. + * modules/stdnoreturn-tests (Files): Remove tests/test-_Noreturn.c. + * tests/test-_Noreturn.c: Remove. + * tests/test-stdnoreturn.c: Merge from the old + tests/test-_Noreturn.c, testing both noreturn and _Noreturn. + +2011-07-12 Paul Eggert + + _Noreturn, stdnoreturn, and related modules. + + * top/maint.mk: Adjust to new noreturn support. + (gl_extract_significant_defines_): Omit pattern ATTRIBUTE_NORETURN. + (def_sym_regex): Do not remove ATTRIBUTE_NORETURN. + + xalloc: use stdnoreturn.h + * lib/xalloc.h: Include . + (_GL_ATTRIBUTE_NORETURN): Remove; all uses replaced with noreturn. + * modules/xalloc (Depends-on): Add stdnoreturn. + + xstrtol: use stdnoreturn.h + * lib/xstrtol.h: Include . + (_GL_ATTRIBUTE_NORETURN): Remove; all uses replaced with noreturn. + * modules/xstrtol (Depends-on): Add stdnoreturn. + + xmemdup0: use stdnoreturn.h + * lib/xmemdup0.h: Include . + (_GL_ATTRIBUTE_NORETURN): Remove; all uses replaced with noreturn. + * modules/xmemdup0 (Depends-on): Add stdnoreturn. + + sigpipe-die: use stdnoreturn.h + * lib/sigpipe-die.h: Include . + (_GL_ATTRIBUTE_NORETURN): Remove; all uses replaced with noreturn. + * modules/sigpipe-die (Depends-on): Add stdnoreturn. + + openat: use stdnoreturn.h + * lib/openat.h: Include . + (_GL_ATTRIBUTE_NORETURN): Remove; all uses replaced with noreturn. + * modules/openat (Depends-on): Add stdnoreturn. + + * lib/openat-die.c (openat_save_fail): Modernize comment. + + * lib/xalloc-die.c (xalloc_die): Modernize comment. + + * lib/glthread/thread.h: Modernize comment. + + obstack: use _Noreturn + * lib/obstack.c (__attribute__): Remove macro. + (print_and_abort): Use _Noreturn. + + c-stack: use _Noreturn + * lib/c-stack.c (die, overflow_handler, segv_handler): + Use _Noreturn rather than __attribute__((noreturn)). + + argmatch-tests, exclude_tests: use _Noreturn + * tests/test-argmatch.c, tests/test-exclude.c (_GL_ATTRIBUTE_NORETURN): + Remove. + (ARGMATCH_DIE_DECL): Use _Noreturn instead. + + stdlib: use _Noreturn + * lib/stdlib.in.h (_GL_ATTRIBUTE_NORETURN): Remove. + (_Exit): Use _Noreturn rather than _GL_ATTRIBUTE_NORETURN. + * modules/stdlib (Depends-on): Add _Noreturn. + (stdlib.h): Depend on $(_NORETURN_H), and copy it in. + + stdnoreturn-tests: new module + * modules/stdnoreturn-tests, tests/test-stdnoreturn.c: New files. + + stdnoreturn: new module + * MODULES.html.sh (Noreturn ): New section. + * m4/stdnoreturn.m4, modules/stdnoreturn: New files. + + _Noreturn-tests: new module + * modules/_Noreturn-tests, tests/test-_Noreturn.c: New files. + + _Noreturn: new module + * MODULES.html.sh (Support for systems lacking draft ISO C 1X): + New section, mentioning it. + * build-aux/_Noreturn.h, modules/_Noreturn: New files. + + * m4/gnulib-common.m4 (gl_COMMON_BODY): Add _Noreturn. + +2011-07-11 Eric Blake + + ffs: new module + * modules/ffs: New file. + * m4/ffs.m4: Likewise. + * lib/ffs.c: Likewise. + * m4/strings_h.m4 (gl_HEADER_STRINGS_H_DEFAULTS): Add default. + * modules/strings (Makefile.am): Substitute witness. + (Depends-on): Add c++defs. + * lib/strings.in.h (ffs): Declare. + * modules/ffs-tests: New test file. + * tests/test-ffs.c: Test new module. + * MODULES.html.sh (Integer arithmetic functions): Mention it. + * doc/posix-functions/ffs.texi (ffs): Likewise. + + regex: avoid compiler warning + * lib/regex.c (includes): Include , for use of + strcasecmp in regcomp.c. + Reported by Joachim Schmitz. + +2011-07-09 Paul Eggert + + stdint: respect system's intmax_t if INTMAX_MAX + * lib/stdint.in.h (intmax_t, uintmax_t): If the system defines + INTMAX_MAX, assume its intmax_t is OK. Similarly for and + uintmax_t. This is for some Mac OS X builds, where intmax_t is + long but int64_t is long long, and where we will clash with the + system intmax_t if we override it. See + . + (INTMAX_C, UINTMAX_C): For consistency, respect the system's + INTMAX_C if INTMAX_MAX and INTMAX_C are both defined, and + similarly for UINTMAX_C. + +2011-07-08 Bruno Haible + + pthread_sigmask tests: Avoid a compiler warning. + * tests/test-pthread_sigmask1.c (main): Complain if system() returns + non-zero. + + sigprocmask tests: A better way to avoid a compiler warning. + * tests/test-sigprocmask.c: Don't include "ignore-value.h". + (main): Complain if system() returns non-zero. + * modules/sigprocmask-tests (Depends-on): Remove ignore-value. + +2011-07-08 Bruno Haible + + pthread_sigmask: Work around IRIX bug. + * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): Test for the IRIX + bug. + * lib/pthread_sigmask.c (pthread_sigmask): usleep for some time when + there may be unblocked pending signals. + * doc/posix-functions/pthread_sigmask.texi: Mention the IRIX bug. + +2011-07-08 Bruno Haible + + pthread_sigmask: Work around Cygwin bug. + * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): Test for the Cygwin + bug. + * lib/pthread_sigmask.c (pthread_sigmask): Fix the return value from + the system's pthread_sigmask function. + * doc/posix-functions/pthread_sigmask.texi: Mention the Cygwin bug. + +2011-07-08 Bruno Haible + + pthread_sigmask: Work around bug in single-threaded implementation. + * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): Test for the + FreeBSD, HP-UX, Solaris bug. + (gl_PREREQ_PTHREAD_SIGMASK): New macro. + * lib/pthread_sigmask.c: Include . + (pthread_sigmask): If HAVE_PTHREAD_SIGMASK, define as a wrapper around + the system's pthread_sigmask function. + * modules/pthread_sigmask (configure.ac): Invoke + gl_PREREQ_PTHREAD_SIGMASK. + * doc/posix-functions/pthread_sigmask.texi: Mention bug on FreeBSD, + HP-UX, Solaris. + +2011-07-08 Eric Blake + + test-sigprocmask: avoid compiler warning + * modules/sigprocmask-tests (Depends-on): Add ignore-value. + * tests/test-sigprocmask.c (main): Use it to silence warning. + Reported by Jim Meyering. + + test-snprintf: avoid compiler warning + * tests/test-snprintf.c (main): Avoid shadowed declaration. + * tests/test-vsnprintf.c (main): Likewise. + Reported by Jim Meyering. + +2011-07-08 Bruno Haible + + Tests for module 'pthread_sigmask'. + * modules/pthread_sigmask-tests: New file. + * tests/test-pthread_sigmask1.c: New file, based on + tests/test-sigprocmask.c. + * tests/test-pthread_sigmask2.c: New file. + +2011-07-08 Jim Meyering + + test-getopt.h: avoid warning about an unused variable + * tests/test-getopt.h (test_getopt): Remove unused variable, "c". + +2011-07-07 Jim Meyering + + maint: reduce list of files exempt from sc_prohibit_leading_TABs + * Makefile (sc_prohibit_leading_TABs): Don't exempt m4/po.m4, + now that it no longer contains leading TABs. + Remove unused "url=FIXME" statement. + +2011-07-08 Paul Eggert + + pthread_sigmask: Assume POSIX when not gl_THREADLIB. + * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): + When gl_THREADLIB is not in use, assume that the POSIX sematics + are desired. This is better for Emacs, which uses POSIX semantics + on GNUish and/or POSIXish platforms, and does not use threads at + all otherwise. + + pthread_sigmask: fix typo when testing for libraries + * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): + AC_LINK_IFELSE, not AC_COMPILE_IFELSE. + +2011-07-08 Eric Blake + + fts: introduce FTS_NOATIME + * lib/fts_.h (FTS_NOATIME): New bit flag. + (FTS_OPTIONMASK): Adjust. + * lib/fts.c (diropen, fts_open, fts_build): Honor it. + (fd_ring_check): Debug code unconditionally uses O_NOATIME. + +2011-07-08 Bruno Haible + + Tests for module 'thread'. + * modules/thread-tests: New file. + * tests/test-thread_self.c: New file. + * tests/test-thread_create.cc: New file. + +2011-07-08 Bruno Haible + + thread: Avoid gcc warnings when using gl_thread_self(). + * lib/glthread/thread.h (gl_thread_self): Return a pthread_t, not a + 'void *'. + (gl_thread_self_pointer): Update. + +2011-07-07 Bruno Haible + + signal-c++-tests: Check declaration of pthread_sigmask. + * tests/test-signal-c++.cc: Check declaration of pthread_sigmask. + * modules/signal-c++-tests (Makefile.am): Link test-signal-c++ against + $(LIB_PTHREAD_SIGMASK). + +2011-07-07 Bruno Haible + + pthread_sigmask: Fix link requirements on OSF/1 5.1 and with pth. + * lib/signal.in.h (pthread_sigmask): Override if + REPLACE_PTHREAD_SIGMASK is 1. + * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Initialize + REPLACE_PTHREAD_SIGMASK. + * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): Set also + REPLACE_PTHREAD_SIGMASK. Set and substitute LIB_PTHREAD_SIGMASK. + * modules/signal (Makefile.am): Substitute REPLACE_PTHREAD_SIGMASK. + * modules/pthread_sigmask (Depends-on, configure.ac): Update condition. + (Link): Set to $(LIB_PTHREAD_SIGMASK), not $(LIBMULTITHREAD). + +2011-07-07 Bruno Haible + + pthread_sigmask: Ensure declaration in . + * lib/signal.in.h: On MacOS X, FreeBSD, OpenBSD, OSF/1, Solaris 2.6, + include . + * doc/posix-functions/pthread_sigmask.texi: Mention the header file + problem. + +2011-07-07 Bruno Haible + + pthread_sigmask: Document the module. + * doc/posix-functions/pthread_sigmask.texi: Mention the new module. + +2011-07-07 Bruno Haible + + pthread_sigmask: Follow gnulib conventions. + * m4/pthread_sigmask.m4 (gl_FUNC_PTHREAD_SIGMASK): Renamed from + gl_PTHREAD_SIGMASK. + * modules/pthread_sigmask (configure.ac): Update. + +2011-07-07 Bruno Haible + + pthread_sigmask: Make declaration C++ safe. + * lib/signal.in.h: In two special conditions, just do an #include_next. + (pthread_sigmask): Test HAVE_PTHREAD_SIGMASK, not REPLACE_PTHREAD_MASK. + Invoke _GL_CXXALIAS_SYS and _GL_CXXALIASWARN. + * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Initialize + HAVE_PTHREAD_SIGMASK, not REPLACE_PTHREAD_MASK. + * m4/pthread_sigmask.m4 (gl_PTHREAD_SIGMASK): Set HAVE_PTHREAD_SIGMASK, + not REPLACE_PTHREAD_MASK. + * modules/signal (Makefile.am): Substitute HAVE_PTHREAD_SIGMASK, + not REPLACE_PTHREAD_MASK. + * modules/pthread_sigmask (Depends-on, configure.ac): Update condition. + +2011-07-07 Bruno Haible + + pthread_sigmask: Fix return value. + * lib/signal.in.h (pthread_sigmask): Declare. Don't define as a macro. + * lib/pthread_sigmask.c: New file. + * modules/pthread_sigmask (Files): Add it. + (configure.ac): Invoke AC_LIBOBJ. + +2011-07-07 Eric Blake + + getopt: more portable argv creation + * m4/getopt.m4 (gl_GETOPT_CHECK_HEADRS): Rather than casting away + const, use char arrays rather than strings. + Suggested by Paul Eggert. + +2011-07-07 Bruno Haible + + Tests for module 'sigprocmask'. + * modules/sigprocmask-tests: New file. + * tests/test-sigprocmask.c: New file. + +2011-07-07 Bruno Haible + + float tests: Tweak. + * tests/test-float.c (main): Tweak skip message. + 2011-07-07 Eric Blake getopt: avoid compiler warning during configure