2011-03-11 Pádraig Brady
maint.mk: suppress a false positive warning
* top/maint.mk ((sc_unmarked_diagnostics): Don't warn when
diagnostics are marked with ngettext.
2011-03-10 Eric Blake
wchar: add explicit dependencies, for Tru64
* modules/mbmemcasecoll (Depends-on): Add wchar.
* modules/mbtowc (Depends-on): Likewise.
* modules/vasnprintf (Depends-on): Likewise.
* modules/unistdio/u-printf-args (Depends-on): Likewise.
* modules/wctomb (Depends-on): Likewise.
Reported by Peter O'Gorman.
2011-03-08 Bruno Haible
passfd module, part 1, tweaks.
* m4/afunix.m4 (gl_SOCKET_AFUNIX): Update AC_REQUIRE invocation.
Improve indentation. Improve AC_MSG_CHECKING messages.
* m4/sockpfaf.m4 (gl_SOCKET_FAMILY_UNIX): New macro, extracted from
gl_SOCKET_FAMILIES.
2011-03-07 Bastien Roucariès
passfd module, part 1.
* m4/afunix.m4: New file.
* m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Also test for UNIX domain
sockets.
2011-03-08 Bruno Haible
regex-quote: New API.
* lib/regex-quote.h: Include .
(struct regex_quote_spec): New type.
(regex_quote_spec_posix, regex_quote_spec_gnu, regex_quote_spec_pcre):
New declarations.
(regex_quote_length, regex_quote_copy, regex_quote): Take a
'const struct regex_quote_spec *' argument.
* lib/regex-quote.c (RE_*, PCRE_*): New macros.
(pcre_special): New constant.
(regex_quote_spec_posix, regex_quote_spec_gnu, regex_quote_spec_pcre):
New functions.
(regex_quote_length, regex_quote_copy, regex_quote): Take a
'const struct regex_quote_spec *' argument.
* modules/regex-quote (Depends-on): Add stdbool.
* tests/test-regex-quote.c (check): Update for new API. Add test for
anchored results.
* NEWS: Mention the API change.
Reported by Reuben Thomas and Eric Blake.
2011-03-06 Bruno Haible
regex-quote: Fix creation of POSIX extended regular expressions.
* lib/regex-quote.c (ere_special): Add grouping and alternation
operators.
2011-03-05 Bruno Haible
doc: Improve doc regarding autopoint vs. gnulib.
* doc/gnulib-tool.texi (gettextize and autopoint): Recommend to
disable autopoint while running autoreconf.
Suggested by Ralf Wildenhues.
2011-03-05 Ralf Wildenhues
Update AC_OPENMP macro for Lahey compiler on GNU/Linux.
* m4/openmp.m4 (AC_OPENMP): Sync from Autoconf.
2011-03-03 Bruce Korb
parse-duration: remove xalloc.h dependency
* lib/parse-duration.c (parse_period): handle NULL return from
strdup instead of calling xstrdup().
* modules/parse-duration: remove "xalloc" dependency
2011-03-03 Matthew Booth
bootstrap: honor m4_base when running aclocal
* build-aux/bootstrap: Fix hard-coded use of m4 directory name.
2011-03-02 Jim Meyering
getopt-gnu: relax license from LGPLv3+ to LGPLv2+
* modules/getopt-gnu (License): Relax to LGPLv2+, for augeas,
on request from Matt Booth.
2011-03-01 Eric Blake
test-link: work on Hurd
* tests/test-link.h (test_link): Hurd rejects linking directories
with EISDIR instead of the POSIX-mandated EPERM.
2011-02-28 Paul Eggert
stdio: simplify by moving files to printf-posix, sigpipe
* m4/stdio_h.m4 (gl_STDIO_H): Do not require gl_ASM_SYMBOL_PREFIX,
since this symbol is needed only if printf is replaced.
* m4/printf-posix-rpl.m4 (gl_REPLACE_PRINTF):
Require gl_ASM_SYMBOL_PREFIX.
* modules/printf-posix (Files): Add m4/asm-underscore.m4.
* modules/sigpipe (Files): Likewise. Also, add m4/stdio-write.c.
(Depends-on): Add 'raise'.
(configure.ac): Require gl_ASM_SYMBOL_PREFIX.
* modules/stdio (Files): Remove lib/stdio-write.c,
m4/asm-underscore.m4.
(Depends-on): Remove 'raise'.
stdio: simplify by moving gl_STDIN_LARGE_OFFSET to fseeko, ftello
* m4/fseeko.m4 (gl_STDIN_LARGE_OFFSET): Moved here, from ...
* m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): ... here, because
* modules/ftello (Files): Add m4/fseeko.m4, for gl_STDIN_LARGE_OFFSET.
2011-02-28 Bruno Haible
localcharset: Assume ANSI C behaviour of free().
* lib/localcharset.c (get_charset_aliases): Remove NULL test before
calling free().
Suggested by Simon Josefsson .
2011-02-28 Corinna Vinschen (tiny change)
Charles Wilson (tiny change)
Bruno Haible (tiny change)
On Cygwin, use /proc file system instead of win32 API.
* lib/relocatable.c: On Cygwin, use file names from /proc, rather than
Win32 file names.
(DllMain): Simplify by removing Cygwin specific code.
(find_shared_library_fullname): Use Linux specific implementation also
for Cygwin.
(get_shared_library_fullname): Update accordingly.
* lib/progreloc.c: On Cygwin, use file names from /proc, rather than
Win32 file names.
(find_executable): On Cygwin, use /proc, like on Linux. Remove previous
Cygwin specific code.
2011-02-28 Christian Rössel (tiny change)
Markus Geimer (tiny change)
Fix OpenMP flag detection for various Fortran compilers.
* m4/openmp.m4 (_AC_LANG_OPENMP(Fortran 77)): Use '!$'
OpenMP-conditional compilation construct, to force compile
failure with missing OpenMP flag.
(AC_OPENMP): Add flags for Cray CCE and NEC SX compilers.
2011-02-25 Eric Blake
strstr: expand test coverage
* tests/test-strstr.c (main): Add much shorter trigger. Fix C89
compilation.
* tests/test-memmem.c (main): Duplicate tests.
* tests/test-strcasestr.c (main): Likewise.
* tests/test-c-strcasestr.c (main): Likewise.
2011-02-25 Jim Meyering
maint.mk: detect missing-NL-at-EOF, too
* top/maint.mk (sc_prohibit_empty_lines_at_EOF): Adjust so that
it also detects when a file lacks a newline at EOF.
(require_exactly_one_NL_at_EOF_): Renamed from
detect_empty_lines_at_EOF_. I opted not to rename the rule,
since people may well have .x-sc_... file names tied to the
existing name. Suggested by Eric Blake.
2011-02-25 Paul Eggert
dirname: move m4/dos.m4 functionality into lib/dosname.h
m4/dos.m4 needs to go. It laboriously invokes the C compiler, and
extracts symbols from it, puts them into config.h; but it's much
easier to use the symbols directly. filename.h already does this,
but it disagrees with dos.m4 in some respects. This patch
introduces a different include file dosname.h that packages up
dos.m4, and then later we can work on merging filename.h and
dosname.h. Applications that need only the easy-to-configure
symbols should consider including dosname.h rather than dirname.h.
* NEWS: Mention incompatible changes.
* m4/dos.m4: Remove.
* lib/dosname.h, modules/dosname: New files.
* lib/dirname.h (ISSLASH, FILE_SYSTEM_PREFIX_LEN):
(FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE):
(IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): Move to lib/dosname.h.
* lib/at-func.c, lib/at-func2.c, lib/openat.c, lib/savewd.c:
Include dosname.h, not dirname.h.
* lib/rmdir.c, lib/stat.c, lib/unlink.c, lib/unlinkat.c:
Include dosname.h, for definitions of symbols like ISSLASH
that used to be in config.h.
* m4/dirname.m4 (gl_DIRNAME_LGPL): Do not require gl_AC_DOS.
* m4/rmdir.m4 (gl_FUNC_RMDIR): Likewise.
* m4/stat.m4 (gl_FUNC_STAT): Likewise.
* m4/unlink.m4 (gl_FUNC_UNLINK): Likewise.
* modules/dirname-lgpl (Files): Omit m4/dos.m4.
* modules/rmdir (Files): Likewise.
* modules/stat (Files): Likewise.
* modules/unlink (Files): Likewise.
* modules/dirname-lgpl (Depends-on): Add dosname.
* modules/lstat (Depends-on): Likewise.
* modules/openat (Depends-on): Likewise.
* modules/rmdir (Depends-on): Likewise.
* modules/savewd (Depends-on): Likewise.
* modules/stat (Depends-on): Likewise.
* modules/unlink (Depends-on): Likewise.
* modules/openat (Depends-on): Remove dirname-lgpl.
* modules/savewd (Depends-on): Likewise.
* tests/test-dirname.c: Do not use removed symbols like
FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR. Instead, use
the remaining symbols, e.g., ISSLASH ('\\').
2011-02-25 Eric Blake
strstr: revert patches that introduced bug and pessimization
* lib/str-two-way.h: Add another reference.
(two_way_short_needle, two_way_long_needle): Revert changes from
2011-02-24; they pessimize search speed.
(critical_factorization): Partially revert changes from
2010-06-22; they violate the requirement that the left half of the
needle be smaller than the period of the needle.
2011-02-24 Paul Eggert
filenamecat: remove unnecessary dependency on dirname-lgpl
* modules/filenamecat (Depends-on): Remove dirname-lgpl, as there
is no direct dependency, just an indirect one via filenamecat-lgpl.
remove: remove unnecessary use of m4/dos.m4
* m4/remove.m4 (gl_FUNC_REMOVE): Don't require gl_AC_DOS; not needed.
* modules/remove (FILES): Remove m4/dos.m4.
* lib/openat-proc.c: Don't include dirname.h; not needed.
backupfile: remove unnecessary use of m4/dos.m4
* m4/backupfile.m4 (gl_BACKUPFILE): Don't require gl_AC_DOS; none
of its symbols are used by the backupfile code. backupfile.c does
use a symbol HAVE_DOS_FILE_NAMES, but that symbol is meant only
for the rare case of programs that want all their backup file
names to live within 8+3 limits, and dos.m4 doesn't address that.
* modules/backupfile (Files): Remove m4/dos.m4.
2011-02-24 Jim Meyering
strstr: fix a bug whereby strstr would mistakenly return NULL
* lib/str-two-way.h (two_way_short_needle): Correct off-by-one error
in period calculation.
(two_way_long_needle): Likewise.
The original problem was reported by Mike Stump in
http://thread.gmane.org/gmane.comp.sysutils.autoconf.bugs/7834
Ralf Wildenhues provided the short needle and haystack.
* tests/test-strstr.c: Add Ralf's test case to trigger the bug.
Add a more involved test to trigger the bug in two_way_long_needle.
2011-02-24 Stefano Lattarini (tiny change)
gnulib-tool: remove use of bold display in help screen
* gnulib-tool (func_usage): Do not use bold display anymore in the
help screen. That was just meant to be a temporary emphasis for a
backward-incompatible change.
2011-02-23 Bruno Haible
Fix misindentation of preprocessor directives.
* lib/argp-namefrob.h: Reindent preprocessor directives.
* lib/getopt_int.h (struct _getopt_data): Likewise.
* lib/progreloc.c (maybe_executable, find_executable): Likewise.
* lib/vasnprintf.c (decode_long_double): Likewise.
* tests/test-argmatch.c: Insert blank lines, for clarity.
* tests/test-exclude.c: Likewise.
2011-02-22 Bruno Haible
ioctl: Fix for MacOS X in 64-bit mode.
* lib/ioctl.c (rpl_ioctl): Zero-extend, not sign-extend, the request
value.
Suggested by Eric Blake.
Reported by Markus Gothe .
2011-02-22 Jim Meyering
maint: sc_cpp_indent_check: remove the "only in lib/" restriction
* Makefile (sc_cpp_indent_check): Don't limit the check to files
in lib/.
2011-02-22 Eric Blake
maint: avoid any CDPATH issue
* Makefile (sc_cpp_indent_check): Anchor cd argument.
maint: adjust cpp indentation for my modules, as well
* Makefile (sc_cpp_indent_check): Add my name.
* lib/fbufmode.c: Filter through cppi.
* lib/fpurge.c: Likewise.
* lib/freadable.c: Likewise.
* lib/freading.c: Likewise.
* lib/fwritable.c: Likewise.
* lib/fwriting.c: Likewise.
* lib/sigaction.c: Likewise.
2011-02-22 Jim Meyering
maint: adjust cpp indentation to reflect nesting depth
I.e., in a block of code that begins with an unnested "#if",
put one space between the "#" in column 1 and following token.
For example,
-#include
+# include
Do this only in .c files that are part of a module I maintain.
* lib/linkat.c: Filter through cppi.
* lib/nanosleep.c: Likewise.
* lib/openat.c: Likewise.
* lib/openat-die.c: Likewise.
* lib/dup3.c: Likewise.
* lib/fchownat.c: Likewise.
* lib/flock.c: Likewise.
* lib/fsync.c: Likewise.
* lib/fts.c: Likewise.
* lib/getpass.c: Likewise.
* lib/gettimeofday.c: Likewise.
* lib/userspec.c: Likewise.
* Makefile (sc_cpp_indent_check): New rule, to check this.
2011-02-22 Bruno Haible
New module 'wctomb'.
* lib/stdlib.in.h (wctomb): New declaration.
* lib/wctomb.c: New file.
* lib/wctomb-impl.h: New file.
* m4/wctomb.m4: New file.
* m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_WCTOMB,
REPLACE_WCTOMB.
* modules/stdlib (Makefile.am): Substitute GNULIB_WCTOMB,
REPLACE_WCTOMB.
* modules/wctomb: New file.
* tests/test-stdlib-c++.cc: Test signature of wctomb.
* doc/posix-functions/wctomb.texi: Mention the new module.
* modules/wctob (Depends-on): Add wctomb.
2011-02-22 Bruno Haible
New module 'mbtowc'.
* lib/stdlib.in.h (mbtowc): New declaration.
* lib/mbtowc.c: New file.
* lib/mbtowc-impl.h: New file, from libutf8 with modifications.
* m4/mbtowc.m4: New file.
* m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_MBTOWC,
REPLACE_MBTOWC.
* modules/stdlib (Makefile.am): Substitute GNULIB_MBTOWC,
REPLACE_MBTOWC.
* modules/mbtowc: New file.
* tests/test-stdlib-c++.cc: Test signature of mbtowc.
* doc/posix-functions/mbtowc.texi: Mention the new module.
* modules/btowc (Depends-on): Add mbtowc.
2011-02-22 Bruno Haible
wcrtomb: Add more tests for native Windows platforms.
* tests/test-wcrtomb-w32-1.sh: New file.
* tests/test-wcrtomb-w32-2.sh: New file.
* tests/test-wcrtomb-w32-3.sh: New file.
* tests/test-wcrtomb-w32-4.sh: New file.
* tests/test-wcrtomb-w32-5.sh: New file.
* tests/test-wcrtomb-w32.c: New file.
* modules/wcrtomb-tests (Files): Add them.
(Makefile.am): Arrange to run these tests.
* tests/test-wcrtomb-w32-6.sh: New file, currently unused.
* tests/test-wcrtomb-w32-7.sh: New file, currently unused.
2011-02-20 Bruno Haible
wcrtomb: Enhance test.
* tests/test-wcrtomb.c (main): Add test against bug with NULL argument.
2011-02-20 Bruno Haible
mbrtowc: Tiny optimization.
* lib/mbrtowc.c (mbrtowc): Delay pstate assignment until it is needed.
2011-02-20 Jim Meyering
test-exclude.c: remove unmatched #endif
* tests/test-exclude.c: Remove stray #endif, left over from
the change of a week ago.
2011-02-19 Jim Meyering
git-version-gen: skip "-dirty" check when appropriate
* build-aux/git-version-gen: Don't run any git commands when the
version string comes from .tarball-version. Prior to this, we
would run git update-index --refresh even from a just-unpacked
tarball directory, and that could affect a .git/ directory in a
parent of the build directory. Reported by Mike Frysinger.
2011-02-19 Bruno Haible
unictype/property-byname: Reduce the size of the 'data' segment.
* lib/unictype/pr_byname.gperf: Add gperf option '%pic'.
2011-02-19 Bruno Haible
unictype/scripts: Reduce the size of the 'data' segment.
* lib/gen-uni-tables.c (output_scripts_byname): Emit gperf option
'%pic'.
* lib/unictype/scripts_byname.gperf: Regenerated.
2011-02-19 Bruno Haible
stdint: Update documentation.
* doc/posix-headers/stdint.texi: Mention WCHAR_MIN, WCHAR_MAX problem.
2011-02-18 Paul Eggert
stdint: omit redundant check for wchar.h
* m4/stdint.m4 (gl_STDINT_H): The earlier part of this macro now
always tests whether wchar.h exists, so remove the now-redundant test.
2011-02-18 Bruno Haible
stdint: Cut dependency to module 'wchar'.
* lib/stdint.in.h: Include wchar.h only when HAVE_WCHAR_H is 1. Also
include the necessary prerequisites.
* m4/stdint.m4 (gl_STDINT_H): Test whether wchar.h exists.
* modules/stdint (Depends-on): Remove wchar.
(Makefile.am): Substitute HAVE_WCHAR_H.
This reverts part of a 2007-01-06 commit. Reported by Paul Eggert.
2011-02-18 Eric Blake
longlong: skip, rather than fail, on cross-compilation
* m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Avoid aborting configure
when cross-compiling; regression from 2011-02-16.
2011-02-17 Paul Eggert
* NEWS: Mention 2011-02-08 change to stdlib.
2011-02-17 Bruno Haible
getloadavg: Add comments about platforms.
* m4/getloadavg.m4: Add comment.
* lib/getloadavg.c: Likewise.
2011-02-17 Bruno Haible
getloadavg: Fix link error on Solaris 2.6.
* modules/getloadavg (Link): New section.
* modules/getloadavg-tests (Makefile.am): Use GETLOADAVG_LIBS for
linking test-getloadavg.
* doc/glibc-functions/getloadavg.texi: Mention that Solaris 2.6 lacks
getloadavg.
2011-02-17 Paul Eggert
* lib/getloadavg.c (getloadavg) [sgi]: Make ldav_off of type ptrdiff_t.
It was 'int', but this doesn't match the IRIX 6.5 manual.
Suggested by Bruno Haible in
.
2011-02-17 Bruno Haible
havelib: Fix comments.
* m4/lib-link.m4 (AC_LIB_RPATH): Update comments after 2007-01-02
change.
2011-02-17 Bruno Haible
havelib: Update config.rpath.
* build-aux/config.rpath: Update to match libtool.m4 from libtool-2.4.
2011-02-17 Bruno Haible
getloadavg test: Add some plausibility checks.
* tests/test-getloadavg.c (check_avg): Print a warning when the value
is improbable.
2011-02-16 Eric Blake
maintainer-makefile: make syntax-check a no-op from tarballs
* top/maint.mk (no-vc-detected): New rule.
(local-checks-available): Use it to avoid hanging if someone tries
'make syntax-check' from a tarball. Also append to any non-syntax
checks already defined in cfg.mk.
2011-02-16 Paul Eggert
longlong: tune, particularly for common case of c99
* m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Don't bother compiling
or running anything if c99, or if unsigned long long int does not
work. In either case, we know the answer without further tests.
Do not compile _AC_TYPE_LONG_LONG_SNIPPET twice. Instead, compile
it at most once, and use its results for both long long int and
unsigned long long int. This is more likely to be efficient in
the common case where the program wants to check for both long
long int and unsigned long long int.
(AC_TYPE_UNSIGNED_LONG_LONG_INT): Don't bother compiling if c99,
since the answer is already known.
2011-02-15 Paul Eggert
getloadavg: set errno
* lib/getloadavg.c: Set errno when returning -1. If no other
error number looks appropriate, set it to ENOSYS if the getloadavg
looks like it can't possibly ever work, ENOTSUP otherwise.
Suggested by Bruno Haible in
.
getloadavg: trim unused parts and speed up 'configure'
* NEWS: Document this.
* lib/getloadavg.c: Ignore HAVE_GETLOADAVG; this file is now
always compiled if getloadavg is absent.
Move test code to ...
* tests/test-getloadavg.c: New file, containing previous
contents of test from lib/getloadavg.c. It also contains
suggestions by Bruno Haible in
.
* modules/getloadavg-tests: New file.
* m4/getloadavg.m4 (gl_GETLOADAVG): Do not check for getloadavg twice.
Do tests in the same order as they're needed for getloadavg.c.
Omit setgid-related tests that generate symbols KMEM_GROUP,
NEET_SETGID, GETLOADAVG_PRIVILEGED; nobody seems to use those any more.
Do only the tests that are needed to see whether the system has
getloadavg, moving the other tests into ...
(gl_PREREQ_GETLOADAVG): ... here. Do not define obsolete symbol
NLIST_NAME_UNION; nobody should be using it. Do not define
symbols C_GETLOADAVG and HAVE_GETLOADAVG; they're no longer
relevant, as the user of this module shouldn't care how getloadavg
is implemented.
getloadavg: omit unused var
* lib/getloadavg.c (getloadavg): Omit unused local variable.
2011-02-15 Jim Meyering
doc: update users.txt
* users.txt: Update iwhd's URL.
2011-02-13 Bruno Haible
Consistent macro naming for macros that use GCC __attribute__.
* lib/di-set.h (_GL_ATTRIBUTE_NONNULL): Renamed from
_ATTRIBUTE_NONNULL_.
* lib/ino-map.h (_GL_ATTRIBUTE_NONNULL): Likewise.
* lib/hash.h (_GL_ATTRIBUTE_WUR): Renamed from ATTRIBUTE_WUR.
* lib/ignore-value.h (_GL_ATTRIBUTE_DEPRECATED): Renamed from
ATTRIBUTE_DEPRECATED.
* lib/openat.h (_GL_ATTRIBUTE_NORETURN): Renamed from
ATTRIBUTE_NORETURN.
* lib/sigpipe-die.h (_GL_ATTRIBUTE_NORETURN): Likewise.
* lib/xmemdup0.h (_GL_ATTRIBUTE_NORETURN): Likewise.
* lib/xstrtol.h (_GL_ATTRIBUTE_NORETURN): Likewise.
* lib/xalloc.h (_GL_ATTRIBUTE_NORETURN): Likewise.
(_GL_ATTRIBUTE_MALLOC): Renamed from ATTRIBUTE_MALLOC.
(_GL_ATTRIBUTE_ALLOC_SIZE): Renamed from ATTRIBUTE_ALLOC_SIZE.
* lib/version-etc.h (_GL_ATTRIBUTE_SENTINEL): Renamed from
ATTRIBUTE_SENTINEL.
* lib/safe-alloc.h (_GL_ATTRIBUTE_RETURN_CHECK): Renamed from
ATTRIBUTE_RETURN_CHECK.
* tests/test-ignore-value.c (_GL_ATTRIBUTE_RETURN_CHECK): Likewise.
* tests/test-argmatch.c (_GL_ATTRIBUTE_NORETURN): Renamed from
ATTRIBUTE_NORETURN.
* tests/test-exclude.c (_GL_ATTRIBUTE_NORETURN): Likewise.
Reported by Paul Eggert.
2011-02-13 Bruno Haible
Don't interfere with a program's definition of __attribute__.
* lib/argp.h (__attribute__): Remove definition.
(_GL_ATTRIBUTE_FORMAT): New macro.
(argp_error, __argp_error, argp_failure, __argp_failure): Use it.
* lib/argp-fmtstream.h (__attribute__): Remove definition.
(_GL_ATTRIBUTE_FORMAT): New macro.
(__argp_fmtstream_printf, argp_fmtstream_printf): Use it.
* lib/argp-help.c (hol_entry_long_iterate): Use __attribute__ only for
GCC 3 or newer.
* lib/error.h (__attribute__): Remove definition.
(_GL_ATTRIBUTE_FORMAT): New macro.
(error, error_at_line): Use it.
* lib/hash.h (__attribute__): Remove definition.
(ATTRIBUTE_WUR): Update definition. Define always.
* lib/openat.h (__attribute__): Remove definition.
(ATTRIBUTE_NORETURN): Update definition. Define always.
* lib/sigpipe-die.h (__attribute__): Remove definition.
(ATTRIBUTE_NORETURN): Update definition. Define always.
* lib/vasnprintf.h (__attribute__): Remove definition.
(_GL_ATTRIBUTE_FORMAT): New macro.
(asnprintf, vasnprintf): Use it.
* lib/xalloc.h (__attribute__): Remove definition.
(ATTRIBUTE_NORETURN): Update definition. Define always.
(ATTRIBUTE_MALLOC, ATTRIBUTE_ALLOC_SIZE): Define always.
* lib/xmemdup0.h (__attribute__): Remove definition.
(ATTRIBUTE_NORETURN): Update definition. Define always.
* lib/xprintf.h (__attribute__): Remove definition.
(_GL_ATTRIBUTE_FORMAT): New macro.
(xprintf, xvprintf, xfprintf, xvfprintf): Use it.
* lib/xstrtol.h (__attribute__): Remove definition.
(ATTRIBUTE_NORETURN): Update definition. Define always.
* lib/xvasprintf.h (__attribute__): Remove definition.
(_GL_ATTRIBUTE_FORMAT): New macro.
(xasprintf, xvasprintf): Use it.
* tests/test-argmatch.c (__attribute__): Remove definition.
(ATTRIBUTE_NORETURN): Update definition. Define always.
* tests/test-exclude.c (__attribute__): Remove definition.
(ATTRIBUTE_NORETURN): Update definition. Define always.
Reported by Paul Eggert.
2011-02-13 Bruno Haible
mbrtowc: Add more tests for native Windows platforms.
* tests/test-mbrtowc-w32-1.sh: New file.
* tests/test-mbrtowc-w32-2.sh: New file.
* tests/test-mbrtowc-w32-3.sh: New file.
* tests/test-mbrtowc-w32-4.sh: New file.
* tests/test-mbrtowc-w32-5.sh: New file.
* tests/test-mbrtowc-w32.c: New file.
* modules/mbrtowc-tests (Files): Add them.
(Makefile.am): Arrange to run these tests.
* tests/test-mbrtowc-w32-6.sh: New file, currently unused.
* tests/test-mbrtowc-w32-7.sh: New file, currently unused.
2011-02-13 Bruno Haible
mbrtowc: Work around native Windows bug.
* m4/mbrtowc.m4 (gl_MBRTOWC_RETVAL): Detect native Windows bug. Use the
guess when no suitable locale for testing was found.
* doc/posix-functions/mbrtowc.texi: Mention the native Windows bug.
2011-02-13 Bruno Haible
mbsinit: Work around mingw bug.
* m4/mbsinit.m4 (gl_FUNC_MBSINIT): Replace mbsinit also on mingw.
* lib/mbsinit.c (mbsinit): Provide an alternate definition for native
Windows.
* doc/posix-functions/mbsinit.texi: Mention the mingw bug.
2011-02-13 Bruno Haible
mbsinit: Don't crash for a NULL argument.
* lib/mbsinit.c (mbsinit): When the argument is NULL, return 1.
* tests/test-mbsinit.c (mbsinit): Check this behaviour.
2011-02-13 Bruno Haible
Don't interfere with a program's definition of __attribute__.
* lib/stdio.in.h (__attribute__): Remove definition.
(_GL_ATTRIBUTE_FORMAT, _GL_ATTRIBUTE_FORMAT_PRINTF): New macros.
(dprintf, fprintf, obstack_printf, obstack_printf, obstack_vprintf,
printf, snprintf, sprintf, asprintf, vasprintf, vdprintf, vfprintf,
vsnprintf, vsprintf): Use _GL_ATTRIBUTE_FORMAT_PRINTF.
* lib/string.in.h (__attribute__): Remove definition.
Reported by Paul Eggert.
2011-02-12 Paul Eggert
stdlib: don't get in the way of non-GCC __attribute__
See thread starting at
.
Revert previous stdlib change, installing the following instead:
* lib/stdlib.in.h (__attribute__): Remove. We do not want
to get in the way of a non-GCC compiler that supports __attribute__.
(_GL_ATTRIBUTE_RETURN): New macro.
(_Exit): Use it instead of __attribute__.
2011-02-12 Bruno Haible
quotearg test: Avoid test failure on mingw.
* tests/test-quotearg.sh: Convert the locale identifier from native
Windows syntax to Unix syntax.
2011-02-12 Bruno Haible
setlocale: Prefer gnulib's override over libintl's override.
* lib/locale.in.h (GNULIB_defined_setlocale): New macro.
* lib/gettext.h (setlocale): Redefine to rpl_setlocale if
GNULIB_defined_setlocale is set.
2011-02-12 Paul Eggert
stdlib: support non-GCC __attribute__
Fix a serious and tricky problem encountered when attempting to
add the getloadavg module to Emacs. Emacs worked fine on RHEL
5.5, but it crashed due to memory corruption on Solaris 10 with
Sun C 5.11. Emacs normally ORs 3-bit tags into their low-order
bits that are otherwise zero. This tagging is optional inside
Emacs but is preferred and is used when __attribute__ ((__aligned
(8))) works, as it does with both recent-enough GCC and with Sun C
5.11. However, Sun C 5.11 is not GCC and does not #define
__GNUC__ and __GNUC_MINOR__.
When I added the getloadavg module to Emacs, it brought in
stdlib.in.h, which contained this fragment:
#ifndef __attribute__
# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8)
# define __attribute__(Spec) /* empty */
# endif
#endif
When files that include were compiled with Sun C 5.11,
the above code disabled __attribute__ ((__aligned (8))), which
caused variables to not be properly aligned, which eventually led
to the pointer corruption mentioned above. (This was a bit hard
to diagnose, unfortunately.)
Several "#define __attribute__(X) /* empty */" code snippets need
to be eradicated from Gnulib to work with non-GCC compilers that
support __attribute__. The Autoconf way to do this is to test for
each kind of attribute that we want support for, and selectively
enable that in source code.
Fix this problem just for stdlib.h, by adding a test for the
__noreturn__ attribute, and change stdlib.in.h to use that test
when needed. This technique can be easily generalized to the
other *.in.h files and attributes, and a similar technique can be
used for *.h and *.c files. This patch is enough to solve the
problem for Emacs + getloadavg, and I thought I'd publish it for
feedback before undertaking further, similar fixes in other
modules.
This patch does not arrange to #define HAVE_ATTRIBUTE_NORETURN
because it's not needed for stdlib.h. It merely substitutes the
value directly into stdlib.h. We may well need to #define it, or
similar symbols, for other modules, but it's nice to also have an
option to not #define it for applications like Emacs that do not
need it.
* lib/stdlib.in.h (__attribute__): Do not #define.
(_GL_ATTRIBUTE_NORETURN): New macro, which in stdlib.h needs to
be defined only if the _Exit module is also used.
* m4/_Exit.m4 (gl_FUNC__EXIT): Require gl_ATTRIBUTE_NORETURN.
* m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Subst
HAVE_ATTRIBUTE_NORETURN and default it to 1, its value on GNU
platforms.
* modules/_Exit (Files): Add m4/attribute.m4.
* modules/stdlib (Makefile.am): Substitute HAVE_ATTRIBUTE_NORETURN.
* m4/attribute.m4: New file.
2011-02-12 Bruno Haible
wcsrtombs: Work around bug on native Windows.
* m4/wcsrtombs.m4 (gl_WCSRTOMBS_NULL): Test against mingw bug.
* lib/wcsrtombs.c (rpl_wcsrtombs): When dest is NULL, pass SIZE_MAX
instead of len.
* doc/posix-functions/wcsrtombs.texi: Document mingw bug.
2011-02-12 Bruno Haible
mbsrtowcs: Work around bug on native Windows.
* m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): Require gt_LOCALE_FR. Test
against mingw bug.
* doc/posix-functions/mbsrtowcs.texi: Document mingw bug.
2011-02-12 Bruno Haible
Avoid setlocale bugs in tests.
* modules/btowc (Dependencies): Add setlocale.
* modules/c-strcase (Dependencies): Likewise.
* modules/mbmemcasecmp (Dependencies): Likewise.
* modules/mbmemcasecoll (Dependencies): Likewise.
* modules/mbrtowc (Dependencies): Likewise.
* modules/mbscasecmp (Dependencies): Likewise.
* modules/mbscasestr (Dependencies): Likewise.
* modules/mbschr (Dependencies): Likewise.
* modules/mbscspn (Dependencies): Likewise.
* modules/mbsinit (Dependencies): Likewise.
* modules/mbsncasecmp (Dependencies): Likewise.
* modules/mbsnrtowcs (Dependencies): Likewise.
* modules/mbspbrk (Dependencies): Likewise.
* modules/mbspcasecmp (Dependencies): Likewise.
* modules/mbsrchr (Dependencies): Likewise.
* modules/mbsrtowcs (Dependencies): Likewise.
* modules/mbsspn (Dependencies): Likewise.
* modules/mbsstr (Dependencies): Likewise.
* modules/nl_langinfo (Dependencies): Likewise.
* modules/quotearg (Dependencies): Likewise.
* modules/unicase/locale-language (Dependencies): Likewise.
* modules/unicase/ulc-casecmp (Dependencies): Likewise.
* modules/unicase/ulc-casecoll (Dependencies): Likewise.
* modules/unigbrk/ulc-grapheme-breaks (Dependencies): Likewise.
* modules/unistdio/u8-vasnprintf (Dependencies): Likewise.
* modules/unistdio/u16-vasnprintf (Dependencies): Likewise.
* modules/unistdio/u32-vasnprintf (Dependencies): Likewise.
* modules/unistdio/ulc-vasnprintf (Dependencies): Likewise.
* modules/uniwbrk/ulc-wordbreaks (Dependencies): Likewise.
* modules/vasnprintf-posix (Dependencies): Likewise.
* modules/wcrtomb (Dependencies): Likewise.
* modules/wcsnrtombs (Dependencies): Likewise.
* modules/wcsrtombs (Dependencies): Likewise.
2011-02-12 Bruno Haible
setlocale: Workaround native Windows bug.
* lib/setlocale.c (rpl_setlocale): On native Windows, when setlocale
succeeds but sets LC_CTYPE to "C", report a failure.
* tests/test-setlocale2.sh: New file.
* tests/test-setlocale2.c: New file.
* modules/setlocale-tests (Files): Add the new files.
(Makefile.am): Enable test-setlocale2.sh test.
* doc/posix-functions/setlocale.texi: Mention workaround.
2011-02-11 Bruno Haible
Tests for module 'setlocale'.
* modules/setlocale-tests: New file.
* tests/test-setlocale1.sh: New file.
* tests/test-setlocale1.c: New file.
New module 'setlocale'.
* lib/locale.in.h (setlocale): New declaration.
* lib/setlocale.c: New file, based on
gettext/gettext-runtime/intl/setlocale.c.
* m4/setlocale.m4: New file.
* m4/locale_h.m4 (gl_LOCALE_H): Test whether setlocale is declared.
(gl_LOCALE_H_DEFAULTS): Initialize GNULIB_SETLOCALE, REPLACE_SETLOCALE.
* modules/locale (Makefile.am): Substitute GNULIB_SETLOCALE,
REPLACE_SETLOCALE.
* modules/setlocale: New file.
* tests/test-locale-c++.cc: Test the declaration of setlocale.
* doc/posix-functions/setlocale.texi: Mention the new module.
2011-02-11 Bruno Haible
Prepare for locale dependent tests on mingw.
* m4/locale-ar.m4 (gt_LOCALE_AR): On native Windows, don't try "ar"
because it has the wrong locale encoding.
* m4/locale-fr.m4 (gt_LOCALE_FR): On native Windows, try
French_France.1252 instead of "fr".
(gt_LOCALE_FR_UTF8): On native Windows, try French_France.65001.
* m4/locale-ja.m4 (gt_LOCALE_JA): On native Windows, don't try "ja"
because it has the wrong locale encoding.
* m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Require AC_CANONICAL_HOST. On
native Windows, try Turkish_Turkey.65001.
* m4/locale-zh.m4 (gt_LOCALE_ZH_CN): On native Windows, try
Chinese_China.54936.
Prepare for locale dependent tests on mingw.
* m4/locale-ar.m4 (gt_LOCALE_AR): On native Windows, call setlocale
differently.
* m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Likewise.
* m4/locale-ja.m4 (gt_LOCALE_JA): Likewise.
* m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
* m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
2011-02-11 Eric Blake
strptime: avoid compiler warnings
* lib/strptime.c (__strptime_internal) [!_NL_CURRENT]: Avoid
compiler warnings about dead code.
Reported by Daniel P. Berrange.
2011-02-11 Thien-Thi Nguyen
doc: update users.txt
* users.txt: Add rcs.
2011-02-10 John W. Eaton
doc: update users.txt
* users.txt: Add octave.
2011-02-10 Jim Meyering
doc: update users.txt
* users.txt: Add iwhd.
2011-02-09 Bruno Haible
gnulib-tool: Make copyright notice adjustment more robust.
* gnulib-tool (func_import): In sed_transform_main_lib_file,
sed_transform_build_aux_file, sed_transform_testsrelated_lib_file,
allow a line break to occur after "GNU" in "GNU [Lesser] General Public
License".
Reported by Glenn Morris via Paul Eggert.
2011-02-06 Bruno Haible
New module 'towctrans'.
* modules/towctrans: New file.
* lib/wctype.in.h (towctrans): New declaration.
* lib/towctrans.c: New file.
* lib/towctrans-impl.h: New file.
* m4/towctrans.m4: New file.
* m4/wctype_h.m4 (gl_WCTYPE_H): Test whether towctrans is declared.
(gl_WCTYPE_H_DEFAULTS): Initialize GNULIB_TOWCTRANS.
* modules/wctype-h (Makefile.am): Substitute GNULIB_TOWCTRANS.
* tests/test-wctype-h-c++.cc: Test the declaration of towctrans.
* doc/posix-functions/towctrans.texi: Mention the new module.
2011-02-06 Bruno Haible
New module 'wctrans'.
* modules/wctrans: New file.
* lib/wctype.in.h (wctrans): New declaration.
* lib/wctrans.c: New file.
* lib/wctrans-impl.h: New file.
* m4/wctrans.m4: New file.
* m4/wctype_h.m4 (gl_WCTYPE_H): Test whether wctrans is declared.
(gl_WCTYPE_H_DEFAULTS): Initialize GNULIB_WCTRANS.
* modules/wctype-h (Makefile.am): Substitute GNULIB_WCTRANS.
* tests/test-wctype-h-c++.cc: Test the declaration of wctrans.
* doc/posix-functions/wctrans.texi: Mention the new module.
2011-02-06 Bruno Haible
New module 'iswctype'.
* modules/iswctype: New file.
* lib/wctype.in.h (iswctype): New declaration.
* lib/iswctype.c: New file.
* lib/iswctype-impl.h: New file.
* m4/iswctype.m4: New file.
* m4/wctype_h.m4 (gl_WCTYPE_H): Test whether iswctype is declared.
(gl_WCTYPE_H_DEFAULTS): Initialize GNULIB_ISWCTYPE.
* modules/wctype-h (Makefile.am): Substitute GNULIB_ISWCTYPE.
* tests/test-wctype-h-c++.cc: Test the declaration of iswctype.
* doc/posix-functions/iswctype.texi: Mention the new module and the
HP-UX 11.00 problem.
2011-02-06 Bruno Haible
New module 'wctype'.
* modules/wctype: Change to represent the wctype() substitute.
* lib/wctype.in.h (wctype): New declaration.
* lib/wctype.c: New file.
* lib/wctype-impl.h: New file.
* m4/wctype.m4: New file.
* m4/wctype_h.m4 (gl_WCTYPE_H): Test whether wctype is declared.
(gl_WCTYPE_H_DEFAULTS): Initialize GNULIB_WCTYPE.
* modules/wctype-h (Makefile.am): Substitute GNULIB_WCTYPE.
* tests/test-wctype-h-c++.cc: Test the declaration of wctype.
* doc/posix-functions/wctype.texi: Mention the new module and the
HP-UX 11.00 problem.
2011-02-06 Bruno Haible
wctype-h: Ensure wctype_t and wctrans_t are defined.
* lib/wctype.in.h (wctype_t, wctrans_t): New type declarations.
* m4/wctype_h.m4 (gl_WCTYPE_H): Determine HAVE_WCTYPE_T, HAVE_WCTRANS_T.
(gl_WCTYPE_H_DEFAULTS): Initialize HAVE_WCTYPE_T, HAVE_WCTRANS_T.
* modules/wctype-h (Makefile.am): Substitute HAVE_WCTYPE_T,
HAVE_WCTRANS_T.
* tests/test-wctype-h.c: Check that wctype_t and wctrans_t are defined.
2011-02-09 Paul Eggert
flock: fix license typo
* lib/flock.c: Fix typo in license. One of the "Lesser"s was
omitted.
2011-02-08 Bruno Haible
Split large sed scripts, for HP-UX sed.
* modules/math (Makefile.am): Split sed scripts around 50 sed commands,
to avoid HP-UX limit of 99 commands, in the near future.
* modules/stdlib (Makefile.am): Likewise.
* modules/unistd (Makefile.am): Likewise.
* modules/wchar (Makefile.am): Likewise.
Reported by Albert Chin .
Suggestion by Ralf Wildenhues in
.
2011-02-08 Paul Eggert
Bruno Haible
stdlib: improve random_r modularization
* lib/stdlib.in.h: Encapsulate all the stuff having to do with
random_r inside "#if @GNULIB_RANDOM_R@", so that it's clearer that
you also need the random_r module to get this material right.
* m4/random_r.m4 (gl_FUNC_RANDOM_R): Move check for random.h here ...
* m4/stdlib_h.m4 (gl_STDLIB_H): ... from here.
(gl_STDLIB_H_DEFAULTS): Default HAVE_RANDOM_H to 1, and AC_SUBST it.
2011-02-08 Paul Eggert
stdlib: don't depend on stdint
* lib/stdlib.in.h: Don't include merely because
GNULIB_POSIXCHECK is defined. GNULIB_POSIXCHECK seems to
be independent of whether stdint.h is needed.
* m4/random_r.m4 (gl_FUNC_RANDOM_R): Check for struct random_data
here, instead of ...
* m4/stdlib_h.m4 (gl_STDLIB_H): ... here. Applications that need
struct random_data should be using the random_r module, not just
the stdlib module (which wouldn't make sense: what package needs
just struct random_data without also needing random_r?).
* modules/stdlib (Depends-on): Remove stdint.
getloadavg: don't depend on c-strtod, cloexec, fcntl-safer
See the thread rooted at
.
* lib/getloadavg.c: Do not include c-strtod.h, cloexec.h, or fcntl--.h.
Include only if (defined __linux__ || defined __CYGWIN__
|| defined SUNOS_5 || (defined LOAD_AVE_TYPE && ! defined
__VMS)); previously it was always included (via fcntl--.h).
(getloadavg): Do not use c_strtod. Instead, approximate it by
hand; this is good enough for load averages. Also, do not use
set_cloexec_flag; instead, use the O_CLOEXEC and F_DUPFD_CLOEXEC
flags directly if available and don't bother otherwise. (Packages
that need the extra reliability should use the modules that define
these flags on older platforms that lack them.)
* modules/getloadavg (Depends-on): Remove c-strtod, cloexec,
fcntl-safer.
2011-02-08 Jim Meyering
di-set.h, ino-map.h: add multiple-inclusion guard
Technically, the guard is required only for ino-map.h, due to its
INO_MAP_INSERT_FAILURE definition, but do both for consistency.
* lib/di-set.h: Add file-spanning #ifndef _GL_DI_SET_H.
* lib/ino-map.h: Likewise.
2011-02-06 Bruno Haible
iswblank: Ensure declaration on glibc systems.
* m4/iswblank.m4 (gl_FUNC_ISWBLANK): Require gl_USE_SYSTEM_EXTENSIONS.
* modules/iswblank (Dependencies): Add 'extensions'.
* doc/posix-functions/iswblank.texi: Document the glibc problem.
2011-02-06 Bruno Haible
New module 'iswblank'.
* lib/wctype.in.h (iswblank): Don't declare if GNULIB_ISWBLANK is 0.
* modules/iswblank: New file.
* modules/wctype-h (Files): Remove lib/iswblank.c.
(Makefile.am): Substitute GNULIB_ISWBLANK.
* m4/iswblank.m4: New file, partially extracted from m4/wctype_h.m4.
* m4/wctype_h.m4 (gl_WCTYPE_MODULE_INDICATOR): New macro.
(gl_WCTYPE_H_DEFAULTS): New macro.
(gl_WCTYPE_H): Require it. Remove iswblank related code.
* modules/iswblank-tests: New file.
* tests/test-iswblank.c: New file, extraced from tests/test-wctype-h.c.
* tests/test-wctype-h.c (main): Remove iswblank tests.
* tests/test-wctype-h-c++.cc: Guard the signature test of iswblank.
* doc/posix-functions/iswblank.texi: Mention module 'iswblank' instead
of 'wctype-h'.
* NEWS: Mention the change.
* modules/mbchar (Depends-on): Add iswblank.
2011-02-08 Bruno Haible
di-set tests: Refactor.
* tests/test-di-set.c: Include di-set.h early. Include macros.h. Drop
unnecessary includes.
(ASSERT): Remove macro.
(main): Make C90 compliant by avoiding variable declaration after
statement.
* modules/di-set-tests (Files): Add tests/macros.h.
2011-02-08 Bruno Haible
ino-map tests: Refactor.
* tests/test-ino-map.c: Include ino-map.h early. Include macros.h. Drop
unnecessary includes.
(ASSERT): Remove macro.
(main): Make C90 compliant by avoiding variable declaration after
statement.
* modules/ino-map-tests (Files): Add tests/macros.h.
2011-02-08 Jim Meyering
di-set: add "const" to a cast
* lib/di-set.c (di_set_insert): Cast hash_insert0 argument to
"(void const *)", not "(void *)". Spotted by Bruno Haible.
2011-02-06 Bruno Haible
Rename module 'wctype' to 'wctype-h'.
* modules/wctype-h: Renamed from modules/wctype.
* modules/wctype: Simplyfy to a redirection to 'wctype-h'.
* modules/wctype-h-tests: Renamed from modules/wctype-tests.
(Files, Depends-on, Makefile.am): Update.
* modules/wctype-h-c++-tests: Renamed from modules/wctype-c++-tests.
(Files, Makefile.am): Update.
* tests/test-wctype-h.c: Renamed from tests/test-wctype.c.
* tests/test-wctype-h-c++.cc: Renamed from tests/test-wctype-c++.cc.
* doc/posix-headers/wctype.texi: Update.
* doc/posix-functions/iswalnum.texi: Update.
* doc/posix-functions/iswalpha.texi: Update.
* doc/posix-functions/iswblank.texi: Update.
* doc/posix-functions/iswcntrl.texi: Update.
* doc/posix-functions/iswdigit.texi: Update.
* doc/posix-functions/iswgraph.texi: Update.
* doc/posix-functions/iswlower.texi: Update.
* doc/posix-functions/iswprint.texi: Update.
* doc/posix-functions/iswpunct.texi: Update.
* doc/posix-functions/iswspace.texi: Update.
* doc/posix-functions/iswupper.texi: Update.
* doc/posix-functions/iswxdigit.texi: Update.
* doc/posix-functions/towlower.texi: Update.
* doc/posix-functions/towupper.texi: Update.
* NEWS: Mention the change.
* modules/fnmatch (Dependencies): Add wctype-h, remove wctype.
* modules/mbchar (Dependencies): Likewise.
* modules/mbswidth (Dependencies): Likewise.
* modules/quotearg (Dependencies): Likewise.
* modules/regex (Dependencies): Likewise.
* modules/wcscasecmp (Dependencies): Likewise.
* modules/wcsncasecmp (Dependencies): Likewise.
* modules/wcwidth (Dependencies): Likewise.
2011-02-06 Bruno Haible
New module 'wcswidth'.
* modules/wcswidth: New file.
* lib/wchar.in.h (wcswidth): New declaration.
* lib/wcswidth.c: New file.
* lib/wcswidth-impl.h: New file, from libutf8 with modifications.
* m4/wcswidth.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcswidth is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSWIDTH, HAVE_WCSWIDTH,
REPLACE_WCSWIDTH.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSWIDTH,
HAVE_WCSWIDTH, REPLACE_WCSWIDTH.
* tests/test-wchar-c++.cc: Test the declaration of wcswidth.
* doc/posix-functions/wcswidth.texi: Mention the new module.
2011-02-06 Bruno Haible
New module 'wcstok'.
* modules/wcstok: New file.
* lib/wchar.in.h (wcstok): New declaration.
* lib/wcstok.c: New file.
* lib/wcstok-impl.h: New file, from libutf8 with modifications.
* m4/wcstok.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcstok is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSTOK, HAVE_WCSTOK.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSTOK, HAVE_WCSTOK.
* tests/test-wchar-c++.cc: Test the declaration of wcstok.
* doc/posix-functions/wcstok.texi: Mention the new module.
2011-02-06 Bruno Haible
New module 'wcsstr'.
* modules/wcsstr: New file.
* lib/wchar.in.h (wcsstr): New declaration.
* lib/wcsstr.c: New file.
* lib/wcsstr-impl.h: New file, from libutf8 with modifications.
* m4/wcsstr.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsstr is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSSTR, HAVE_WCSSTR.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSSTR, HAVE_WCSSTR.
* tests/test-wchar-c++.cc: Test the declaration of wcsstr.
* doc/posix-functions/wcsstr.texi: Mention the new module.
2011-02-06 Bruno Haible
New module 'wcspbrk'.
* modules/wcspbrk: New file.
* lib/wchar.in.h (wcspbrk): New declaration.
* lib/wcspbrk.c: New file.
* lib/wcspbrk-impl.h: New file, from libutf8 with modifications.
* m4/wcspbrk.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcspbrk is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSPBRK, HAVE_WCSPBRK.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSPBRK, HAVE_WCSPBRK.
* tests/test-wchar-c++.cc: Test the declaration of wcspbrk.
* doc/posix-functions/wcspbrk.texi: Mention the new module.
2011-02-06 Bruno Haible
New module 'wcsspn'.
* modules/wcsspn: New file.
* lib/wchar.in.h (wcsspn): New declaration.
* lib/wcsspn.c: New file.
* lib/wcsspn-impl.h: New file, from libutf8 with modifications.
* m4/wcsspn.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsspn is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSSPN, HAVE_WCSSPN.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSSPN, HAVE_WCSSPN.
* tests/test-wchar-c++.cc: Test the declaration of wcsspn.
* doc/posix-functions/wcsspn.texi: Mention the new module.
2011-02-06 Bruno Haible
New module 'wcscspn'.
* modules/wcscspn: New file.
* lib/wchar.in.h (wcscspn): New declaration.
* lib/wcscspn.c: New file.
* lib/wcscspn-impl.h: New file, from libutf8 with modifications.
* m4/wcscspn.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcscspn is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSCSPN, HAVE_WCSCSPN.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSCSPN, HAVE_WCSCSPN.
* tests/test-wchar-c++.cc: Test the declaration of wcscspn.
* doc/posix-functions/wcscspn.texi: Mention the new module.
2011-02-06 Bruno Haible
New module 'wcsrchr'.
* modules/wcsrchr: New file.
* lib/wchar.in.h (wcsrchr): New declaration.
* lib/wcsrchr.c: New file.
* lib/wcsrchr-impl.h: New file, from libutf8 with modifications.
* m4/wcsrchr.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsrchr is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSRCHR, HAVE_WCSRCHR.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSRCHR, HAVE_WCSRCHR.
* tests/test-wchar-c++.cc: Test the declaration of wcsrchr.
* doc/posix-functions/wcsrchr.texi: Mention the new module.
2011-02-06 Bruno Haible
New module 'wcschr'.
* modules/wcschr: New file.
* lib/wchar.in.h (wcschr): New declaration.
* lib/wcschr.c: New file.
* lib/wcschr-impl.h: New file, from libutf8 with modifications.
* m4/wcschr.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcschr is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSCHR, HAVE_WCSCHR.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSCHR, HAVE_WCSCHR.
* tests/test-wchar-c++.cc: Test the declaration of wcschr.
* doc/posix-functions/wcschr.texi: Mention the new module.
2011-02-06 Bruno Haible
New module 'wcsdup'.
* modules/wcsdup: New file.
* lib/wchar.in.h (wcsdup): New declaration.
* lib/wcsdup.c: New file.
* lib/wcsdup-impl.h: New file, from libutf8 with modifications.
* m4/wcsdup.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsdup is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSDUP, HAVE_WCSDUP.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSDUP, HAVE_WCSDUP.
* tests/test-wchar-c++.cc: Test the declaration of wcsdup.
* doc/posix-functions/wcsdup.texi: Mention the new module.
2011-02-06 Bruno Haible
New module 'wcsxfrm'.
* modules/wcsxfrm: New file.
* lib/wchar.in.h (wcsxfrm): New declaration.
* lib/wcsxfrm.c: New file.
* lib/wcsxfrm-impl.h: New file.
* m4/wcsxfrm.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsxfrm is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSXFRM, HAVE_WCSXFRM.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSXFRM, HAVE_WCSXFRM.
* tests/test-wchar-c++.cc: Test the declaration of wcsxfrm.
* doc/posix-functions/wcsxfrm.texi: Mention the new module.
2011-02-06 Bruno Haible
New module 'wcscoll'.
* modules/wcscoll: New file.
* lib/wchar.in.h (wcscoll): New declaration.
* lib/wcscoll.c: New file.
* lib/wcscoll-impl.h: New file.
* m4/wcscoll.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcscoll is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSCOLL, HAVE_WCSCOLL.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSCOLL, HAVE_WCSCOLL.
* tests/test-wchar-c++.cc: Test the declaration of wcscoll.
* doc/posix-functions/wcscoll.texi: Mention the new module.
2011-02-06 Bruno Haible
New module 'wcsncasecmp'.
* modules/wcsncasecmp: New file.
* lib/wchar.in.h (wcsncasecmp): New declaration.
* lib/wcsncasecmp.c: New file.
* lib/wcsncasecmp-impl.h: New file, from libutf8 with modifications.
* m4/wcsncasecmp.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsncasecmp is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNCASECMP, HAVE_WCSNCASECMP.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSNCASECMP,
HAVE_WCSNCASECMP.
* tests/test-wchar-c++.cc: Test the declaration of wcsncasecmp.
* doc/posix-functions/wcsncasecmp.texi: Mention the new module.
2011-02-06 Bruno Haible
New module 'wcscasecmp'.
* modules/wcscasecmp: New file.
* lib/wchar.in.h (wcscasecmp): New declaration.
* lib/wcscasecmp.c: New file.
* lib/wcscasecmp-impl.h: New file, from libutf8 with modifications.
* m4/wcscasecmp.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcscasecmp is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSCASECMP, HAVE_WCSCASECMP.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSCASECMP,
HAVE_WCSCASECMP.
* tests/test-wchar-c++.cc: Test the declaration of wcscasecmp.
* doc/posix-functions/wcscasecmp.texi: Mention the new module.
2011-02-05 Bruno Haible
New module 'wcsncmp'.
* modules/wcsncmp: New file.
* lib/wchar.in.h (wcsncmp): New declaration.
* lib/wcsncmp.c: New file.
* lib/wcsncmp-impl.h: New file, from libutf8 with modifications.
* m4/wcsncmp.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsncmp is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNCMP, HAVE_WCSNCMP.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSNCMP, HAVE_WCSNCMP.
* tests/test-wchar-c++.cc: Test the declaration of wcsncmp.
* doc/posix-functions/wcsncmp.texi: Mention the new module.
2011-02-05 Bruno Haible
New module 'wcscmp'.
* modules/wcscmp: New file.
* lib/wchar.in.h (wcscmp): New declaration.
* lib/wcscmp.c: New file.
* lib/wcscmp-impl.h: New file, from libutf8 with modifications.
* m4/wcscmp.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcscmp is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSCMP, HAVE_WCSCMP.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSCMP, HAVE_WCSCMP.
* tests/test-wchar-c++.cc: Test the declaration of wcscmp.
* doc/posix-functions/wcscmp.texi: Mention the new module.
2011-02-05 Bruno Haible
New module 'wcsncat'.
* modules/wcsncat: New file.
* lib/wchar.in.h (wcsncat): New declaration.
* lib/wcsncat.c: New file.
* lib/wcsncat-impl.h: New file, from libutf8 with modifications.
* m4/wcsncat.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsncat is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNCAT, HAVE_WCSNCAT.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSNCAT, HAVE_WCSNCAT.
* tests/test-wchar-c++.cc: Test the declaration of wcsncat.
* doc/posix-functions/wcsncat.texi: Mention the new module.
2011-02-05 Bruno Haible
New module 'wcscat'.
* modules/wcscat: New file.
* lib/wchar.in.h (wcscat): New declaration.
* lib/wcscat.c: New file.
* lib/wcscat-impl.h: New file, from libutf8 with modifications.
* m4/wcscat.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcscat is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSCAT, HAVE_WCSCAT.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSCAT, HAVE_WCSCAT.
* tests/test-wchar-c++.cc: Test the declaration of wcscat.
* doc/posix-functions/wcscat.texi: Mention the new module.
2011-02-05 Bruno Haible
New module 'wcpncpy'.
* modules/wcpncpy: New file.
* lib/wchar.in.h (wcpncpy): New declaration.
* lib/wcpncpy.c: New file.
* lib/wcpncpy-impl.h: New file, from libutf8 with modifications.
* m4/wcpncpy.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcpncpy is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCPNCPY, HAVE_WCPNCPY.
* modules/wchar (Makefile.am): Substitute GNULIB_WCPNCPY, HAVE_WCPNCPY.
* tests/test-wchar-c++.cc: Test the declaration of wcpncpy.
* doc/posix-functions/wcpncpy.texi: Mention the new module.
2011-02-05 Bruno Haible
New module 'wcsncpy'.
* modules/wcsncpy: New file.
* lib/wchar.in.h (wcsncpy): New declaration.
* lib/wcsncpy.c: New file.
* lib/wcsncpy-impl.h: New file, from libutf8 with modifications.
* m4/wcsncpy.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsncpy is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNCPY, HAVE_WCSNCPY.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSNCPY, HAVE_WCSNCPY.
* tests/test-wchar-c++.cc: Test the declaration of wcsncpy.
* doc/posix-functions/wcsncpy.texi: Mention the new module.
2011-02-05 Bruno Haible
New module 'wcpcpy'.
* modules/wcpcpy: New file.
* lib/wchar.in.h (wcpcpy): New declaration.
* lib/wcpcpy.c: New file.
* lib/wcpcpy-impl.h: New file, from libutf8 with modifications.
* m4/wcpcpy.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcpcpy is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCPCPY, HAVE_WCPCPY.
* modules/wchar (Makefile.am): Substitute GNULIB_WCPCPY, HAVE_WCPCPY.
* tests/test-wchar-c++.cc: Test the declaration of wcpcpy.
* doc/posix-functions/wcpcpy.texi: Mention the new module.
2011-02-05 Bruno Haible
New module 'wcscpy'.
* modules/wcscpy: New file.
* lib/wchar.in.h (wcscpy): New declaration.
* lib/wcscpy.c: New file.
* lib/wcscpy-impl.h: New file, from libutf8 with modifications.
* m4/wcscpy.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcscpy is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSCPY, HAVE_WCSCPY.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSCPY, HAVE_WCSCPY.
* tests/test-wchar-c++.cc: Test the declaration of wcscpy.
* doc/posix-functions/wcscpy.texi: Mention the new module.
2011-02-05 Bruno Haible
New module 'wcsnlen'.
* modules/wcsnlen: New file.
* lib/wchar.in.h (wcsnlen): New declaration.
* lib/wcsnlen.c: New file.
* lib/wcsnlen-impl.h: New file, from libutf8 with modifications.
* m4/wcsnlen.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcsnlen is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNLEN, HAVE_WCSNLEN.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSNLEN, HAVE_WCSNLEN.
* tests/test-wchar-c++.cc: Test the declaration of wcsnlen.
* doc/posix-functions/wcsnlen.texi: Mention the new module.
2011-02-05 Bruno Haible
New module 'wcslen'.
* modules/wcslen: New file.
* lib/wchar.in.h (wcslen): New declaration.
* lib/wcslen.c: New file.
* lib/wcslen-impl.h: New file, from libutf8 with modifications.
* m4/wcslen.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wcslen is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSLEN, HAVE_WCSLEN.
* modules/wchar (Makefile.am): Substitute GNULIB_WCSLEN, HAVE_WCSLEN.
* tests/test-wchar-c++.cc: Test the declaration of wcslen.
* doc/posix-functions/wcslen.texi: Mention the new module.
2011-02-05 Bruno Haible
New module 'wmemset'.
* modules/wmemset: New file.
* lib/wchar.in.h (wmemset): New declaration.
* lib/wmemset.c: New file.
* lib/wmemset-impl.h: New file, from libutf8 with modifications.
* m4/wmemset.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wmemset is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WMEMSET, HAVE_WMEMSET.
* modules/wchar (Makefile.am): Substitute GNULIB_WMEMSET, HAVE_WMEMSET.
* tests/test-wchar-c++.cc: Test the declaration of wmemset.
* doc/posix-functions/wmemset.texi: Mention the new module.
2011-02-05 Bruno Haible
New module 'wmemmove'.
* modules/wmemmove: New file.
* lib/wchar.in.h (wmemmove): New declaration.
* lib/wmemmove.c: New file.
* lib/wmemmove-impl.h: New file, from libutf8 with modifications.
* m4/wmemmove.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wmemmove is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WMEMMOVE, HAVE_WMEMMOVE.
* modules/wchar (Makefile.am): Substitute GNULIB_WMEMMOVE,
HAVE_WMEMMOVE.
* tests/test-wchar-c++.cc: Test the declaration of wmemmove.
* doc/posix-functions/wmemmove.texi: Mention the new module.
2011-02-05 Bruno Haible
New module 'wmemcpy'.
* modules/wmemcpy: New file.
* lib/wchar.in.h (wmemcpy): New declaration.
* lib/wmemcpy.c: New file.
* lib/wmemcpy-impl.h: New file, from libutf8 with modifications.
* m4/wmemcpy.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wmemcpy is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WMEMCPY, HAVE_WMEMCPY.
* modules/wchar (Makefile.am): Substitute GNULIB_WMEMCPY, HAVE_WMEMCPY.
* tests/test-wchar-c++.cc: Test the declaration of wmemcpy.
* doc/posix-functions/wmemcpy.texi: Mention the new module.
2011-02-05 Bruno Haible
New module 'wmemcmp'.
* modules/wmemcmp: New file.
* lib/wchar.in.h (wmemcmp): New declaration.
* lib/wmemcmp.c: New file.
* lib/wmemcmp-impl.h: New file, from libutf8 with modifications.
* m4/wmemcmp.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wmemcmp is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WMEMCMP, HAVE_WMEMCMP.
* modules/wchar (Makefile.am): Substitute GNULIB_WMEMCMP, HAVE_WMEMCMP.
* tests/test-wchar-c++.cc: Test the declaration of wmemcmp.
* doc/posix-functions/wmemcmp.texi: Mention the new module.
2011-02-07 Jim Meyering
di-set, ino-map: new modules, from coreutils
* lib/di-set.c: New file.
* lib/di-set.h: Likewise.
* lib/ino-map.c: Likewise.
* lib/ino-map.h: Likewise.
* modules/di-set: Likewise.
* modules/di-set-tests: Likewise.
* modules/ino-map: Likewise.
* modules/ino-map-tests: Likewise.
* tests/test-di-set.c: Likewise.
* tests/test-ino-map.c: Likewise.
2011-02-06 Paul Eggert
getloadavg: merge minor changes from Emacs
* lib/getloadavg.c (getloadavg_initialized): More-accurate comment.
(getloadavg): Use memset, not bzero.
2008-07-25 Chong Yidong
* lib/getloadavg.c (nl): Rename to name_list to avoid ncurses.h
clash (bug#86).
2010-11-14 Bruno Haible
Allow multiple gnulib generated replacements to coexist.
* lib/getopt.in.h (struct option): Avoid identical redefinition.
* lib/inttypes.in.h (imaxdiv_t): Likewise.
* lib/langinfo.in.h (nl_item): Likewise.
* lib/math.in.h (_NaN, NAN): Likewise.
* lib/netdb.in.h (struct addrinfo): Likewise.
* lib/poll.in.h (struct pollfd, nfds_t): Likewise.
* lib/pthread.in.h (pthread_t, pthread_attr_t, pthread_barrier_t,
pthread_barrierattr_t, pthread_cond_t, pthread_condattr_t,
pthread_key_t, pthread_mutex_t, pthread_mutexattr_t, pthread_once_t,
pthread_rwlock_t, pthread_rwlockattr_t, pthread_cond_destroy,
pthread_cond_init, pthread_cond_signal, pthread_cond_wait,
pthread_create, pthread_exit, pthread_join, pthread_mutexattr_destroy,
pthread_mutexattr_init, pthread_mutexattr_settype,
pthread_mutex_destroy, pthread_mutex_init, pthread_mutex_lock,
pthread_mutex_trylock, pthread_mutex_unlock, pthread_spinlock_t,
pthread_spin_init, pthread_spin_destroy, pthread_spin_lock,
pthread_spin_trylock, pthread_spin_unlock): Likewise.
* lib/sched.in.h (struct sched_param): Likewise.
* lib/se-selinux.in.h (security_class_t, security_context_t,
is_selinux_enabled, getcon, freecon, getfscreatecon, setfscreatecon,
matchpathcon, getfilecon, lgetfilecon, fgetfilecon, setfilecon,
lsetfilecon, fsetfilecon, security_check_context,
security_check_context_raw, setexeccon, matchpathcon_init_prefix):
Likewise.
* lib/search.in.h (VISIT, _gl_search_compar_fn, _gl_search_action_fn):
Likewise.
* lib/signal.in.h (sig_atomic_t, sigset_t, verify_NSIG_constraint,
_gl_function_taking_int_returning_void_t, union sigval,
struct siginfo_t, siginfo_t, struct sigaction): Likewise.
* lib/spawn.in.h (posix_spawnattr_t, posix_spawn_file_actions_t,
verify_POSIX_SPAWN_USEVFORK_no_overlap): Likewise.
* lib/stdint.in.h (gl_int8_t, gl_uint8_t, gl_int16_t, gl_uint16_t,
gl_int32_t, gl_uint32_t, gl_int64_t, gl_uint64_t, int_least8_t,
uint_least8_t, int_least16_t, uint_least16_t, int_least32_t,
uint_least32_t, int_least64_t, uint_least64_t, gl_int_fast8_t,
gl_uint_fast8_t, gl_int_fast16_t, gl_uint_fast16_t, gl_int_fast32_t,
gl_uint_fast32_t, int_fast64_t, uint_fast64_t, gl_intptr_t,
gl_uintptr_t, intmax_t, uintmax_t, _verify_intmax_size): Likewise.
* lib/stdio.in.h (rpl_fseek, rpl_ftell): Likewise.
* lib/sys_socket.in.h (sa_family_t, struct sockaddr_storage,
socklen_t, rpl_fd_isset): Likewise.
* lib/sys_stat.in.h (rpl_mkdir): Likewise.
* lib/sys_time.in.h (struct timeval): Likewise.
* lib/sys_times.in.h (struct tms): Likewise.
* lib/sys_utsname.in.h (struct utsname):
* lib/time.in.h (struct timespec, __time_t_must_be_integral): Likewise.
* lib/unistd.in.h (getpagesize): Likewise.
* lib/wchar.in.h (mbstate_t): Likewise.
* lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit,
towlower, towupper): Likewise.
Reported by Sam Steingold .
2011-02-05 Eric Blake
unsetenv: work around Haiku issues
* m4/setenv.m4 (gl_FUNC_UNSETENV): Also detect Haiku issue.
* doc/posix-functions/unsetenv.texi (unsetenv): Document it.
2010-12-30 Bruce Korb
libposix: avoid calling error() within libposix
* lib/openat-die.c: remove error module stuff when GNULIB_LIBPOSIX
is defined.
2011-02-05 Eric Blake
strerror_r-posix: port to cygwin
* lib/strerror_r.c (strerror_r) [__CYGWIN__]: Add cygwin
implementation.
* m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Adjust comment.
* tests/test-strerror_r.c (main): Fix test.
* doc/posix-functions/strerror_r.texi (strerror_r): Document the
issue.
2011-02-05 Bruno Haible
New module 'wmemchr'.
* modules/wmemchr: New file.
* lib/wchar.in.h (wmemchr): New declaration.
* lib/wmemchr.c: New file.
* lib/wmemchr-impl.h: New file, from libutf8 with modifications.
* m4/wmemchr.m4: New file.
* m4/wchar_h.m4 (gl_WCHAR_H): Test whether wmemchr is declared.
(gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WMEMCHR, HAVE_WMEMCHR.
* modules/wchar (Makefile.am): Substitute GNULIB_WMEMCHR, HAVE_WMEMCHR.
* tests/test-wchar-c++.cc: Test the declaration of wmemchr.
* doc/posix-functions/wmemchr.texi: Mention the new module.
2011-02-04 Eric Blake
fdopendir: detect FreeBSD bug
* m4/fdopendir.m4 (gl_FUNC_FDOPENDIR): Detect bug.
* doc/posix-functions/fdopendir.texi (fdopendir): Document it.
2011-02-04 Paul Eggert
stdbool: do not define HAVE_STDBOOL_H
* m4/stdbool.m4 (AC_CHECK_HEADER_STDBOOL): Renamed from
AC_HEADER_STDBOOL. All uses changed. Do not define
HAVE_STDBOOL_H, as gnulib does not need this. This change is
imported from the latest Autoconf git. It was motivated by Emacs,
which uses gnulib but does not need HAVE_STDBOOL_H.
2011-02-04 Bruno Haible
wcsnrtombs: Prepare for new module wwcsnrtombs.
* lib/wcsnrtombs-impl.h: New file, extracted from lib/wcsnrtombs.c.
* lib/wcsnrtombs.c: Include it.
* modules/wcsnrtombs (Files): Add lib/wcsnrtombs-impl.h.
wcsrtombs: Prepare for new module wwcsrtombs.
* lib/wcsrtombs-impl.h: New file, extracted from lib/wcsrtombs.c.
* lib/wcsrtombs.c: Include it.
* modules/wcsrtombs (Files): Add lib/wcsrtombs-impl.h.
mbsnrtowcs: Prepare for new module mbsnrtowwcs.
* lib/mbsnrtowcs-impl.h: New file, extracted from lib/mbsnrtowcs.c.
* lib/mbsnrtowcs.c: Include it.
* modules/mbsnrtowcs (Files): Add lib/mbsnrtowcs-impl.h.
mbsrtowcs: Prepare for new module mbsrtowwcs.
* lib/mbsrtowcs-impl.h: New file, extracted from lib/mbsrtowcs.c.
* lib/mbsrtowcs.c: Include it.
* modules/mbsrtowcs (Files): Add lib/mbsrtowcs-impl.h.
2011-02-04 Bruno Haible
vasnprintf: Reduce use of malloc for small format strings.
* lib/printf-args.h (N_DIRECT_ALLOC_ARGUMENTS): New macro.
(arguments): Add room for the first 7 arguments.
* lib/printf-parse.h (N_DIRECT_ALLOC_DIRECTIVES): New macro.
(char_directives, u8_directives, u16_directives, u32_directives): Add
room for the first 7 directives.
* lib/printf-parse.c: Include .
(PRINTF_PARSE): Change memory handling code so that it uses the first
7 preallocated elements in an 'arguments' or 'DIRECTIVES' struct.
* lib/vasnprintf.c (VASNPRINTF): Update memory handling code.
Reported by Pádraig Brady .
2011-01-31 Eric Blake
dup2: work around Haiku bug
* m4/dup2.m4 (gl_FUNC_DUP2): Test for bug.
* lib/dup2.c (rpl_dup2) [!WIN32]: Add workaround.
* doc/posix-functions/dup2.texi (dup2): Document the bug.
* tests/test-dup2.c (main): Enhance test.
2011-01-31 Simon Josefsson
doc: off_t is not available in eglibc 2.11.2 stdio.h.
* doc/posix-headers/stdio.texi (stdio.h): Mention that off_t isn't
declared by eglibc 2.11.2.
* lib/stdio.in.h: Likewise.
2011-01-31 Eric Blake
ignore-value: add missing test dependency
* tests/test-ignore-value.c: Revert previous change; stdio.h
provides off_t.
* modules/ignore-value-tests (Depends-on): Add missing dependency.
2011-01-30 Paul Eggert
mktime: clarify long_int width checking
* lib/mktime.c (long_int_is_wide_enough): Move this assertion to
the top level, to make it clearer that the assumption about
long_int width is being checked. See
.
2011-01-30 Simon Josefsson
ignore-value: Fix self-test.
* tests/test-ignore-value.c: Include sys/types.h for off_t.
2011-01-29 Paul Eggert
TYPE_MAXIMUM: avoid theoretically undefined behavior
* lib/intprops.h (TYPE_MINIMUM, TYPE_MAXIMUM): Do not shift a
negative number, which the C Standard says has undefined behavior.
In practice this is not a problem, but might as well do it by the book.
Reported by Rich Felker and Eric Blake; see
.
* lib/strtol.c (TYPE_MINIMUM, TYPE_MAXIMUM): Likewise.
* m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
* m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
* m4/parse-datetime.m4 (gl_PARSE_DATETIME): Likewise.
* m4/stdint.m4 (gl_STDINT_H): Likewise.
* lib/mktime.c (TYPE_MAXIMUM): Redo slightly to match the others.
mktime: #undef mktime before #defining it
* lib/mktime.c (mktime) [DEBUG]: #undef mktime before #defining it.
mktime: systematically normalize tm_isdst comparisons
* lib/mktime.c (isdst_differ): New function.
(__mktime_internal): Use it systematically for all isdst comparisons.
This completes the fix for libc BZ #6723, and removes the need for
normalizing tm_isdst. See
(not_equal_tm) [DEBUG]: Use isdst_differ here, too.
mktime: fix some integer overflow issues and sidestep the rest
This was prompted by a bug report by Benjamin Lindner for MinGW
.
His bug is due to signed integer overflow (0 - INT_MIN), and I
I scanned through mktime.c looking for other integer overflow
problems, fixing all the bugs I found.
Although the C Standard says the resulting code is still not safe
in the presence of integer overflow, in practice it should be good
enough for all real-world two's-complement implementations, except
for debugging environments that deliberately trap on integer
overflow (e.g., gcc -ftrapv).
* lib/mktime.c (WRAPV): New macro.
(SHR): Also check that long_int and time_t shift right in the
usual way, before using the fast-but-unportable method.
(TYPE_ONES_COMPLEMENT, TYPE_SIGNED_MAGNITUDE): Remove, no longer
used. The code already assumed two's complement, so there's
no need to test for alternatives. All uses removed.
(TYPE_MAXIMUM): Don't rely here on overflow behavior not defined by
the C standard. Problem reported by Rich Felker in
.
(twos_complement_arithmetic): Also check long_int and time_t.
(time_t_avg, time_t_add_ok, time_t_int_add_ok): New functions.
(guess_time_tm, ranged_convert, __mktime_internal): Use them.
(__mktime_internal): Avoid integer overflow with unary subtraction
in two instances where -1 - X is an adequate replacement for -X,
since the calculations are approximate.
2011-01-29 Eric Blake
mktime: avoid infinite loop
* m4/mktime.m4 (AC_FUNC_MKTIME): Avoid overflow on possibly-signed
type; behavior is still undefined but portable to all known targets.
Reported by Rich Felker.
2011-01-29 Simon Josefsson
rename, unlink, same-inode: Relicense.
* modules/rename (License): Relax from LGPLv3+ to LGPLv2+.
* modules/unlink (License): Likewise.
* modules/same-inode (License): Likewise.
2011-01-28 Paul Eggert
mktime: avoid problems on NetBSD 5 / i386
* lib/mktime.c (long_int): New type. This works around a problem
on NetBSD 5 / i386, where 'long int' and 'int' are both 32 bits
but time_t is 64 bits, and where I expect the existing code is
wrong in some cases.
(leapyear, ydhms_diff, guess_time_tm, __mktime_internal): Use it.
(ydhms_diff): Bring back the compile-time check for wide-enough
year and yday.
mktime: fix misspelling in comment
* lib/mktime.c (__mktime_internal): Fix misspelling in comment.
This merges all recent glibc changes of importance.
2011-01-28 Ralf Wildenhues
move-if-change: cope with concurrent mv of identical file.
* build-aux/move-if-change (CMPPROG): Accept environment
variable as an override for `cmp'.
(usage): Document CMPPROG.
Adjust comparison to drop stdout. Cope with failure of mv if
the target file exists and is identical to the source, for
parallel builds.
Report from H.J. Lu against binutils in PR binutils/12283.
2011-01-28 Bruce Korb
* users.txt: Mention sharutils.
2011-01-28 Simon Josefsson
* users.txt: Mention OATH Toolkit.
2011-01-27 Bruno Haible
Prepare for supporting FreeBSD 10.
* build-aux/config.libpath: Remove handling of freebsd1*.
2011-01-27 Gerald Pfeifer (tiny change)
Prepare for supporting FreeBSD 10.
* build-aux/config.rpath: Remove handling of freebsd1* which soon would
match FreeBSD 10.0.
2011-01-27 Bruno Haible
vma-iter, get-rusage-as: Add OpenBSD support.
* modules/vma-iter (configure.ac): Test for mquery.
* lib/vma-iter.h (VMA_ITERATE_SUPPORTED): Define also on OpenBSD.
* lib/vma-iter.c: Include .
(vma_iterate): Add an implementation based on mquery().
* lib/resource-ext.h (get_rusage_as): Update comments.
* lib/get-rusage-as.c: Likewise.
* lib/get-rusage-data.c: Likewise.
2011-01-26 Karl Berry
* doc/Makefile (lang_env, makeinfo_prog, manual_opts): new
variables to make it easier to override the makeinfo program used.
2011-01-26 Eric Blake
fcntl: work around Haiku F_DUPFD bugs
* m4/fcntl.m4 (gl_FUNC_FCNTL): Also catch Haiku errno bug.
* lib/fcntl.c (rpl_fcntl) [F_DUPFD]: Work around Haiku losing
cloexec bit on duplication.
* doc/posix-functions/fcntl.texi (fcntl): Document the bug.
2011-01-26 Bruno Haible
Enable memory leak tests on AIX.
* tests/test-dprintf-posix2.c (main): Don't skip the test on AIX.
* tests/test-fprintf-posix3.c (main): Likewise.
2011-01-26 Bruno Haible
Tests for module 'get-rusage-data'.
* modules/get-rusage-data-tests: New file.
* tests/test-get-rusage-data.c: New file.
New module 'get-rusage-data'.
* lib/resource-ext.h (get_rusage_data): New declaration.
* lib/get-rusage-data.c: New file.
* modules/get-rusage-data: New file.
2011-01-25 Bruno Haible
get-rusage-as: Allow for easier testing.
* lib/resource-ext.h (get_rusage_as): Add comment.
* lib/get-rusage-as.c (get_rusage_as_via_setrlimit): Define always.
(main): New function for interactive testing.
2011-01-25 Bruno Haible
vma-iter: Treat Haiku like BeOS.
* lib/vma-iter.h (VMA_ITERATE_SUPPORTED): Define on Haiku as well.
* lib/vma-iter.c (vma_iterate) [Haiku]: Use the BeOS API.
2011-01-25 Eric Blake
c-stack: fix regression on cygwin when libsigsegv is present
* lib/c-stack.c (die): Don't flatten error if sigsegv is present.
2011-01-24 Bruno Haible
vma-iter: Avoid empty intervals.
* lib/vma-iter.c (vma_iterate) [IRIX, OSF/1]: Don't call the callback
on an empty interval.
2011-01-24 Jim Meyering
u64: remove unnecessary #include
* lib/u64.h: Don't include . It was not used.
2011-01-23 Paul Eggert
Allow the user to avoid the GNULIB_TEST_* macros.
* m4/gnulib-common.m4 (gl_ASSERT_NO_GNULIB_POSIXCHECK): New macro.
2011-01-23 Bruno Haible
New module 'vma-iter'.
* lib/vma-iter.h: New file.
* lib/vma-iter.c: New file, based on lib/get-rusage-as.c.
* modules/vma-iter: New file.
* lib/get-rusage-as.c: Include vma-iter.h. Don't include system headers
for get_rusage_as_via_iterator.
(vma_iterate_callback): New function.
(get_rusage_as_via_iterator): Rewritten to use vma_iterate.
* modules/get-rusage-as (Depends-on): Add vma-iter.
2011-01-23 Bruno Haible
uninorm: Tweak includes.
* lib/uninorm/normalize-internal.h: Don't include .
Reported by Jim Meyering.
2011-01-23 Bruno Haible
get-rusage-as: Improve on NetBSD.
* lib/get-rusage-as.c (get_rusage_as_via_iterator): On NetBSD, use
/proc, like on FreeBSD.
2011-01-23 Jim Meyering
xreadlink.h: remove unnecessary #include
* lib/xreadlink.h: Don't include . It was not used.
maint.mk: add syntax-check rule: detect unnecessary #include
* top/maint.mk (sc_prohibit_stddef_without_use): New rule.
2011-01-23 Bruno Haible
get-rusage-as: Fix bug.
* lib/get-rusage-as.c (get_rusage_as_via_setrlimit): Restore the
original limit when aborting the first loop.
2011-01-23 Bruno Haible
wctype: Ensure valid C syntax.
* m4/wctype_h.m4 (gl_WCTYPE_H): Invoke gl_CHECK_NEXT_HEADERS
unconditionally, instead of gl_NEXT_HEADERS conditionally.
2011-01-21 Paul Eggert
getopt: omit HAVE_OPTRESET, HAVE_GETOPT_CLIP from config.h
* m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not put the
symbols HAVE_OPTRESET and HAVE_GETOPT_CLIP into config.h,
as they are needed only for configure's test case.
This removes two unnecessary symbols from config.h.
gl_CHECK_NEXT_HEADERS implies AC_CHECK_HEADERS_ONCE
* m4/include_next.m4 (gl_CHECK_HEXT_HEADERS): Document this.
* m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Don't bother to invoke
AC_CHECK_HEADERS_ONCE on a header that we also invoke
gl_CHECK_NEXT_HEADERS on, since the latter invokes the former.
* m4/netdb_h.m4 (gl_HEADER_NETDB): Likewise.
* m4/pthread.m4 (gl_PTHREAD_CHECK): Likewise.
* m4/sched_h.m4 (gl_SCHED_H): Likewise.
* m4/search_h.m4 (gl_SEARCH_H): Likewise.
* m4/spawn_h.m4 (gl_SPAWN_H): Likewise.
* m4/sys_file_h.m4 (gl_HEADER_SYS_FILE_H): Likewise.
* m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
* m4/sys_times_h.m4 (gl_SYS_TIMES_H): Likewise.
* m4/sys_utsname_h.m4 (gl_SYS_UTSNAME_H): Likewise.
* m4/termios_h.m4 (gl_TERMIOS_H): Likewise.
* m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
* m4/wchar_h.m4 (gl_WCHAR_H): Likewise.
* m4/wctype_h.m4 (gl_WCTYPE_H): Likewise.
2011-01-21 Eric Blake
maintainer-makefile: work with older git for submodule check
* top/maint.mk (public-submodule-commit): Rewrite to avoid
merge-base --independent, which Ubuntu 10.04 git 1.7.0.4 lacks.
Reported by Matthias Bolte.
bootstrap: minor portability fixes
* build-aux/bootstrap (me): Use $me instead of $0 in functions.
(usage): Omit leading capital and trailing . on help phrases, per
GNU Coding Standards.
(check_versions, top level): Prefix messages with script name.
2011-01-21 Benjamin Lindner (tiny change)
bootstrap: support --no-git option
* build-aux/bootstrap: Add --no-git option, to be used when
--gnulib-srcdir points to the exact desired checkout.
2011-01-21 Eric Blake
strerror_r-posix: work with glibc 2.13
* lib/strerror_r.c (strerror_r): Fix return type.
2011-01-21 Pádraig Brady
Bruno Haible
uN_strstr: New unit tests.
* modules/unistr/u8-strstr-tests: New file.
* modules/unistr/u16-strstr-tests: New file.
* modules/unistr/u32-strstr-tests: New file.
* tests/unistr/test-u-strstr.h: New file, based on tests/test-strstr.c.
* tests/unistr/test-u8-strstr.c: New file.
* tests/unistr/test-u16-strstr.c: New file.
* tests/unistr/test-u32-strstr.c: New file.
2011-01-21 Pádraig Brady
Bruno Haible
Make uN_strstr functions O(n) worst-case.
* lib/unistr/u-strstr.h (FUNC): In the 8-bit case, use strstr. In the
16-bit and 32-bit unit cases, use the unibyte algorithm from
lib/mbsstr.c.
* lib/unistr/u8-strstr.c: Include .
(UNIT_IS_UINT8_T): New macro.
* lib/unistr/u16-strstr.c: Include malloca.h and str-kmp.h.
(U_STRLEN, U_STRNLEN): New macros.
* lib/unistr/u32-strstr.c: Include malloca.h and str-kmp.h.
(U_STRLEN, U_STRNLEN): New macros.
* modules/unistr/u8-strstr (Depends-on): Add strstr.
(configure.ac): Update required libunistring version.
* modules/unistr/u16-strstr (Files): Add lib/str-kmp.h.
(Depends-on): Add unistr/u16-strlen, unistr/u16-strnlen, stdbool,
malloca.
(configure.ac): Update required libunistring version.
* modules/unistr/u32-strstr (Files): Add lib/str-kmp.h.
(Depends-on): Add unistr/u32-strlen, unistr/u32-strnlen, stdbool,
malloca.
(configure.ac): Update required libunistring version.
2011-01-21 Pádraig Brady
Bruno Haible
Prepare for faster uN_strstr functions.
* lib/str-kmp.h: Support definable UNITs.
(knuth_morris_pratt): Renamed from knuth_morris_pratt_unibyte. Add
needle_len argument.
* lib/mbsstr.c (mbsstr): Adjust for the changed str-kmp.h.
* lib/mbscasestr.c (mbscasestr): Likewise.
2011-01-21 Pádraig Brady
malloca-tests: make faster by unsetting MALLOC_PERTURB_
* tests/test-malloca.c (main): Unset the environment variable
to greatly speed up the test.
* tests/init.sh: Don't say that MALLOC_PERTURB_ is cheap.
* modules/malloca-tests: Depend on unsetenv.
2011-01-21 Pádraig Brady
ignore-value: remove stdint dependency
* lib/ignore-value.h: Remove
* modules/ignore-value: Remove stdint dependency.
2011-01-21 Jim Meyering
maint.mk: adjust variable name to be consistent with other gl_ vars
* top/maint.mk (gl_public_submodule_commit): Rename the variable
to be lower case.
2011-01-20 Jim Meyering
maint.mk: make "check" depend on public-submodule-commit by default
* top/maint.mk (GL_PUBLIC_SUBMODULE_COMMIT): New overridable variable.
2011-01-20 Bruno Haible
mbfile, mbiter: Complete change from 2008-12-21.
* m4/mbfile.m4 (gl_MBFILE): Don't require AC_FUNC_MBRTOWC.
* m4/mbiter.m4 (gl_MBITER): Likewise.
2011-01-20 Jim Meyering
init.sh: insert space between each function name and "()"
* tests/init.sh: Make it a little easier to see that a function's
name is "warn_", and not "warn" when looking at the first part of
its definition: "warn_ ()". Suggested by Ralf Wildenhues.
2011-01-20 Jim Meyering
mountlist: clean up code formatting
* lib/mountlist.c (read_file_system_list): Split a long line,
correct bracing style, use NULL in place of "(struct statfs *)0",
don't parenthesize return value, add spaces around "=" and after
";-in-for-stmt".
2011-01-14 Markus Duft
mountlist: add support for Interix
* lib/mountlist.c (read_file_system_list) [MOUNTED_INTERIX_STATVFS]:
Apply statvfs to all entries of /dev/fs.
* m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for statvfs,
and if found, AC_DEFINE MOUNTED_INTERIX_STATVFS.
2011-01-20 Jim Meyering
maint.mk: improve the public-submodule-commit rule
* top/maint.mk (public-submodule-commit): Prefix with $(AM_V_GEN),
to suppress printing of its commands... unless V=1.
Add git submodule's --quiet option to suppress printing of e.g.,
"Entering gnulib" output.
"cd" into $(srcdir) before running git submodule.
2011-01-20 Bruno Haible
include_next: Fix bug introduced on 2011-01-18.
* m4/include_next.m4 (gl_NEXT_HEADERS_INTERNAL): New macro, extracted
from gl_CHECK_NEXT_HEADERS and gl_NEXT_HEADERS. Omit test of
ac_cv_header_... variable if the second argument is not 'check'.
(gl_CHECK_NEXT_HEADERS, gl_NEXT_HEADERS): Invoke
gl_NEXT_HEADERS_INTERNAL.
2011-01-20 Bruno Haible
Allow the user to avoid the GNULIB_TEST_* macros.
* m4/gnulib-common.m4 (gl_ASSERT_NO_GNULIB_TESTS): New macro.
Suggested by Paul Eggert.
2011-01-14 Jim Meyering
bootstrap: avoid failure when there is no .gitmodules file
": ${gnulib_path=gnulib}" fails to set $gnulib_path when that variable
has been assigned to, even when its value is the empty string.
* build-aux/bootstrap (gnulib_path): Test explicitly for an empty
"$gnulib_path", rather than using ${gnulib_path=gnulib}.
Reported by John W. Eaton .
2011-01-19 Paul Eggert
assume , ..., exist
For years gnulib has been assuming the existence of the headers
, , , , ,
, , , and . Omit checks for
them, since they don't appear to be needed.
* README (Portability guidelines): Document this.
* lib/flock.c: Assume exists.
* lib/regex_internal.h: Assume exists.
* m4/ctype.m4 (gl_CTYPE_H): Assume exists.
* m4/errno_h.m4 (gl_HEADER_ERRNO_H): Assume exists.
* m4/fcntl_h.m4 (gl_FCNTL_H): Assume exists.
* m4/flock.m4 (gl_PREREQ_FLOCK): Likewise.
* m4/locale_h.m4 (gl_LOCALE_H): Assume exists.
* m4/regex.m4 (gl_REGEX): Likewise.
* m4/signal_h.m4 (gl_SIGNAL_H): Assume exists.
* m4/stdio_h.m4 (gl_STDIO_H): Assume exists.
* m4/stdlib_h.m4 (gl_STDLIB_H): Assume exists.
* m4/string_h.m4 (gl_STRING_H): Assume exists.
* tests/test-argp.c: Likewise.
* m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Assume exists.
multiarch: remove AA_APPLE_UNIVERSAL_BUILD
* m4/multiarch.m4 (gl_MULTIARCH): Don't AC_DEFINE
AA_APPLE_UNIVERSAL_BUILD. See
.
* NEWS: Document this.
2011-01-19 Eric Blake
c-stack: assume stack overflow if SA_SIGINFO unsupported
* lib/c-stack.c (SIGACTION_WORKS): Rename...
(SIGINFO_WORKS): ...since gnulib module guarantees that (most) of
sigaction will work.
(die): Assume stack overflow if siginfo doesn't work, to let Haiku
behavior match Linux.
* tests/test-c-stack.c (main): Prefer NULL for pointers.
stdbool-tests: accomodate Haiku
* tests/test-stdbool.c: Haiku's gcc 2.95 lacks native _Bool.
binary-io: fix O_TEXT on Haiku
* modules/binary-io (Depends-on): Add fcntl-h.
* lib/binary-io.h (O_TEXT): Rely on replacement rather
than blindly undefining O_TEXT.
Reported by Scott McCreary.
2011-01-18 Paul Eggert
include_next: do not check for standard headers like stddef.h
I found this problem when modifying Emacs to use gnulib.
I noticed that it added HAVE_STDDEF_H to config.h, even though
gnulib always assumes exists as per README and this
symbol is unnecessary.
* m4/include_next.m4 (gl_NEXT_HEADERS): New macro, which does not
use AC_CHECK_HEADERS_ONCE, but which otherwise contains what
gl_CHECK_NEXT_HEADERS used to contain. This makes 'configure' run
faster for headers like stddef.h that are known to exist.
(gl_CHECK_NEXT_HEADERS): Use it.
* m4/float_h.m4 (gl_FLOAT_H): For float.h, use gl_NEXT_HEADERS
rather than gl_CHECK_NEXT_HEADERS.
* m4/stdarg.m4 (gl_STDARG_H): Likewise, for stdarg.h.
* m4/stddef_h.m4 (gl_STDDEF_H): Likewise, for stddef.h.
2011-01-18 Eric Blake
ansi-c++-opt: skip C++ dependency style if C++ is unused
* m4/ansi-c++.m4 (gl_PROG_ANSI_CXX): Avoid full-blown dependency
tests when we know C++ compilation is not desired.
Reported by Scott McCreary.
2011-01-18 Bruno Haible
*printf-posix: Avoid test failures. Make tests work on MacOS X, Cygwin.
* tests/test-fprintf-posix3.c: Include "resource-ext.h".
(main): Perform test also when getrlimit and setrlimit don't exist or
when setrlimit of RLIMIT_DATA fails (like on Cygwin). Instead of
limiting the address space size using setrlimit, compare the address
space size before and after the the test.
* tests/test-dprintf-posix2.c: Likewise.
* tests/test-fprintf-posix3.sh: Update skip messages.
* tests/test-dprintf-posix2.sh: Likewise.
* modules/fprintf-posix-tests (Depends-on): Add get-rusage-as.
* modules/dprintf-posix-tests (Depends-on): Likewise.
Reported by Bruce Korb and
Gary V. Vaughan .
2011-01-18 Bruno Haible
get-rusage-as: Improvement for Cygwin.
* lib/get-rusage-as.c (get_rusage_as_via_iterator): On Windows, ignore
areas that are merely reserved.
2011-01-18 Paul Eggert
strftime: remove dependencies on multibyte modules
strftime depended on mbrlen, mbsinit, and wchar, but these modules
are needed only if ! MULTIBYTE_IS_FORMAT_SAFE, and that is true
only if __osf__ is defined, and I suspect OSF doesn't need these
other modules. If my guess is wrong, we'll need to come up with a
variant of strftime that doesn't need the multibyte modules.
I discovered this problem when attempting modify Emacs to use the
strftime module. With the previous gnulib, this caused Emacs to
need 31 new files, ranging from lib/config.charset to
m4/wint_t.m4. This was overkill and I expect would be offputting
to the Emacs maintainers. After this change, only 6 new files are
needed, namely strftime.[ch], srtftime.m4, stdbool.in.h,
stdbool.m4, and tm_gmtoff.m4.
* lib/strftime.c (MULTIBYTE_IS_FORMAT_SAFE): Define to 1 always.
Suggested by Bruno Haible in
.
* m4/strftime.m4 (gl_FUNC_STRFTIME): Do not require AC_TYPE_MBSTATE_T,
and do not check for wchar.h.
* modules/strftime (Files): Remove m4/mbstate_t.m4.
(Depends-on): Remove mbrlen, mbsinit, wchar.
2011-01-18 Bruno Haible