X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=ChangeLog;h=39e733a8e2256626563fe1d0741aab96b46c792c;hb=d202279380436696dc5889edcf07ad92ef59f541;hp=c41549fdfa8f292b1961114ddb9fb37d3e8a4501;hpb=dbd914496c99c52220e5f5ba4121d6cb55fb3beb;p=gnulib.git diff --git a/ChangeLog b/ChangeLog index c41549fdf..39e733a8e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,566 @@ +2012-09-22 Paul Eggert + + fchmodat, fchownat, fstatat: use extern-inline + * lib/fchmodat.c, lib/openat.h (FCHMODAT_INLINE): + * lib/fchownat.c, lib/openat.h (FCHOWNAT_INLINE): + * lib/fstatat.c, lib/openat.h (FSTATAT_INLINE): + New macros. + * lib/openat.h: + Replace all uses of 'static inline' with them. + Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END. + * modules/fchmodat, modules/fchownat, modules/fstatat: + * modules/openat-h: + (Depends-on): + Add extern-inline. + (configure.ac): Remove AC_C_INLINE. + + acl, mbchar, priv-set: use extern-inline + * lib/set-mode-acl.c, lib/acl-internal.h (ACL_INTERNAL_INLINE): + * lib/mbchar.c, lib/mbchar.h (MBCHAR_INLINE): + * lib/priv-set.c, lib/priv-set.h (PRIV_SET_INLINE): + New macros. + * lib/acl-internal.h, lib/mbchar.h, lib/priv-set.h: + Replace all uses of 'static inline' with it. + Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END. + * m4/acl.m4 (gl_FUNC_ACL): + * m4/mbchar.m4 (gl_MBCHAR): + * m4/priv-set.m4 (gl_PRIV_SET): + Remove AC_C_INLINE, since 'inline' is no longer used directly. + * modules/acl, modules/mbchar, modules/priv-set (Depends-on): + Add extern-inline. + + sockets, sys_stat: remove AC_C_INLINE in MSVC-only cases + * m4/sockets.m4 (gl_SOCKETS): + * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): + Remove AC_C_INLINE. Here, 'inline' is used only in MSVC + environments where it's already guaranteed to work, so we needn't + check for it at 'configure'-time. + + tls-tests: omit unnecessary 'inline' + * tests/test-tls.c (perhaps_yield): No longer inline. + Simplicity and portability trump efficiency in test cases. + + utimens-tests: avoid unnecessary 'inline' + * modules/fdutimensat-tests (configure.ac): + * modules/futimens-tests (configure.ac): + * modules/utimens-tests (configure.ac): + * modules/utimensat-tests (configure.ac): + Remove AC_C_INLINE. + * tests/test-utimens-common.h (ctime_compare): + No longer inline. Simplicity and portability trump efficiency here. + + misc: don't limit commentary to inline functions + * lib/binary-io.h, lib/malloca.h, lib/safe-alloc.c: + * lib/xalloc-oversized.h, lib/xsize.h: + Contrast macros to functions in general, not just to inline functions, + when the commentary does not apply only to inline functions. + +2012-09-20 Jim Meyering + + non-recursive-gnulib-prefix-hack: new module + * build-aux/prefix-gnulib-mk: Copied from coreutils, derived from + the file that originated in Bison. + * m4/non-recursive-gnulib-prefix-hack.m4: Likewise, this code is + largely copied from a snippet that resided in bison's configure.ac. + * modules/non-recursive-gnulib-prefix-hack: New file. + * MODULES.html.sh (Support for maintaining and releasing projects): + Add it. + +2012-09-18 Jim Meyering + + maint.mk: generalize _gl_tight_scope for non-recursive make + * top/maint.mk (_gl_tight_scope): Remove a hard-coded assumption + that *.h would describe additional .h files in the directory + specified by $(_gl_TS_dir). I.e., add this... + (_gl_TS_other_headers): New variable. + + maint.mk: exempt trailing blanks found in "binary" files + * top/maint.mk (sc_trailing_blank): Filter out any matches found in + "binary" files, as reported by grep. Suggested by Richard W.M. Jones + in http://thread.gmane.org/gmane.comp.emulators.guestfs/1902 + +2012-09-17 Jim Meyering + + maint.mk: sc_prohibit_path_max_allocation: don't FP for UNIX_PATH_MAX + * top/maint.mk (sc_prohibit_path_max_allocation): Avoid false-positive + match for symbols like UNIX_PATH_MAX. Reported by Richard W.M. Jones + in http://thread.gmane.org/gmane.comp.emulators.guestfs/1902 + +2012-09-17 Jim Meyering + + maint.mk: teach sc_prohibit_magic_number_exit to accept 77 + * top/maint.mk (sc_prohibit_magic_number_exit): Do not complain about + uses like "exit (77)". "77" is automake's "skip this test" exit code. + It is not in the same category as "exit (0)" or "exit (1)", and + besides, I know of no symbolic name for that 77. Reported by + Richard W.M. Jones in + http://thread.gmane.org/gmane.comp.emulators.guestfs/1902 + +2012-09-17 Jim Meyering + + maint.mk: relax sc_prohibit_strcmp, to avoid a false positive + * top/maint.mk (sc_prohibit_strcmp): Relax regexp, so as to match + all uses of #define, not just those that start in column 1. + Richard W.M. Jones reported a false positive in + http://thread.gmane.org/gmane.comp.emulators.guestfs/1902 + +2012-09-16 Paul Eggert + + localcharset: work around Mac OS X bug with UTF-8 and MB_CUR_MAX + * lib/localcharset.c (locale_charset) [DARWIN7]: + Return "ASCII" if the system reports "UTF-8" and MB_CUR_MAX <= 1, + as these two values are incompatible. Problem reported by Max Horn. + For more discussion, please see + . + + doc: document sticky-EOF issue + * doc/posix-functions/fgetc.texi (fgetc): + * doc/posix-functions/fgets.texi (fgets): + * doc/posix-functions/fread.texi (fread): + * doc/posix-functions/fscanf.texi (fscanf): + * doc/posix-functions/getc.texi (getc): + * doc/posix-functions/getchar.texi (getchar): + * doc/posix-functions/scanf.texi (scanf): + Mention that glibc and default Solaris do not conform to + C99 and POSIX-2001 or later, with respect to how getchar + etc. behave when feof reports nonzero. + +2012-09-13 Joachim Schmitz (tiny change) + + poll: fix poll(0, NULL, msec) + * lib/poll.c: don't exit early if NULL is the 1st arg to poll(), + but nfd is 0. In that case poll should behave like select. + +2012-09-13 Joachim Schmitz (tiny change) + Paolo Bonzini + + poll: fix for systems that can't recv() on a non-socket + * lib/poll.c: if recv returns ENOTSOCK, assume the descriptor + is readable. In this case POLLHUP will not be supported. + * doc/posix-functions/poll.texi: Document this. + +2012-09-13 Paolo Bonzini + + poll/select: document portability problems not fixed by Gnulib. + * doc/posix-functions/poll.texi: poll does not work well on + pipes under Windows. It has the same limitations as select on + BeOS. + * doc/posix-functions/select.texi: select does not work well + on pipes under Windows. + +2012-09-10 Paul Eggert + + fcntl-h: check for AIX 7.1 bug with O_NOFOLLOW and O_CREAT + * m4/fcntl-o.m4 (gl_FCNTL_O_FLAGS): Check for AIX 7.1 bug + that caused a GNU tar test failure. Problem reported by Jez Wain; see + . + +2012-09-06 Eric Blake + + net_if: give more details about the bug being fixed + * doc/posix-headers/net_if.texi: Add clarification. + +2012-09-05 Eric Blake + + net_if: new module + * modules/net_if: New module, borrowing ideas from netinet_in. + * m4/net_if_h.m4: New file. + * lib/net_if.in.h: Likewise. + * doc/posix-headers/net_if.texi (net/if.h): Document it. + * MODULES.html.sh (lacking POSIX:2008): Likewise. + * tests/test-net_if.c: Make function checks conditional. + Reported by Jasper Lievisse Adriaanse . + +2012-09-05 Mats Erik Andersson (tiny change) + + readutmp: fix non-portable UT_PID use + * lib/readutmp.c (desirable_utmp_entry) : + Use `UT_PID (u) > 0' as absolute condition. + +2012-09-04 Jim Meyering + + fts: reduce two or more trailing spaces to just one, usually + * lib/fts.c (fts_open): Upon initialization, if a name ends in two + or more slashes, trim all but the final one. But if a name consists + solely of two slashes, don't modify it. If it consists solely of + three or more slashes, strip all but one. + + This is part of the solution to a minor problem with rm: + it would print a bogus ELOOP diagnostic when failing to remove + the slash-decorated name of a symlink-to-directory: + + $ mkdir d && ln -s d s && env rm -r s/ + rm: cannot remove 's': Too many levels of symbolic links + + With the change below and a trivial don't-trim-trailing-slashes + adjustment to remove.c, it does this: + + $ env rm -r s/ + rm: cannot remove 's/': Not a directory + + Improved by: Eric Blake + + fts: when there is no risk of overlap, use memcpy, not memmove + * lib/fts.c (fts_alloc): Fix unjustified memcopy: s/memmove/memcpy/ + +2012-08-29 Paul Eggert + + stdbool: be more compatible with mixed C/C++ compiles + * lib/stdbool.in.h (_Bool, true, false) [__cplusplus]: + Define to bool, true, false, respectively, as GCC's builtin + stdbool.h does. Problem reported by Michael Goffioul in + . + +2012-08-28 Jim Meyering + + revert last change: it was not needed + * tests/test-vc-list-files-git.sh: There's already a test for + a working git, just below. + +2012-08-28 Jim Meyering + + tests: test-vc-list-files-git.sh: skip if git is not available + * tests/test-vc-list-files-git.sh: Skip this test when git is + not available. + +2012-08-26 Bruno Haible + + gnulib-tool: Remove no-op option --no-changelog. + * gnulib-tool (func_usage): Don't mention --no-changelog. + (do_changelog): Remove variable. + Reported by Dmitriy Selyutin . + +2012-08-24 Paul Eggert + + doc: remove fdl-1.2.texi + It is no longer used or maintained, and its use of @acronym + is problematic. See the thread containing + . + * config/srclist.txt: Remove doc/old-licenses/fdl-1.2.texi. + * doc/old-licenses/fdl-1.2.texi: Remove. + + execinfo: port to FreeBSD + * m4/execinfo.m4 (gl_EXECINFO_H): Set LIB_EXECINFO to -lexecinfo + if needed, as in FreeBSD. Reported by Bastien Roucariès in + . + * modules/execinfo (Link): Add $(LIB_EXECINFO). + +2012-08-23 Jim Meyering + + xstrtol.h: avoid "_Noreturn is not at beginning of declaration" warning + * lib/xstrtol.h: Put "_Noreturn" before "void" in declaration, + to placate gcc's -Wold-style-declaration. + +2012-08-24 Paul Eggert + + doc: do not use @acronym + * doc/inet_ntoa.texi (inet_ntoa): + * doc/parse-datetime.texi (Seconds since the Epoch) + (Specifying time zone rules): + * doc/posix-functions/inet_ntoa.texi (inet_ntoa): + Don't use @acronym. Problem reported by John Darlington in + . + +2012-08-23 Paul Eggert + + stdnoreturn: port to newer GCCs + * m4/stdnoreturn.m4 (gl_STDNORETURN_H): Avoid problems with + bleeding-edge GCC that complains about 'int _Noreturn foo (void);'. + Problem reported by Jim Meyering in + . + Also, rename the 'test' function to a void a clash with the + already-supplied 'main' function; this fixes a bug that incorrectly + rejected GCC 4.7.1's . + * doc/posix-headers/stdnoreturn.texi (stdnoreturn.h): + Document GCC problem. + +2012-08-22 Reuben Thomas + + pipe-filter: fix comment typo + * lib/pipe-filter.h: Mention correct function. + +2012-08-22 Paul Eggert + + execinfo: new module + This is for Emacs. Currently, it provides a no-effect stub + on all platforms where it does not already work. + It already works on glibc-based systems, and on Solaris 11. + * lib/execinfo.c, lib/execinfo.in.h, m4/execinfo.m4, modules/execinfo: + New files. + * doc/glibc-headers/execinfo.texi (execinfo.h): + * MODULES.html.sh (Misc): Document it. + +2012-08-20 Paul Eggert + + extern-inline: support old GCC 'inline' + * m4/extern-inline.m4 (gl_EXTERN_INLINE): Use pre-C99 GCC 'inline' + if available. This applies to GCC versions 2.7 through 4.2, or + when newer GCC is using -fgnu89-inline. The goal is to address + some of the performance issues mentioned by Bruno Haible in + . + +2012-08-20 Eric Blake + + maint.mk: avoid redundant file name in message + * top/maint.mk (sc_prohibit_strcmp, sc_unmarked_diagnostics) + (sc_prohibit_defined_have_decl_tests, sc_const_long_option) + (sc_makefile_path_separator_check): Remove bogus $(ME). + +2012-08-20 Mike Frysinger + + timer-time: fix link order when static linking on glibc + * m4/timer_time.m4 (LIB_TIMER_TIME): Add -lpthread + _after_ -lrt so that it's significant. + +2012-08-19 Paul Eggert + + timespec: omit unnecessary AC_C_INLINE + * m4/timespec.m4 (gl_TIMESPEC): Do not require AC_C_INLINE. + + stat-time: omit unnecessary AC_C_INLINE + * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME): + Do not require AC_C_INLINE. + + ignore-value: omit unnecessary AC_C_INLINE + * modules/ignore-value (configure.ac): Do not require AC_C_INLINE. + + sys_select: avoid 'static inline' + * lib/sys_select.in.h (rpl_fd_isset): Now static, not static inline. + + mktime: avoid 'static inline' + * lib/mktime.c (leapyear, ydhms_diff): Now static, not static inline. + * m4/mktime.m4 (gl_PREREQ_MKTIME): Do not require AC_C_INLINE. + +2012-08-19 Bruno Haible + + gnulib-tool: Improve coding style. + * gnulib-tool (func_emit_tests_Makefile_am): Set perhapsLT, like in + func_emit_lib_Makefile_am. + Reported and fix suggested by Dmitriy Selyutin . + +2012-08-19 Bruno Haible + + gnulib-tool: Fix indentation. + * gnulib-tool (func_import): Fix indentation. + +2012-08-19 Bruno Haible + + gnulib-tool: Remove old file names from .cvsignore, .gitignore. + * gnulib-tool (func_update_ignorelist): Don't use 'join -v 1' command + on the list of removed files. + +2012-08-17 Paul Eggert + + test-parse-datetime: avoid glibc leap-second glitch + * tests/test-parse-datetime.c (main): Set TZ to US Eastern time + with the 2012 rules. Problem reported by Bruce Dubbs in + . + +2012-08-14 Bruno Haible + + gnulib-tool: Fix indentation of generated gnulib-comp.m4 file. + * gnulib-tool (func_emit_autoconf_snippet): Initialize indentation + from argument. + Reported and fix suggested by Dmitriy Selyutin . + +2012-08-14 Eric Blake + + ldexp: relax license + * modules/ldexp (License): Trivial relax, since the module only + provides a permissively licensed m4 file. + +2012-08-13 Bruno Haible + + gnulib-tool: Fix persistence of --witness-c-macro option. + * gnulib-tool (func_import): Fix typo in emit of gl_WITNESS_C_MACRO. + Reported by Dmitriy Selyutin . + +2012-08-11 Eric Blake + + count-leading-zeros: use a lookup table on non-gcc compilers + * lib/count-leading-zeros.h (count_leading_zeros_32): Use an + alternate implementation, suggested by Jim Meyering. + +2012-08-10 Eric Blake + + count-leading-zeros: new module + * modules/count-leading-zeros: New module. + * m4/count-leading-zeros.m4: New file. + * lib/count-leading-zeros.h: Likewise. + * modules/count-leading-zeros-tests: New test. + * tests/test-count-leading-zeros.c: New file. + * MODULES.html.sh (Integer arithmetic functions): Document it. + +2012-08-07 Simon Josefsson + Jim Meyering + + maintainer-makefile: Fix syntax error with dash. + * top/maint.mk (sc_vulnerable_makefile_CVE-2009-4029): Quote arguments. + (sc_vulnerable_makefile_CVE-2012-3386): Likewise. + +2012-08-05 Jim Meyering + + extern-inline: also ignore -Wmissing-declarations + * m4/extern-inline.m4: Also ignore -Wmissing-declarations, + required with gcc-4.8.0-to-be. + + maint.mk: sc_prohibit_magic_number_exit: avoid new false positives + * top/maint.mk (sc_prohibit_magic_number_exit): Also filter out matches + for /error ?([^,]*)/. This avoids false-positives for strings like + "Unknown error (252)", introduced via commit v0.0-7538-g92875a6. + +2012-08-02 Stefano Lattarini + + gnumakefile: better interaction with Automake-NG + * modules/gnumakefile [Makefile.am]: The makefiles generated by + Automake-NG always contain a definition of VPATH, even in non-VPATH + builds (its value being simply '.' in that case). So, in the + 'clean-GNUmakefile' rule, to determine whether running under a + VPATH setup, compare '$(srcdir)' to '.' rather than checking whether + '$(VPATH)' expands to the empty string. + +2012-08-02 Carlo de Falco (tiny change) + + base64: Use extern C scope in header file, for C++. + * lib/base64.h: Add C++ namespace protection. + +2012-08-02 Paul Eggert + + stat-time, timespec, u64: support naive out-of-dir builds + * lib/stat-time.c, lib/timespec.c, lib/u64.c: + Use '#include "foo.h"', not '#include ', when including + one's own interface. This works better when configuring with + out-of-directory builds, since packages need not add an + otherwise-unnecessary -I$(topdir_src)/lib to DEFAULT_INCLUDES. + +2012-08-01 Paul Eggert + + utimens: use extern-inline + * lib/utimens.c (_GL_UTIMENS_INLINE): Define when including utimens.h. + * lib/utimens.h: Add copyright notice, since this is now large enough + to copyright. Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END. + (_GL_UTIMENS_INLINE): New macro. Use it instead of 'static inline'. + * modules/utimens (Depends-on): Add extern-inline. + + u64: use extern-inline + * lib/u64.c: New file. + * lib/u64.h: Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END. + (_GL_U64_INLINE): New macro. Use it instead of 'static inline'. + * modules/u64 (Files): Add lib/u64.c. + (Depends-on): Add extern-inline. + (configure.ac): No need to require AC_C_INLINE, since extern-inline + does that now. + (lib_SOURCES): Add u64.c. + + timespec: use extern-inline + * lib/timespec.c: New file. + * lib/timespec.h: Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END. + (_GL_TIMESPEC_INLINE): New macro. Use it instead of 'static inline'. + * modules/timespec (Files): Add lib/timespec.c. + (Depends-on): Add extern-inline. + (lib_SOURCES): Add timespec.c. + + stat-time: use extern-inline + * lib/stat-time.c: New file. + * lib/stat-time.h: Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END. + (_GL_STAT_TIME_INLINE): New macro. Use it instead of 'static inline'. + * modules/stat-time (Files): Add lib/stat-time.c. + (Depends-on): Add extern-inline. + (lib_SOURCES): Add stat-time.c. + + extern-inline: new module + * modules/extern-inline, m4/extern-inline.m4: New files. + This is for better support of 'extern inline' a la ISO C99, + with a portable alternative on compilers that do not support + C99-style 'extern inline'. Using 'extern inline' shrinks the size + of the Emacs executable, when compiled with debugging disabled, + which is a typical way that Emacs is built while developing. + +2012-08-01 Akim Demaille + + maint.mk: a "release-commit" wrapper to do-release-commit-and-tag + * build-aux/do-release-commit-and-tag: Move variable definitions + together. + ($branch): Instead of defaulting to "master", default to the current + branch (as gnu-web-doc-update does). + (help): Display the current values of the option arguments. + * top/maint.mk (release-commit): New. + * top/README-release: Simplify the corresponding step. + +2012-07-30 Eric Blake + + passfd: fix comment on recvfd + * lib/passfd.c (recvfd): Fix comment. + Reported by Jann Horn . + +2012-07-30 Jim Meyering + + maint.mk: avoid a sub-shell + * top/maint.mk (release-prep): Remove unneeded sub-shell. + +2012-07-30 Akim Demaille + + maint.mk: use silent-rules support from Automake + * top/maint.mk (news-check, vc-diff-check, announcement) + (no-submodule-changes, alpha beta stable, release-prep) + (web-manual, update-copyright): Use $(AM_V_GEN) and $(AM_V_at). + +2012-07-30 Akim Demaille + + maint.mk: provide a web-manual-update target + * top/maint.mk: here. + * top/README-release: Use it to simplify the web manual update step. + +2012-07-30 Akim Demaille + + README-release: shorten the circuit to post a news + * top/README-release: Point directly to the news submission form. + +2012-07-30 Akim Demaille + + gnu-web-doc-update: fix --help + * build-aux/gnu-web-doc-update: The information "top level" was written + twice. + +2012-07-30 Akim Demaille + + maint.mk: absolute VPATH issue + * top/maint.mk (release-prep): Help Git find .git/. + From Jim Meyering. + +2012-07-29 Akim Demaille + + gitlog-to-changelog: fix previous change + * build-aux/gitlog-to-changelog: Fix condition. + Add missing ";". + +2012-07-29 Akim Demaille + + gitlog-to-changelog: don't expect .git to be in $srcdir + Reported by Bruno Haible. + + * build-aux/gitlog-to-changelog (&git_dir_option): New. + Use it. + +2012-07-29 Akim Demaille + + maint.mk: absolute VPATH build fix + * top/maint.mk (gpg_key_ID): Help git find .git when, for instance, + $(srcdir) is not a parent of $(builddir). + +2012-07-28 John Darrington + + clean-temp: Fix memory leak. + * lib/clean-temp.c (cleanup_temp_dir): Free also the 'subdirs' and + 'files' members of tmpdir. + +2012-07-27 Jim Meyering + + maint.mk: new rule: refresh-gnulib-patches + I noticed that 8 of coreutils' 9 gl/**/*.diff files were stale. + Use this rule to refresh them. + * top/maint.mk (refresh-gnulib-patches): New rule. + 2012-07-24 Bruno Haible gnulib-tool: Fix handling of inctests variable.