gnulib.git
13 years agopassfd module, part 2.
Bastien Roucariès [Sun, 13 Mar 2011 14:06:52 +0000 (15:06 +0100)]
passfd module, part 2.

* modules/passfd: New file.
* lib/passfd.h: New file.
* lib/passfd.c: New file.

13 years agowcswidth, mbswidth: Avoid integer overflow.
Bruno Haible [Sat, 12 Mar 2011 12:54:43 +0000 (13:54 +0100)]
wcswidth, mbswidth: Avoid integer overflow.

* lib/wcswidth.c: Include <limits.h>.
* lib/wcswidth-impl.h (wcswidth): Avoid 'int' overflow.
* lib/mbswidth.c: Include <limits.h>.
(mbsnwidth): Avoid 'int' overflow.
Reported by Jim Meyering.

13 years agoOops, fix last commit.
Bruno Haible [Sat, 12 Mar 2011 12:32:33 +0000 (13:32 +0100)]
Oops, fix last commit.

13 years agofutimens, utimensat: Avoid endless recursion on Solaris 10.
Bruno Haible [Sat, 12 Mar 2011 11:39:06 +0000 (12:39 +0100)]
futimens, utimensat: Avoid endless recursion on Solaris 10.

* lib/sys_stat.in.h (futimens, utimensat): Define with rpl_ prefix on
Solaris.
Reported by Ben Walton <bwalton@artsci.utoronto.ca> via Eric Blake
in <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=8230>.

13 years agomaint.mk: relax a regexp to accommodate other formatting styles
Jim Meyering [Fri, 11 Mar 2011 10:44:12 +0000 (11:44 +0100)]
maint.mk: relax a regexp to accommodate other formatting styles

* top/maint.mk (sc_unmarked_diagnostics): Allow 0 or 1 space
between "ngettext" and the following "(".

13 years agomaint.mk: suppress a syntax check false positive
Pádraig Brady [Fri, 11 Mar 2011 01:12:56 +0000 (01:12 +0000)]
maint.mk: suppress a syntax check false positive

* top/maint.mk (sc_unmarked_diagnostics): Don't warn when
diagnostics are marked with ngettext.

13 years agowchar: add explicit dependencies, for Tru64
Eric Blake [Thu, 10 Mar 2011 23:26:20 +0000 (16:26 -0700)]
wchar: add explicit dependencies, for Tru64

Commit 9a354cd exposed a few modules that were previously
picking up the <wchar.h> replacement via indirect dependency,
rather than explicitly including it.  This led to a compile
failure on Tru64 for the vsnprintf module, for example.

* 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.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agopassfd module, part 1, tweaks.
Bruno Haible [Tue, 8 Mar 2011 09:50:59 +0000 (10:50 +0100)]
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.

13 years agopassfd module, part 1.
Bastien Roucariès [Tue, 8 Mar 2011 09:37:18 +0000 (10:37 +0100)]
passfd module, part 1.

* m4/afunix.m4: New file.
* m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Also test for UNIX domain
sockets.

13 years agoregex-quote: New API.
Bruno Haible [Tue, 8 Mar 2011 09:09:47 +0000 (10:09 +0100)]
regex-quote: New API.

