]> Savannah Git Hosting - gnulib.git/log
gnulib.git
8 years agofpending: Port to native Windows with MSVC.
Bruno Haible [Tue, 13 Dec 2016 10:19:35 +0000 (11:19 +0100)]
fpending: Port to native Windows with MSVC.

* lib/fpending.c: Include stdio-impl.h.
(__fpending): Include all known implementations. Err out if it's not
ported.
* m4/fpending.m4 (gl_PREREQ_FPENDING): Remove macro.
* modules/fpending (Files): Add lib/stdio-impl.h.
(configure.ac): Don't invoke gl_PREREQ_FPENDING.

8 years agostdioext: Port to native Windows with MSVC.
Bruno Haible [Tue, 13 Dec 2016 00:44:06 +0000 (01:44 +0100)]
stdioext: Port to native Windows with MSVC.

* lib/stdio-impl.h (WINDOWS_OPAQUE_FILE): New macro.
(struct _gl_real_FILE): New type.
(fp_, _IOREAD, _IOWRT, _IORW, _IOEOF, _IOERR): New macros, for native
Windows.
* lib/fbufmode.c (fbufmode): Add code for native Windows.
* lib/fflush.c (clear_ungetc_buffer): Treat native Windows like the
other SystemV derived implementations.
* lib/fpurge.c (fpurge): Likewise.
* lib/freadable.c (freadable): Likewise.
* lib/freadahead.c (freadahead): Likewise.
* lib/freading.c (freading): Likewise.
* lib/freadptr.c (freadptr): Likewise.
* lib/freadseek.c (freadptrinc): Likewise.
* lib/fseeko.c (fseeko): Likewise.
* lib/fseterr.c (fseterr): Likewise.
* lib/fwritable.c (fwritable): Likewise.
* lib/fwriting.c (fwriting): Likewise.
Reported by Gisle Vanem <gvanem@yahoo.no>.

8 years agonon-recursive-gnulib-prefix-hack.m4: remove leading "(" in case stmt
Jim Meyering [Mon, 12 Dec 2016 06:39:42 +0000 (22:39 -0800)]
non-recursive-gnulib-prefix-hack.m4: remove leading "(" in case stmt

* m4/non-recursive-gnulib-prefix-hack.m4: That leading "(" happens
to work with most shells, but not with the one provided by many
Solaris 10 systems, so running configure with such a /bin/sh evokes
e.g., "./configure: syntax error at line 33602: `(' unexpected".
Reported by Assaf Gordon in
https://lists.gnu.org/archive/html/sed-devel/2016-12/msg00002.html

8 years agothreadlib: Optimize out runtime test on Solaris >= 10.
Bruno Haible [Sat, 10 Dec 2016 13:04:42 +0000 (14:04 +0100)]
threadlib: Optimize out runtime test on Solaris >= 10.

* m4/threadlib.m4 (gl_THREADLIB_BODY): Don't set
PTHREAD_IN_USE_DETECTION_HARD if configuring on Solaris 10 or newer.
Reported by Peter Felecan at <https://savannah.gnu.org/bugs/?32087>.

8 years agostdint: Update doc about Solaris 9.
Bruno Haible [Sat, 10 Dec 2016 11:08:07 +0000 (12:08 +0100)]
stdint: Update doc about Solaris 9.

* doc/posix-headers/stdint.texi: Add info about Solaris 9.

8 years agoc-ctype tests: Fix link error on Solaris 9.
Bruno Haible [Sat, 10 Dec 2016 00:26:47 +0000 (01:26 +0100)]
c-ctype tests: Fix link error on Solaris 9.

* modules/c-ctype-tests (Depends-on): Add 'isblank'.
Reported at <https://savannah.gnu.org/bugs/?46827>.

8 years agodfa: fix performance bug that recomputes trans
Paul Eggert [Fri, 9 Dec 2016 23:09:03 +0000 (15:09 -0800)]
dfa: fix performance bug that recomputes trans

* lib/dfa.c (build_state): Fix performance bug introduced in Nov
25 on-demand changes.  The bug caused build_state to reset all
d->trans elements to -2 even when d->trans was already non-null.
Use C99 style decls after statements in this function.

8 years agosame-inode: port to MinGW
Paul Eggert [Fri, 9 Dec 2016 16:16:13 +0000 (08:16 -0800)]
same-inode: port to MinGW

