2011-05-17 Pádraig Brady
* top/maint.mk (_gl_tight_scope:): Automatically exclude compiler
reserved symbols starting with double underscore from the check.
2011-05-17 Paul Eggert
intprops: add doc
* doc/intprops.texi: New file, documenting intprops.
* doc/gnulib.texi (Particular Modules): Include it.
verify: add doc to gnulib manual and fix example
* doc/gnulib.texi (Compile-time Assertions): New node, for 'verify'.
* doc/verify.texi (Compile-time Assertions): Update 'assert' doc.
(Compile-time Assertions): Fix example so it can't overflow.
2011-05-17 Jim Meyering
warnings.m4: don't usurp save_CPPFLAGS variable name
* m4/warnings.m4: Prefix local temporary variable name with gl_.
doc: fix typo
* doc/gnulib-intro.texi (Target Platforms): s/is/are/
2011-05-16 Paul Eggert
Bruno Haible
doc: Tweak recent change.
* README (Portability guidelines): Tweak new text.
* doc/gnulib-intro.texi (Target Platforms): Likewise. Mention
Interix 6.1.
2011-05-16 Eric Blake
inttypes: avoid autoconf warning
* m4/inttypes.m4 (gl_INTTYPES_INCOMPLETE): Only expand once.
* m4/stdint.m4 (gl_STDINT_H): Likewise.
2011-05-16 Sam Steingold
and Eric Blake
vc-list-files: accept multiple directory operands
* build-aux/vc-list-files: Iterate over all remaining operands.
2011-05-16 Bruno Haible
Fix confusion regarding deprecated modules.
* modules/calloc (Status, Notice): Mark module as deprecated, not
obsolete.
* modules/fnmatch-posix (Status, Notice): Likewise.
* modules/getdate (Status, Notice): Likewise.
* modules/getopt (Status, Notice): Likewise.
* modules/malloc (Status, Notice): Likewise.
* modules/pipe (Status, Notice): Likewise.
* modules/realloc (Status, Notice): Likewise.
* modules/rename-dest-slash (Status, Notice): Likewise.
* modules/unictype/bidicategory-all (Status, Notice): Likewise.
* modules/unictype/bidicategory-byname (Status, Notice): Likewise.
* modules/unictype/bidicategory-name (Status, Notice): Likewise.
* modules/unictype/bidicategory-of (Status, Notice): Likewise.
* modules/unictype/bidicategory-test (Status, Notice): Likewise.
2011-05-16 Bruno Haible
doc: List the target platforms.
* doc/gnulib-intro.texi (Target Platforms): New section.
* doc/gnulib.texi (Introduction): Update menu.
* README (Portability guidelines): Refer to the new section. Update
statement about oldest supported environment. Remove rationale why
, , are assumed. Update example of an
unportable C89 function.
Reported by Bastien Roucariès and
Charles Wilson . Feedback from Paul Eggert.
2011-05-16 Paul Eggert
* build-aux/bootstrap (gnulib_tool): Handle symlink timestamps better.
2011-05-13 Paul Eggert
intprops-tests: new module
* modules/intprops-tests, tests/test-intprops.c: New files.
intprops: add safe, portable integer overflow checking
* lib/intprops.h (_GL_INT_CONVERT, _GL_INT_TWOS_COMPLEMENT):
(_GL_INT_SIGNED, _GL_INT_MINIMUM, _GL_INT_MAXIMUM):
(_GL_SIGNED_INT_MINIMUM, INT_ADD_RANGE_OVERFLOW):
(INT__SUBTRACT__RANGE_OVERFLOW, INT_NEGATE_RANGE_OVERFLOW):
(INT_MULTIPLY_RANGE_OVERFLOW, INT_REMAINDER_RANGE_OVERFLOW):
(INT_LEFT_SHIFT_RANGE_OVERFLOW, _GL_ADD_OVERFLOW):
(_GL__SUBTRACT__OVERFLOW, _GL_MULTIPLY_OVERFLOW, _GL_DIVIDE_OVERFLOW):
(_GL_REMAINDER_OVERFLOW, _GL_UNSIGNED_NEG_MULTIPLE, INT_ADD_OVERFLOW):
(INT__SUBTRACT__OVERFLOW, INT_NEGATE_OVERFLOW, INT_MULTIPLY_OVERFLOW):
(INT_DIVIDE_OVERFLOW, INT_REMAINDER_OVERFLOW):
(INT_LEFT_SHIFT_OVERFLOW, _GL_BINARY_OP_OVERFLOW): New macros.
2011-05-12 James Youngman
Add a test for glibc's Bugzilla bug #12378.
* m4/fnmatch.m4: Use gnulib's fnmatch if the system fnmatch
doesn't allow the literal matching of a lone "[" (which is
required by POSIX).
* tests/test-fnmatch.c (main): Check that "[/b" matches itself.
2011-05-11 Ulrich Drepper
Sync glibc change fixing Bugzilla bug #12378.
* lib/fnmatch_loop.c (FCT): When matching '[' keep track of
beginning and fall back to matching as normal character if the
string ends before the matching ']' is found. This is what POSIX
requires.
2011-05-13 Eric Blake
getcwd-lgpl: relax test for FreeBSD
* doc/posix-functions/getcwd.texi (getcwd): Document portability
issue.
* tests/test-getcwd-lgpl.c (main): Relax test.
Reported by Matthias Bolte.
2011-05-11 Eric Blake
test-fflush: silence compiler warning
* tests/test-fflush.c (main): Don't fclose a NULL pointer.
2011-05-11 Bruno Haible
canonicalize, canonicalize-lgpl: Avoid crash dialog on MacOS X.
* m4/canonicalize.m4 (gl_FUNC_REALPATH_WORKS): Add GL_NOCRASH code.
* modules/canonicalize (Depends-on): Add 'nocrash'.
* modules/canonicalize-lgpl (Depends-on): Likewise.
* doc/posix-functions/realpath.texi: Update platforms list.
Reported by Ryan Schmidt .
2011-05-11 Bruno Haible
group-member: Declare function in .
* lib/unistd.in.h (group_member): New declaration.
* lib/group-member.h: Remove file.
* lib/group-member.c: Include instead of group-member.h.
* tests/test-unistd-c++.cc: Check signature of group_member.
* m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Require
gl_UNISTD_H_DEFAULTS. Set HAVE_GROUP_MEMBER.
* m4/unistd_h.m4 (gl_UNISTD_H): Check whether group_member is declared.
(gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GROUP_MEMBER,
HAVE_GROUP_MEMBER.
* modules/group-member (Files): Remove lib/group-member.h.
(Depends-on): Add unistd. Specify conditions.
(configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
(Include): Change to .
* modules/unistd (Makefile.am): Substitute GNULIB_GROUP_MEMBER,
HAVE_GROUP_MEMBER.
* NEWS: Mention the change.
* lib/euidaccess.c: Don't include group-member.h.
2011-05-11 Bruno Haible
group-member: Document module.
* doc/glibc-functions/group_member.texi: Mention the 'group-member'
module.
2011-05-11 Bruno Haible
fclose: Fix mistake earlier today.
* lib/fclose.c (rpl_fclose): Don't assume that EOF < 0.
2011-05-11 Eric Blake
fclose: preserve fflush errors
* lib/fclose.c (rpl_fclose): Don't lose fflush errors.
Reported by Jim Meyering.
bootstrap: support a prereq of 'rpcgen -' on RHEL5
* build-aux/bootstrap (check_versions): When no specific version
is required, merely check that the app produces an exit status
that indicates its existence.
maint.mk: drop redundant check
* top/maint.mk (sc_the_the): Delete; sc_prohibit_doubled_word does
the same but better.
2011-05-11 Bruno Haible
fclose: Fix possible link error.
* lib/fclose.c (rpl_fclose): Invoke _gl_unregister_fd, not
unregister_shadow_fd. Improve comments.
* lib/sockets.c (close_fd_maybe_socket): Add comments. Reported by
Eric Blake.
2011-05-11 Jim Meyering
maint.mk: improve "can not" detection and generalize rule name
* top/maint.mk (sc_prohibit_undesirable_word_seq): Renamed from
sc_prohibit_can_not, since we'll probably add a few more word pairs here.
Use the same technique as in sc_prohibit_doubled_word, so that
we recognize "can not" also when the words are separated by a newline.
Suggested by Eric Blake.
(perl_filename_lineno_text_): Define. Factored out of...
(prohibit_doubled_word_): ...here. Use the new definition.
(prohibit_undesirable_word_seq_): New var. Use it here, too.
(prohibit_undesirable_word_seq_RE_): New overridable variable.
(ignore_undesirable_word_sequence_RE_): New overridable variable.
2011-05-10 Eric Blake
fclose: avoid double close race when possible
* lib/fclose.c (rpl_fclose): Rewrite to avoid double-close race on
all but WINDOWS_SOCKETS.
2011-05-10 Bastien Roucariès
openat: correct new comment
* lib/openat-proc.c (openat_proc_name): Correct the comment.
2011-05-10 Jim Meyering
openat: add comments
* lib/openat-proc.c (openat_proc_name): Add comments,
mostly from Eric Blake.
2011-05-09 Eric Blake
openat: reduce syscalls in first probe of /proc
* lib/openat-proc.c (openat_proc_name): Require that /proc/self/fd
be a directory. Simplify the probe for .. bugs.
* modules/openat (Depends-on): Drop same-inode.
Reported by Bastien ROUCARIES.
2011-05-09 Jim Meyering
maint.mk: change semantics/name of tight_scope variables
* top/maint.mk (_gl_TS_var_match, _gl_TS_function_match):
Rename variables to align with semantics that make them more useful.
maint.mk: tweak new rule's name not to impinge
* top/maint.mk (_gl_tight_scope): Rename from sc_tight_scope-0.
(sc_tight_scope): Use new rule name rather than $@-0.
maint.mk: add a syntax-check rule to ensure tightly-scoped symbols
* top/maint.mk (sc_tight_scope): New rule.
(sc_tight_scope-0): New rule, ifdef'd out.
(_gl_TS_dir): Default.
(_gl_TS_unmarked_extern_functions, _gl_TS_function_regex): Define.
(_gl_TS_unmarked_extern_vars, _gl_TS_var_regex): Define.
2011-05-09 Simon Josefsson
* m4/gc.m4: Remove gl_PREREQ_GC (not used). Reported by Bruno
Haible .
2011-05-08 Bruno Haible
Comments.
* m4/isnanf.m4: Add comment.
* m4/isnanl.m4: Likewise.
2011-05-08 Bruno Haible
glob: Remove obsolete macro.
* m4/glob.m4 (gl_GLOB_SUBSTITUTE): Remove macro.
2011-05-08 Paul Eggert
intprops: Sun C 5.11 supports __typeof__
* lib/intprops.h (_GL_HAVE___TYPEOF__): New macro, which is set
for either GCC 2 or later, as before, or for Sun C 5.11 or later,
which is new.
(_GL_SIGNED_TYPE_OR_EXPR): Use it.
intprops: switch to usual gnulib indenting and naming
* lib/intprops.h (_GL_INTPROPS_H): Rename from GL_INTPROPS_H.
(_GL_SIGNED_TYPE_OR_EXPR): Rename from signed_type_or_expr__.
* tests/test-inttostr.c (IS_TIGHT): Adjust to above renaming.
2011-05-08 Jim Meyering
maint.mk: suppress "Entering/Leaving directory" diag in announcement
* top/maint.mk (release-prep): Use make's --no-print-directory
option when generating the announcement. This eliminates the
pesky "make[2]: Entering/Leaving directory" diagnostics in the
generated announcement template.
2011-05-08 Bruno Haible
tzset: Fix gettimeofday wrapper on Solaris 2.6.
* m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): When invoking
gl_GETTIMEOFDAY_REPLACE_LOCALTIME, also set REPLACE_GETTIMEOFDAY.
2011-05-07 Paul Eggert
ignore-value, verify: Omit include files from lib_SOURCES.
* modules/ignore-value, modules/verify (Makefile.am):
Don't put ignore-value.h, or verify.h, into lib_SOURCES, as
that leads Automake to duplicate use of am__objects_... variables
in Makefile.in. See
.
2011-05-07 Bruno Haible
fclose: Simplify autoconf macro.
* m4/fclose.m4 (gl_FUNC_FCLOSE): Assume gl_FUNC_FFLUSH_STDIN is
defined.
2011-05-07 Bruno Haible
canonicalize-lgpl: Fix autoconf macro ordering bug.
* m4/canonicalize.m4 (gl_CANONICALIZE_LGPL): Require
gl_STDLIB_H_DEFAULTS.
2011-05-06 Eric Blake
maintainer-makefile: make sc_po_check easier to tune
* top/maint.mk (sc_po_check): Allow overriding which non-VC files
to probe for strings, such as an alternate location for gnulib.
fclose: guarantee behavior on seekable stdin
* modules/fclose (Depends-on): Add fflush.
* doc/posix-functions/fclose.texi (fclose): Document this.
* tests/test-fclose.c (main): Make test for this unconditional.
2011-05-06 Bruno Haible
fflush, fpurge: Relicense under LGPLv2+.
* modules/fflush (License): Change from LGPLv3+ to LGPLv2+.
* modules/fpurge (License): Likewise.
With permission from Eric Blake and Jim Meyering.
Suggested by Eric Blake.
2011-05-06 Karl Berry
* MODULES.html.sh (func_all_modules): remove exit.
2011-05-06 Jim Meyering
maint.mk: use info-gnu@ as the default only for a stable release
* top/maint.mk: Don't default to info-gnu for alpha or beta releases.
For those, just use $(PACKAGE_BUGREPORT), in which case we don't have
to set the Mail-Followup-To header. Prompted by Reuben Thomas in
http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/26488
2011-05-05 Paul Eggert
assert-h: new module, which supports C1X-style static_assert
* lib/assert.in.h, m4/assert_h.m4, modules/assert-h: New files.
* lib/verify.h: Revamp so that this can be copied into assert.h,
while retaining the ability to use it standalone as before.
Rename private identifiers so as not to encroach on the
standard C namespace, since this is now used by assert.h.
(_GL_VERIFY_TYPE): New macro, factoring out differing parts of
the old verify_true.
(_GL_VERIFY_TRUE): New macro, with much of the contents of
the old verify_true. Use _GL_VERIFY_TYPE.
(_GL_VERIFY): New macro, with much of the contents of the old verify.
(static_assert): New macro, if _GL_STATIC_ASSERT_H
is defined and static_assert is not; _GL_STATIC_ASSERT_H is
defined when this file is copied into the replacement assert.h.
(_Static_assert): New macro, if _GL_STATIC_ASSERT_H is defined
and _Static_assert is not built in.
(verify_true, verify): Define only if _GL_STATIC_ASSERT_H is not
defined, and use the new macros mentioned above.
* doc/posix-headers/assert.texi: Document this.
2011-05-05 Bruno Haible
fclose, fflush: Respect rules for use of AC_LIBOBJ.
* m4/fflush.m4 (gl_FUNC_FFLUSH): Don't invoke gl_REPLACE_FCLOSE.
* m4/fclose.m4 (gl_FUNC_FCLOSE): Invoke gl_FUNC_FFLUSH_STDIN and
gl_REPLACE_FCLOSE here.
* modules/fflush (Depends-on): Remove fclose.
* doc/posix-functions/fclose.texi: Mention module 'fflush' only in
combination with module 'fclose'.
2011-05-05 Bruno Haible
fflush, fseeko: Respect rules for use of AC_LIBOBJ.
* m4/fflush.m4 (gl_FUNC_FFLUSH_STDIN): New macro, extracted from
gl_FUNC_FFLUSH.
(gl_FUNC_FFLUSH): Use it.
(gl_REPLACE_FFLUSH): Don't invoke gl_REPLACE_FSEEKO.
* m4/fseeko.m4 (gl_FUNC_FSEEKO): Invoke gl_FUNC_FFLUSH_STDIN and
gl_REPLACE_FSEEKO here.
2011-05-05 Bruno Haible
tzset: Relicense under LGPL.
* modules/tzset (License): Change to LGPL.
No agreement needed; it's a no-op.
strtoimax, strtoumax: Relicense under LGPL.
* modules/strtoimax (License): Change to LGPL.
* modules/strtoumax (License): Likewise.
With permission from Jim Meyering, Paul Eggert:
getgroups: Relicense under LGPL.
* modules/getgroups (License): Change to LGPL.
With permission from Jim Meyering, Paul Eggert, Eric Blake:
nanosleep: Relicense under LGPL.
* modules/nanosleep (License): Change to LGPL.
With permission from Jim Meyering, Paul Eggert, Eric Blake, Bruno
Haible:
futimens: Relicense under LGPL.
* modules/futimens (License): Change to LGPL.
With permission from Eric Blake:
fflush: Relicense under LGPL.
* modules/fflush (License): Change to LGPL.
With permission from Eric Blake, Bruno Haible, Jim Meyering:
tmpfile: Relicense under LGPL.
* modules/tmpfile (License): Change to LGPL.
With permission from Ben Pfaff:
isfinite: Relicense under LGPL.
* modules/isfinite (License): Change to LGPL.
With permission from Ben Pfaff, Bruno Haible:
acosl..tanl: Relicense under LGPL.
* modules/acosl (License): Change to LGPL.
* modules/asinl (License): Likewise.
* modules/atanl (License): Likewise.
* modules/cosl (License): Likewise.
* modules/expl (License): Likewise.
* modules/logl (License): Likewise.
* modules/sinl (License): Likewise.
* modules/sqrtl (License): Likewise.
* modules/tanl (License): Likewise.
Source code originally from glibc and Paolo Bonzini. Agreements:
2011-05-05 Bruno Haible
signal: Define sighandler_t.
* lib/signal.in.h (sighandler_t): New type.
* m4/signal_h.m4 (gl_SIGNAL_H): Require AC_USE_SYSTEM_EXTENSIONS. Test
whether sighandler_t is defined.
(gl_SIGNAL_H_DEFAULTS): Initialize HAVE_SIGHANDLER_T.
* modules/signal (Depends-on): Add extensions.
(Makefile.am): Substitute HAVE_SIGHANDLER_T.
* doc/posix-headers/signal.texi: Mention the problem with sighandler_t.
Suggested by Markus Steinborn .
2011-05-05 Eric Blake
maint: remove useless REPLACE_*_H macros
* m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): Delete.
* m4/dirent_h.m4 (gl_REPLACE_DIRENT_H): Likewise.
* m4/locale_h.m4 (gl_REPLACE_LOCALE_H): Likewise.
* m4/poll_h.m4 (gl_REPLACE_POLL_H): Likewise.
* m4/spawn_h.m4 (gl_REPLACE_SPAWN_H): Likewise.
* m4/sys_ioctl_h.m4 (gl_REPLACE_SYS_IOCTL_H): Likewise.
* m4/wchar_h.m4 (gl_REPLACE_WCHAR_H): Likewise.
* m4/btowc.m4: Update callers.
* m4/dirfd.m4: Likewise.
* m4/duplocale.m4: Likewise.
* m4/fchdir.m4: Likewise.
* m4/fdopendir.m4: Likewise.
* m4/inet_ntop.m4: Likewise.
* m4/inet_pton.m4: Likewise.
* m4/ioctl.m4: Likewise.
* m4/mbrlen.m4: Likewise.
* m4/mbrtowc.m4: Likewise.
* m4/mbsinit.m4: Likewise.
* m4/mbsnrtowcs.m4: Likewise.
* m4/mbsrtowcs.m4: Likewise.
* m4/poll.m4: Likewise.
* m4/setlocale.m4: Likewise.
* m4/wcrtomb.m4: Likewise.
* m4/wcsnrtombs.m4: Likewise.
* m4/wcsrtombs.m4: Likewise.
* m4/wctob.m4: Likewise.
* m4/wcwidth.m4: Likewise.
* modules/posix_spawn: Likewise.
* modules/posix_spawn_file_actions_addclose: Likewise.
* modules/posix_spawn_file_actions_adddup2: Likewise.
* modules/posix_spawn_file_actions_addopen: Likewise.
* modules/posix_spawn_file_actions_destroy: Likewise.
* modules/posix_spawn_file_actions_init: Likewise.
* modules/posix_spawnattr_destroy: Likewise.
* modules/posix_spawnattr_getflags: Likewise.
* modules/posix_spawnattr_getpgroup: Likewise.
* modules/posix_spawnattr_getschedparam: Likewise.
* modules/posix_spawnattr_getschedpolicy: Likewise.
* modules/posix_spawnattr_getsigdefault: Likewise.
* modules/posix_spawnattr_getsigmask: Likewise.
* modules/posix_spawnattr_init: Likewise.
* modules/posix_spawnattr_setflags: Likewise.
* modules/posix_spawnattr_setpgroup: Likewise.
* modules/posix_spawnattr_setschedparam: Likewise.
* modules/posix_spawnattr_setschedpolicy: Likewise.
* modules/posix_spawnattr_setsigdefault: Likewise.
* modules/posix_spawnattr_setsigmask: Likewise.
* modules/posix_spawnp: Likewise.
2011-05-04 Reuben Thomas
Add option to do-release-commit-and-tag to specify branch.
* build-aux/do-release-commit-and-tag: Add --branch.
2011-05-03 Bruno Haible
Avoid unnecessary compilation units, through conditional dependencies.
* modules/accept (Depends-on): Add conditions to the dependencies.
* modules/acosl (Depends-on): Likewise.
* modules/argz (Depends-on): Likewise.
* modules/asinl (Depends-on): Likewise.
* modules/atanl (Depends-on): Likewise.
* modules/atoll (Depends-on): Likewise.
* modules/bind (Depends-on): Likewise.
* modules/btowc (Depends-on): Likewise.
* modules/canonicalize-lgpl (Depends-on): Likewise.
* modules/ceil (Depends-on): Likewise.
* modules/ceilf (Depends-on): Likewise.
* modules/ceill (Depends-on): Likewise.
* modules/chdir-long (Depends-on): Likewise.
* modules/chown (Depends-on): Likewise.
* modules/close (Depends-on): Likewise.
* modules/connect (Depends-on): Likewise.
* modules/cosl (Depends-on): Likewise.
* modules/dirfd (Depends-on): Likewise.
* modules/dprintf (Depends-on): Likewise.
* modules/dprintf-posix (Depends-on): Likewise.
* modules/error (Depends-on): Likewise.
* modules/euidaccess (Depends-on): Likewise.
* modules/expl (Depends-on): Likewise.
* modules/faccessat (Depends-on): Likewise.
* modules/fchdir (Depends-on): Likewise.
* modules/fclose (Depends-on): Likewise.
* modules/fcntl (Depends-on): Likewise.
* modules/fdopendir (Depends-on): Likewise.
* modules/fflush (Depends-on): Likewise.
* modules/floor (Depends-on): Likewise.
* modules/floorf (Depends-on): Likewise.
* modules/floorl (Depends-on): Likewise.
* modules/fnmatch (Depends-on): Likewise.
* modules/fopen (Depends-on): Likewise.
* modules/fprintf-posix (Depends-on): Likewise.
* modules/frexp (Depends-on): Likewise.
* modules/frexp-nolibm (Depends-on): Likewise.
* modules/frexpl (Depends-on): Likewise.
* modules/frexpl-nolibm (Depends-on): Likewise.
* modules/fseek (Depends-on): Likewise.
* modules/fsusage (Depends-on): Likewise.
* modules/ftell (Depends-on): Likewise.
* modules/ftello (Depends-on): Likewise.
* modules/futimens (Depends-on): Likewise.
* modules/getcwd (Depends-on): Likewise.
* modules/getcwd-lgpl (Depends-on): Likewise.
* modules/getdelim (Depends-on): Likewise.
* modules/getdomainname (Depends-on): Likewise.
* modules/getgroups (Depends-on): Likewise.
* modules/gethostname (Depends-on): Likewise.
* modules/getline (Depends-on): Likewise.
* modules/getlogin_r (Depends-on): Likewise.
* modules/getopt-posix (Depends-on): Likewise.
* modules/getpeername (Depends-on): Likewise.
* modules/getsockname (Depends-on): Likewise.
* modules/getsockopt (Depends-on): Likewise.
* modules/getsubopt (Depends-on): Likewise.
* modules/getusershell (Depends-on): Likewise.
* modules/glob (Depends-on): Likewise.
* modules/grantpt (Depends-on): Likewise.
* modules/iconv_open (Depends-on): Likewise.
* modules/iconv_open-utf (Depends-on): Likewise.
* modules/inet_ntop (Depends-on): Likewise.
* modules/inet_pton (Depends-on): Likewise.
* modules/ioctl (Depends-on): Likewise.
* modules/isapipe (Depends-on): Likewise.
* modules/isfinite (Depends-on): Likewise.
* modules/isinf (Depends-on): Likewise.
* modules/lchown (Depends-on): Likewise.
* modules/ldexpl (Depends-on): Likewise.
* modules/link (Depends-on): Likewise.
* modules/linkat (Depends-on): Likewise.
* modules/listen (Depends-on): Likewise.
* modules/logl (Depends-on): Likewise.
* modules/lstat (Depends-on): Likewise.
* modules/mbrlen (Depends-on): Likewise.
* modules/mbrtowc (Depends-on): Likewise.
* modules/mbsinit (Depends-on): Likewise.
* modules/mbsnrtowcs (Depends-on): Likewise.
* modules/mbsrtowcs (Depends-on): Likewise.
* modules/mbtowc (Depends-on): Likewise.
* modules/memcmp (Depends-on): Likewise.
* modules/mkdir (Depends-on): Likewise.
* modules/mkdtemp (Depends-on): Likewise.
* modules/mkfifo (Depends-on): Likewise.
* modules/mkfifoat (Depends-on): Likewise.
* modules/mknod (Depends-on): Likewise.
* modules/mkostemp (Depends-on): Likewise.
* modules/mkostemps (Depends-on): Likewise.
* modules/mkstemp (Depends-on): Likewise.
* modules/mkstemps (Depends-on): Likewise.
* modules/mktime (Depends-on): Likewise.
* modules/nanosleep (Depends-on): Likewise.
* modules/open (Depends-on): Likewise.
* modules/openat (Depends-on): Likewise.
* modules/perror (Depends-on): Likewise.
* modules/poll (Depends-on): Likewise.
* modules/popen (Depends-on): Likewise.
* modules/posix_spawn (Depends-on): Likewise.
* modules/posix_spawn_file_actions_addclose (Depends-on): Likewise.
* modules/posix_spawn_file_actions_adddup2 (Depends-on): Likewise.
* modules/posix_spawn_file_actions_addopen (Depends-on): Likewise.
* modules/posix_spawnp (Depends-on): Likewise.
* modules/pread (Depends-on): Likewise.
* modules/printf-posix (Depends-on): Likewise.
* modules/ptsname (Depends-on): Likewise.
* modules/putenv (Depends-on): Likewise.
* modules/pwrite (Depends-on): Likewise.
* modules/readline (Depends-on): Likewise.
* modules/readlink (Depends-on): Likewise.
* modules/readlinkat (Depends-on): Likewise.
* modules/recv (Depends-on): Likewise.
* modules/recvfrom (Depends-on): Likewise.
* modules/regex (Depends-on): Likewise.
* modules/remove (Depends-on): Likewise.
* modules/rename (Depends-on): Likewise.
* modules/renameat (Depends-on): Likewise.
* modules/rmdir (Depends-on): Likewise.
* modules/round (Depends-on): Likewise.
* modules/roundf (Depends-on): Likewise.
* modules/roundl (Depends-on): Likewise.
* modules/rpmatch (Depends-on): Likewise.
* modules/select (Depends-on): Likewise.
* modules/send (Depends-on): Likewise.
* modules/sendto (Depends-on): Likewise.
* modules/setenv (Depends-on): Likewise.
* modules/setlocale (Depends-on): Likewise.
* modules/setsockopt (Depends-on): Likewise.
* modules/shutdown (Depends-on): Likewise.
* modules/sigaction (Depends-on): Likewise.
* modules/signbit (Depends-on): Likewise.
* modules/sigprocmask (Depends-on): Likewise.
* modules/sinl (Depends-on): Likewise.
* modules/sleep (Depends-on): Likewise.
* modules/snprintf (Depends-on): Likewise.
* modules/snprintf-posix (Depends-on): Likewise.
* modules/socket (Depends-on): Likewise.
* modules/sprintf-posix (Depends-on): Likewise.
* modules/sqrtl (Depends-on): Likewise.
* modules/stat (Depends-on): Likewise.
* modules/strchrnul (Depends-on): Likewise.
* modules/strdup-posix (Depends-on): Likewise.
* modules/strerror (Depends-on): Likewise.
* modules/strerror_r-posix (Depends-on): Likewise.
* modules/strndup (Depends-on): Likewise.
* modules/strnlen (Depends-on): Likewise.
* modules/strptime (Depends-on): Likewise.
* modules/strsep (Depends-on): Likewise.
* modules/strsignal (Depends-on): Likewise.
* modules/strstr-simple (Depends-on): Likewise.
* modules/strtod (Depends-on): Likewise.
* modules/strtoimax (Depends-on): Likewise.
* modules/strtok_r (Depends-on): Likewise.
* modules/strtoumax (Depends-on): Likewise.
* modules/symlink (Depends-on): Likewise.
* modules/symlinkat (Depends-on): Likewise.
* modules/tanl (Depends-on): Likewise.
* modules/tcgetsid (Depends-on): Likewise.
* modules/tmpfile (Depends-on): Likewise.
* modules/trunc (Depends-on): Likewise.
* modules/truncf (Depends-on): Likewise.
* modules/truncl (Depends-on): Likewise.
* modules/uname (Depends-on): Likewise.
* modules/unlink (Depends-on): Likewise.
* modules/unlockpt (Depends-on): Likewise.
* modules/unsetenv (Depends-on): Likewise.
* modules/usleep (Depends-on): Likewise.
* modules/utimensat (Depends-on): Likewise.
* modules/vasprintf (Depends-on): Likewise.
* modules/vdprintf (Depends-on): Likewise.
* modules/vdprintf-posix (Depends-on): Likewise.
* modules/vfprintf-posix (Depends-on): Likewise.
* modules/vprintf-posix (Depends-on): Likewise.
* modules/vsnprintf (Depends-on): Likewise.
* modules/vsnprintf-posix (Depends-on): Likewise.
* modules/vsprintf-posix (Depends-on): Likewise.
* modules/wcrtomb (Depends-on): Likewise.
* modules/wcscasecmp (Depends-on): Likewise.
* modules/wcscspn (Depends-on): Likewise.
* modules/wcsdup (Depends-on): Likewise.
* modules/wcsncasecmp (Depends-on): Likewise.
* modules/wcsnrtombs (Depends-on): Likewise.
* modules/wcspbrk (Depends-on): Likewise.
* modules/wcsrtombs (Depends-on): Likewise.
* modules/wcsspn (Depends-on): Likewise.
* modules/wcsstr (Depends-on): Likewise.
* modules/wcstok (Depends-on): Likewise.
* modules/wcswidth (Depends-on): Likewise.
* modules/wctob (Depends-on): Likewise.
* modules/wctomb (Depends-on): Likewise.
* modules/wctype (Depends-on): Likewise.
* modules/wcwidth (Depends-on): Likewise.
* modules/write (Depends-on): Likewise.
2011-05-03 Bruno Haible
Support for conditional dependencies.
* doc/gnulib.texi (Module description): Document the syntax of
conditional dependencies.
* gnulib-tool: New option --conditional-dependencies.
(func_usage): Document it.
(cond_dependencies): New variable.
(func_get_automake_snippet_conditional,
func_get_automake_snippet_unconditional): New functions, extracted from
func_get_automake_snippet.
(func_get_automake_snippet): Use them.
(sed_first_32_chars): New variable.
(func_module_shellfunc_name): New function.
(func_module_shellvar_name): New function.
(func_module_conditional_name): New function.
(func_uncond_add_module, func_conddep_add_module, func_cond_module_p,
func_cond_module_condition): New functions.
(func_modules_transitive_closure): Add support for conditional
dependencies.
(func_emit_lib_Makefile_am): For a conditional module, enclose the
conditional automake snippet in an automake conditional.
(func_emit_autoconf_snippets): Emit shell functions that contain the
code for conditional modules.
(func_import, func_create_testdir): Update specification.
2011-05-03 Eric Blake
test-getaddrinfo: report error information
* tests/test-getaddrinfo.c (simple): Use err outside of dbprintf.
2011-05-03 Jim Meyering
bootstrap: avoid build failure when $GZIP is set
* build-aux/bootstrap (check_versions): Do not treat $GZIP as a
program name. If defined at all, it is supposed to list gzip options.
Reported by Alan Curry in http://debbugs.gnu.org/8609
2011-05-03 Reuben Thomas
readme-release: new module with release instructions
* modules/readme-release: New module.
* top/README-release: New file, from coreutils, grep, diffutils.
* MODULES.html.sh (Support for maintaining and releasing): Add it.
2011-05-02 Eric Blake
fflush: also replace fclose when fixing fflush
* modules/fflush (Depends-on): Add fclose.
* m4/fflush.m4 (gl_FUNC_FFLUSH): Also replace fclose.
* lib/fclose.c (rpl_fclose): Don't cause spurious failures on
memstreams with no backing fd.
* doc/posix-functions/fclose.texi (fclose): Document the use of
fflush module to fix the bug.
* tests/test-fclose.c (main): Relax test when fclose is used in
isolation.
fclose: add some tests
* modules/fclose-tests: New test module.
* tests/test-fclose.c: New file.
* doc/posix-functions/fclose.texi (fclose): Document the bug.
fclose: reduced dependencies
* modules/fclose (Depends-on): Switch from fflush/fseeko to
simpler lseek.
* lib/fclose.c (rpl_fclose): Likewise.
Reported by Simon Josefsson.
exit: drop remaining clients
* modules/argmatch (Depends-on): Replace exit with stdlib.
* modules/copy-file (Depends-on): Likewise.
* modules/execute (Depends-on): Likewise.
* modules/exitfail (Depends-on): Likewise.
* modules/obstack (Depends-on): Likewise.
* modules/pagealign_alloc (Depends-on): Likewise.
* modules/pipe-filter-gi (Depends-on): Likewise.
* modules/pipe-filter-ii (Depends-on): Likewise.
* modules/savewd (Depends-on): Likewise.
* modules/spawn-pipe (Depends-on): Likewise.
* modules/wait-process (Depends-on): Likewise.
* modules/xsetenv (Depends-on): Likewise.
* modules/chdir-long (Depends-on): Add stdlib, for EXIT_FAILURE.
* modules/git-merge-changelog (Depends-on): Likewise.
* modules/long-options (Depends-on): Likewise.
* modules/pt_chown (Depends-on): Likewise.
* modules/sysexits (Depends-on): Likewise.
freading: relax license from LGPLv3+ to LGPLv2+
* modules/freading (License): Relax LGPL version.
2011-05-02 Bruno Haible
fchdir: Remove unused dependencies.
* modules/fchdir (Depends-on): Remove include_next.
2011-05-02 Bruno Haible
gnulib-tool: Refactor.
* gnulib-tool (func_emit_autoconf_snippet): New function, extracted
from func_emit_autoconf_snippets.
(func_emit_autoconf_snippets): Use it.
2011-05-02 Simon Josefsson
* NEWS: Document removal of 'exit'.
* modules/exit: Remove file.
2011-05-01 Bruno Haible
Update DEPENDENCIES.
* DEPENDENCIES (gettext): Recommend the newest release.
Reported by Simon Josefsson.
2011-05-01 Bruno Haible
gnulib-tool: Reduce code duplication.
* gnulib-tool (func_emit_autoconf_snippets): New function.
(func_import, func_create_testdir): Use it.
2011-04-30 Eric Blake
fclose: don't fail on non-seekable input stream
* modules/fclose (Depends-on): Add freading, fflush, fseeko.
* lib/fclose.c (rpl_fclose): Skip fflush for non-seekable input,
since fflush is allowed to fail in that case.
2011-04-30 Bruno Haible
dup3: cleanup
* lib/dup3.c: Remove old code, leftover from 2009-12-16.
2011-04-30 Bruno Haible
netdb: Make it work in C++ mode.
* lib/netdb.in.h (struct addrinfo): In C++, define as a C struct.
(getaddrinfo, freeaddrinfo, getnameinfo): Use macros from c++defs
module.
* m4/netdb_h.m4 (gl_NETDB_MODULE_INDICATOR): Invoke
gl_MODULE_INDICATOR_FOR_TESTS.
* modules/netdb-tests (Depends-on): Add netdb-c++-tests.
* modules/netdb-c++-tests: New file.
* tests/test-netdb-c++.cc: New file.
2011-04-30 Bruno Haible
New modules 'vfscanf', 'vscanf'.
* modules/vfscanf: New file.
* modules/vscanf: New file.
* m4/stdio_h.m4 (gl_STDIO_H): Don't set GNULIB_VFSCANF, GNULIB_VSCANF
here.
* doc/posix-functions/vfscanf.texi: Mention module 'vfscanf'.
* doc/posix-functions/vscanf.texi: Mention module 'vscanf'.
2011-04-30 Bruno Haible
passfd: Add comments.
* lib/passfd.c: Add comments about platforms.
2011-04-30 Bruno Haible
sys_uio: Make self-contained.
* lib/sys_uio.in.h: Include before .
* doc/posix-headers/sys_uio.texi: Mention the OpenBSD problem.
2011-04-30 Bruno Haible
sys_socket: Ensure 'struct iovec' definition.
* lib/sys_socket.in.h: Include also on platforms that have
.
* doc/posix-headers/sys_socket.texi: Mention the OpenBSD problem.
2011-04-30 Bruno Haible
sys_uio: Protect definition of 'struct iovec'.
* lib/sys_uio.in.h (struct iovec): Avoid redefinition. In C++, define
it as a C struct.
2011-04-30 Bruno Haible
manywarnings: fix indentation
* m4/manywarnings.m4: Indent by 2 spaces consistently.
2011-04-30 Pádraig Brady
manywarnings: add -Wno-missing-field-initializers if needed.
* m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Add the above
option if it's needed to allow initialization with { 0, }
2011-04-29 Reuben Thomas
announce-gen: cosmetic improvement
* build-aux/announce-gen: Strip any leading ./ from the NEWS file name.
2011-04-29 Jim Meyering
vc-list-files: indent with spaces, not TABs
* build-aux/vc-list-files: Convert leading TABs to spaces,
to match the style of most other files in gnulib.
announce-gen: indent with spaces, not TABs
* build-aux/announce-gen: Convert all TABs to spaces, to match
the style of most other files in gnulib.
2011-04-29 Eric Blake
quotearg: avoid uninitialized variable use
* lib/quotearg.c (quoting_options_from_style): Initialize
remaining fields, and ensure that custom styles are only used via
quoting_options rather than quoting_style.
2011-04-29 Jim Meyering
maint.mk: remove unused VC-tag variable
* top/maint.mk (VC-tag): Remove unused variable.
2011-04-29 Bruno Haible
netdb: fix gai_strerror replacements
* lib/netdb.in.h: Add _GL_FUNCDECL_RPL definitions.
* modules/netdb: Substitute it.
2011-04-29 Jim Meyering
test-getcwd.c: avoid new set-but-not-used warning
* tests/test-getcwd.c (test_abort_bug): Exit nonzero for any problem,
not just the glibc/abort one that getcwd-abort-bug.m4 detects.
* m4/getcwd-abort-bug.m4: Update this now-duplicated code to match,
and adjust the code that sets gl_cv_func_getcwd_abort_bug accordingly.
test-hash.c: avoid a new shadowing warning
* tests/test-hash.c (main): Don't shadow "dup".
2011-04-28 Eric Blake
getaddrinfo: fix gai_strerror signature
* m4/getaddrinfo.m4 (gl_GETADDRINFO): Detect broken signatures,
and work around mingw with UNICODE defined.
(gl_PREREQ_GETADDRINFO): Drop redundant decl check.
* m4/netdb_h.m4 (gl_NETDB_H_DEFAULTS): Add witness.
* modules/netdb (Makefile.am): Substitute it.
* lib/netdb.in.h (gai_strerror): Declare replacement.
* lib/gai_strerror.c (rpl_gai_strerror): Fix signature.
* doc/posix-functions/gai_strerror.texi (gai_strerror): Document
the fix.
getsockopt: avoid compiler warning
* lib/getsockopt.c (rpl_getsockopt): Add a cast for mingw.
Reported by Matthias Bolte.
tests: drop unused link dependency
* modules/areadlinkat-tests (Makefile.am): Drop stale LDADD.
* modules/dirent-safer-tests (Makefile.am): Likewise.
* modules/fdopendir-tests (Makefile.am): Likewise.
* modules/mkfifoat-tests (Makefile.am): Likewise.
* modules/openat-safer-tests (Makefile.am): Likewise.
* modules/openat-tests (Makefile.am): Likewise.
* modules/readlinkat-tests (Makefile.am): Likewise.
* modules/symlinkat-tests (Makefile.am): Likewise.
* modules/linkat-tests (Makefile.am): Likewise.
(Depends-on): Switch to filenamecat-lgpl.
* modules/fdutimensat-tests (test_fdutimensat_LDADD): Drop unused
LIBINTL.
* modules/utimensat-tests (test_utimensat_LDADD): Likewise.
* tests/test-linkat.c (main): Don't require xalloc.
hash, mgetgroups: drop xalloc dependency
* lib/hash.c (includes): Adjust includes.
* lib/mgetgroups.c (includes): Likewise.
(xgetgroups): Move...
* lib/xgetgroups.c: ...to new file.
* lib/mgetgroups.h (xgetgroups): Make declaration conditional.
* modules/xgetgroups: New file, split from...
* modules/mgetgroups: ...here.
(Depends-on): Add xalloc-oversized.
* modules/hash (Depends-on): Likewise.
* modules/hash-tests (Depends-on): Drop xalloc.
(test_hash_LDADD): Drop unused library.
* tests/test-hash.c (main): Break xalloc dependency.
(includes): Drop unused include.
xalloc-oversized: new module
* modules/xalloc-oversized: New module.
* modules/xalloc (Depends-on): Add it.
* lib/xalloc.h (xalloc_oversized): Move...
* lib/xalloc-oversized.h: ...into new file.
utimecmp: drop dependency on xmalloc
* lib/utimecmp.c (utimecmp): Work even if hash table cache fails
due to memory pressure.
* modules/utimecmp (Depends-on): Drop xalloc.
2011-04-27 Eric Blake
getcwd: fix mingw bugs
* m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Detect one mingw bug.
* doc/posix-functions/getcwd.texi (getcwd): Document the problems.
* lib/getcwd-lgpl.c (rpl_getcwd): Fix return type.
2011-04-27 Bruno Haible
mkstemps: Ensure declaration on MacOS X 10.5.
* lib/stdlib.in.h: Include when mkstemps is requested.
* doc/glibc-functions/mkstemps.texi: Document header file problem on
MacOS X.
2011-04-27 Bruno Haible
mkstemp: More documentation.
* doc/posix-functions/mkstemp.texi: Document header file problem on
MacOS X.
2011-04-27 Bruno Haible
mkstemp: Tweak configure message when cross-compiling.
* m4/mkstemp.m4 (gl_FUNC_MKSTEMP): When cross-compiling, qualify the
result as a guess.
2011-04-27 Bruno Haible
clean-temp: Clarify what it does.
* lib/clean-temp.h: Add more comments.
* doc/posix-functions/mkstemp.texi: Tweak reference to 'clean-temp'
module.
* doc/glibc-functions/mkostemp.texi: Mention 'clean-temp' here too.
* doc/glibc-functions/mkstemps.texi: Likewise.
* doc/glibc-functions/mkostemps.texi: Likewise.
2011-04-27 Eric Blake
fchdir: avoid extra chdir and fix test
* modules/fchdir (Depends-on): Add dosname, filenamecat-lgpl,
getcwd-lgpl.
* lib/fchdir.c (get_name): Any absolute name will do; it does not
have to be canonical.
(canonicalize_file_name): Drop unused macro.
* m4/dup2.m4 (gl_REPLACE_DUP2): Ensure dup2 is replaced.
filenamecat-lgpl: fix licence
* modules/filenamecat-lgpl (License): Mark as LGPLv2+, as intended
when it was first created.
linkat, renameat: add missing dependency
* modules/linkat (Depends-on): Require getcwd-lgpl.
* modules/renameat (Depends-on): Likewise.
tests: reduce dependencies
* tests/test-linkat.c (main): Use lighter-weight getcwd.
* tests/test-renameat.c (main): Likewise.
* modules/linkat-tests (Depends-on): Relax dependency.
* modules/renameat-tests (Depends-on): Likewise.
* modules/fchdir-tests (Depends-on): Likewise. Also make cloexec
dependency explicit.
save-cwd: reduce default dependency
* modules/save-cwd (Depends-on): Use getcwd-lgpl.
* lib/save-cwd.c: Update comments.
* NEWS: Document the semantic change.
getcwd: enhance tests
* tests/test-getcwd-lgpl.c: New file, taken from...
* tests/test-getcwd.c: ...old contents. Rewrite this file to
repeat long path stress tests from m4 probe.
* modules/getcwd-lgpl-tests: New module.
* modules/getcwd-tests (Depends-on): Depend on lgpl tests.
* m4/getcwd-abort-bug.m4: Update comment.
* m4/getcwd-path-max.m4: Likewise.
getcwd-lgpl: new module
* modules/getcwd-lgpl: New module.
* lib/getcwd-lgpl.c: New file.
* doc/posix-functions/getcwd.texi (getcwd): Document it.
* MODULES.html.sh (lacking POSIX:2008): Likewise.
* modules/getcwd (configure.ac): Set C witness.
* m4/getcwd.m4 (gl_FUNC_GETCWD_LGPL): New macro.
getcwd: tweak comments
* m4/getcwd-abort-bug.m4: Fix comments.
* m4/getcwd-path-max.m4: Likewise.
* m4/getcwd.m4: Likewise.
2011-04-27 Reuben Thomas
and Eric Blake
mkstemp: replace if system version uses wrong permissions
* m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Add test for non-owner
read/write mode bits set in file created by mkstemp.
* doc/posix-functions/mkstemp.texi (mkstemp): Document the fix.
2011-04-27 Eric Blake
passfd: avoid compiler warning
* lib/passfd.c (sendfd, recvfd): Avoid shadowing names.
Reported by Laine Stump.
2011-04-27 J.T. Conklin (tiny change)
* gnulib-tool: change "join -a 2" to "join -a2", the latter is
required by the NetBSD (and perhaps other 4.4BSD derived) join.
2011-04-27 Reuben Thomas
and Eric Blake
mkstemp: mention clean-temp module
* lib/mkstemp.c: Add comment.
* doc/posix-functions/mkstemp.texi (mkstemp): Likewise.
2011-04-26 Paul Eggert
inttypes: also provide default values for 32-bit tests
* m4/inttypes.m4 (gl_INTTYPES_H_DEFAULTS): Also provide default values
for INT32_MAX_LT_INTMAX_MAX and for UINT32_MAX_LT_UINTMAX_MAX.
2011-04-25 Paul Eggert
strtoumax: remove dependency on strtoimax
This is like the strtoull change of yesterday.
* modules/strtoumax (Files): Add lib/strtoimax.c.
(Depends-on): Remove strtoimax and add verify.
inttypes-incomplete: new module
* m4/inttypes.m4 (gl_INTTYPES_INCOMPLETE): New macro, containing
all but the PRI* and SCN* parts of gl_INTTYPES_H.
(gl_INTTYPES_PRI_SCN): New macro, containing the PRI* and SCN* parts
of gl_INTTYPES_H.
(gl_INTTYPES_H): Rewrite in terms of these new macros.
(gl_INTTYPES_H_DEFAULTS): Provide defaults for the PRI* and SCN*
parts, in case gl_INTTYPE_PRI_SCN is not invoked.
* modules/imaxabs, modules/imaxdiv, modules/strtoimax (Depends-on):
* modules/strtoumax, modules/xstrtol (Depends-on):
Depend on inttypes-incomplete, not inttypes.
* modules/inttypes-incomplete: New module, containing the contents
of the old modules/inttypes module, except that the Files: section
omits m4/inttypes-pri.m4, and the configure.ac section invokes
gl_INTTYPES_INCOMPLETE rather than gl_INTTYPES_H.
* modules/inttypes (Files): Remove lib/inttypes.in.h, m4/inttypes.m4.
(Depends-on): Depend only on inttypes-incomplete.
(Makefile.am): Remove everything; this is now in inttypes-incomplete.
inttypes: omit now-redundant strtoimax and strtoumax work
* m4/inttypes.m4 (gl_INTTYPES_H): Do not check for strtoimax and
strtoumax decls; gl_FUNC_STRTOIMAX and gl_FUNC_STRTOUMAX now do this.
strtoimax, strtoumax: simplify, port to HP-UX 11.00 64-bit
This supports apps that need pointers to strtoimax and strtoumax,
and ports to HP-UX 11.00 64.bit, which has macros that expand to
nonexistent functions. See
et seq.
* lib/inttypes.in.h (strtoimax, strtoumax): #undef before declaring.
* m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Don't check whether it's
a macro.
* m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
2011-04-25 Simon Josefsson
* modules/gnumakefile (configure.ac): Replace TAB with SPCs.
2011-04-25 Bruno Haible
strtol, strtoul: Mark modules as obsolete.
* modules/strtol (Status, Notice): New sections.
* modules/strtoul (Status, Notice): New sections.
2011-04-25 Bruno Haible
strtod: Remove check for strtod, unless supporting old platforms.
* modules/strtod-obsolete: New file.
* m4/strtod-obsolete.m4: New file.
* m4/strtod.m4 (gl_FUNC_STRTOD): Don't check whether strtod is declared
if gl_FUNC_STRTOD_OBSOLETE is not also defined.
* modules/strtod (Depends-on): Add strtod-obsolete.
* doc/posix-functions/strtod.texi: Mention module strtod-obsolete.
2011-04-25 Bruno Haible
strcase: Make module obsolete.
* modules/strcase (Status, Notice): New sections.
2011-04-25 Bruno Haible
dup2: Remove check for dup2, unless supporting old obsolete platforms.
* modules/dup2-obsolete: New file.
* m4/dup2-obsolete.m4: New file.
* m4/dup2.m4 (gl_FUNC_DUP2): Don't check whether dup2 exists if
gl_FUNC_DUP2_OBSOLETE is not also defined.
* modules/dup2 (Depends-on): Add dup2-obsolete.
* doc/posix-functions/dup2.texi: Mention module dup2-obsolete.
2011-04-25 Bruno Haible
strnlen: Avoid memchr related link error on old obsolete platforms.
* modules/memchr-obsolete: New file.
* m4/memchr-obsolete.m4: New file.
* m4/memchr.m4 (gl_FUNC_MEMCHR): Don't check whether memchr exists if
gl_FUNC_MEMCHR_OBSOLETE is not also defined.
* modules/memchr (Depends-on): Add memchr-obsolete.
* modules/strnlen (Depends-on): Likewise.
* doc/posix-functions/memchr.texi: Mention module memchr-obsolete.
2011-04-25 Jim Meyering
maint.mk: makefile_at_at_check extend and clean up
* top/maint.mk (sc_makefile_at_at_check): Check *.mk files
in addition to */Makefile.am.
Exempt legitimate uses of @VAR@ notation, e.g.,
MAKEINFO = env LANG= LC_MESSAGES= LC_ALL= LANGUAGE= @MAKEINFO@
Remove obsolete coreutils-specific comment.
Prompted by discussion here:
http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/26074
2011-04-24 Paul Eggert
strtoul: remove dependency on strtol
This is so that 'configure' need not check for strtol merely because
the application needs strtoul.
* modules/strtoul (Files): Add lib/strtol.c.
(Depends-on): Remove strtol.
strtoull: remove dependency on strtoul
This is like the strtoll change.
* modules/strtoull (Files): Add lib/strtol.c, lib/strtoul.c.
(Depends-on): Remove strtoul.
strtoll: remove dependency on strtol
This is so that 'configure' need not check for strtol merely because
the application needs strtoll.
* modules/strtoll (Files): Add lib/strtol.c.
(Depends-on): Remove strtol.
2011-04-22 Paul Eggert
inttypes: Move some configure check to module 'imaxdiv'.
* m4/imaxdiv.m4 (gl_FUNC_IMAXDIV): Require gl_INTTYPES_H_DEFAULTS
instead of gl_INTTYPES_H. Check for imaxdiv decl here.
* m4/inttypes.m4 (gl_INTTYPES_H): Don't check for imaxdiv decl here.
2011-04-22 Paul Eggert
inttypes: Move some configure check to module 'imaxabs'.
* m4/imaxabs.m4 (gl_FUNC_IMAXABS): Require gl_INTTYPES_H_DEFAULTS
instead of gl_INTTYPES_H. Check for imaxabs decl here.
* m4/inttypes.m4 (gl_INTTYPES_H): Don't check for imaxabs decl here.
2011-04-22 Paul Eggert
inttypes: Remove configure tests that are not needed since 2009-12-31.
* m4/inttypes.m4 (gl_INTTYPES_H): Remove determination of
gl_cv_header_working_inttypes_h.
2011-04-22 Paul Eggert
* modules/strnlen (Depends-on): Remove memchr.
The strnlen implementation doesn't need the memchr module's fixes; see
.
strtol: remove dependency on wchar
* lib/strtol.c: Include only if USE_WIDE_CHAR is defined.
* modules/strtol (Depends-on): Remove wchar.
2011-04-21 Eric Blake
passfd: fix test regression on Linux
* modules/passfd-tests (configure.ac): Correct socketpair check.
passfd: speed up configure and drop unused code
* m4/afunix.m4 (gl_SOCKET_AFUNIX): Rename...
* m4/passfd.m4 (gl_PASSFD): ...to something more fitting of
its use. Drop test for setting unused HAVE_UNIXSOCKET_SCM_RIGHTS.
Instead of probing at configure for unix_scm_rights_bsd44_way,
instead probe for CMSG_FIRSTHDR at compile time. Simplify BSD 4.3
check to a struct member probe.
* lib/passfd.c (includes): Nothing here requires .
(sendfd, recvfd): Update preprocessor checks.
* modules/passfd (Files): Reflect rename, and drop unused file.
(Depends-on): Drop unused dependency.
passfd: allow compilation on mingw
* modules/sys_socket (Depends-on): Add sys_uio.
* lib/sys_socket.in.h [!@HAVE_SYS_SOCKET_H@]: Use it for struct
iovec and a minimal struct msghdr.
* m4/afunix.m4 (gl_SOCKET_AFUNIX): Detect recvmsg/sendmsg.
* tests/test-sys_socket.c (main): Enhance test.
* lib/passfd.c (include): Drop ; is
guaranteed to provide what we need.
(sendmsg, recvmsg): Declare fallbacks if we lack sendmsg.
* modules/passfd-tests (Depends-on): Add sys_wait.
* tests/test-passfd.c (main): Skip test on mingw, for now.
* doc/posix-headers/sys_socket.texi (sys/socket.h): Document the
partial 'struct msghdr' implementation.
sys_uio: new module
* modules/sys_uio: New module.
* modules/sys_uio-tests: Likewise.
* lib/sys_uio.in.h: New file.
* m4/sys_uio_h.m4: Likewise.
* tests/test-sys_uio.c: Likewise.
* doc/posix-headers/sys_uio.texi (sys/uio.h): Document it.
* MODULES.html.sh (systems lacking POSIX:2008): Likewise.
2011-04-20 Jim Meyering
useless-if-before-free: avoid false-positive
* build-aux/useless-if-before-free: Adjust regexp for the non-brace
disjunct so that it too requires a terminating ";". Without that,
this script would identify as useless one statement from gcc that
was not:
if (aligned_ptr)
free (((void **) aligned_ptr) [-1]);
2011-04-20 Giuseppe Scrivano
doc: update users.txt.
* users.txt: Add barcode.
2011-04-19 Bruno Haible
ioctl: Remove link dependency on native Windows.
* lib/fd-hook.h: Renamed from lib/close-hook.h.
(gl_close_fn, gl_ioctl_fn): New types.
(struct fd_hook): Renamed from struct close_hook. Change type of
private_close_fn field. Add private_ioctl_fn field.
(close_hook_fn): Add parameter for primary close method.
(execute_close_hooks, execute_all_close_hooks): Likewise.
(ioctl_hook_fn): New type.
(execute_ioctl_hooks, execute_all_ioctl_hooks): New declarations.
(register_fd_hook): Renamed from register_close_hook. Add ioctl_hook
argument.
(unregister_fd_hook): Renamed from unregister_close_hook.
* lib/fd-hook.c: Renamed from lib/close-hook.c.
Don't include .
(close): Remove undef.
(anchor): Update.
(execute_close_hooks): Add argument for primary close method.
(execute_all_close_hooks): Likewise.
(execute_ioctl_hooks, execute_all_ioctl_hooks): New functions.
(register_fd_hook): Renamed from register_close_hook. Add ioctl_hook
argument. Allow each argument to be NULL.
(unregister_fd_hook): Renamed from unregister_close_hook.
* lib/close.c (rpl_close): Pass 'close' function pointer to
execute_all_close_hooks.
* lib/ioctl.c: Include , fd-hook.h.
(primary_ioctl): New function.
(ioctl): Don't call ioctlsocket here. Instead, call
execute_all_ioctl_hooks.
* lib/sockets.c (close_fd_maybe_socket): Add argument for primary
close method.
(ioctl_fd_maybe_socket): New function, with code from lib/ioctl.c.
(fd_sockets_hook): Renamed from close_sockets_hook.
(gl_sockets_startup, gl_sockets_cleanup): Update.
* modules/fd-hook: Renamed from modules/close-hook. Update.
* modules/close (Depends-on): Add fd-hook, remove close-hook.
* modules/sockets (Depends-on): Likewise.
* modules/ioctl (Depends-on): Add fd-hook.
* tests/test-nonblocking.c (main): Use GNULIB_TEST_SOCKET, not
GNULIB_SOCKET.
2011-04-19 Bruno Haible
Move the support of O_NONBLOCK in open() to the 'open' module.
* modules/nonblocking (Depends-on): Remove 'open'.
* m4/nonblocking.m4 (gl_NONBLOCKING_IO_BODY): Set
gl_cv_have_open_O_NONBLOCK.
* m4/open.m4 (gl_FUNC_OPEN): Replace open() also when required for
O_NONBLOCK support.
* doc/posix-functions/open.texi: Document support for O_NONBLOCK.
2011-04-17 Bruno Haible
pipe2: Simplify code.
* lib/pipe2.c (pipe2): Reduce code duplication.
2011-04-17 Bruno Haible
nonblocking: Add comment.
* lib/fcntl.in.h (O_NONBLOCK): Add comment.
2011-04-17 Bruno Haible
nonblocking: Add tests for sockets.
* tests/test-nonblocking-socket.sh: New file.
* tests/test-nonblocking-socket-main.c: New file.
* tests/test-nonblocking-socket-child.c: New file.
* tests/test-nonblocking-socket.h: New file.
* tests/socket-server.h: New file.
* tests/socket-client.h: New file.
* modules/nonblocking-socket-tests: New file.
* modules/nonblocking-tests (Depends-on): Add nonblocking-socket-tests.
2011-04-17 Bruno Haible
nonblocking: Add tests for pipes.
* tests/test-nonblocking-pipe.sh: New file.
* tests/test-nonblocking-pipe-main.c: New file.
* tests/test-nonblocking-pipe-child.c: New file.
* tests/test-nonblocking-pipe.h: New file.
* tests/test-nonblocking-writer.h: New file.
* tests/test-nonblocking-reader.h: New file.
* tests/test-nonblocking-misc.h: New file.
* modules/nonblocking-pipe-tests: New file.
* modules/nonblocking-tests (Depends-on): Add nonblocking-pipe-tests.
2011-04-16 Bruno Haible
gettext: Clarify the needed programmer actions.
* modules/gettext (Notice): New field.
Suggested by Ben Pfaff .
2011-04-16 Bruno Haible
strchrnul: Tweak last commit.
* doc/glibc-functions/strchrnul.texi: Add more details about Cygwin
bug.
* lib/string.in.h (strchrnul): Use same arguments in _GL_FUNCDECL_RPL
as in _GL_FUNCDECL_SYS.
* m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Invoke gl_PREREQ_STRCHRNUL after
AC_LIBOBJ. When cross-compiling, say "guessing yes" not "yes".
2011-04-15 Eric Blake
strchrnul: work around cygwin bug
* doc/glibc-functions/strchrnul.texi (strchrnul): Document bug.
* m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Detect it.
* m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New witness.
* modules/string (Makefile.am): Substitute it.
* lib/string.in.h (strchrnul): Use it.
2011-04-15 Bruno Haible
Don't require lib/stdio-write.c when only module 'stdio' is used.
* m4/stdio_h.m4 (gl_STDIO_H): Move the AC_LIBOBJ back into the m4_ifdef
invocation.
Reported by Rob Vermaas .
2011-04-14 Bruno Haible
Support non-blocking pipe I/O in read() on native Windows.
* lib/unistd.in.h: Include also for 'read'.
(read): New declaration.
* lib/read.c: New file.
* lib/stdio.in.h (_GL_ATTRIBUTE_FORMAT_SCANF,
_GL_ATTRIBUTE_FORMAT_SCANF_SYSTEM): New macros.
(fgetc, fgets, fread, fscanf, getc, getchar, gets, scanf, vfscanf,
vscanf): New declarations.
* lib/stdio-read.c: New file.
* m4/read.m4: New file.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_READ,
REPLACE_READ.
* m4/stdio_h.m4 (gl_STDIO_H): Set GNULIB_FGETC, GNULIB_FGETS,
GNULIB_FREAD, GNULIB_FSCANF, GNULIB_GETC, GNULIB_GETCHAR, GNULIB_GETS,
GNULIB_SCANF, GNULIB_VFSCANF, GNULIB_VSCANF. In non-blocking I/O is
desired and needs workarounds, set REPLACE_STDIO_READ_FUNCS.
(gl_STDIO_H_DEFAULTS): Initialize GNULIB_FGETC, GNULIB_FGETS,
GNULIB_FREAD, GNULIB_FSCANF, GNULIB_GETC, GNULIB_GETCHAR, GNULIB_GETS,
GNULIB_SCANF, GNULIB_VFSCANF, GNULIB_VSCANF, REPLACE_STDIO_READ_FUNCS.
* modules/read: New file.
* modules/nonblocking (Files): Add lib/stdio-read.c.
* modules/unistd (Makefile.am): Substitute GNULIB_READ, REPLACE_READ.
* modules/stdio (Makefile.am): Substitute GNULIB_FGETC, GNULIB_FGETS,
GNULIB_FREAD, GNULIB_FSCANF, GNULIB_GETC, GNULIB_GETCHAR, GNULIB_GETS,
GNULIB_SCANF, GNULIB_VFSCANF, GNULIB_VSCANF, REPLACE_STDIO_READ_FUNCS.
* modules/pread (Depends-on): Add read.
* modules/safe-read (Depends-on): Likewise.
* tests/test-stdio-c++.cc (fgetc, fgets, fread, fscanf, getc, getchar,
gets, scanf, vfscanf, vscanf): Verify signatures.
* doc/posix-functions/read.texi: Mention 'nonblocking' module and
problem with non-blocking pipes.
* doc/posix-functions/fgetc.texi: Likewise.
* doc/posix-functions/fgets.texi: Likewise.
* doc/posix-functions/fread.texi: Likewise.
* doc/posix-functions/fscanf.texi: Likewise.
* doc/posix-functions/getc.texi: Likewise.
* doc/posix-functions/getchar.texi: Likewise.
* doc/posix-functions/gets.texi: Likewise.
* doc/posix-functions/scanf.texi: Likewise.
* doc/posix-functions/vfscanf.texi: Likewise.
* doc/posix-functions/vscanf.texi: Likewise.
2011-04-14 Bruno Haible
Support non-blocking pipe I/O in write() on native Windows.
* lib/write.c (rpl_write): Split a write request that failed merely
because the byte count was larger than the pipe buffer's size.
* doc/posix-functions/write.texi: Mention the problem with large byte
counts.
2011-04-14 Bruno Haible
wchar: Ensure that wchar_t gets defined on uClibc.
* lib/wchar.in.h: On uClibc, include .
Reported by Giuseppe Scrivano .
2011-04-13 Bruno Haible
safe-write, full-read: Avoid unnecessary compilation units.
* modules/safe-write (Files): Add lib/safe-read.c, m4/safe-read.m4.
(Depends-on): Remove safe-read. Add ssize_t.
* modules/full-read (Files): Add lib/full-write.c.
(Depends-on): Add full-write.
2011-04-13 Bruno Haible
Support non-blocking pipe I/O and SIGPIPE in pwrite().
* modules/pwrite (Depends-on): Add 'write'.
2011-04-13 Bruno Haible
Support non-blocking pipe I/O in write() on native Windows.
* lib/unistd.in.h (write): Enable replacement also if
GNULIB_UNISTD_H_NONBLOCKING is 1.
* lib/write.c: Enable replacement also if GNULIB_NONBLOCKING.
(rpl_write): When failing to write on a non-blocking pipe, change
errno from ENOSPC to EAGAIN.
* lib/stdio.in.h (fprintf, fputc, fputs, fwrite, printf, putc,
putchar, puts, vfprintf, vprintf): Enable replacement also if
GNULIB_STDIO_H_NONBLOCKING is 1.
* lib/stdio-write.c: Enable replacements also if GNULIB_NONBLOCKING.
(CLEAR_ERRNO, HANDLE_ENOSPC): New macros.
(CLEAR_LastError, HANDLE_ERROR_NO_DATA): New macros, extracted from
CALL_WITH_SIGPIPE_EMULATION.
(CALL_WITH_SIGPIPE_EMULATION): Use them.
* m4/nonblocking.m4: New file.
* m4/write.m4 (gl_FUNC_WRITE): Enable REPLACE_WRITE also if required
for non-blocking I/O support.
* m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
GNULIB_UNISTD_H_NONBLOCKING.
* m4/stdio_h.m4 (gl_STDIO_H): Enable REPLACE_STDIO_WRITE_FUNCS also if
required for non-blocking I/O support.
(gl_STDIO_H_DEFAULTS): Initialize GNULIB_STDIO_H_NONBLOCKING.
* modules/nonblocking (Files): Add m4/nonblocking.m4,
lib/stdio-write.c, m4/asm-underscore.m4.
(Depends-on): Add stdio, unistd.
(configure.ac): Invoke gl_NONBLOCKING_IO. Define GNULIB_NONBLOCKING.
Set GNULIB_STDIO_H_NONBLOCKING, GNULIB_UNISTD_H_NONBLOCKING.
* modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_NONBLOCKING.
* modules/stdio (Makefile.am): Substitute GNULIB_STDIO_H_NONBLOCKING.
* doc/posix-functions/fprintf.texi: Mention 'nonblocking' module and
problem with non-blocking pipes.
* doc/posix-functions/fputc.texi: Likewise.
* doc/posix-functions/fputs.texi: Likewise.
* doc/posix-functions/fwrite.texi: Likewise.
* doc/posix-functions/printf.texi: Likewise.
* doc/posix-functions/putc.texi: Likewise.
* doc/posix-functions/putchar.texi: Likewise.
* doc/posix-functions/puts.texi: Likewise.
* doc/posix-functions/vfprintf.texi: Likewise.
* doc/posix-functions/vprintf.texi: Likewise.
* doc/posix-functions/write.texi: Likewise.
2011-04-10 Jim Meyering
maint.mk: prohibit doubled words
Detect them also when they're separated by a newline.
There are 3 ways to customize it:
- disable the test on a per file basis, as usual with rules using
$(VC_LIST_EXCEPT)
- replace the default doubled-word-selecting regexp (affects all files)
- ignore a particular file-vs-doubled-word match
I nearly used that last one to ignore the "is is" match in
coreutils' NEWS file, since the text was "ls -is is ..."
To do that, I would have added this line to cfg.mk:
ignore_doubled_word_match_RE_ = ^NEWS:[0-9]+:is[ ]is$
but it would have ignored any "is is" match in NEWS.
Low probability, but still...
Instead, I changed the text, slightly:
- ls -is is now consistent with ls -lis in ignoring values returned
+ "ls -is" is now consistent with ls -lis in ignoring values returned
* top/maint.mk (prohibit_double_word_RE_): Provide default.
(prohibit_doubled_word_): Define.
(sc_prohibit_doubled_word): New rule.
(sc_prohibit_the_the): Remove. Subsumed by the above.
2011-04-10 Jim Meyering
maint: fix doubled-word typo in comment
* m4/gethostname.m4: s/is is/it is/
* m4/getdomainname.m4: Likewise.
2011-04-10 Jim Meyering
maint: remove doubled word: s/it it/it/
* lib/stat-time.h (get_stat_birthtime): s/it it/it/
2011-04-10 Jim Meyering
maint.mk: remove useless semicolon and backslash
* top/maint.mk (sc_prohibit_empty_lines_at_EOF): Remove stray
semicolon and backslash.
2011-04-10 Bruno Haible
stdint test: Fix compilation failure on OSF/1 with DTK compiler.
* modules/stdint-tests (Depends-on): Add wchar.
2011-04-10 Jim Meyering
maint: remove doubled words in comments, e.g., s/a a/a/
* lib/strptime.c (day_of_the_week): s/the the/the/
* tests/test-chown.h (test_chown): s/a a/a/
test-chown.h: correct a cast
* tests/test-chown.h (test_chown): Cast -1 to gid_t (not uid_t)
when the destination is a stat.st_gid.
2011-04-09 Mats Erik Andersson (tiny change)
getaddrinfo: Fix test for sa_len member.
* m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): When testing for sa_len,
include before .
2011-04-09 Paul Eggert
maint: change "can not" to "cannot"
* doc/posix-functions/iconv.texi (iconv): This one crossed line
boundaries.
2011-04-09 Jim Meyering
maint: change "a a" to "a"
* tests/test-lchown.h (test_lchown): s/a a/a/
maint.mk: prohibit \
* top/maint.mk (sc_prohibit_the_the): New rule.
maint: fix "the the" in comment
* lib/count-one-bits.h: s/the the/the/
maint: change "can not" to "cannot"
But do not change the occurrences in maintain.texi or in
build-aux/po/Makefile.in.in, which I presume comes from gettext.
* doc/gnulib-tool.texi: s/can not/cannot/
* doc/posix-functions/accept.texi (accept): Likewise.
* doc/posix-functions/socket.texi (socket): Likewise.
* lib/mbrtowc.c: Likewise.
maint.mk: prohibit use of "can not"
* top/maint.mk (sc_prohibit_can_not): New rule.
Writing "can not" (rather than "cannot") is too common. Prohibit it.
2011-04-09 Bruno Haible
careadlinkat: Guard against misuse of careadlinkatcwd.
* lib/careadlinkat.c: Include .
(careadlinkatcwd): Check that the fd argument is as expected.
2011-04-09 Bruno Haible
careadlinkat: Use common coding style.
* lib/careadlinkat.c: Move gnulib includes after system includes.
2011-04-09 Bruno Haible
careadlinkat: Clarify specification.
* lib/careadlinkat.h (careadlinkat): Clarify preadlinkat argument.
(careadlinkatcwd): Add comment.
* lib/careadlinkat.c (careadlinkat): Clarify preadlinkat argument.
2011-04-09 Bruno Haible
areadlinkat: Avoid link error on many platforms.
* modules/areadlinkat (Depends-on): Add areadlink.
2011-04-09 Bruno Haible
allocator, careadlinkat: Fix double-inclusion guard.
* lib/allocator.h: Fix double-inclusion guard.
* lib/careadlinkat.h: Likewise.
2011-04-09 Bruno Haible
relocatable-prog-wrapper: Update after module 'areadlink' changed.
* lib/relocwrapper.c: Update dependencies hierarchy.
* build-aux/install-reloc: Update list of files to be compiled.
* modules/relocatable-prog-wrapper (Files): Add lib/careadlinkat.[hc],
lib/allocator.[hc].
2011-04-08 Eric Blake
strftime: silence gnulib-tool warning
* modules/strftime-tests (Depends-on): Drop automatic dependency.
2011-04-08 Bruno Haible
verify: Fix syntax error with GCC 4.6 in C++ mode.
* lib/verify.h (HAVE__STATIC_ASSERT): Don't define in C++ mode.
(HAVE_STATIC_ASSERT): New macro.
(verify_true, verify): Use 'static_assert' if it is supported and
'_Static_assert' is not supported.
2011-04-08 Paul Eggert
allocator: New module.
* modules/allocator, lib/allocator.c: New files.
* lib/allocator.h (stdlib_allocator): New decl.
* lib/careadlinkat.c (_GL_USE_STDLIB_ALLOC, standard_allocator):
Remove. Do not include .
(careadlinkat): Use stdlib_allocator instead of rolling our own.
* modules/careadlinkat (Files): Remove lib/allocator.h.
(Depends-on): Add allocator.
stdlib: let modules use system malloc, realloc
* lib/stdlib.in.h (malloc, realloc): Don't #define or add warnings
if !_GL_USE_STDLIB_ALLOC.
(malloc, realloc): Limit this change to a smaller scope.
* lib/careadlinkat.c (_GL_USE_STDLIB_ALLOC): Define.
(malloc, realloc): Don't #undef; no longer needed.
* lib/malloca.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
* lib/progreloc.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
* lib/setenv.c (_GL_USE_STDLIB_ALLOC, malloc, realloc): Likewise.
* lib/canonicalize-lgpl.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
* lib/relocatable.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
* lib/relocwrapper.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
* lib/malloc.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
* lib/realloc.c (_GL_USE_STDLIB_ALLOC, malloc, realloc): Likewise.
careadlinkat: rename members to avoid problem
* lib/allocator.h (struct allocator): Rename members from
malloc/realloc to allocate/reallocate, to avoid problems if malloc
and realloc are #define'd. Reported by Eric Blake in
.
* lib/careadlinkat.c (careadlinkat): Adjust to renaming.
2011-04-08 Eric Blake
nonblocking: reduce dependency
* tests/test-nonblocking.c: Only test sockets when in use.
* modules/nonblocking-tests (Depends-on): Drop socket.
(Makefile.am): Link even if sockets are not present.
* modules/pipe2-tests (Makefile.am): Likewise.
* lib/ioctl.c (ioctl) [WIN32]: Fail if sockets are not also in use.
pipe2: fix O_NONBLOCK support on mingw
* modules/pipe2 (Depends-on): Add nonblocking.
* lib/pipe2.c (pipe2) [WIN32]: Add O_NONBLOCK support.
* tests/test-pipe2.c (is_nonblocking): Adjust test accordingly.
* tests/test-nonblocking.c (main): Likewise.
* modules/pipe2-tests (Makefile.am): Avoid link failure.
fcntl-h: fix O_ACCMODE on cygwin
* doc/posix-headers/fcntl.texi (fcntl.h): Document the bug.
* lib/fcntl.in.h (O_ACCMODE): Fix it.
pipe-filter: drop O_NONBLOCK workarounds
* modules/pipe-filter-gi (Depends-on): Add fcntl-h.
* modules/pipe-filter-ii (Depends-on): Likewise.
* lib/pipe-filter-aux.h (O_NONBLOCK): Delete workaround.
nonblocking: provide O_NONBLOCK for mingw
* modules/nonblocking (Depends-on): Add open.
(configure.ac): Set new witness macro.
* m4/fcntl_h.m4 (gl_FCNTL_H_DEFAULTS): Provide default for it.
* modules/fcntl-h (Makefile.am): Substitute it.
* lib/fcntl.in.h (O_NONBLOCK): Guarantee non-zero definition when
nonblocking module is in use.
* lib/nonblocking.c: Adjust portability test.
* lib/open.c (open): Don't let native open see gnulib flag.
* tests/test-fcntl-h.c (main): Enhance test.
* tests/test-open.h (test_open): Likewise.
* doc/posix-headers/fcntl.texi (fcntl.h): Document the replacement.
careadlinkat: fix compilation error on mingw
* lib/careadlinkat.c (standard_allocator): Avoid renaming fields
within struct allocator.
2011-04-06 Eric Blake
binary-io: relicense under LGPLv2+
* modules/binary-io (License): Relax to LGPLv2+.
Requested for libvirt, and required by pipe2.
2011-04-06 Paul Eggert
verify: use _Static_assert if available
* lib/verify.h (HAVE__STATIC_ASSERT): New macro.
(verify_true, verify): Use it if available. This generates better
diagnostics with GCC 4.6.0 and later.
2011-04-05 Bruno Haible
Remove leftover generated .h files after config.status changed.
* m4/alloca.m4 (gl_FUNC_ALLOCA): New automake conditional
GL_GENERATE_ALLOCA_H.
* modules/alloca-opt (Makefile.am): Remove alloca.h if
GL_GENERATE_ALLOCA_H evaluates to false.
* m4/argz.m4 (gl_FUNC_ARGZ): New automake conditional
GL_GENERATE_ARGZ_H.
* modules/argz (Makefile.am): Remove argz.h if GL_GENERATE_ARGZ_H
evaluates to false.
* m4/byteswap.m4 (gl_BYTESWAP): New automake conditional
GL_GENERATE_BYTESWAP_H.
* modules/byteswap (Makefile.am): Remove byteswap.h if
GL_GENERATE_BYTESWAP_H evaluates to false.
* m4/errno_h.m4 (gl_HEADER_ERRNO_H): New automake conditional
GL_GENERATE_ERRNO_H.
* modules/errno (Makefile.am): Remove errno.h if GL_GENERATE_ERRNO_H
evaluates to false.
* m4/float_h.m4 (gl_FLOAT_H): New automake conditional
GL_GENERATE_FLOAT_H.
* modules/float (Makefile.am): Remove float.h if GL_GENERATE_FLOAT_H
evaluates to false.
* m4/fnmatch.m4 (gl_FUNC_FNMATCH_POSIX): New automake conditional
GL_GENERATE_FNMATCH_H.
* modules/fnmatch (Makefile.am): Remove fnmatch.h if
GL_GENERATE_FNMATCH_H evaluates to false.
* m4/glob.m4 (gl_GLOB_SUBSTITUTE, gl_GLOB): New automake conditional
GL_GENERATE_GLOB_H.
* modules/glob (Makefile.am): Remove glob.h if GL_GENERATE_GLOB_H
evaluates to false.
* m4/iconv_h.m4 (gl_REPLACE_ICONV_H, gl_ICONV_H_DEFAULTS): New
automake conditional GL_GENERATE_ICONV_H.
* modules/iconv-h (Makefile.am): Remove iconv.h if GL_GENERATE_ICONV_H
evaluates to false.
* m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): New automake conditional
GL_GENERATE_NETINET_IN_H.
* modules/netinet_in (Makefile.am): Remove netinet/in.h if
GL_GENERATE_NETINET_IN_H evaluates to false.
* m4/pthread.m4 (gl_PTHREAD_CHECK): Set PTHREAD_H here. New automake
conditional GL_GENERATE_PTHREAD_H.
(gl_PTHREAD_DEFAULTS): Don't set PTHREAD_H here.
* modules/pthread (Makefile.am): Remove pthread.h if
GL_GENERATE_PTHREAD_H evaluates to false.
* m4/sched_h.m4 (gl_SCHED_H): New automake conditional
GL_GENERATE_SCHED_H.
* modules/sched (Makefile.am): Remove sched.h if GL_GENERATE_SCHED_H
evaluates to false.
* m4/selinux-context-h.m4 (gl_HEADERS_SELINUX_CONTEXT_H): New automake
conditional GL_GENERATE_SELINUX_CONTEXT_H.
* modules/selinux-h (Makefile.am): Remove selinux/context.h if
GL_GENERATE_SELINUX_CONTEXT_H evaluates to false.
* m4/stdarg.m4 (gl_STDARG_H): New automake conditional
GL_GENERATE_STDARG_H.
* modules/stdarg (Makefile.am): Remove stdarg.h if
GL_GENERATE_STDARG_H evaluates to false.
* m4/stdbool.m4 (AM_STDBOOL_H): New automake conditional
GL_GENERATE_STDBOOL_H.
* modules/stdbool (Makefile.am): Remove stdbool.h if
GL_GENERATE_STDBOOL_H evaluates to false.
* m4/stddef_h.m4 (gl_STDDEF_H): Set STDDEF_H here. New automake
conditional GL_GENERATE_STDDEF_H.
(gl_STDDEF_H_DEFAULTS): Don't set STDDEF_H here.
* modules/stddef (Makefile.am): Remove stddef.h if
GL_GENERATE_STDDEF_H evaluates to false.
* m4/stdint.m4 (gl_STDINT_H): New automake conditional
GL_GENERATE_STDINT_H.
* modules/stdint (Makefile.am): Remove stdint.h if
GL_GENERATE_STDINT_H evaluates to false.
* m4/sysexits.m4 (gl_SYSEXITS): New automake conditional
GL_GENERATE_SYSEXITS_H.
* modules/sysexits (Makefile.am): Remove sysexits.h if
GL_GENERATE_SYSEXITS_H evaluates to false.
Reported by Karl Berry and Ralf Wildenhues.
2011-04-05 Bruno Haible
Ensure to rebuild generated .h files when config.status has changed.
* modules/arpa_inet (Makefile.am): Add dependency from .h file to
config.status.
* modules/ctype (Makefile.am): Likewise.
* modules/dirent (Makefile.am): Likewise.
* modules/errno (Makefile.am): Likewise.
* modules/fcntl-h (Makefile.am): Likewise.
* modules/float (Makefile.am): Likewise.
* modules/getopt-posix (Makefile.am): Likewise.
* modules/glob (Makefile.am): Likewise.
* modules/iconv-h (Makefile.am): Likewise.
* modules/inttypes (Makefile.am): Likewise.
* modules/langinfo (Makefile.am): Likewise.
* modules/locale (Makefile.am): Likewise.
* modules/math (Makefile.am): Likewise.
* modules/netdb (Makefile.am): Likewise.
* modules/netinet_in (Makefile.am): Likewise.
* modules/poll-h (Makefile.am): Likewise.
* modules/pthread (Makefile.am): Likewise.
* modules/pty (Makefile.am): Likewise.
* modules/sched (Makefile.am): Likewise.
* modules/search (Makefile.am): Likewise.
* modules/selinux-h (Makefile.am): Likewise.
* modules/signal (Makefile.am): Likewise.
* modules/spawn (Makefile.am): Likewise.
* modules/stdarg (Makefile.am): Likewise.
* modules/stdbool (Makefile.am): Likewise.
* modules/stddef (Makefile.am): Likewise.
* modules/stdint (Makefile.am): Likewise.
* modules/stdio (Makefile.am): Likewise.
* modules/stdlib (Makefile.am): Likewise.
* modules/string (Makefile.am): Likewise.
* modules/strings (Makefile.am): Likewise.
* modules/sys_file (Makefile.am): Likewise.
* modules/sys_ioctl (Makefile.am): Likewise.
* modules/sys_select (Makefile.am): Likewise.
* modules/sys_socket (Makefile.am): Likewise.
* modules/sys_stat (Makefile.am): Likewise.
* modules/sys_time (Makefile.am): Likewise.
* modules/sys_times (Makefile.am): Likewise.
* modules/sys_utsname (Makefile.am): Likewise.
* modules/sys_wait (Makefile.am): Likewise.
* modules/sysexits (Makefile.am): Likewise.
* modules/termios (Makefile.am): Likewise.
* modules/time (Makefile.am): Likewise.
* modules/unistd (Makefile.am): Likewise.
* modules/wchar (Makefile.am): Likewise.
* modules/wctype-h (Makefile.am): Likewise.
Reported by Karl Berry, Eric Blake, and Ralf Wildenhues.
2011-04-05 Bruno Haible
pipe2: Relicense under LGPLv2+.
* modules/pipe2 (License): Change to LGPLv2+.
Requested by Eric Blake, for libvirt.
2011-04-05 Bruce Korb
bootstrap: compute gnulib_extra_files after updating build_aux
* build-aux/bootstrap (gnulib_extra_files): bootstrap.conf may
change build_aux or also supply gnulib_extra_files. Handle correctly.
2011-04-05 Eric Blake
bootstrap: preserve git whitelist item sorting
* build-aux/bootstrap (sort_patterns): New function.
(insert_sorted_if_absent): Use it to sink ! lines to the bottom.
2011-04-05 Simon Josefsson
* top/maint.mk (sc_prohibit_empty_lines_at_EOF): Don't trigger
sc_space_tab check.
2011-04-05 Paul Eggert
areadlink, areadlinkat: rewrite in terms of careadlinkat
* lib/areadlink.c, lib/areadlinkat.c: Include careadlinkat.h
instead of errno.h, limits.h, stdint.h, stdlib.h, string.h, unistd.h.
(SSIZE_MAX, INITIAL_BUF_SIZE): Remove.
(malloc, realloc): Remove #undefs.
(areadlink, areadlinkat): Rewrite in terms of careadlinkat.
* modules/areadlink (Depends-on): Add careadlinkat. Remove
readlink, ssize_t, stdint, unistd.
* modules/areadlinkat (Depends-on): Add careadlinkat. Remove
areadlink, stdint.
careadlinkat: new module
* lib/allocator.h, lib/careadlinkat.h, lib/careadlinkat.c:
* modules/careadlinkat: New files, written by me with
a review and feedback from Ben Pfaff in
.
2011-04-01 Bruno Haible
wmemchr, wcschr, wcsrchr, wcspbrk, wcsstr: Avoid errors in C++ mode.
* lib/wchar.in.h (wmemchr, wcschr, wcsrchr, wcspbrk, wcsstr): Use
_GL_CXXALIAS_SYS_CAST2 instead of _GL_CXXALIAS_SYS. On glibc >= 2.10
systems, use _GL_CXXALIASWARN1 instead of _GL_CXXALIASWARN.
Reported by Bruce Korb .
2011-04-01 Bruno Haible
wcpcpy, wcpncpy: Ensure declaration on glibc >= 2.13 systems.
* m4/wcpcpy.m4 (gl_FUNC_WCPCPY): Require AC_USE_SYSTEM_EXTENSIONS.
* m4/wcpncpy.m4 (gl_FUNC_WCPNCPY): Likewise.
* modules/wcpcpy (Depends-on): Add extensions.
* modules/wcpncpy (Depends-on): Likewise.
* doc/posix-functions/wcpcpy.texi: Mention missing declaration on glibc
systems.
* doc/posix-functions/wcpncpy.texi: Likewise.
* doc/posix-functions/wcwidth.texi: Likewise.
2011-03-31 Eric Blake
nonblocking: fix mingw test failures
* lib/nonblocking.c (set_nonblocking_flag): Succeed when clearing
non-blocking flag on regular file.
(get_nonblocking_flag): Set errno on invalid fd.
* tests/test-nonblocking.c (main): Avoid test failure on
directories if fchdir is not active.
* modules/nonblocking-tests (Depends-on): Drop unused dependency.
2011-03-31 Bruno Haible
Fix bug with gl_WARN_ON_USE_PREPARE, introduced on 2011-01-23.
* m4/gnulib-common.m4 (gl_ASSERT_NO_GNULIB_POSIXCHECK): Hide the
gl_WARN_ON_USE_PREPARE definition from 'aclocal'.
Reported by Simon Josefsson .
2011-03-31 Bruno Haible
and Eric Blake
nonblocking: new module
* modules/nonblocking: New module.
* modules/nonblocking-tests: Likewise.
* lib/nonblocking.h: New file.
* lib/nonblocking.c: Likewise.
* tests/test-nonblocking.c: New test.
* lib/ioctl.c (ioctl) [mingw]: Update comment.
2011-03-30 Bruno Haible
stdio: Avoid GCC >= 4.4 warnings when using %lld and similar on mingw.
* lib/stdio.in.h (_GL_ATTRIBUTE_FORMAT_PRINTF): Use 'gnu_printf' format
instead of 'printf' format for GCC >= 4.4.
(_GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM): New macro.
(fprintf, printf, vfprintf, vprintf): Declare with
_GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM when the function ends up calling
the system's vfprintf() function.
Reported by Daniel P. Berrange via Eric Blake.
2011-03-30 Eric Blake
passfd: fix scoping bug
* lib/passfd.c (sendfd, recvfd): Don't let buf go out of scope
before sendmsg/recvmsg.
passfd: standardize coding conventions
* m4/afunix.m4 (gl_SOCKET_AFUNIX): Drop check for something that
can be learned at compile time.
* lib/passfd.c (MSG_CMSG_CLOEXEC): Reduce number of in-function
ifdefs.
(sendfd, recvfd): Follow gnulib code conventions.
passfd: fix incorrect sendmsg arguments
* lib/passfd.c (sendfd): Avoid uninitialized msg_flags field, and
incorrect msg_controllen value.
* modules/passfd-tests (Depends-on): Check for alarm.
* tests/test-passfd.c (main) [HAVE_DECL_ALARM]: Avoid hanging test.
Reported by Bastien ROUCARIES.
2011-03-30 Bruno Haible
c-strcasestr: Relicense under LGPLv2+.
* modules/c-strcasestr (License): Change to LGPLv2+.
Requested by Eric Blake, for libvirt.
2011-03-30 Simon Josefsson
* users.txt: Add libidn2. Fix libtasn1 link.
2011-03-30 Jim Meyering
tests: readlink* ("",... fails with EINVAL on newer kernels
readlink and readlinkat have typically failed with ENOENT for
the invalid, empty file name, "". However, with the advent
of linux-2.6.39, they fail with EINVAL.
* tests/test-areadlink.h (test_areadlink): Also accept EINVAL
when operating on the empty file name.
* tests/test-readlink.h (test_readlink): Likewise.
2011-03-29 Bruno Haible
Relicense some modules under LGPLv2+, for libidn2.
* modules/array-mergesort (License): Change to LGPLv2+.
* modules/c-strcaseeq (License): Likewise.
* modules/striconveh (License): Likewise.
* modules/striconveha (License): Likewise.
* modules/uniconv/base (License): Likewise.
* modules/uniconv/u8-conv-from-enc (License): Likewise.
* modules/uniconv/u8-strconv-from-enc (License): Likewise.
* modules/uniconv/u8-strconv-from-locale (License): Likewise.
* modules/unictype/base (License): Likewise.
* modules/unictype/bidiclass-of (License): Likewise.
* modules/unictype/category-M (License): Likewise.
* modules/unictype/category-none (License): Likewise.
* modules/unictype/category-of (License): Likewise.
* modules/unictype/category-test (License): Likewise.
* modules/unictype/category-test-withtable (License): Likewise.
* modules/unictype/combining-class (License): Likewise.
* modules/unictype/joiningtype-of (License): Likewise.
* modules/unictype/scripts (License): Likewise.
* modules/uninorm/base (License): Likewise.
* modules/uninorm/canonical-decomposition (License): Likewise.
* modules/uninorm/composition (License): Likewise.
* modules/uninorm/decompose-internal (License): Likewise.
* modules/uninorm/decomposition-table (License): Likewise.
* modules/uninorm/nfc (License): Likewise.
* modules/uninorm/nfd (License): Likewise.
* modules/uninorm/u32-normalize (License): Likewise.
* modules/unistr/base (License): Likewise.
* modules/unistr/u32-cpy (License): Likewise.
* modules/unistr/u32-mbtouc-unsafe (License): Likewise.
* modules/unistr/u32-to-u8 (License): Likewise.
* modules/unistr/u32-uctomb (License): Likewise.
* modules/unistr/u8-check (License): Likewise.
* modules/unistr/u8-mblen (License): Likewise.
* modules/unistr/u8-mbtouc (License): Likewise.
* modules/unistr/u8-mbtouc-unsafe (License): Likewise.
* modules/unistr/u8-mbtoucr (License): Likewise.
* modules/unistr/u8-prev (License): Likewise.
* modules/unistr/u8-strlen (License): Likewise.
* modules/unistr/u8-to-u32 (License): Likewise.
* modules/unistr/u8-uctomb (License): Likewise.
* modules/unitypes (License): Likewise.
Requested by Simon Josefsson.
2011-03-29 Simon Josefsson
lib-symbol-visibility: Add a notice.
* modules/lib-symbol-visibility (Notice): New field.
2011-03-29 Bruno Haible
getaddrinfo: Doc fix.
* doc/posix-functions/getaddrinfo.texi: Mention Windows problem in the
section "fixed in Gnulib".
2011-03-28 Simon Josefsson
* doc/posix-functions/getaddrinfo.texi: Drop netdb.h discussion.
Reported by Bastien ROUCARIES .
2011-03-26 Bruno Haible
unictype/property-byname: Reduce the number of load-time relocations.
* lib/unictype/pr_byname.c: Include .
(UC_PROPERTY_INDEX_*): New enumeration values.
(uc_property_byname): Convert an index from the lookup table to an
uc_property_t.
* lib/unictype/pr_byname.gperf: Store indices instead of uc_property_t
values.
2011-03-26 Bruno Haible
unictype/property-byname: Allow omitted word separators and aliases.
* lib/unictype/pr_byname.gperf: Add property names without word
separators. Add aliases from Unicode 6.0 PropertyAliases.txt, except
for 'space'.
2011-03-26 Bruno Haible
unictype/joininggroup-byname: Allow hyphens, omitted word separators.
* lib/unictype/joininggroup_byname.c (uc_joining_group_byname): Convert
also hyphens to space.
* lib/unictype/joininggroup_byname.gperf: Recognize the names also
without spaces.
* tests/unictype/test-joininggroup_byname.c (main): Add more tests.
2011-03-26 Bruno Haible
unictype/joiningtype-byname: Recognize long names as well.
* lib/unictype.in.h (uc_joiningtype_class_byname): Allow argument to be
a long name.
* lib/unictype/joiningtype_byname.c: Include ,
unictype/joiningtype_byname.h.
(uc_joiningtype_class_byname): Use uc_joining_type_lookup.
* lib/unictype/joiningtype_byname.gperf: New file.
* modules/unictype/joiningtype-byname (Files): Add
lib/unictype/joiningtype_byname.gperf.
(Depends-on): Add gperf.
(Makefile.am): Add rule for generating unictype/joiningtype_byname.h.
* tests/unictype/test-joiningtype_byname.c (main): Test the recognition of
long names.
Tests for module 'unictype/joiningtype-longname'.
* modules/unictype/joiningtype-longname-tests: New file.
* tests/unictype/test-joiningtype_longname.c: New file.
New module 'unictype/joiningtype-longname'.
* lib/unictype.in.h (uc_joiningtype_class_long_name): New declaration.
* lib/unictype/joiningtype_longname.c: New file.
* modules/unictype/joiningtype-longname: New file.
* modules/unictype/joiningtype-all (Depends-on): Add
unictype/joiningtype-longname.
2011-03-26 Bruno Haible
unictype/bidiclass-byname: Recognize long names as well.
* lib/unictype.in.h (uc_bidi_class_byname): Allow argument to be a long
name.
* lib/unictype/bidi_byname.c: Include ,
unictype/bidi_byname.h.
(uc_bidi_class_byname): Use uc_bidi_class_lookup.
* lib/unictype/bidi_byname.gperf: New file.
* modules/unictype/bidiclass-byname (Files): Add
lib/unictype/bidi_byname.gperf.
(Depends-on): Add gperf.
(Makefile.am): Add rule for generating unictype/bidi_byname.h.
* tests/unictype/test-bidi_byname.c (main): Test the recognition of
long names.
Tests for module 'unictype/bidiclass-longname'.
* modules/unictype/bidiclass-longname-tests: New file.
* tests/unictype/test-bidi_longname.c: New file.
New module 'unictype/bidiclass-longname'.
* lib/unictype.in.h (uc_bidi_class_long_name): New declaration.
* lib/unictype/bidi_longname.c: New file.
* modules/unictype/bidiclass-longname: New file.
* modules/unictype/bidiclass-all (Depends-on): Add
unictype/bidiclass-longname.
2011-03-26 Bruno Haible
unictype/bidi*: Rename modules.
* modules/unictype/bidiclass-all: Renamed from
modules/unictype/bidicategory-all.
* modules/unictype/bidiclass-name: Renamed from
modules/unictype/bidiclass-name.
(Description): Update.
* modules/unictype/bidiclass-name-tests: Renamed from
modules/unictype/bidicategory-name-tests.
* modules/unictype/bidiclass-byname: Renamed from
modules/unictype/bidicategory-byname.
(Description): Update.
* modules/unictype/bidiclass-byname-tests: Renamed from
modules/unictype/bidicategory-byname-tests.
* modules/unictype/bidiclass-of: Renamed from
modules/unictype/bidicategory-of.
(Description): Update.
* modules/unictype/bidiclass-of-tests: Renamed from
modules/unictype/bidicategory-of-tests.
* modules/unictype/bidiclass-test: Renamed from
modules/unictype/bidicategory-test.
(Description): Update.
* modules/unictype/bidiclass-test-tests: Renamed from
modules/unictype/bidicategory-test-tests.
* modules/unictype/bidicategory-all: New file, a simple redirection.
* modules/unictype/bidicategory-name: Likewise.
* modules/unictype/bidicategory-byname: Likewise.
* modules/unictype/bidicategory-of: Likewise.
* modules/unictype/bidicategory-test: Likewise.
* modules/unictype/property-bidi-* (Dependencies): Update.
* lib/unictype/bidi_*.c: Update comment.
2011-03-26 Bruno Haible
unictype/bidi*: Rename functions, part 2.
* modules/unictype/bidicategory-name (configure.ac): Update required
libunistring version.
* modules/unictype/bidicategory-byname (configure.ac): Likewise.
2011-03-25 Bruno Haible
New module 'unictype/combining-class-all'.
* modules/unictype/combining-class-all: New file.
Tests for module 'unictype/combining-class-byname'.
* modules/unictype/combining-class-byname-tests: New file.
* tests/unictype/test-combiningclass_byname.c: New file.
New module 'unictype/combining-class-byname'.
* lib/unictype.in.h (uc_combining_class_byname): New declaration.
* lib/unictype/combiningclass_byname.c: New file.
* lib/unictype/combiningclass_byname.gperf: New file.
* modules/unictype/combining-class-byname: New file.
Tests for module 'unictype/combining-class-longname'.
* modules/unictype/combining-class-longname-tests: New file.
* tests/unictype/test-combiningclass_longname.c: New file.
New module 'unictype/combining-class-longname'.
* lib/unictype.in.h (uc_combining_class_long_name): New declaration.
* lib/unictype/combiningclass_longname.c: New file.
* modules/unictype/combining-class-longname: New file.
Tests for module 'unictype/combining-class-name'.
* modules/unictype/combining-class-name-tests: New file.
* tests/unictype/test-combiningclass_name.c: New file.
New module 'unictype/combining-class-name'.
* lib/unictype.in.h (uc_combining_class_name): New declaration.
* lib/unictype/combiningclass_name.c: New file.
* modules/unictype/combining-class-name: New file.
2011-03-25 Bruno Haible
unictype/combining-class: Rename source files.
* lib/gen-uni-tables.c (main): Emit unictype/combiningclass.h instead
of unictype/combining.h.
* lib/unictype/combiningclass.c: Renamed from lib/unictype/combining.c.
Update.
* lib/unictype/combiningclass.h: Renamed from lib/unictype/combining.h.
* modules/unictype/combining-class (Description): Fix.
(Files, Makefile.am): Update.
* tests/unictype/test-combiningclass.c: Renamed from
tests/unictype/test-combining.c.
* modules/unictype/combining-class-tests (Files, Makefile.am): Update.
2011-03-25 Bruno Haible
unictype: Update list of canonical combining classes.
* lib/unictype.in.h (UC_CCC_ATA): New enumeration value.
2011-03-25 Bruno Haible
unictype/category-byname: Recognize long names as well.
* lib/unictype.in.h (uc_general_category_byname): Allow argument to be
a long name.
* lib/unictype/categ_byname.c: Include , ,
unictype/categ_byname.h.
(UC_CATEGORY_INDEX_*): New enumeration values.
(uc_general_category_byname): Use uc_general_category_lookup and
convert from index to value.
* lib/unictype/categ_byname.gperf: New file.
* modules/unictype/category-byname (Files): Add
lib/unictype/categ_byname.gperf.
(Depends-on): Add gperf.
(Makefile.am): Add rule for generating unictype/categ_byname.h.
* tests/unictype/test-categ_byname.c (main): Test the recognition of
long names.
Tests for module 'unictype/category-longname'.
* modules/unictype/category-longname-tests: New file.
* tests/unictype/test-categ_longname.c: New file.
New module 'unictype/category-longname'.
* lib/unictype.in.h (uc_general_category_long_name): New declaration.
* lib/unictype/categ_longname.c: New file.
* modules/unictype/category-longname: New file.
* modules/unictype/category-all (Depends-on): Add it.
2011-03-25 Bruno Haible
Tests for module 'unictype/category-LC'.
* modules/unictype/category-LC-tests: New file.
* tests/unictype/test-categ_LC.c: New file, automatically generated.
New module 'unictype/category-LC'.
* lib/unictype.in.h (UC_CATEGORY_MASK_LC): New enumeration value.
(UC_CATEGORY_LC): New declaration.
(UC_CASED_LETTER): New macro.
* lib/gen-uni-tables.c (is_category_LC): New function.
(output_categories): Also handle category LC.
(UC_CATEGORY_MASK_LC): New enumeration value.
(general_category_byname): Also handle category LC.
* lib/unictype/categ_LC.c: New file.
* lib/unictype/categ_LC.h: New file, automatically generated.
* lib/unictype/categ_name.c (uc_general_category_name): Also handle
category LC.
* lib/unictype/categ_byname.c (uc_general_category_byname): Likewise.
* modules/unictype/category-LC: New file.
* modules/unictype/category-byname (Depends-on): Add
unictype/category-LC.
* modules/unictype/category-all (Depends-on): Likewise.
2011-03-25 Eric Blake
xmalloc: revert yesterday's regression
* lib/xmalloc.c (xrealloc): Once again forward xrealloc(NULL,0) to
realloc's underlying behavior (allowing allocation of zero-size
objects, especially if malloc-gnu is also in use).
2011-03-25 Reuben Thomas
maint.mk: add missing version to VC-tag
* top/maint.mk: git tag was missing actual tag name; add it.
valgrind: do leak checking, and exit with code 1 on error (not 0)
* m4/valgrind-tests.m4: Add `--error-exitcode=1 --leak-check=full'
to VALGRIND.
2010-11-30 Reuben Thomas
posix-modules: say what it does.
* posix-modules: Add a line to the --help output saying what it does.
2011-03-24 Paul Eggert
xmalloc: Do not leak if underlying realloc is C99 compatible.
* lib/xmalloc.c (xrealloc): If N is zero, call 'free' directly.
This avoids a leak on C99-based systems. See
.
2011-03-24 Eric Blake
realloc: document portability problem
* doc/posix-functions/realloc.texi (realloc): Mention pitfalls of
passing 0 size to realloc.
2011-03-23 Ben Walton
doc: update users.txt
* users.txt: Add cvsps, tmpwatch
2011-03-23 Matt Rice
doc: update users.txt
* users.txt: Add gdb.
2011-03-23 Jim Meyering
doc: update users.txt
Looking through matches up to the following URL (there are still
several more pages), I found several projects that use gnulib:
http://codesearch.google.com/codesearch?start=50&q=gnulib-cache\.m4
* users.txt: Add nagios plugins (nagiosplug), acct, gengetopt,
gmediaserver, gtkreindeer, jugtail, libunistring, mini-httpd, reindeer.
2011-03-22 Bruno Haible
unictype/bidi*: Rename functions.
* lib/unictype.in.h (uc_bidi_class_name, uc_bidi_class_byname,
uc_bidi_class, uc_is_bidi_class): New declarations.
* lib/unictype/bidi_byname.c (uc_bidi_class_byname): Renamed from
uc_bidi_category_byname.
(uc_bidi_category_byname): New function.
* lib/unictype/bidi_name.c (u_bidi_class_name): Renamed from
u_bidi_category_name.
(uc_bidi_class_name): Renamed from uc_bidi_category_name.
(uc_bidi_category_name): New function.
* lib/unictype/bidi_of.c (uc_bidi_class): Renamed from
uc_bidi_category.
(uc_bidi_category): New function.
* lib/unictype/bidi_test.c (uc_is_bidi_class): Renamed from
uc_is_bidi_category. Invoke uc_bidi_class.
(uc_is_bidi_category): New function.
* tests/unictype/test-bidi_byname.c (main): Test uc_bidi_class_byname
instead of uc_bidi_category_byname.
* tests/unictype/test-bidi_name.c (main): Test uc_bidi_class_name
instead of uc_bidi_category_name.
* tests/unictype/test-bidi_of.c (main): Test uc_bidi_class instead of
uc_bidi_category.
* tests/unictype/test-bidi_test.c (main): Test uc_is_bidi_class
instead of uc_is_bidi_category.
2011-03-21 Bruno Haible
New module 'unictype/joininggroup-all'.
* modules/unictype/joininggroup-all: New file.
Tests for module 'unictype/joininggroup-of'.
* modules/unictype/joininggroup-of-tests: New file.
* tests/unictype/test-joininggroup_of.c: New file.
* tests/unictype/test-joininggroup_of.h: New file, automatically
generated by gen-uni-tables.
New module 'unictype/joininggroup-of'.
* modules/unictype/joininggroup-of: New file.
* lib/unictype/joininggroup_of.c: New file.
* lib/unictype/joininggroup_of.h: New file, automatically generated by
gen-uni-tables.
Tests for module 'unictype/joininggroup-byname'.
* modules/unictype/joininggroup-byname-tests: New file.
* tests/unictype/test-joininggroup_byname.c: New file.
New module 'unictype/joininggroup-byname'.
* modules/unictype/joininggroup-byname: New file.
* lib/unictype/joininggroup_byname.c: New file.
* lib/unictype/joininggroup_byname.gperf: New file.
Tests for module 'unictype/joininggroup-name'.
* modules/unictype/joininggroup-name-tests: New file.
* tests/unictype/test-joininggroup_name.c: New file.
New module 'unictype/joininggroup-name'.
* modules/unictype/joininggroup-name: New file.
* lib/unictype/joininggroup_name.c: New file.
* lib/unictype/joininggroup_name.h: New file.
New module 'unictype/joiningtype-all'.
* modules/unictype/joiningtype-all: New file.
Tests for module 'unictype/joiningtype-of'.
* modules/unictype/joiningtype-of-tests: New file.
* tests/unictype/test-joiningtype_of.c: New file.
* tests/unictype/test-joiningtype_of.h: New file, automatically
generated by gen-uni-tables.
New module 'unictype/joiningtype-of'.
* modules/unictype/joiningtype-of: New file.
* lib/unictype/joiningtype_of.c: New file.
* lib/unictype/joiningtype_of.h: New file, automatically generated by
gen-uni-tables.
Tests for module 'unictype/joiningtype-byname'.
* modules/unictype/joiningtype-byname-tests: New file.
* tests/unictype/test-joiningtype_byname.c: New file.
New module 'unictype/joiningtype-byname'.
* modules/unictype/joiningtype-byname: New file.
* lib/unictype/joiningtype_byname.c: New file.
Tests for module 'unictype/joiningtype-name'.
* modules/unictype/joiningtype-name-tests: New file.
* tests/unictype/test-joiningtype_name.c: New file.
New module 'unictype/joiningtype-name'.
* modules/unictype/joiningtype-name: New file.
* lib/unictype/joiningtype_name.c: New file.
unictype: Add support for Arabic shaping properties.
* lib/unictype.in.h (UC_JOINING_TYPE_*): New enumeration values.
(uc_joining_type_name, uc_joining_type_byname, uc_joining_type): New
declarations.
(UC_JOINING_GROUP_*): New enumeration values.
(uc_joining_group_name, uc_joining_group_byname, uc_joining_group): New
declarations.
* lib/gen-uni-tables.c (UC_JOINING_TYPE_*): New enumeration values.
(unicode_joining_type): New variable.
(UC_JOINING_GROUP_*): New enumeration values.
(unicode_joining_group): New variable.
(fill_arabicshaping, joining_type_as_c_identifier,
output_joining_type_test, output_joining_type,
joining_group_as_c_identifier, output_joining_group_test,
output_joining_group): New functions.
(main); Add an argument denoting the ArabicShaping.txt file. Invoke
fill_arabicshaping and output_joining_type_test, output_joining_type,
output_joining_group_test, output_joining_group.
Reported by Simon Josefsson.
2011-03-21 Jim Meyering
strftime: fix a bug in yesterday's change
* lib/strftime.c (add): Accommodate width's initial value of -1.
Otherwise, nstrftime would copy uninitialized data into
the result buffer.
2011-03-21 Jim Meyering