X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=ChangeLog;h=0874c81464f178a219f3bdffd04d8a3ef46d9520;hb=3a9002d3cc63da7110f133b1040d2d2b0aad8305;hp=d4ab131fd2713b66f1e44fbdff1476d38f4e93a9;hpb=cfd4956852c95125e0b89871985e4f54697acd79;p=gnulib.git diff --git a/ChangeLog b/ChangeLog index d4ab131fd..0874c8146 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,581 @@ +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. + * gnulib-tool: Canonicalize $inctests also in 'update' mode. + Reported by Nick Bowler . + +2012-07-22 Bruno Haible + + getpass: Assume AC_CHECK_DECLS_ONCE invocation, like in getpass.m4. + * lib/getpass.h: Assume HAVE_DECL_GETPASS is defined. + * cfg.mk (exclude_file_name_regexp--sc_prohibit_defined_have_decl_tests): + Remove exemption for getpass.h. + Suggested by Eric Blake. + +2012-07-20 Eric Blake + + verify: document conflict with -Wnested-externs + * lib/verify.h: Give hint about usage when gcc warnings are enabled. + + maint.mk: forbid exit(-1) + * top/maint.mk (sc_prohibit_magic_number_exit): Detect negatives. + +2012-07-20 Paul Eggert + + fsusage: port back to Solaris + * lib/fsusage.c (get_fs_usage): Fix busted logic causing compile-time + error (fsd not declared) on Solaris 10. Reported privately by + Andrew Borodin. + +2012-07-19 Akim Demaille + + gnu-web-doc-update: fix error messages + * build-aux/gnu-web-doc-update: Don't pass $ME to die. + + gnu-web-doc-update: check the requirements. + * build-aux/gnu-web-doc-update (find_tool): Import from bootstrap. + ($CVS, $CVSU, $GIT, $RSYNC, $XARGS): New. + * build-aux/bootstrap (find_tool): Comment change. + +2012-07-17 Akim Demaille + + maint.mk: minor simplication. + * top/maint.mk (_sc_excl): Use $(or...) instead of $(if...) + for default values. + +2012-07-15 Akim Demaille + + gitlog-to-changelog: VPATH build issues + If builddir is not a subdirectory of srcdir, running git from it will + fail. + * build-aux/gitlog-to-changelog (--srcdir): New option. + +2012-07-15 Bruno Haible + + fpending: Assume AC_CHECK_DECLS_ONCE invocation, like in fpending.m4. + * lib/fpending.h: Assume HAVE_DECL___FPENDING is defined. + * cfg.mk (exclude_file_name_regexp--sc_prohibit_defined_have_decl_tests) + Remove exemption for fpending.h. + Suggested by Eric Blake. + +2012-07-15 Paul Eggert + + pthread_sigmask: fix bug on FreeBSD 9 + * lib/pthread_sigmask.c [PTHREAD_SIGMASK_INEFFECTIVE]: + Include string.h. + (pthread_sigmask) [PTHREAD_SIGMASK_INEFFECTIVE]: + When calling pthread_sigmask (1729, NEW, OLD), specify non-null NEW; + this avoids a bug on FreeBSD 9, where pthread_sigmask is effective + but pthread_sigmask (1729, NULL, NULL) returns zero. + See . + Avoid the need to call pthread_sigmask (1729, ...) in most cases, + by inspecting whether the main call changed the old mask. + +2012-07-15 Reuben Thomas + + README-release: make it more legible + * top/README-release: Improve typography slightly. + +2012-07-15 Jim Meyering + + maint: require that each sc_... command start with "@" + * Makefile (sc_prohibit_sc_omitted_at): New rule so that + "make sc_maint" helps us avoid this nit. + +2012-07-15 Jim Meyering + + maint.mk: add leading "@" to quiet new "make syntax-check" rule + * top/maint.mk (sc_prohibit_defined_have_decl_tests): Add "@". + +2012-07-13 Eric Blake + + maint.mk: new syntax check for HAVE_DECL checks + * top/maint.mk (sc_prohibit_defined_have_decl_tests): New rule. + * cfg.mk + (exclude_file_name_regexp--sc_prohibit_defined_have_decl_tests): + Exempt some false positives. + Based on a report by Karel Zak. + + argp: make HAVE_DECL usage consistent + * lib/argp-parse.c (__argp_parse): Check contents of HAVE_DECL + macros, not whether they are defined. + * m4/argp.m4 (gl_ARGP): Always define HAVE_DECL_* macros, per + convention with other declaration checks. + Reported by Karel Zak, with suggestions from Paul Eggert. + + stat-time: relax license to LGPLv2+ + * modules/stat-time (License): Relax, with consent of all authors. + + strndup: fix m4 usage error + * m4/strndup.m4 (gl_FUNC_STRNDUP): HAVE_DECL_STRNDUP is always + defined, to either 0 or 1. + Reported by Karel Zak. + +2012-07-11 Jim Meyering + + maint: enable the sc_avoid_if_before_free syntax-check rule + * cfg.mk (local-checks-to-skip): Enable sc_avoid_if_before_free. + (if_before_free_offenders_): Define. + (if_before_free_basename_re_): Define. + Exempt current files with useless if-before-free. + +2012-07-11 Paul Eggert + + gettext: do not assume '#define ... defined ...' behavior + * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): + Do not use '#define FOO ... defined BAR ...', as the C standard says + it's not portable to expect that this works after macro expansion. + Problem reported for gzip by Steven M. Schweda in + . + +2012-07-10 Paul Eggert + + getloadavg: clean out old Emacs and Autoconf cruft + See Glenn Morris in . + * lib/getloadavg.c: Include , always. + Include if HAVE_SYS_PARAM_H, not if unix or __unix. + (LDAV_CVT): Remove no-longer-used LOAD_AVE_CVT hook. + * m4/getloadavg.m4 (gl_PREREQ_GETLOADAVG): Check for . + +2012-07-10 Akim Demaille + + bootstrap: let warn be like tests/init.sh's warn_ + Reported by Jim Meyering. + * build-aux/bootstrap (warn): Remove, replaced by... + (warnf_, warn_): these. + Adjust callers. + Shorten messages that no longer fit in 80 columns. + +2012-07-09 Bruno Haible + + getopt: Simplify after Emacs changed. + * m4/getopt.m4 (gl_FUNC_GETOPT_POSIX): Inline gl_GETOPT_IFELSE. + (gl_GETOPT_IFELSE): Remove macro. + +2012-07-09 Jim Meyering + + maint.mk: add sc_vulnerable_makefile_CVE-2012-3386 + * top/maint.mk (sc_vulnerable_makefile_CVE-2012-3386): New rule. + + maint.mk: _sc_search_regexp, sc_vulnerable_makefile_CVE-2009-4029: fix + Bugs in both of those conspired to make the + sc_vulnerable_makefile_CVE-2009-4029 rule 99% useless. + _sc_search_regexp's handling of non-empty $in_files would filter + out any offending file names. sc_vulnerable_makefile_CVE-2009-4029's + choice of in_files value meant there would be no match in most + projects, due to the presence of two or more Makefile.in files. + * top/maint.mk (_sc_search_regexp) [in_vc_files,in_files]: Clarify. + Fix a bug in how a non-empty $$in_files was processed: + (sc_vulnerable_makefile_CVE-2009-4029): Fix erroneous use of in_files: + in spite of the name, it's a regexp, not a list of file names. + +2012-07-09 Paul Eggert + + getloadavg, getopt: fix commentary re configure.in + Autoconf is deprecating the name 'configure.in', so change it to + to the new name 'configure.ac' in a couple of places. + * lib/getloadavg.c: configure.in -> configure.ac, in comment. + * m4/getopt.m4 (gl_GETOPT_IFELSE, gl_GETOPT_SUBSTITUTE_HEADER) + (gl_PREREQ_GETOPT): Remove obsolete commentary re Emacs configure.in. + Emacs has renamed it to configure.ac, and it no longer refers + to these macros anyway. + + timespec: mark functions with const attributes + * lib/timespec.h (timespec_add, timespec_sub, dtotimespec): + Mark with _GL_ATTRIBUTE_CONST. + +2012-07-07 Ludovic Courtès + + canonicalize[-lgpl]: handle "guessing" values when cross-building + * m4/canonicalize.m4 (gl_FUNC_CANONICALIZE_FILENAME_MODE) + (gl_CANONICALIZE_LGPL): Check whether $gl_cv_func_realpath_works + matches "*yes" instead of just "yes". Regression introduced in commit + e0bcf6626cde8dad4bfbdc4045c744f0cd8b9e24. + 2012-07-07 Ludovic Courtès Bruno Haible