Here st_ino is always 0, so change the definition of SAME_INODE so
that 1 means the two files are the same, 0 with st_ino != 0 means
they differ, and 0 with st_ino == 0 means we don’t know.  Problem
reported by Bruno Haible (Bug#25146).
* doc/posix-headers/sys_stat.texi (sys/stat.h): Update.
* lib/same-inode.h (SAME_INODE): Return 0 on MinGW.

8 years agojavacomp: Support Java 7 and 8.
Bruno Haible [Sun, 4 Dec 2016 18:50:26 +0000 (19:50 +0100)]
javacomp: Support Java 7 and 8.

* m4/javacomp.m4 (gt_JAVACOMP): Accept source-version 1.7, 1.8 and
target-version 1.7, 1.8.

8 years agognulib-tool: fix the previous change
Daiki Ueno [Fri, 2 Dec 2016 16:16:50 +0000 (17:16 +0100)]
gnulib-tool: fix the previous change

* gnulib-tool (func_import): Relax the regex used for "LGPLv3+ or
GPLv2" rewriting.

8 years agognulib-tool: fix the previous change
Daiki Ueno [Fri, 2 Dec 2016 15:56:11 +0000 (16:56 +0100)]
gnulib-tool: fix the previous change

* gnulib-tool (func_import): Relax the regex for the end marker of
original license text.

8 years agognulib-tool: properly list the LGPL3orGPLv2 license
Nikos Mavrogiannopoulos [Mon, 21 Nov 2016 20:15:25 +0000 (21:15 +0100)]
gnulib-tool: properly list the LGPL3orGPLv2 license

* gnulib-tool (func_import): Adhere to the license guideline when
rewriting the license text to "LGPLv3+ or GPLv2":
https://www.gnu.org/prep/maintain/maintain.html#Licensing-of-GNU-Packages

8 years agolocalcharset: Avoid theoretical buffer overrun.
Bruno Haible [Fri, 2 Dec 2016 12:52:43 +0000 (13:52 +0100)]
localcharset: Avoid theoretical buffer overrun.

* lib/localcharset.c (locale_charset) [WINDOWS_NATIVE]: Don't use the
return value from setlocale if it would lead to a buffer overrun.

8 years agoRelicense some modules under LGPLv2+.
Bruno Haible [Fri, 2 Dec 2016 01:02:09 +0000 (02:02 +0100)]
Relicense some modules under LGPLv2+.

Kevin Cernekee's approval is in
http://lists.gnu.org/archive/html/bug-gnulib/2016-11/msg00090.html.
* modules/fseterr (License): Change to LGPLv2+.
* modules/mbchar (License): Likewise.
* modules/mbiter (License): Likewise.
* modules/mbsnlen (License): Likewise.
* modules/wcwidth (License): Likewise.

8 years agoscandir: Fix _D_ALLOC_NAMLEN() on OS/2 kLIBC
KO Myung-Hun [Thu, 1 Dec 2016 10:52:46 +0000 (19:52 +0900)]
scandir: Fix _D_ALLOC_NAMLEN() on OS/2 kLIBC

On OS/2 kLIBC, d_name is not the last field of struct dirent. So
copying struct dirent according to the size calculated based on d_name
blows the fields after d_name up.

The correct way is to allocate the whole size of struct dirent.

* lib/scandir.c (_D_ALLOC_NAMLEN): Consider the fields after d_name on
OS/2 kLIBC.

8 years agoalphasort, scandir: Port to OS/2 kLIBC
KO Myung-Hun [Thu, 1 Dec 2016 10:52:45 +0000 (19:52 +0900)]
alphasort, scandir: Port to OS/2 kLIBC

On OS/2 kLIBC, scandir() declaration is different from POSIX. As a
result, alphasort() declaration is different, too.

* lib/alphasort.c (alphasort): Implement according to OS/2 kLIBC
declaration.
* lib/scandir.c (scandir): Add declaration for OS/2 kLIBC.

8 years agorelocatable: Fix that /@unixroot prefix is not working on OS/2 kLIBC
KO Myung-Hun [Thu, 1 Dec 2016 10:52:44 +0000 (19:52 +0900)]
relocatable: Fix that /@unixroot prefix is not working on OS/2 kLIBC

OS/2 kLIBC has a feature to rewrite some path components. For example,
'/@unixroot' is replaced with a value of $UNIXROOT if it is.

So prepending a drive letter to the path starting with '/' makes the
path starting with '/@unixroot' to 'x:/@unixroot' which is unexpected.

This will breaks the behavior of some programs depending on /@unixroot
prefix.

* lib/relocatable.c (relocate): Do not touch pathname if it is started
with '/@unixroot'.

8 years agosys_socket: typedef sa_family_t correctly on OS/2 kLIBC
KO Myung-Hun [Thu, 1 Dec 2016 10:52:43 +0000 (19:52 +0900)]
sys_socket: typedef sa_family_t correctly on OS/2 kLIBC

On OS/2 kLIBC, sa_family_t is unsigned char unless TCPV40HDRS is
defined.

* lib/sys_socket.in.h (sa_family_t): Typedef to unsigned char on
OS/2 kLIBC unless TCPV40HDRS is defined.

8 years agodfa: avoid new infinite loop
Jim Meyering [Tue, 29 Nov 2016 18:45:46 +0000 (10:45 -0800)]
dfa: avoid new infinite loop

This would infloop: echo cx | LC_ALL=C grep -E 'c\b[x ]'
* lib/dfa.c (dfastate): When constructing a new state table, we could
initially declare that we had found a match, and later find that
constraints eliminate that possibility, yet continue to use the
now stale "matched" indicator.  That would lead to an infinite loop.
The solution is to update "matched" when necessary.
Introduced by commit v0.1-983-g403adf1.

8 years agodfa: do not match middle of multibyte character
Norihiro Tanaka [Mon, 28 Nov 2016 13:26:07 +0000 (22:26 +0900)]
dfa: do not match middle of multibyte character

* lib/dfa.c (transit_state): If it fails in matching a single byte
character in a state including a period expression in a non-UTF8
multibyte locale, skip the trailing bytes.
(dfa_supported): Revert previous change.

8 years agodfa: avoid false match in non-UTF8 multibyte locales
Jim Meyering [Sun, 27 Nov 2016 23:36:51 +0000 (15:36 -0800)]
dfa: avoid false match in non-UTF8 multibyte locales

* lib/dfa.c (dfa_supported): Treat any non-UTF8 multibyte locale
as "not supported" so that callers will resort to using regex-based
matcher.  This will surely hurt performance, but correctness trumps
performance here, and the affected locales are less and less relevant,
these days.  See grep's bug report https://bugs.gnu.org/24975.

8 years agoptsname_r: leverage AC_HEADER_MAJOR
Mike Frysinger [Sun, 27 Nov 2016 03:52:00 +0000 (22:52 -0500)]
ptsname_r: leverage AC_HEADER_MAJOR

Like the mountlist module, ptsname_r uses makedev/major/minor,
so use the existing autoconf macro which will probe some headers
for use and set up some defines.

* lib/ptsname_r.c: Likewise.
[__sun]: Delete sys/sysmacros.h include.
[_AIX || __osf__]: Likewise.
* m4/ptsname_r.m4 (gl_FUNC_PTSNAME_R): Depend on AC_HEADER_MAJOR.

8 years agomd4,md5,sha*: allow _STRING_INLINE_unaligned enable unaligned operation
Pádraig Brady [Sun, 27 Nov 2016 00:23:14 +0000 (00:23 +0000)]
md4,md5,sha*: allow _STRING_INLINE_unaligned enable unaligned operation

* lib/md4.c (md4_process_bytes): The existing define is made internal
in recent versions of glibc, so also use this new public define.
* lib/md5.c (md5_process_bytes): Likewise.
* lib/sha1.c (sha1_process_bytes): Likewise.
* lib/sha256.c (sha256_process_bytes): Likewise.
* lib/sha512.c (sha512_process_bytes): Likewise.

8 years agomaint: use a more standard return from mbrtowc test
Pádraig Brady [Sat, 26 Nov 2016 15:39:11 +0000 (15:39 +0000)]
maint: use a more standard return from mbrtowc test

With this we can use this check in coreutils to find configure issues:
  grep -E '(program exited with status 1$|core dumped)' config.log

* m4/mbrtowc.m4 (gl_MBRTOWC_C_LOCALE): Don't return 1
from the test program as this often indicates an
unhandled case in the test program.
(gl_MBRTOWC_INCOMPLETE_STATE): Likewise.
(gl_MBRTOWC_SANITYCHECK): Likewise.
(gl_MBRTOWC_NULL_ARG2): Likewise.
(gl_MBRTOWC_NUL_RETVAL): Likewise.

8 years agofreopen: fix typo in previous commit
Paul Eggert [Sat, 26 Nov 2016 23:11:55 +0000 (15:11 -0800)]
freopen: fix typo in previous commit

* lib/freopen.c: Include unistd.h.

8 years agofreopen: work around glibc bug with closed fd
Paul Eggert [Sat, 26 Nov 2016 22:53:29 +0000 (14:53 -0800)]
freopen: work around glibc bug with closed fd

Work around glibc bug#15589, where freopen mishandles the case
where stdin etc. are already closed.
* doc/posix-functions/freopen.texi (freopen): Document the bug.
* lib/freopen.c (_GL_ALREADY_INCLUDING_STDIO_H): Define this
instead of __need_FILE, as the latter does not work with glibc.
Include <fcntl.h>, for open flags.
(rpl_freopen): Work around glibc bug.
* m4/freopen.m4 (gl_FUNC_FREOPEN): Check for bug.
* modules/freopen (Depends-on): Add fcntl-h.
* tests/test-freopen.c (main): Test for bug.

8 years agofnmatch: fix typo introduced on 2016-08-17
Paul Eggert [Sat, 26 Nov 2016 02:45:05 +0000 (18:45 -0800)]
fnmatch: fix typo introduced on 2016-08-17

This fixes the port to non-GCC compilers that lack __builtin_expect.
* lib/fnmatch.c (__builtin_expect): Change A&&B to !A||B.

8 years agomaint: fix ChangeLog typo
Paul Eggert [Fri, 25 Nov 2016 20:45:15 +0000 (12:45 -0800)]
maint: fix ChangeLog typo

8 years agodfa: simplify with new function fillset
Paul Eggert [Fri, 25 Nov 2016 18:43:38 +0000 (10:43 -0800)]
dfa: simplify with new function fillset

* lib/dfa.c (fillset): New function.
Use it for clarity when applicable.

8 years agodfa: fix glitches with on-demand states
Paul Eggert [Fri, 25 Nov 2016 18:43:38 +0000 (10:43 -0800)]
dfa: fix glitches with on-demand states

Also, adjust commentary to better match new code.
Some of these glitches predate the recent change.
* lib/dfa.c (dfaanalyze): Clear trcount here, so that it counts
only non-initial states.
(dfastate): Rename locals to better match new roles.
Move them into nested scopes if this is easy.
Omit unnecessary cdalls to zeroset.
Simplify test for whether to throw in the positions of state 0.
Omit C99-ism (decl after statement) since Gawk still wants C89.
(build_state): Omit unnecessary test and assignment.
Fix some confusion that counted transition tables inaccurately
and could cause a memory leak.
(dfaexec_main): Redo to make it clearer to the compiler that
-1 and -2 are the only negative state numbers here.

8 years agodfa: addition of new state on demand
Norihiro Tanaka [Fri, 25 Nov 2016 18:43:38 +0000 (10:43 -0800)]
dfa: addition of new state on demand

* src/dfa.c (dfastate): Add argument UC, the current input character.
Fill only a group including the character in transition table.
(realloc_trans_if_necessary): Add the dummy state which means that a
transition table is assigned but the next state is not assigned.
(build_state): Return the next state.  All callers updated.
(transit_state_singlebyte): If we get the dummy state,
fill the transition table.
(dfaexec_main): Handle the dummy state.
(free_mbdata, dfafree): Consider the dummy state.

8 years agosrclist: sync with released gettext
Daiki Ueno [Wed, 23 Nov 2016 12:39:30 +0000 (13:39 +0100)]
srclist: sync with released gettext

* config/srclist.txt: Set "release" option to the files under
$GETTEXT.

8 years agosrclist: add "release" option
Daiki Ueno [Wed, 23 Nov 2016 11:46:09 +0000 (12:46 +0100)]
srclist: add "release" option

* config/srclist.txt: Change the format so that the first column
of each line points to the top-level directory of the source
archive.
* config/srclist-update: Accept "release" option that checks files
from the most recently tagged revision in the source archive.

8 years agosnippet/c++defs: Simplify _GL_CXXALIAS_* macros.
Bruno Haible [Sun, 20 Nov 2016 12:24:27 +0000 (13:24 +0100)]
snippet/c++defs: Simplify _GL_CXXALIAS_* macros.

* build-aux/snippet/c++defs.h [__cplusplus && GNULIB_NAMESPACE]
(_GL_CXXALIAS_RPL_1, _GL_CXXALIAS_RPL_CAST_1,
_GL_CXXALIAS_SYS, _GL_CXXALIAS_SYS_CAST, _GL_CXXALIAS_SYS_CAST2):
Inline and remove member function 'rpl ()' of the wrapper struct.

8 years agodfa: fix logic typo
Paul Eggert [Mon, 21 Nov 2016 04:16:29 +0000 (20:16 -0800)]
dfa: fix logic typo

Problem reported by Stephane Chazelas (Bug#24973).
* lib/dfa.c (using_simple_locale): Fix typo that caused some
non-simple locales like fr_FR to be treated as simple.

8 years agofix test driver leaks: exclude, malloc, realloc
Jim Meyering [Sun, 20 Nov 2016 16:33:38 +0000 (08:33 -0800)]
fix test driver leaks: exclude, malloc, realloc

* tests/test-exclude.c (main): Fix trivial leak.
* tests/test-malloc-gnu.c (main): Likewise.
* tests/test-realloc-gnu.c (main): Likewise.
With these changes, grep's tests are now leak free.
I.e., running them with ASAN elicits no failure:
  make CFLAGS='-O0 -ggdb3' AM_CFLAGS=-fsanitize=address \
    AM_LDFLAGS='-fsanitize=address -static-libasan' check

8 years agoFix gnulib C++ namespace support and std::frexp
Pedro Alves [Sat, 12 Nov 2016 16:22:53 +0000 (17:22 +0100)]
Fix gnulib C++ namespace support and std::frexp

* lib/math.in.h (frexp): Use _GL_CXXALIASWARN1 instead of
_GL_CXXALIASWARN.

8 years agoGNULIB_NAMESPACE::func need not pull in rpl_func
Pedro Alves [Sat, 12 Nov 2016 16:22:54 +0000 (17:22 +0100)]
GNULIB_NAMESPACE::func need not pull in rpl_func

* build-aux/snippet/c++defs.h [__cplusplus && GNULIB_NAMESPACE]
(_GL_CXXALIAS_RPL_1, _GL_CXXALIAS_RPL_CAST_1, _GL_CXXALIAS_SYS)
(_GL_CXXALIAS_SYS_CAST, _GL_CXXALIAS_SYS_CAST2): Define a wrapper
struct instead of a function pointer.

8 years agolibunistring: Relicense under dual "LGPLv3+ or GPLv2" license.
Bruno Haible [Sat, 12 Nov 2016 00:17:26 +0000 (01:17 +0100)]
libunistring: Relicense under dual "LGPLv3+ or GPLv2" license.

* modules/libunistring: (License): Change from LGPL to
"LGPLv3+ or GPLv2".
* modules/libunistring-optional: Likewise.
* modules/unicase/*: Likewise.
* modules/uniconv/*: Likewise.
* modules/unictype/*: Likewise.
* modules/unigbrk/*: Likewise.
* modules/unilbrk/*: Likewise.
* modules/uniname/*: Likewise.
* modules/uninorm/*: Likewise.
* modules/unistdio/*: Likewise.
* modules/unistr/*: Likewise.
* modules/uniwbrk/*: Likewise.
* modules/uniwidth/*: Likewise.

8 years agoRelicense some modules under LGPLv2+.
Bruno Haible [Sun, 13 Nov 2016 03:03:39 +0000 (04:03 +0100)]
Relicense some modules under LGPLv2+.

Paul Eggert's approval is in
http://lists.gnu.org/archive/html/bug-gnulib/2016-11/msg00037.html.
Eric Blake's approval is in
http://lists.gnu.org/archive/html/bug-gnulib/2016-11/msg00042.html.
Ludovic Courtès's approval is in
http://lists.gnu.org/archive/html/bug-gnulib/2016-11/msg00038.html.
* modules/isnand-nolibm (License): Change to LGPLv2+.
* modules/isnanf-nolibm (License): Likewise.
* modules/isnanl-nolibm (License): Likewise.

8 years agoRelicense some modules under LGPLv2+.
Bruno Haible [Sun, 13 Nov 2016 02:58:45 +0000 (03:58 +0100)]
Relicense some modules under LGPLv2+.

lib/float+.h is already under LGPLv2+ since 2007-07-13, per
modules/vasnprintf.
Paolo Bonzini's approval for lib/frexp.c and lib/frexpl.c is in
http://lists.gnu.org/archive/html/bug-gnulib/2016-11/msg00074.html.
All other significant changes to the files in lib/ of these modules
are from me.
* modules/memcmp2 (License): Change to LGPLv2+.
* modules/amemxfrm (License): Likewise.
* modules/fpieee (License): Likewise.
* modules/fpucw (License): Likewise.
* modules/frexp-nolibm (License): Likewise.
* modules/frexpl-nolibm (License): Likewise.
* modules/printf-frexp (License): Likewise.
* modules/printf-frexpl (License): Likewise.
* modules/printf-safe (License): Likewise.
* modules/signbit (License): Likewise.

8 years agoautoupdate
Karl Berry [Sat, 19 Nov 2016 14:45:25 +0000 (06:45 -0800)]
autoupdate

8 years agoEnable Unicode decoder safety unconditionally.
Bruno Haible [Thu, 17 Nov 2016 10:51:55 +0000 (11:51 +0100)]
Enable Unicode decoder safety unconditionally.

* lib/unistr.in.h (u32_mbtouc_unsafe): Assume CONFIG_UNICODE_SAFETY.
* lib/unistr/u8-mblen.c (u8_mblen): Likewise.
* lib/unistr/u8-mbtouc-unsafe.c (u8_mbtouc_unsafe): Likewise.
* lib/unistr/u8-mbtouc-unsafe-aux.c (u8_mbtouc_unsafe_aux): Likewise.
* lib/unistr/u8-prev.c (u8_prev): Likewise.
* lib/unistr/u8-strmblen.c (u8_strmblen): Likewise.
* lib/unistr/u8-strmbtouc.c (u8_strmbtouc): Likewise.
* lib/unistr/u16-mblen.c (u16_mblen): Likewise.
* lib/unistr/u16-mbtouc-unsafe.c (u16_mbtouc_unsafe): Likewise.
* lib/unistr/u16-mbtouc-unsafe-aux.c (u16_mbtouc_unsafe_aux): Likewise.
* lib/unistr/u16-prev.c (u16_prev): Likewise.
* lib/unistr/u16-strmblen.c (u16_strmblen): Likewise.
* lib/unistr/u16-strmbtouc.c (u16_strmbtouc): Likewise.
* lib/unistr/u32-mblen.c (u32_mblen): Likewise.
* lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Likewise.
* lib/unistr/u32-prev.c (u32_prev): Likewise.
* lib/unistr/u32-next.c (u32_next): Likewise.
* lib/unistr/u32-strmblen.c (u32_strmblen): Likewise.
* lib/unistr/u32-strmbtouc.c (u32_strmbtouc): Likewise.
* lib/uniconv/u8-conv-to-enc.c (u8_conv_to_encoding): Likewise.
* lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
* tests/unistr/test-u16-prev.c (check_invalid): Enable the
CONFIG_UNICODE_SAFETY tests unconditionally.
* tests/unistr/test-u32-mblen.c (main): Likewise.
* tests/unistr/test-u32-mbtouc.h (test_function): Likewise.
* tests/unistr/test-u32-prev.c (check_invalid): Likewise.
* tests/unistr/test-u32-next.c (main): Likewise.
* tests/unistr/test-u32-strmblen.c (main): Likewise.
* tests/unistr/test-u32-strmbtouc.c (main): Likewise.
* tests/unistr/test-u32-mbtouc.c (FULL_SAFETY): Remove macro.
* lib/unistr/u8-check.c (u8_check): Remove old dead code.
* lib/unistr/u8-mbtouc.c (u8_mbtouc): Likewise.
* lib/unistr/u8-mbtouc-aux.c (u8_mbtouc_aux): Likewise.
* lib/unistr/u8-mbtoucr.c (u8_mbtoucr): Likewise.
* lib/unistr/u8-uctomb.c (u8_uctomb): Likewise.
* lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Likewise.
* lib/unistr/u16-check.c (u16_check): Update comment.
* NEWS: Mention the changes that callers should be aware of.

8 years agoCorrect indentation.
Bruno Haible [Sat, 19 Nov 2016 13:07:58 +0000 (14:07 +0100)]
Correct indentation.

8 years agorelocatable-prog-wrapper: Fix breakage on Cygwin.
Bruno Haible [Sat, 19 Nov 2016 13:03:07 +0000 (14:03 +0100)]
relocatable-prog-wrapper: Fix breakage on Cygwin.

* modules/relocatable-prog-wrapper (Files): Add lib/stat.c, lib/lstat.c.
(Depends-on): Remove intprops.
* lib/relocwrapper.c: Update dependency tree.
(strerror): Undefine.
* build-aux/install-reloc (func_create_wrapper): Do not compile
strerror.c and strerror-override.c. Erase stat.o and lstat.o.

8 years agostrerror: Make it compile in C++ mode.
Bruno Haible [Sat, 19 Nov 2016 11:50:28 +0000 (12:50 +0100)]
strerror: Make it compile in C++ mode.

* lib/strerror.c (strerror): Ignore the return value of memcpy().

8 years agosys_time: add gnulib::timeval for C++
Pedro Alves [Tue, 15 Nov 2016 02:36:00 +0000 (02:36 +0000)]
sys_time: add gnulib::timeval for C++

* lib/sys_time.in.h [__cplusplus && defined GNULIB_NAMESPACE]:
Define "timeval" in the GNULIB_NAMESPACE namespace, and #undef any
timeval macro.

8 years agosnippet/c++defs: fix real-floating arg functions in C++ mode
Pedro Alves [Mon, 14 Nov 2016 23:08:21 +0000 (23:08 +0000)]
snippet/c++defs: fix real-floating arg functions in C++ mode

Also, define isfinite, isinf, isnan, signbit in the gnulib
namespace instead of in the global namespace.
* build-aux/snippet/c++defs.h (_GL_BEGIN_NAMESPACE)
(_GL_END_NAMESPACE): New.
* lib/math.in.h (_GL_MATH_CXX_REAL_FLOATING_DECL_2): Use them.
(isfinite, isinf, isnan, signbit) [__cplusplus &&
GNULIB_NAMESPACE]: Define them in the GNULIB_NAMESPACE namespace
instead of in the global namespace.
* tests/test-math-c++.cc: Check that the isfinite, isinf, isnan,
signbit overloads exist in the GNULIB_NAMESPACE namespace, instead
of in the global namespace.

8 years agostrftime: don't use __THROW
Jim Meyering [Mon, 14 Nov 2016 02:15:36 +0000 (18:15 -0800)]
strftime: don't use __THROW

Each use of __THROW would provoke this from gcc-7-to-be:

  lib/strftime.c:371:1: warning: '__leaf__' attribute has no effect \
    on unit local functions [-Wattributes]
  static int iso_week_days (int, int) __THROW;
  ^~~~~~
* lib/strftime.c (__THROW): Don't define.
Remove each use of __THROW.
* lib/strftime.c (memcpy_lowcase, memcpy_uppcase): Remove __THROW.
(tm_diff, iso_week_days, __strftime_internal): Likewise.

8 years agoobstack: port to gcc -fcheck-pointer-bounds
Paul Eggert [Tue, 15 Nov 2016 03:48:28 +0000 (19:48 -0800)]
obstack: port to gcc -fcheck-pointer-bounds

Problem found by 'make check' failure on bleeding-edge coreutils
on an MPX-enabled CPU (Intel Core i3-7100U) running GCC (Ubuntu
6.2.0-5ubuntu12), configured via "./configure
--enable-gcc-warnings CFLAGS='-mmpx -fcheck-pointer-bounds -g3
-O2' LDFLAGS='-static-libmpx -static-libmpxwrappers'".
* lib/obstack.h (__FLEXIBLE_ARRAY_MEMBER):
New macro, copied from fts_.h.
(struct _obstack_chunk.contents): Use it.

8 years agostrerror_r-posix: Another fix, for HAVE_DECL_STRERROR_R on mingw
Eric Blake [Mon, 14 Nov 2016 21:36:51 +0000 (15:36 -0600)]
strerror_r-posix: Another fix, for HAVE_DECL_STRERROR_R on mingw

Commit 5ddd9d7 improved strerror_r on glibc systems (where
STRERROR_R_CHAR_P was defined twice with different values), but
missed mingw systems (where HAVE_DECL_STRERROR_R is now defined
twice with different values).  Avoid the AC_CHECK_DECLS[_ONCE]
and AC_CHECK_FUNCS[_ONCE] m4 macros that call AC_DEFINE under the
hood, and instead limit our checks to just setting shell witnesses,
so that compilation on mingw doesn't trigger warnings (and mess up
subsequent tests that use -Werror) about a redefined C preprocessor
macro.

* m4/strerror_r.m4 (gl_FUNC_STRERROR_R, gl_FUNC_STRERROR_R_WORKS):
Avoid calling macros that may supply a conflicting AC_DEFINE().

Signed-off-by: Eric Blake <eblake@redhat.com>
8 years agostrptime: fix compile error in recent change
Pádraig Brady [Mon, 14 Nov 2016 20:07:39 +0000 (20:07 +0000)]
strptime: fix compile error in recent change

* lib/strptime.c (__strptime_internal): Fix ported code.

8 years agognulib-tool: Support for the dual "LGPLv3+ or GPLv2" license.
Bruno Haible [Sun, 13 Nov 2016 03:12:26 +0000 (04:12 +0100)]
gnulib-tool: Support for the dual "LGPLv3+ or GPLv2" license.

* gnulib-tool (--lgpl): Accept value 3orGPLv2.
(func_import): Extend determination of license_incompatibilities.
(func_create_testdir): Extend table of license compatibility. Handle
also the licenses GPLv3+, GPL, LGPLv3+.

8 years agostrftime: tune %q
Paul Eggert [Sun, 13 Nov 2016 01:40:26 +0000 (17:40 -0800)]
strftime: tune %q

* lib/strftime.c (__strftime_internal): Assume tp->tm_mon is in range.

8 years agoMerge strftime.c changes from glibc
Paul Eggert [Sun, 13 Nov 2016 01:26:39 +0000 (17:26 -0800)]
Merge strftime.c changes from glibc

This incorporates:
2007-10-16 [BZ #5184] Add tzset_called argument
2008-06-13 [BZ #6612] pass reference to tzset_called around
2009-10-30 Implement Burmese language locale for Myanmar
2010-01-09 Add support for XPG7 testing
2015-09-26 [BZ #18985] out of range data to strftime() causes a segfault
2015-10-20 Convert miscellaneous function definitions to prototype style
* lib/strftime.c: Copy glibc license, since gnulib-tool rewrites
it anyway and this lessens the difference between gnulib and glibc.
(USE_IN_EXTENDED_LOCALE_MODEL) [_LIBC]: Define.
(__THROW): Define if standard headers do not.
(LOCALE_PARAM): Rename from LOCALE_PARAM_PROTO.  All uses changed.
(memcpy_locase, memcpy_uppcase, tm_diff, __strftime_internal):
Declare with __THROW.
(__strftime_internal): Rename from strftime_case_. Add arg for
whether tzset is called.  All uses changed.  Call tzset at most
once.  Allow %OC, for Burmese.
(a_wkday, f_wkday, a_month, f_month) [_NL_CURRENT]:
Don't assume values are in range.

8 years agostrerror_r-posix: Fix override of AC_FUNC_STRERROR_R
Eric Blake [Fri, 4 Nov 2016 19:06:39 +0000 (14:06 -0500)]
strerror_r-posix: Fix override of AC_FUNC_STRERROR_R

Requiring autoconf's AC_FUNC_STRERROR_R and then calling AC_DEFINE
ourselves leads to two insertions of #define STRERROR_R_CHAR_P
in confdefs.h, but with different values (at least on glibc).  This
in turn sparks a gcc warning about redeclaring the macro, and kills
any subsequent tests that use -Werror (which now error because of
the conflicting define, whether or not the test used to error).

A better approach is to replace the autoconf macro with a version
of our own that doesn't probe anything, so that the AC_DEFINE is
reached exactly once.

* m4/strerror_r.m4 (AC_FUNC_STRERROR_R): New override.
(gl_FUNC_STRERROR_R): Don't reuse AC_DEFINE() with a potentially
different value.

Signed-off-by: Eric Blake <eblake@redhat.com>
8 years agoFix gnulib C++ namespace support and std::frexp
Pedro Alves [Sat, 12 Nov 2016 16:22:53 +0000 (16:22 +0000)]
Fix gnulib C++ namespace support and std::frexp

* lib/math.in.h (frexp): Use _GL_CXXALIASWARN1 instead of
_GL_CXXALIASWARN.

8 years agoGNULIB_NAMESPACE::func need not pull in rpl_func
Pedro Alves [Sat, 12 Nov 2016 16:22:54 +0000 (16:22 +0000)]
GNULIB_NAMESPACE::func need not pull in rpl_func

* build-aux/snippet/c++defs.h [__cplusplus && GNULIB_NAMESPACE]
(_GL_CXXALIAS_RPL_1, _GL_CXXALIAS_RPL_CAST_1, _GL_CXXALIAS_SYS)
(_GL_CXXALIAS_SYS_CAST, _GL_CXXALIAS_SYS_CAST2): Define a wrapper
struct instead of a function pointer.

8 years agomanywarnings: fix -Wno-missing-field-initializers detection
Frediano Ziglio [Wed, 9 Nov 2016 11:21:51 +0000 (06:21 -0500)]
manywarnings: fix -Wno-missing-field-initializers detection

* m4/manywarnings.m4: Fix -Wno-missing-field-initializers detection
to be independent of -Wunused-variable.  I.E. ensure the latter
warning doesn't occur so that detection of the former is accurate.

8 years agonon-recursive-gnulib-prefix-hack: revert use of parameterized 'lib' dir
Pádraig Brady [Mon, 7 Nov 2016 12:50:24 +0000 (12:50 +0000)]
non-recursive-gnulib-prefix-hack: revert use of parameterized 'lib' dir

This reverts commit df6f91c as the evaluation of the passed shell
variable happens at the wrong time in the references generated by
m4/non-recursive-gnulib-prefix-hack.m4
Revert to the hardcoded "lib/".

8 years agostrftime,strptime: support %q to represent the quarter
Pádraig Brady [Wed, 19 Oct 2016 21:46:14 +0000 (14:46 -0700)]
strftime,strptime: support %q to represent the quarter

* lib/strftime.c (strftime_case_): Add %q case.
* lib/strptime.c (__strptime_internal): Likewise.
* tests/test-strftime.c (quarter_test): A new test case.

8 years agoautoupdate
Karl Berry [Fri, 4 Nov 2016 15:32:09 +0000 (08:32 -0700)]
autoupdate

8 years agobootstrap: Fix get_version() for AIX 5.3
Eric Blake [Thu, 3 Nov 2016 18:50:30 +0000 (13:50 -0500)]
bootstrap: Fix get_version() for AIX 5.3

* build-aux/bootstrap (get_version): Factor out sed script, since
indented comments choke AIX 5.3 sed.

Reported-by: Michael Felt <aixtools@gmail.com>
Signed-off-by: Eric Blake <eblake@redhat.com>
8 years agointprops: port to older XL C
Paul Eggert [Fri, 4 Nov 2016 04:34:58 +0000 (21:34 -0700)]
intprops: port to older XL C

Problem reported by Alexander Samoilov in:
http://lists.gnu.org/archive/html/bug-gnulib/2016-10/msg00166.html
http://savannah.nongnu.org/bugs/?49448
* lib/intprops.h (_GL_HAVE___TYPEOF__) [__IBM__TYPEOF__]:
Define to 1 only for XL C 12.1 or later, since this bug
occurs in XL C for AIX 6.0 but not in 12.1.

8 years agoautoupdate
Karl Berry [Thu, 3 Nov 2016 13:52:50 +0000 (06:52 -0700)]
autoupdate

8 years agobackupfile: initialize default suffix within the implementation
Pádraig Brady [Wed, 2 Nov 2016 17:52:12 +0000 (17:52 +0000)]
backupfile: initialize default suffix within the implementation

* lib/backupfile.c (find_backup_file_name): Initialize the
global variable here, to simplify usage, and to only call
getenv() when needed.

8 years agofutimens: remove FIXME for old Linux kernels
Paul Eggert [Tue, 1 Nov 2016 22:38:59 +0000 (15:38 -0700)]
futimens: remove FIXME for old Linux kernels

* m4/futimens.m4 (gl_FUNC_FUTIMENS): Belatedy do a "simplify
this in 2012" FIXME, like that for utimensat.

8 years agoutimensat: remove FIXME for old Linux kernels
Paul Eggert [Tue, 1 Nov 2016 15:55:17 +0000 (08:55 -0700)]
utimensat: remove FIXME for old Linux kernels

* lib/utimensat.c (rpl_utimensat): Update FIXME comment.
* m4/utimensat.m4 (gl_FUNC_UTIMENSAT): Belatedy do a "simplify
this in 2012" FIXME, by assuming the file system bug is absent
unless demonstrated to be present.  We no longer need to worry
about Linux kernel 2.6.32 when building with newer kernels.

8 years agomaint: update how to make web pages
Paul Eggert [Thu, 27 Oct 2016 16:12:16 +0000 (09:12 -0700)]
maint: update how to make web pages

* doc/README: Update to match what I did today.

8 years agoqsort_r: Fix macrology for platforms that lack the function.
Bruno Haible [Sun, 16 Oct 2016 20:11:32 +0000 (22:11 +0200)]
qsort_r: Fix macrology for platforms that lack the function.

* m4/stdlib_h.m4 (gl_STDLIB_H): Check for qsort_r.
(gl_STDLIB_H_DEFAULTS): Initialize HAVE_QSORT_R.
* modules/stdlib (Makefile.am): Substitute HAVE_QSORT_R.
* lib/stdlib.in.h (qsort_r): Provide declaration if the function does
not exist.
* m4/qsort_r.m4 (gl_FUNC_QSORT_R): Use AC_CHECK_FUNCS to test whether
the function exists.
* modules/qsort_r: Add comments.

8 years agosys_types: fix Texinfo typos
Paul Eggert [Thu, 27 Oct 2016 01:10:37 +0000 (18:10 -0700)]
sys_types: fix Texinfo typos

* doc/glibc-functions/gnu_dev_major.texi:
* doc/glibc-functions/gnu_dev_makedev.texi:
* doc/glibc-functions/gnu_dev_minor.texi: Fix typos.

8 years agogetprogname: port to HP-UX
John David Anglin [Thu, 27 Oct 2016 00:16:01 +0000 (17:16 -0700)]
getprogname: port to HP-UX

See Bug#24805.
* lib/getprogname.c (getprogname) [__hpux]: Port.
* tests/test-getprogname.c (STREQ) [__hpux]:
Special-case for HP-UX limitations on program name length.

8 years agoUpdate doc about target platforms.
Bruno Haible [Fri, 21 Oct 2016 01:09:23 +0000 (03:09 +0200)]
Update doc about target platforms.

* doc/gnulib-intro.texi (Target Platforms): Update list.

8 years agoopendir, readdir, closedir: Relicense under LGPLv2+.
Bruno Haible [Sat, 15 Oct 2016 13:23:34 +0000 (15:23 +0200)]
opendir, readdir, closedir: Relicense under LGPLv2+.

* modules/opendir (License): Change to LGPLv2+.
* modules/readdir (License): Likewise.
* modules/closedir (License): Likewise.

8 years agoFix conflict between strerror_r-posix module and AC_FUNC_STRERROR_R.
Bruno Haible [Sun, 16 Oct 2016 15:45:52 +0000 (17:45 +0200)]
Fix conflict between strerror_r-posix module and AC_FUNC_STRERROR_R.

* m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Override the values set by the
AC_FUNC_STRERROR_R macro. Define HAVE_DECL_STRERROR_R_ORIG.
* lib/strerror_r.c: Use HAVE_DECL_STRERROR_R_ORIG instead of
HAVE_DECL_STRERROR_R.

8 years agoMake the 'argp' module work without the 'error' module.
Bruno Haible [Sun, 16 Oct 2016 15:43:53 +0000 (17:43 +0200)]
Make the 'argp' module work without the 'error' module.

* m4/argp.m4 (gl_ARGP): Require AC_FUNC_STRERROR_R.

8 years agodiffseq: restore TOO_EXPENSIVE heuristic
Paul Eggert [Tue, 25 Oct 2016 21:59:29 +0000 (14:59 -0700)]
diffseq: restore TOO_EXPENSIVE heuristic

* lib/diffseq.h: Problem with diffutils reported by Andreas Schwab
(Bug#24715).  The simplest solution is to restore the
TOO_EXPENSIVE heuristic that I added to GNU diff in 1993, while
using a higher threshold to avoid Bug#16848 on smaller files.
* lib/diffseq.h (struct context): Restore member too_expensive.
(struct partition): Restore members lo_minimal, hi_minimal.
(diag, compareseq): Restore arg find_minimal.  All uses changed.
(diag): Restore the TOO_EXPENSIVE heuristic that I added back in
1993 to make 'diff' run faster (but not as well) on large inputs,
but use a threshold of 4096 instead of the old 256.
* lib/fstrcmp.c (strcmp_bounded):
* lib/git-merge-changelog.c (compute_differences):
Adjust to diffseq.h changes.

8 years agonon-recursive-gnulib-prefix-hack: Don't make assumptions about gnulib-tool's --source...
Bruno Haible [Sat, 22 Oct 2016 17:17:26 +0000 (19:17 +0200)]
non-recursive-gnulib-prefix-hack: Don't make assumptions about gnulib-tool's --source-base option value.

* modules/non-recursive-gnulib-prefix-hack (configure.ac): Use
gl_source_base.

8 years agoiconv: Avoid compilation error when bootstrapping GNU libiconv.
Bruno Haible [Sat, 22 Oct 2016 21:04:03 +0000 (23:04 +0200)]
iconv: Avoid compilation error when bootstrapping GNU libiconv.

* m4/iconv.m4 (AM_ICONV): When the system does not have an iconv()
declaration yet, define ICONV_CONST to empty.

8 years agoAvoid gnulib-tool warnings about the dependencies of 'parse-datetime'.
Bruno Haible [Sat, 15 Oct 2016 13:51:20 +0000 (15:51 +0200)]
Avoid gnulib-tool warnings about the dependencies of 'parse-datetime'.

* gnulib-tool (func_get_license): Special-case the 'parse-datetime'
module.

8 years agosystem-quote tests: Avoid compiler warning on AIX.
Bruno Haible [Mon, 17 Oct 2016 00:16:57 +0000 (02:16 +0200)]
system-quote tests: Avoid compiler warning on AIX.

* tests/test-system-quote-child.c (fopen): Redefine like the system's
<stdio.h> does.

8 years agoFix some "gcc -Wall" warnings.
Bruno Haible [Sun, 16 Oct 2016 14:59:45 +0000 (16:59 +0200)]
Fix some "gcc -Wall" warnings.

* tests/test-ffsl.c (main): Use variable x, not i.
* tests/test-posix_spawn3.c (parent_main): Consider the return value of
freopen.
* tests/test-sethostname1.c (main): Explicitly ignore the return value
of sethostname.

8 years agognulib-tool: Make --create-testdir on all modules work again.
Bruno Haible [Sun, 16 Oct 2016 12:11:18 +0000 (14:11 +0200)]
gnulib-tool: Make --create-testdir on all modules work again.

* gnulib-tool (func_create_testdir): Don't include the
non-recursive-gnulib-prefix-hack module.

8 years agolibunistring: change the maintainer to 'all'
Daiki Ueno [Thu, 20 Oct 2016 07:45:50 +0000 (09:45 +0200)]
libunistring: change the maintainer to 'all'

* modules/gen-uni-tables, modules/libunistring:
* modules/ucs4-utf16, modules/ucs4-utf8, modules/unicodeio:
* modules/unitypes, modules/utf16-ucs4, modules/utf16-ucs4-unsafe:
* modules/utf8-ucs4, modules/utf8-ucs4-unsafe:
* modules/unicase/*, modules/uniconv/*, modules/unictype/*:
* modules/unilbrk/*, modules/uniname/*, modules/uninorm/*:
* modules/unistdio/*, modules/unistr/*, modules/uniwbrk/*:
* modules/uniwidth/*: Change the maintainer to 'all'.

8 years agoSimplify "configure: checking ..." messages.
Bruno Haible [Sun, 16 Oct 2016 13:54:45 +0000 (15:54 +0200)]
Simplify "configure: checking ..." messages.

* m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use AC_MSG_CHECKING instead of
AC_MSG_NOTICE.
* m4/getaddrinfo.m4 (gl_GETADDRINFO): Likewise.

8 years agoSimplify "configure: checking ..." messages.
Bruno Haible [Sun, 16 Oct 2016 14:09:29 +0000 (16:09 +0200)]
Simplify "configure: checking ..." messages.

* m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use AC_MSG_CHECKING instead of
AC_MSG_NOTICE.
* m4/getaddrinfo.m4 (gl_GETADDRINFO): Likewise.

8 years agoquotearg-tests: pacify gcc -Wall
Paul Eggert [Thu, 20 Oct 2016 22:35:02 +0000 (15:35 -0700)]
quotearg-tests: pacify gcc -Wall

Problem reported by Bruno Haible in:
http://lists.gnu.org/archive/html/bug-gnulib/2016-10/msg00066.html
* tests/test-quotearg-simple.c (use_quote_double_quotes): Move here ...
* tests/test-quotearg.h: ... from here.

8 years agocanonicalize-lgpl: fix for missing SIZE_MAX on older systems
Pádraig Brady [Thu, 20 Oct 2016 18:28:07 +0000 (11:28 -0700)]
canonicalize-lgpl: fix for missing SIZE_MAX on older systems

* lib/canonicalize-lgpl.c [SIZE_MAX]: Define if needed.
Needed on Centos <= 4.

8 years agoprintf.m4: fix a bug in detecting printf %j support
Jim Meyering [Thu, 20 Oct 2016 16:32:54 +0000 (09:32 -0700)]
printf.m4: fix a bug in detecting printf %j support

* m4/printf.m4 (gl_PRINTF_SIZES_C99): Fail any system for which
uintmax_t is defined in neither stdint.h nor inttypes.h.
Before, this macro might have mistakenly set
gl_cv_func_printf_sizes_c99=yes on such a system.
Spotted by Zev Weiss.

8 years agosched: substitute HAVE_SYS_CDEFS_H too
Paul Eggert [Thu, 20 Oct 2016 06:46:10 +0000 (23:46 -0700)]
sched: substitute HAVE_SYS_CDEFS_H too

Problem reported by Tom G. Christensen in:
http://lists.gnu.org/archive/html/bug-gnulib/2016-10/msg00084.html
* m4/sched_h.m4 (gl_SCHED_H): Set and substitute HAVE_SYS_CDEFS_H.
* modules/sched (Depends-on): Substitute HAVE_SYS_CDEFS_H.

8 years agoquotearg: never write beyond the returned length
Pádraig Brady [Tue, 18 Oct 2016 20:00:07 +0000 (13:00 -0700)]
quotearg: never write beyond the returned length

* lib/quotearg.c (quotearg_buffer_restyled): Switch to a read-only
scan of the string when we initially encounter a single quote when
shell quoting, so that if we then switch to a more concise quoting method
we will not have written beyond that returned length.
This is significant for sh-quote, which has separate routines
to determine the length and do the actual quoting.
* tests/test-quotearg.h: Reinstate the buffer bounds checking
now that we never write more than the returned length.

8 years agogetprogname tests: Avoid failure in packages that use libtool.
Bruno Haible [Tue, 18 Oct 2016 22:33:01 +0000 (00:33 +0200)]
getprogname tests: Avoid failure in packages that use libtool.

* tests/test-getprogname.c (main): Strip "lt-" prefix.
Based on a patch by Jim Meyering.

8 years agogetprogname: Fix test failure on Cygwin. Comments.
Bruno Haible [Sun, 16 Oct 2016 11:53:18 +0000 (13:53 +0200)]
getprogname: Fix test failure on Cygwin. Comments.

* lib/getprogname.h: Add comments.
* lib/getprogname.c: Add comments. Fix #elif indentation.
* tests/test-getprogname.c (main): On Cygwin, expect a result without
".exe" suffix.

8 years agoMake sure the libunistring detection rejects older versions with a known bug.
Bruno Haible [Sun, 16 Oct 2016 18:07:37 +0000 (20:07 +0200)]
Make sure the libunistring detection rejects older versions with a known bug.

* modules/unistr/u8-strtok (configure.ac): Bump required version.
* modules/unistr/u16-strtok (configure.ac): Likewise.
* modules/unistr/u32-strtok (configure.ac): Likewise.

8 years agosh-quote, system-quote: revert regression of unit test.
Bruno Haible [Tue, 18 Oct 2016 12:10:01 +0000 (14:10 +0200)]
sh-quote, system-quote: revert regression of unit test.

* tests/test-sh-quote.c (check_one): Do detect buffer overruns.
* tests/test-system-quote-main.c (check_one): Likewise.

8 years agoquotearg: fix stale tests
Pádraig Brady [Sun, 16 Oct 2016 21:51:30 +0000 (22:51 +0100)]
quotearg: fix stale tests

* tests/test-quotearg.c [locale_results]: Add the missing str7
entries to the expected results.
tests/test-system-quote-main.c (check_one): Don't enforce that we
don't write beyond the returned length, since that's no longer the
case if we switch to a more concise quoting style.
* tests/test-sh-quote.c (check_one): Likewise.
(main): Adjust for the new more concise quoting style.
Reported by Bruno Haible.

8 years agonon-recursive-gnulib-prefix-hack: fix inconsequential typo
Jim Meyering [Sun, 16 Oct 2016 20:24:09 +0000 (13:24 -0700)]
non-recursive-gnulib-prefix-hack: fix inconsequential typo

* m4/non-recursive-gnulib-prefix-hack.m4: Change a hard-coded "lib"
to "$1".  This macro is always invoked with $1 == lib.
Spotted by Bruno Haible

8 years agoFix a test crash.
Bruno Haible [Sun, 16 Oct 2016 18:09:16 +0000 (20:09 +0200)]
Fix a test crash.

* tests/test-duplocale.c (main): Skip the test if the 'newlocale' call
fails.

8 years agotest-limits-h: suppress -Woverlength-strings
Pádraig Brady [Sat, 15 Oct 2016 22:29:16 +0000 (23:29 +0100)]
test-limits-h: suppress -Woverlength-strings

* tests/test-limits-h.c [__GNUC__]: Ignore -Woverlength-strings.

8 years agogettime, timespec, utimens: Relicense under LGPL.
Bruno Haible [Sat, 15 Oct 2016 13:09:13 +0000 (15:09 +0200)]
gettime, timespec, utimens: Relicense under LGPL.

* modules/gettime (License): Change to LGPL.
* modules/timespec (License): Likewise.
* modules/utimens (License): Likewise.