X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=ChangeLog;h=3c8eb4d3b1be9118747e2b8aa5a9c9bb0a874710;hb=3f5bf99e;hp=c03bf8cb8019b6949244ed1a3d1a103491b1facf;hpb=564705d7d91357cfbe0057f0f27a66fd8a30f0bc;p=gnulib.git diff --git a/ChangeLog b/ChangeLog index c03bf8cb8..3c8eb4d3b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,380 @@ +2013-08-11 Paul Eggert + + fpending: port to recent Cygwin change to stdio_ext.h + Reported by LRN in + . + * lib/fpending.h: Don't worry about HAVE_DECL___FPENDING; + just declare __fpending unless it's a macro. + A duplicate decl shouldn't hurt. + * m4/fpending.m4 (gl_FUNC_FPENDING): Check that an __fpending + call compiles and links, instead of separately checking for + decl and lib function. + * modules/fpending (configure-ac): + Adjust to fpending.m4's renaming of shell variable. + +2013-08-10 Paul Eggert + + sys_time: port to OpenBSD + * lib/sys_time.in.h: Simply delegate to the system's header + in the BSDish cases as well. Problem reported by Mike Miller in + . + * tests/test-sys_select.c, tests/test-sys_time.c (verify_tv_sec_type): + Allow platforms like 64-bit OpenBSD where timeval's tv_sec is + wider than time_t. + +2013-08-09 Pádraig Brady + + bootstrap: support checksum utils having -c but not --status + * build-aux/bootstrap: Only look for sha1sum if updating po files. + Add sha1 to the list of supported checksum utils since it's now + supported through adjustments below. + (update_po_files): Remove the use of --status + in a way that will suppress all error messages, but since this is + only used to minimize updates, it shouldn't cause an issue. + Exit early if there is a problem updating the po file checksums. + (find_tool): Remove the check for --version support as this + is optional as per commit 86186b17. Don't even check for the + presence of the command as if that is needed, it's supported + through configuring prerequisites in bootstrap.conf. + Prompt that when a tool isn't found, one can define an environment + variable to add to the hardcoded search list. + +2013-08-05 Jim Meyering + + regex: port to non-glibc/lock-using systems + Since 29-05-2013 commit, 55ba71f4, compilation on a non-glibc + system with GNULIB_LOCK would fail due to absence of the + included "glthread/lock.h". This would affect any package + for which the "lock" module is used only by the regex module, + and not explicitly used. + * m4/regex.m4 (gl_PREREQ_REGEX): Require gl_GLIBC21. + * modules/regex (Depends-on) [!GLIBC && $ac_use_included_regex]: + Add a dependency on the "lock" module. + +2013-07-20 Daiki Ueno + + localecharset: make locale_charset thread-safe on Mac OS X + * lib/localcharset.c (locale_charset) [DARWIN7]: Use MB_CUR_MAX_L + instead of MB_CUR_MAX. + +2013-07-20 Daiki Ueno + + gettext: update to version 0.18.3 + * m4/intl.m4, m4/po.m4: Update from gettext-0.18.3. In particular, + require AC_PROG_SED to allow user to specify custom sed command when + generating en@quot PO file. + +2013-07-18 Werner Lemberg (tiny change) + + bootstrap: use correct source when copying build-aux files + * build-aux/bootstrap (gnulib_extra_files): This variable is + relative to upstream gnulib layout, not downstream. + +2013-07-17 Paul Eggert + + tmpdir: fix bug in VMS port + * lib/tmpdir.c (path_search) [__VMS]: Never add slash. + See Steven M. Schweda in + . + +2013-07-15 Paul Eggert + + tmpdir: port to VMS, to // != /, and to long dirs + * lib/tmpdir.c (__libc_secure_getenv) [!_LIBC]: Rename from + __secure_getenv, so that we're more like the glibc version. + All uses changed. + (path_search): Don't put slash after directory if __VMS. + Problem reported by Steven M. Schweda in + . + Simplify code to add slash; no need for a loop. + Do not remove trailing slash from "//". + Do not assume dlen <= INT_MAX. + +2013-07-09 Paul Eggert + + regex: port to --with-included-regex --enable-gcc-warnings non-threaded + * lib/regex_internal.h (lock_fini, lock_lock): Rework to avoid + gcc warnings in the non-threaded case. Reported by Charlie Brown in + . + + accept4, dup3, pipe2: port to Cygwin + Problem reported for Emacs by Ken Brown in . + * lib/accept4.c (accept4) [O_BINARY]: + * lib/dup3.c (dup3) [O_BINARY]: + * lib/pipe2.c (pipe2) [O_BINARY]: + Use set_binary_mode, not setmode. + * lib/pipe2.c [!GNULIB_BINARY_IO]: Include binary-io.h. + * modules/binary-io (Depends-on): Remove module indicator. + These last two bits undo the previous change to pipe2 and binary-io. + +2013-07-09 Pádraig Brady + + mountlist: add support for deallocating returned list entries + * lib/mountlist.c (free_mount_entry): A new exported function + to deallocate a mount list entry. + (read_file_system_list): Refactor to use the new deallocation function. + Suggested by Anton Ovchinnikov. + +2013-07-07 Paul Eggert + + stdalign, verify: port to FreeBSD 9.1, to C11, and to C++11 + Problem reported by Ulrich Mueller in . + * lib/stdalign.in.h (_Alignas, _Alignof): + Port to FreeBSD 9.1, and to C11 and C++11. + (_Alignas): Also support ICC. + * lib/verify.h (_Static_assert): Undef if defines it. + * m4/stdalign.m4 (gl_STDALIGN_H): Port to ICC and to C++11. + +2013-07-06 Paul Eggert + + fnmatch: don't goto over declaration + * lib/fnmatch_loop.c (FCT): Hoist local up one level, to avoid + undefined behavior for goto over a declaration. + Problem reported by Charlie Brown in + . + + pipe2: decouple from binary-io a bit + This is for Emacs, which needs pipe2 but not binary-io. + * lib/pipe2.c [!GNULIB_BINARY_IO]: Don't include binary-io.h. + * modules/binary-io (Depends-on): Add module indicator. + +2013-07-03 Eric Blake + + mgetgroups: relax license to LGPLv2+ + * modules/getugroups (License): Change from GPLv3+. + * modules/mgetgroups (License): Likewise. + * modules/getgroups (License): Change from LGPLv3+. + + xalloc-oversized: relax license to LGPLv2+ + * modules/xalloc-oversized (License): Change from GPLv3+. + + nproc: relax license to LGPLv2+ + * modules/nproc (License): Change from LGPLv3+. + + bootstrap: honor --no-git + * build-aux/bootstrap: Don't even try to use git when user is + pointing to a static checkout. + +2013-06-23 Paul Eggert + + ignore-value: port to gcc -pedantic + * lib/ignore-value.h (ignore_value): + Port to gcc -pedantic, by using __extension__. + Reindent as per usual gnulib style nowadays. + Simplify GCC version check. + +2013-06-21 Paul Eggert + + extern-inline: port to gcc -std=c89 + * m4/extern-inline.m4 (gl_EXTERN_INLINE): + Do not use __gnu_inline__ if pedantic and pre-C99. + +2013-06-18 Paul Eggert + + doc: document extern-inline + * doc/extern-inline.texi: New file. + * doc/gnulib.texi (alloca-opt): Include it. + * m4/extern-inline.m4: Move some comments to documentation, + and others closer to what they describe. + + doc: chatter less + * doc/Makefile (NEWEST_GNULIB_TEXI_FILE): New macro. + (updated-stamp): Use it. This causes 'make' to output just + one file name rather than zillions. + + fflush, fseeko: port to musl cross-compiles + * lib/fseeko.c (fseeko): Assume that fflushing stdin works if + on some implementation that (1) is not known to be buggy, + (2) claims conformance to POSIX.1-2008 or later, and (3) is being + cross-compiled to so we can't easily check for lack of + conformance. This is for cross-compiling to musl. + Reported by Rich Felker in + . + * m4/fclose.m4 (gl_FUNC_FCLOSE): + * m4/fflush.m4 (gl_FUNC_FFLUSH): + * m4/fseeko.m4 (gl_FUNC_FSEEKO): + Adjust to above change. + * m4/fflush.m4 (gl_FUNC_FFLUSH_STDIN): Set gl_cv_func_fflush_stdin + to 'cross', not to 'no', when cross-compiling. AC_DEFINE + FUNC_FFLUSH_STDIN to 1, 0, -1 if fflushing stdin is known to work, + known not to work, or unknown. + +2013-06-15 Paul Eggert + + msvc-inval: port to mingw-w64 + * lib/msvc-inval.c (gl_msvc_invalid_parameter_handler): + Use __cdecl, not cdecl, for mingw-w64. Reported by LRN in + . + +2013-06-11 Paul Eggert + + getcwd-lgpl: port to Tru64 + * lib/getcwd-lgpl.c: Include , for malloc etc. + Problem reported by Steven M. Schweda in + . + + tests: port large-fd POSIX spawn tests to OS X + Problem reported by Daiki Ueno in + . + * tests/test-posix_spawn_file_actions_addclose.c: + * tests/test-posix_spawn_file_actions_adddup2.c: + * tests/test-posix_spawn_file_actions_addopen.c: + Include , for OPEN_MAX, if available. + (big_fd): New static function. + (main): Use it. + +2013-06-04 Bernhard Voelker + + tests/nap.h: use an adaptive delay to avoid ctime update issues + The recent change in nap.h (5191133e) decreased the probability of lost + races to about a third, however such problems could still be observed + in virtual machines and openSUSE's OBS. + Before, nap() detected the needed time once empirically and then used + that delay (together with a small correction multiplier) in further + calls. This problem has been reported and discussed several times, + including guesses about possible kernel issues: + https://lists.gnu.org/archive/html/bug-gnulib/2013-04/msg00071.html + http://lists.gnu.org/archive/html/coreutils/2012-03/msg00088.html + https://lists.gnu.org/archive/html/bug-gnulib/2011-11/msg00226.html + http://bugs.gnu.org/12820 + https://lists.gnu.org/archive/html/bug-gnulib/2010-11/msg00113.html + https://lists.gnu.org/archive/html/bug-gnulib/2009-11/msg00007.html + Now, nap() avoids the race alltogether by verifying on a reference + file whether a timestamp difference has happened. + * tests/nap.h (nap_fd): Define file descriptor variable for the + witness file. + (nap_works): Change return value to bool. Change passing + the old file's status by value instead of by reference as this function + does no longer update that timestamp; rename the function argument from + st to old_st. Remove the local variables cdiff and mdiff because that + function now returns true/false instead of the precise delay. + (guess_delay): Remove function. + (clear_tmp_file): Add new function to close and unlink the witness file. + (nap): Instead of re-using the delay which has been calculated during + the first call, avoid the race by actually verifying that a timestamp + difference can be observed on the current file system. Use an adaptive + approach for the delay to minimize execution time. Assert that the + maximum delay is <= ~2 seconds, more precisely sum(2^n) from 0 to 30 + = 2^31 - 1 = 2.1s. + Use atexit to call clear_tmp_file when the process terminates. + +2013-06-02 Paul Eggert + + sig2str: port to C++ + * lib/sig2str.h (sig2str, str2sig): Declare as extern "C". + Reported by Daniel J Sebald in + . + +2013-05-30 Eric Blake + + docs: mention cygwin shortcoming in + * doc/posix-headers/sys_un.texi (sys/un.h): Mention problem. + + vasnprintf: silence mingw compiler warning + * lib/vasnprintf.c (VASNPRINTF): Avoid unused variable warning. + +2013-05-29 Paul Eggert + + c-ctype, regex, verify: port to gcc -std=c90 -pedantic + Avoid constructions that are rejected by gcc -std=c90 -pedantic. + This fixes a porting bug I recently reintroduced in regex, and + some other instances that I discovered while testing the fix. + * lib/c-ctype.h [__STRICT_ANSI__]: Avoid ({ ... }). + * lib/regcomp.c (utf8_sb_map) [__STRICT_ANSI__]: Avoid [0 ... N] = E. + * lib/regex_internal.h [!_LIBC && GNULIB_LOCK]: Do not use a macro + with an empty argument if this is a pedantic pre-C99 GCC. + * lib/verify.h: Do not use _Static_assert if this is a pedantic + pre-C11 GCC. + + regex: adapt to locking regime instead of depending on pthread + Instead of depending on pthread, adapt to whatever thread + modules are in use. Problem reported by Ludovic Courtès in + + and by Mats Erik Andersson in + . + * lib/regex_internal.h (lock_define, lock_init, lock_fini): + Support either the 'lock' module, or the 'pthread' module, or + no module. + (lock_lock, lock_unlock): New macros. + * lib/regexec.c (regexec, re_search_stub): Use the new macros. + * modules/lock, modules/pthread (configure.ac): Add module indicator. + * modules/regex (Depends-on): Remove pthread. + +2013-05-22 Eric Blake + + getgroups: document portability issues + * doc/glibc-functions/initgroups.texi (initgroups): Mention + multithread safety. + * doc/posix-functions/getpwuid.texi (getpwuid): Likewise. + * doc/posix-functions/getpwuid_r.texi (getpwuid_r): Likewise. + * doc/glibc-functions/getgrouplist.texi (getgrouplist): Mention + getugroups. + * doc/posix-functions/getgroups.texi (getgroups): Mention + multithread safety and mgetgroups. + +2013-05-22 Bernhard Voelker + + test-lchown, test-chown: also skip test if chown fails with EPERM + * tests/test-lchown.h (test_lchown): Add EPERM to the condition to + skip this test, to handle FAT file systems. + * tests/test-chown.h (test_chown): Likewise. + +2013-05-19 Paul Eggert + + regex: fix dfa race in multithreaded uses + Problem reported by Ludovic Courtès in + . + * lib/regex_internal.h (lock_define, lock_init, lock_fini): + New macros. All uses of __libc_lock_define, __libc_lock_init + changed to use the first two of these. + (__libc_lock_lock, __libc_lock_unlock): New macros, for + non-glibc platforms. + (struct re_dfa_t): Define the lock unconditionally. + * lib/regexec.c (regexec, re_search_stub): Remove some now-incorrect + '#ifdef _LIBC"s. + * modules/regex (Depends-on): Add pthread, if we use the + included regex. + + * lib/regcomp.c: Do actions that are not needed for glibc, + but may be needed elsewhere. + (regfree, re_compile_internal): Destroy the lock. + (re_compile_internal): Check for lock-initialization failure. + + malloca: port to compilers that reject size-zero arrays + This fixes a bug introduced in my previous patch. + * lib/malloca.c (struct preliminary_header): Use an int + rather than a character array of size int; that's simpler. + (struct header): Remove, replacing with ... + (union header): New type. This avoids the need for declaring a + character array of size zero, which is not allowed on some platforms. + All uses changed. + +2013-05-18 Paul Eggert + + parse-datetime, tests: don't use "string" + int + Recent versions of 'clang' complain about C source code that + uses expressions of the form '"string literal" + integer', + I guess on the theory that it's confusing for readers who are + used to C++. On those grounds I suppose it's OK to make this + minor style change. + * lib/parse-datetime.y (parse_datetime): + * tests/test-fchdir.c (main): + * tests/test-snprintf-posix.h (test_function): + * tests/test-snprintf.c (main): + * tests/test-vasnprintf-posix.c (test_function): + * tests/test-vasnprintf.c (test_function): + * tests/test-vsnprintf.c (main): + * tests/unistdio/test-ulc-asnprintf1.h (test_function): + Rewrite '"str" + E' to '&"str"[E]'. + +2013-05-17 Alexandre Duret-Lutz + + argmatch: port to C++ + * lib/argmatch.h [__cplusplus]: Add extern "C". + + argp: typo fix + * lib/argp-help.c: Typo in comment. + 2013-05-15 Paul Eggert manywarnings: update for GCC 4.8.0 @@ -355,7 +732,7 @@ if OSF/1, since otherwise Cygwin breaks, and it doesn't seem to be needed on Solaris either. * lib/sys_time.in.h [_CYGWIN_SYS_TIME_H]: - Simply delgate to the system in this case. + Simply delegate to the system in this case. 2013-03-19 Karl Berry