* lib/regex-quote.h: Include <stdbool.h>.
(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.

13 years agoregex-quote: Fix creation of POSIX extended regular expressions.
Bruno Haible [Sun, 6 Mar 2011 13:25:49 +0000 (14:25 +0100)]
regex-quote: Fix creation of POSIX extended regular expressions.

* lib/regex-quote.c (ere_special): Add grouping and alternation
operators.

13 years agodoc: Improve doc regarding autopoint vs. gnulib.
Bruno Haible [Sat, 5 Mar 2011 13:33:55 +0000 (14:33 +0100)]
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.

13 years agoUpdate AC_OPENMP macro for Lahey compiler on GNU/Linux.
Ralf Wildenhues [Sat, 5 Mar 2011 07:39:29 +0000 (08:39 +0100)]
Update AC_OPENMP macro for Lahey compiler on GNU/Linux.

* m4/openmp.m4 (AC_OPENMP): Sync from Autoconf.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13 years agoparse-duration: remove xalloc.h dependency
Bruce Korb [Thu, 3 Mar 2011 23:07:32 +0000 (15:07 -0800)]
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

13 years agobootstrap: honor m4_base when running aclocal
Matthew Booth [Thu, 3 Mar 2011 21:15:13 +0000 (22:15 +0100)]
bootstrap: honor m4_base when running aclocal

* build-aux/bootstrap: Fix hard-coded use of m4 directory name.

13 years agogetopt-gnu: relax license from LGPLv3+ to LGPLv2+
Jim Meyering [Wed, 2 Mar 2011 17:48:01 +0000 (18:48 +0100)]
getopt-gnu: relax license from LGPLv3+ to LGPLv2+

* modules/getopt-gnu (License): Relax to LGPLv2+, for augeas,
on request from Matthew Booth.

13 years agotest-link: work on Hurd
Eric Blake [Tue, 1 Mar 2011 23:27:51 +0000 (16:27 -0700)]
test-link: work on Hurd

* tests/test-link.h (test_link): Hurd rejects linking directories
with EISDIR instead of the POSIX-mandated EPERM.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agostdio: simplify by moving files to printf-posix, sigpipe
Paul Eggert [Mon, 28 Feb 2011 23:11:11 +0000 (15:11 -0800)]
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'.

13 years agostdio: simplify by moving gl_STDIN_LARGE_OFFSET to fseeko, ftello
Paul Eggert [Mon, 28 Feb 2011 23:10:55 +0000 (15:10 -0800)]
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.

13 years agolocalcharset: Assume ANSI C behaviour of free().
Bruno Haible [Mon, 28 Feb 2011 22:39:24 +0000 (23:39 +0100)]
localcharset: Assume ANSI C behaviour of free().

* lib/localcharset.c (get_charset_aliases): Remove NULL test before
calling free().
Suggested by Simon Josefsson <simon@josefsson.org>.

13 years agoOn Cygwin, use /proc file system instead of win32 API.
Bruno Haible [Mon, 28 Feb 2011 22:19:49 +0000 (23:19 +0100)]
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.

13 years agoFix OpenMP flag detection for various Fortran compilers.
Christian Rössel [Sun, 20 Feb 2011 17:50:14 +0000 (18:50 +0100)]
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.

Signed-off-by: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
13 years agoupdate from texinfo
Karl Berry [Mon, 28 Feb 2011 01:03:03 +0000 (17:03 -0800)]
update from texinfo

13 years agoautoupdate
Karl Berry [Sun, 27 Feb 2011 15:06:15 +0000 (07:06 -0800)]
autoupdate

13 years agostrstr: expand test coverage
Eric Blake [Fri, 25 Feb 2011 23:16:39 +0000 (16:16 -0700)]
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.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agomaint.mk: detect missing-NL-at-EOF, too
Jim Meyering [Fri, 25 Feb 2011 19:18:02 +0000 (20:18 +0100)]
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.

13 years agodirname: move m4/dos.m4 functionality into lib/dosname.h
Paul Eggert [Fri, 25 Feb 2011 18:52:37 +0000 (10:52 -0800)]
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 ('\\').

13 years agostrstr: revert patches that introduced bug and pessimization
Eric Blake [Fri, 25 Feb 2011 16:10:57 +0000 (09:10 -0700)]
strstr: revert patches that introduced bug and pessimization

Jim's one-liner solved the bug by pessimizing speed, making the
algorithm shift less per iteration and thus perform more repeated
comparisons.  The real reason for the bug is that my supposed
"optimizations" actually resulted in cases on certain periodic needles
where critical_factorization returned a factorization that was equal
to, rather than less than the period of the needle.  This makes the
CMP_FUNC choose the wrong branch, since a periodic needle must be
handled differently than one where the left half of the needle does
not overlap the right half.

Thankfully, the flawed "optimization" was only present in gnulib, and
was never ported to glibc or cygwin (the only two known
implementations that use the two-way algorithm), so no additional m4
check is needed to detect the bug in the wild.

* 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.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agofilenamecat: remove unnecessary dependency on dirname-lgpl
Paul Eggert [Fri, 25 Feb 2011 02:52:21 +0000 (18:52 -0800)]
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.

13 years agoremove: remove unnecessary use of m4/dos.m4
Paul Eggert [Fri, 25 Feb 2011 01:50:35 +0000 (17:50 -0800)]
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.

13 years ago* lib/openat-proc.c: Don't include dirname.h; not needed.
Paul Eggert [Fri, 25 Feb 2011 00:14:32 +0000 (16:14 -0800)]
* lib/openat-proc.c: Don't include dirname.h; not needed.

13 years agoChangeLog: credit Mike Stump; add a URL for the thread
Jim Meyering [Thu, 24 Feb 2011 19:18:01 +0000 (20:18 +0100)]
ChangeLog: credit Mike Stump; add a URL for the thread

13 years agobackupfile: remove unnecessary use of m4/dos.m4
Paul Eggert [Thu, 24 Feb 2011 15:58:24 +0000 (07:58 -0800)]
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.

13 years agostrstr: fix a bug whereby strstr would mistakenly return NULL
Jim Meyering [Thu, 24 Feb 2011 09:57:22 +0000 (10:57 +0100)]
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.
Reported by Ralf Wildenhues, with 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.

13 years agognulib-tool: remove use of bold display in help screen
Stefano Lattarini [Thu, 24 Feb 2011 11:54:52 +0000 (12:54 +0100)]
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.

13 years agoFix misindentation of preprocessor directives.
Bruno Haible [Wed, 23 Feb 2011 09:58:06 +0000 (10:58 +0100)]
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.

13 years agoioctl: Fix for MacOS X in 64-bit mode.
Bruno Haible [Tue, 22 Feb 2011 23:01:03 +0000 (00:01 +0100)]
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 <nietzsche@lysator.liu.se>.

13 years agomaint: sc_cpp_indent_check: remove the "only in lib/" restriction
Jim Meyering [Tue, 22 Feb 2011 15:51:29 +0000 (16:51 +0100)]
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/.

13 years agomaint: avoid any CDPATH issue
Eric Blake [Tue, 22 Feb 2011 15:28:31 +0000 (08:28 -0700)]
maint: avoid any CDPATH issue

* Makefile (sc_cpp_indent_check): Anchor cd argument.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agomaint: adjust cpp indentation for my modules, as well
Eric Blake [Tue, 22 Feb 2011 15:21:47 +0000 (08:21 -0700)]
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.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agomaint: adjust cpp indentation to reflect nesting depth
Jim Meyering [Sun, 20 Feb 2011 22:02:43 +0000 (23:02 +0100)]
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 <sys/vfs.h>
+# include <sys/vfs.h>
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.

13 years agoNew module 'wctomb'.
Bruno Haible [Tue, 22 Feb 2011 13:23:24 +0000 (14:23 +0100)]
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.

13 years agoNew module 'mbtowc'.
Bruno Haible [Tue, 22 Feb 2011 13:01:29 +0000 (14:01 +0100)]
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.

13 years agowcrtomb: Add more tests for native Windows platforms.
Bruno Haible [Sun, 20 Feb 2011 17:18:31 +0000 (18:18 +0100)]
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.

13 years agowcrtomb: Enhance test.
Bruno Haible [Sun, 20 Feb 2011 13:08:44 +0000 (14:08 +0100)]
wcrtomb: Enhance test.

* tests/test-wcrtomb.c (main): Add test against bug with NULL argument.

13 years agombrtowc: Tiny optimization.
Bruno Haible [Mon, 21 Feb 2011 04:07:14 +0000 (05:07 +0100)]
mbrtowc: Tiny optimization.

* lib/mbrtowc.c (mbrtowc): Delay pstate assignment until it is needed.

13 years agotest-exclude.c: remove unmatched #endif
Jim Meyering [Sun, 20 Feb 2011 19:02:10 +0000 (20:02 +0100)]
test-exclude.c: remove unmatched #endif

* tests/test-exclude.c: Remove stray #endif, left over from
the change of a week ago.

13 years agogit-version-gen: skip "-dirty" check when appropriate
Jim Meyering [Sat, 19 Feb 2011 19:48:36 +0000 (20:48 +0100)]
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.

13 years agounictype/property-byname: Reduce the size of the 'data' segment.
Bruno Haible [Sat, 19 Feb 2011 16:12:43 +0000 (17:12 +0100)]
unictype/property-byname: Reduce the size of the 'data' segment.

* lib/unictype/pr_byname.gperf: Add gperf option '%pic'.

13 years agounictype/scripts: Reduce the size of the 'data' segment.
Bruno Haible [Sat, 19 Feb 2011 16:03:25 +0000 (17:03 +0100)]
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.

13 years agostdint: Update documentation.
Bruno Haible [Sat, 19 Feb 2011 11:52:42 +0000 (12:52 +0100)]
stdint: Update documentation.

* doc/posix-headers/stdint.texi: Mention WCHAR_MIN, WCHAR_MAX problem.

13 years agostdint: omit redundant check for wchar.h
Paul Eggert [Sat, 19 Feb 2011 07:18:47 +0000 (23:18 -0800)]
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.

13 years agostdint: Cut dependency to module 'wchar'.
Bruno Haible [Sat, 19 Feb 2011 07:08:54 +0000 (23:08 -0800)]
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.

13 years agolonglong: skip, rather than fail, on cross-compilation
Eric Blake [Fri, 18 Feb 2011 17:25:36 +0000 (10:25 -0700)]
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.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years ago* NEWS: Mention 2011-02-08 change to stdlib.
Paul Eggert [Fri, 18 Feb 2011 06:16:39 +0000 (22:16 -0800)]
* NEWS: Mention 2011-02-08 change to stdlib.

13 years agogetloadavg: Add comments about platforms.
Bruno Haible [Fri, 18 Feb 2011 03:16:39 +0000 (04:16 +0100)]
getloadavg: Add comments about platforms.

* m4/getloadavg.m4: Add comment.
* lib/getloadavg.c: Likewise.

13 years agogetloadavg: Fix link error on Solaris 2.6.
Bruno Haible [Fri, 18 Feb 2011 03:15:19 +0000 (04:15 +0100)]
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.

13 years ago* lib/getloadavg.c (getloadavg) [sgi]: Make ldav_off of type ptrdiff_t.
Paul Eggert [Fri, 18 Feb 2011 03:11:43 +0000 (19:11 -0800)]
* 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
<http://lists.gnu.org/archive/html/bug-gnulib/2011-02/msg00207.html>.

13 years agoOops, fix syntax error in last config.rpath commit.
Bruno Haible [Fri, 18 Feb 2011 02:33:16 +0000 (03:33 +0100)]
Oops, fix syntax error in last config.rpath commit.

13 years agohavelib: Fix comments.
Bruno Haible [Fri, 18 Feb 2011 00:48:04 +0000 (01:48 +0100)]
havelib: Fix comments.

* m4/lib-link.m4 (AC_LIB_RPATH): Update comments after 2007-01-02
change.

13 years agohavelib: Update config.rpath.
Bruno Haible [Fri, 18 Feb 2011 00:33:51 +0000 (01:33 +0100)]
havelib: Update config.rpath.

* build-aux/config.rpath: Update to match libtool.m4 from libtool-2.4.

13 years agogetloadavg test: Add some plausibility checks.
Bruno Haible [Thu, 17 Feb 2011 22:42:20 +0000 (23:42 +0100)]
getloadavg test: Add some plausibility checks.

* tests/test-getloadavg.c (check_avg): Print a warning when the value
is improbable.

13 years agomaintainer-makefile: make syntax-check a no-op from tarballs
Eric Blake [Wed, 16 Feb 2011 21:15:51 +0000 (14:15 -0700)]
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.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agolonglong: tune, particularly for common case of c99
Paul Eggert [Wed, 16 Feb 2011 09:22:38 +0000 (01:22 -0800)]
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.

13 years agogetloadavg: set errno
Paul Eggert [Tue, 15 Feb 2011 21:18:20 +0000 (13:18 -0800)]
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
<http://lists.gnu.org/archive/html/bug-gnulib/2011-02/msg00187.html>.

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
<http://lists.gnu.org/archive/html/bug-gnulib/2011-02/msg00186.html>.
* 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.

13 years agogetloadavg: omit unused var
Paul Eggert [Tue, 15 Feb 2011 20:43:46 +0000 (12:43 -0800)]
getloadavg: omit unused var

* lib/getloadavg.c (getloadavg): Omit unused local variable.

13 years agoautoupdate
Karl Berry [Tue, 15 Feb 2011 14:34:18 +0000 (06:34 -0800)]
autoupdate

13 years agodoc: update users.txt
Jim Meyering [Tue, 15 Feb 2011 09:41:00 +0000 (10:41 +0100)]
doc: update users.txt

* users.txt: Update iwhd's URL.

13 years agoConsistent macro naming for macros that use GCC __attribute__.
Bruno Haible [Sun, 13 Feb 2011 22:44:28 +0000 (23:44 +0100)]
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.

13 years agoDon't interfere with a program's definition of __attribute__.
Bruno Haible [Sun, 13 Feb 2011 22:21:20 +0000 (23:21 +0100)]
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.

13 years agomaint: correct a ChangeLog attribution
Eric Blake [Mon, 14 Feb 2011 22:49:32 +0000 (15:49 -0700)]
maint: correct a ChangeLog attribution

13 years agoupdate from texinfo
Karl Berry [Mon, 14 Feb 2011 19:20:44 +0000 (11:20 -0800)]
update from texinfo

13 years agombrtowc: Add more tests for native Windows platforms.
Bruno Haible [Sun, 13 Feb 2011 23:09:53 +0000 (00:09 +0100)]
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.

13 years agombrtowc: Work around native Windows bug.
Bruno Haible [Sun, 13 Feb 2011 18:29:42 +0000 (19:29 +0100)]
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.

13 years agombsinit: Work around mingw bug.
Bruno Haible [Sun, 13 Feb 2011 17:17:22 +0000 (18:17 +0100)]
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.

13 years agombsinit: Don't crash for a NULL argument.
Bruno Haible [Sun, 13 Feb 2011 17:04:55 +0000 (18:04 +0100)]
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.

13 years agoDon't interfere with a program's definition of __attribute__.
Bruno Haible [Sun, 13 Feb 2011 10:59:12 +0000 (11:59 +0100)]
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.

13 years agoFix last ChangeLog entry.
Bruno Haible [Sun, 13 Feb 2011 10:53:14 +0000 (11:53 +0100)]
Fix last ChangeLog entry.

13 years agostdlib: don't get in the way of non-GCC __attribute__
Paul Eggert [Sun, 13 Feb 2011 06:16:44 +0000 (22:16 -0800)]
stdlib: don't get in the way of non-GCC __attribute__

13 years agoquotearg test: Avoid test failure on mingw.
Bruno Haible [Sun, 13 Feb 2011 02:41:41 +0000 (03:41 +0100)]
quotearg test: Avoid test failure on mingw.

* tests/test-quotearg.sh: Convert the locale identifier from native
Windows syntax to Unix syntax.

13 years agosetlocale: Prefer gnulib's override over libintl's override.
Bruno Haible [Sun, 13 Feb 2011 02:39:33 +0000 (03:39 +0100)]
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.

13 years agostdlib: support non-GCC __attribute__
Paul Eggert [Sat, 12 Feb 2011 23:33:16 +0000 (15:33 -0800)]
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 <stdlib.h> 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.

13 years agowcsrtombs: Work around bug on native Windows.
Bruno Haible [Sat, 12 Feb 2011 19:43:40 +0000 (20:43 +0100)]
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.

13 years agombsrtowcs: Work around bug on native Windows.
Bruno Haible [Sat, 12 Feb 2011 19:20:02 +0000 (20:20 +0100)]
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.

13 years agoAvoid setlocale bugs in tests.
Bruno Haible [Sat, 12 Feb 2011 18:09:23 +0000 (19:09 +0100)]
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.

13 years agoFix ChangeLog entry.
Bruno Haible [Sat, 12 Feb 2011 17:23:12 +0000 (18:23 +0100)]
Fix ChangeLog entry.

13 years agosetlocale: Workaround native Windows bug.
Bruno Haible [Sat, 12 Feb 2011 17:16:10 +0000 (18:16 +0100)]
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.

13 years agoRemove unused test-setlocale1 argument.
Bruno Haible [Sat, 12 Feb 2011 16:34:40 +0000 (17:34 +0100)]
Remove unused test-setlocale1 argument.

13 years agoTests for module 'setlocale'.
Bruno Haible [Sat, 12 Feb 2011 15:46:11 +0000 (16:46 +0100)]
Tests for module 'setlocale'.

* modules/setlocale-tests: New file.
* tests/test-setlocale1.sh: New file.
* tests/test-setlocale1.c: New file.

13 years agoNew module 'setlocale'.
Bruno Haible [Sat, 12 Feb 2011 15:45:13 +0000 (16:45 +0100)]
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.

13 years agoPrepare for locale dependent tests on mingw.
Bruno Haible [Sat, 12 Feb 2011 00:56:46 +0000 (01:56 +0100)]
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.

13 years agoPrepare for locale dependent tests on mingw.
Bruno Haible [Fri, 11 Feb 2011 19:55:01 +0000 (20:55 +0100)]
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.

13 years agostrptime: avoid compiler warnings
Eric Blake [Fri, 11 Feb 2011 20:30:04 +0000 (13:30 -0700)]
strptime: avoid compiler warnings

Reported against mingw, but reproduced on glibc with:

CFLAGS='-Wall -Wunused-label -Wunused-variable' \
  ac_cv_func_strptime=no ./gnulib-tool --with-tests --test strptime

* lib/strptime.c (__strptime_internal) [!_NL_CURRENT]: Avoid
compiler warnings about dead code.
Reported by Daniel P. Berrange.

Signed-off-by: Eric Blake <eblake@redhat.com>
13 years agodoc: update users.txt
Thien-Thi Nguyen [Fri, 11 Feb 2011 08:10:44 +0000 (09:10 +0100)]
doc: update users.txt

* users.txt: Add rcs.

13 years agodoc: update users.txt
John W. Eaton [Thu, 10 Feb 2011 20:34:41 +0000 (21:34 +0100)]
doc: update users.txt

* users.txt: Add octave.

13 years agodoc: update users.txt
Jim Meyering [Thu, 10 Feb 2011 14:37:48 +0000 (15:37 +0100)]
doc: update users.txt

* users.txt: Add iwhd.

13 years agognulib-tool: Make copyright notice adjustment more robust.
Bruno Haible [Wed, 9 Feb 2011 19:55:19 +0000 (20:55 +0100)]
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 <rgm@gnu.org> via Paul Eggert.

13 years agoNew module 'towctrans'.
Bruno Haible [Sun, 6 Feb 2011 23:29:31 +0000 (00:29 +0100)]
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.

13 years agoNew module 'wctrans'.
Bruno Haible [Sun, 6 Feb 2011 23:16:49 +0000 (00:16 +0100)]
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.

13 years agoNew module 'iswctype'.
Bruno Haible [Sun, 6 Feb 2011 22:59:34 +0000 (23:59 +0100)]
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.