|
71090a2a
|
2016-01-01T00:56:19
|
|
version-etc: new year
* build-aux/gendocs.sh (version):
* doc/gendocs_template:
* doc/gendocs_template_min:
* doc/gnulib.texi:
* lib/version-etc.c (COPYRIGHT_YEAR):
Update copyright dates by hand in templates and the like.
* all files: Run 'make update-copyright'.
|
|
92bbc1b5
|
2015-12-31T13:16:55
|
|
human: fix output buffer overrun by 1
* lib/human.c (human_readable): Fix off-by-one typo in buffer
calculation that could lead to a one-byte buffer overrun.
|
|
8cc2bb48
|
2015-12-28T08:16:02
|
|
maint: add missing ChangeLog entry for previous commit
|
|
f7d3057b
|
2015-12-23T19:22:40
|
|
regexprops-generic: update from regex.h
* doc/regexprops-generic.texi: update by running the regexprops binary
from findutils (the command line is 'regexprops "Regular Expressions"
generic'). The recent (ish) change (5a5a9388) to regex.h aligning
gnulib with GNU grep had made this document out-of-date.
|
|
81d0a264
|
2015-12-22T15:45:56
|
|
strftime-tests: avoid false failure on OS X
* tests/test-strftime.c (struct localtime_rz_test): Add an
ahistorical member which is used to warn rather than fail
when tm_isdst isn't set for such entries. This is the case for
"1970-01-01 13:00:00 +1300 (NZDT)" on Darwin 13/14 at least.
|
|
c97b8b90
|
2015-12-09T07:34:56
|
|
fts: ensure leaf optimization is used for NFS
NFS provides usable dirent.d_type but not necessarily for all entries
of large directories. See <https://bugzilla.redhat.com/1252549>
* lib/fts.c (leaf_optimization_applies): Append NFS on the white list.
|
|
d459ec6a
|
2015-12-20T23:46:05
|
|
fts: enable leaf optimization for XFS
XFS provides usable dirent.d_type only for DT_DIR,
but the noleaf optimization still applies, as confirmed with:
test $(($(find . -maxdepth 1 -type d | wc -l) + 1)) = $(stat -c %h .)
Enabling this gives significant traversal speedup.
Testing with find(1) gives:
$ time find/find-before /usr/share >/dev/null
real 0m0.410s
user 0m0.145s
sys 0m0.266s
$ time find/find-after /usr/share >/dev/null
real 0m0.278s
user 0m0.147s
sys 0m0.131s
* lib/fts.c (leaf_optimization_applies): Add XFS to the white list.
|
|
a2149646
|
2015-12-17T23:06:29
|
|
intprops: comment fix
* lib/intprops.h: Fix comment. Reported by Pádraig Brady in:
http://lists.gnu.org/archive/html/bug-gnulib/2015-12/msg00013.html
|
|
111ca669
|
2015-12-17T12:56:55
|
|
intprops-test: work around GCC bug 68971
Problem reported by Pádraig Brady in:
http://lists.gnu.org/archive/html/bug-gnulib/2015-12/msg00011.html
* tests/test-intprops.c: Ignore -Woverflow in GCC 6 and earlier.
(main): Add a case that better tests 64-bit long in this area.
|
|
55c6f22b
|
2015-11-21T14:09:15
|
|
gnulib-tool: allow multiple --local-dir usage
* gnulib-tool: Use --local-dir to construct compound
$local_gnulib_path path instead of $local_gnulib_dir. Determine
PATH_SEPARATOR early.
(local_gnulib_dir): Rename into $local_gnulib_path everywhere.
(func_gnulib_dir): Cut out PATH_SEPARATOR detection code into
func_determine_path_separator because that needs to be detected
earlier now.
(func_determine_path_separator): New function.
(func_path_foreach, func_path_foreach_inner): New functions.
(func_path_prepend, func_path_append): Likewise.
(func_lookup_local_file, func_lookup_local_file_cb): Likewise.
(func_lookup_file, func_all_modules): Use new functions to work
with local_gnulib_path.
(func_modules_in_dir, func_exists_module): New callbacks for
func_path_foreach.
(func_exists_module, func_get_tests_module): Likewise.
(func_is_local_file, func_should_symlink): New helper methods.
(func_add_file, func_update_file): Use new func_should_symlink
instead, DRY.
(func_reconstruct_cached_local_gnulib_path): New helper.
(func_reconstruct_cached_dir): New callback.
(func_import): The cached_local_gnulib_dir renamed to
cached_local_gnulib_path similarly to local_gnulib_dir.
Use new func_reconstruct_cached_local_gnulib_path.
(func_count_relative_local_gnulib_path): New sub-method.
(func_create_testdir): Use func_should_symlink, DRY.
(func_create_megatestdir): Use new functions to work with
local_gnulib_path correctly.
(func_append_local_dir): New helper.
|
|
b8d01591
|
2015-12-08T15:30:56
|
|
fix freadptr to work with ungetc on all uClibc configs
This was noticed at https://bugs.busybox.net/show_bug.cgi?id=4099
where GNU coreutils cut fails like:
$echo '3:0:0:' | cut -d : -f 2
30
The reason is because GNU cut uses ungetc(),
and that wasn't handled appropriately on uClibc
when __UCLIBC_HAS_STDIO_GETC_MACRO__ is not defined.
* lib/freadptr.c (freadptr): Return NULL if there are
ungotten chars. In this case freadseek() will iterate
again to process the ungotten character.
|
|
9c919a06
|
2015-11-13T12:27:57
|
|
xalloc-oversized: improve performance with GCC 5
* lib/xalloc-oversized.h (xalloc_oversized):
Improve performance with GCC 5 by using __builtin_mul_overflow.
|
|
f197c2c9
|
2015-11-10T12:31:38
|
|
intprops: new public macro EXPR_SIGNED
Emacs can use this macro, so make it public.
* doc/intprops.texi (Arithmetic Type Properties): Rename from
'Integer Type Determination', since some of these macros apply
to non-integer types. Clarify what kinds of constant expressions
these macros return. Say when the arguments can be non-integers.
Mention newly published macro EXPR_SIGNED.
* lib/intprops.h (EXPR_SIGNED): Rename from _GL_INT_SIGNED, to
make it public. All uses changed.
|
|
a66a3b96
|
2015-11-10T09:35:16
|
|
intprops: fix typo in clang port
* lib/intprops.h (_GL_INT_OP_WRAPV): Fix misspelling of
'__builtin_add_overflow' that is not caught by compiler.
|
|
36d982f3
|
2015-11-05T18:32:03
|
|
test-timespec: fix typo in previous change
* tests/test-timespec.c (main): Fix typo that reduced test quality.
|
|
051613c2
|
2015-11-05T17:41:43
|
|
timespec-sub: fix overflow bug; add tests
* lib/timespec-add.c (timespec_add):
* lib/timespec-sub.c (timespec_sub):
Work even if time_t is narrower than int (a theoretical
possibility). Redo code for a bit more clarity.
* lib/timespec-sub.c (timespec_sub):
Fix off-by-2 bug if a.tv_sec == TYPE_MINIMUM (time_t) and 0 < b.tv_sec.
* modules/timespec-tests, tests/test-timespec.c: New files.
|
|
ca648747
|
2015-11-05T07:46:32
|
|
intprops-test: suppress -Woverlength-strings
Problem reported by Pádraig Brady in:
http://lists.gnu.org/archive/html/bug-gnulib/2015-11/msg00008.html
It is not worth the hassle to port this test to compilers that
cannot handle long strings in diagnostics.
* tests/test-intprops.c [__GNUC__]: Ignore -Woverlength-strings.
|
|
605b6330
|
2015-11-04T23:21:03
|
|
maint: add missing ChangeLog entry for previous commit
|
|
8780c178
|
2015-11-04T08:27:57
|
|
intprops: revise _WRAPV macros, revert _OVERFLOW
The incompatible changes to the _OVERFLOW macros were too much of
a hassle in practice, so revert them. Instead, change the new
_WRAPV macros to make them closer in behavior to GCC 5's new
builtin_add_overflow etc. functions. No other software was using
these newly-added macros yet, so this should be OK.
* NEWS: Revert previous change, since the incompatible change
has been reverted, and nobody used the incompatible version.
* doc/intprops.texi (Wraparound Arithmetic, Integer Type Overflow):
Document revised behavior.
(Integer Range Overflow): Adjust example to match above revisions.
* lib/intprops.h (INT_ADD_OVERFLOW, INT_SUBTRACT_OVERFLOW)
(INT_MULTIPLY_OVERFLOW): Revert previous change, so that
these can be used in integer constant expressions again.
(INT_CONST_ADD_OVERFLOW, INT_CONST_SUBTRACT_OVERFLOW)
(INT_CONST_MULTIPLY_OVERFLOW): Remove, as these are no longer
needed.
(INT_CONST_ADD_WRAPV, INT_CONST_SUBTRACT_WRAPV)
(INT_NEGATE_WRAPV, INT_CONST_MULTIPLY_WRAPV, INT_DIVIDE_WRAPV)
(INT_REMAINDER_WRAPV, INT_LEFT_SHIFT_WRAPV):
Remove, as they did not seem that useful.
(INT_ADD_WRAPV, INT_SUBTRACT_WRAPV, INT_MULTIPLY_WRAPV)
(_GL_INT_OP_WRAPV, _GL_INT_OP_WRAPV_LONGISH)
(_GL_INT_OP_WRAPV_VIA_UNSIGNED):
Support new semantics.
(__has_builtin): New macro, if not alreay defined.
(_GL__GENERIC_BOGUS, _GL_INT_OP_CALC, _GL_INT_OP_CALC1): New macros.
* tests/test-intprops.c (INT_CONST_DIVIDE_OVERFLOW)
(INT_CONST_REMAINDER_OVERFLOW, INT_CONST_LEFT_SHIFT_OVERFLOW)
(INT_CONST_DIVIDE_WRAPV, INT_CONST_REMAINDER_WRAPV)
(INT_CONST_LEFT_SHIFT_WRAPV): Remove.
(CHECK_SBINOP, CHECK_SSUM, CHECK_SUM1, CHECK_SSUM1)
(CHECK_SDIFFERENCE, CHECK_SPRODUCT, CHECK_PRODUCT1, CHECK_SPRODUCT1):
New macros.
(CHECK_BINOP, CHECK_UNOP, main, CHECK_SUM): Test new behavior.
|
|
24fb386f
|
2015-11-03T08:32:27
|
|
intprops: add parentheses for when OP has precedence lower than "-"
* lib/intprops.h (_GL_INT_OP_WRAPV_VIA_UNSIGNED): In "a OP b - c",
"a OP b" must be parenthesized for when OP is like "<<", which has
lower precedence than the following "-". Reported by Pádraig Brady.
|
|
77d70206
|
2015-11-03T10:59:55
|
|
quotearg: constify get_quoting_style parameters
* lib/quotearg.h (get_quoting_style): Mark parameter as const.
* lib/quotearg.c (get_quoting_style): Likewise.
|
|
df3cd268
|
2015-10-30T22:49:16
|
|
quotearg: add support for $'' shell escaping
* lib/quotearg.h: Add "shell-escape" and "shell-escape-always"
items and descriptions.
* lib/quotearg.c (quotearg_buffer_restyled): Add support for the
above types by quoting like "shell", but using $'...' syntax
for non printable characters, which should provide unambiguous
printable output for any input.
* tests/test-quotearg-simple.c: Update accordingly.
|
|
45228d96
|
2015-11-02T11:25:47
|
|
maint: use a more standard return from mbrtowc test
* m4/mbrtowc.m4 (gl_MBRTOWC_EMPTY_INPUT): Don't return 1
from the test program as this is non standard and often
indicates an unhandled case in the test program.
* m4/mbrlen.m4 (gl_MBRLEN_EMPTY_INPUT): Likewise.
|
|
86b1f082
|
2015-10-30T13:45:26
|
|
intprops: add WRAPV and const flavors for GCC 5
If available, use GCC 5's builtin functions for efficient integer
overflow checking. Also, add macros like INT_ADD_WRAPV that efficently
and safely compute the low-order bits of the correct answer.
A downside of these efficient functions is that they cannot be
used in constant expressions, so add macros like INT_CONST_ADD_OVERFLOW
and INT_CONST_ADD_WRAPV that can be used even in constant expressions.
* NEWS: Document the incompatible changes to INT_ADD_OVERFLOW etc.
* doc/intprops.texi (Integer Properties, Integer Type Overflow):
Document the changes.
(Wraparound Arithmetic): New section.
(Integer Range Overflow):
Put this subsection last, since it's least useful.
* lib/intprops.h (INT_CONST_ADD_OVERFLOW)
(INT_CONST_SUBTRACT_OVERFLOW, INT_CONST_MULTIPLY_OVERFLOW):
New macros, with the meaning that INT_ADD_OVERFLOW etc. used to have.
(INT_CONST_ADD_WRAPV, INT_CONST_SUBTRACT_WRAPV)
(INT_NEGATE_WRAPV, INT_CONST_MULTIPLY_WRAPV, INT_DIVIDE_WRAPV)
(INT_REMAINDER_WRAPV, _GL_INT_OP_WRAPV, _GL_EXPR_CAST)
(_GL_INT_OP_WRAPV_LONGISH, INT_ADD_WRAPV, INT_SUBTRACT_WRAPV)
(INT_MULTIPLY_WRAPV, _GL_OP_OVERFLOW, _GL_OP_WRAPV, _GL_OP_WRAPV_GENSYM):
New macros.
(INT_ADD_OVERFLOW, INT_SUBTRACT_OVERFLOW, INT_MULTIPLY_OVERFLOW):
Generate calls to GCC builtins if available, for speed.
* tests/test-intprops.c (INT_CONST_DIVIDE_OVERFLOW)
(INT_CONST_REMAINDER_OVERFLOW, INT_CONST_LEFT_SHIFT_OVERFLOW)
(INT_CONST_DIVIDE_WRAPV, INT_CONST_REMAINDER_WRAPV)
(INT_CONST_LEFT_SHIFT_WRAPV): New macros.
(main, CHECK_BINOP, CHECK_UNOP, CHECK_SUM, CHECK_PRODUCT)
(CHECK_QUOTIENT, CHECK_REMAINDER):
Test WRAPV and CONST flavors (when available) too.
|
|
825f1628
|
2015-10-23T03:15:40
|
|
doc: use extended timezone format in iso-8601 example
* doc/parse-datetime.texi: The standard states that extended
format (separated with ':') is to be used consistently throughout.
Note that lib/parse-datetime.y can handle either tz format.
|
|
956fa543
|
2015-10-25T01:10:47
|
|
stdalign: port to Sun C 5.9
* doc/posix-headers/stdalign.texi: Document this.
* lib/stdalign.in.h (_Alignas): Sun C 5.9 also supports
__attribute__ ((__aligned__ (...))).
|
|
9180f79e
|
2015-10-20T23:16:52
|
|
time_rz: fix comment about tzalloc
* lib/time_rz.c (tzalloc): Fix comment.
|
|
82e0ec53
|
2015-10-18T22:18:49
|
|
stdalign: work around pre-4.9 GCC x86 bug
* lib/stdalign.in.h (_Alignof): Work around bug in pre-4.9 GCC on
x86, when -std=gnu11 is used. Problem reported by Jim Meyering in:
http://lists.gnu.org/archive/html/bug-gnulib/2015-10/msg00038.html
|
|
2a8b497f
|
2015-10-18T21:15:35
|
|
maint.mk: sc_tight_scope: remove extraneous expressions
* top/maint.mk (tight_scope): This is not really required since
commit 3ef58f46 as sed_wrap ensures we don't get an empty expression
that matches all nm entries. But it does remove extraneous entries
that may be confusing or cause issue in future maintenance.
|
|
b0ac02e8
|
2015-10-18T10:24:37
|
|
time_rz: return NULL if localtime_r fails
* lib/time_rz.c (localtime_rz): Return NULL if localtime_r fails,
while still attempting to pacify bleeding-edge GCC.
|
|
04dee58e
|
2015-10-18T09:52:45
|
|
fts: port to C11 alignof
* doc/posix-headers/stdalign.texi (stdalign.h):
Document the C11 restriction.
* lib/fts.c: Include stddef.h, for max_align_t.
(fts_alloc): Align using max_align_t, not FTSENT.
* modules/fts (Depends-on): Add stddef.
|
|
0de3313d
|
2015-10-18T09:32:21
|
|
time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
Compiling with gcc version 6.0.0 20151017 (experimental) (GCC), I
would see this:
lib/time_rz.c: In function 'localtime_rz':
lib/time_rz.c:292:15: error: nonnull argument 'tm' compared to NULL \
[-Werror=nonnull]
if (tm && !save_abbr (tz, tm))
^
That was complaining about "tm" because it is a parameter that was
declared with the __nonnull__ attribute.
* lib/time_rz.c (localtime_rz): Don't bother setting "tm" to the
result of localtime_r.
|
|
37c054af
|
2015-10-17T19:18:01
|
|
maint.mk: _gl_TS_function_match: fix "extern" name extracting regexp
* top/maint.mk (_gl_TS_function_match): This heuristic extern-function-
name-extraction regexp mistakenly used \S+, and would mistakenly
extract "*F" from "extern int *F()" rather than the desired "F".
Use \w+ instead.
|
|
3ef58f46
|
2015-10-17T20:12:48
|
|
maint.mk: sc_tight_scope: factor and support OS X
* top/maint.mk (_gl_tight_scope): Address three issues:
- factor out four instances of code that wraps a string in "^...$"
- allow nm-reported symbol names to have an optional leading "_"
- add "main" to the list of ignored variable names, because on os x,
"main" has nm-reported type "S" in the variable-checking section.
|
|
30b2a6a9
|
2015-09-24T17:03:20
|
|
ChangeLog: fix typo: s/cound/count/
|
|
5a4906aa
|
2015-10-16T21:29:41
|
|
safe-alloc-tests: fix typo in license header
* tests/test-safe-alloc.c: Mention LGPL 2.1, not 3.1
|
|
40157ce2
|
2015-10-15T19:35:29
|
|
copy-file: fix mem leak in error case
* lib/copy-file.c (qcopy_file_preserving): Free the 32KiB buffer
upon error opening or performing I/O to the src and dest files.
|
|
63881a60
|
2015-10-15T17:04:07
|
|
localename: control langinfo.h inclusion
This header is only used to work around buggy behavior in old
versions of glibc, so do not include it all the time. Otherwise
we get build failures on systems that do not provide langinfo.h.
* lib/localename.c: Wrap langinfo.h include with same ifdefs used
in the source later on.
The patch was originally submitted to gettext as:
https://lists.gnu.org/archive/html/bug-gettext/2015-10/msg00011.html
|
|
c5d07ce9
|
2015-10-13T23:25:18
|
|
binary-io, math, pthread, sys_socket, u64, unistd: port to strict C
* lib/binary-io.c, lib/math.c, lib/pthread.c, lib/sys_socket.c:
* lib/u64.c, lib/unistd.c:
Append 'typedef int dummy;', to pacify compilers that are picky
about empty translation units.
|
|
f982bc8d
|
2015-10-12T12:27:10
|
|
accept4-tests: fix to avoid non portable flags
* tests/test-accept4.c (main): Pass only SOCK_* flags to accept4(),
as they are the only documented ones, and passing others may trigger
EINVAL (seen on FreeBSD 10.1-RELEASE).
* doc/glibc-functions/accept4.texi: Mention that we don't provide
the SOCK_CLOEXEC or SOCK_NONBLOCK defines.
|
|
63ce1a21
|
2015-10-06T13:20:05
|
|
gnulib-tool: fix tests of 'extensions' module
This complements f8fe25fab60e3c687a124 commit.
* gnulib-tool (func_emit_pre_early_macros): New function, it wraps
emitting of initial gl_EARLY macros.
(func_import, func_create_testdir): All dumps of gl_PROG_AR_RANLIB
replaced with func_emit_pre_early_macros call.
|
|
4ac8b451
|
2015-10-06T00:46:02
|
|
unicase/locale-language: fix typo in utf-8 cookie
* lib/unicase/locale-languages.gperf: Fix gperf input file format.
Problem reported by Zbigniew Jędrzejewski-Szmek.
|
|
8be4b46b
|
2015-10-03T00:14:05
|
|
xalloc: do not worry about GCC 5 warning on 32 bit
* lib/xalloc.h: Revert previous change.
I found a better way to fix this in coreutils.
|
|
213d5545
|
2015-10-02T20:21:50
|
|
xalloc: avoid GCC 5.1 warning on 32 bit
* lib/xalloc.h: Disable -Wstrict-overflow for uses of
xalloc_oversized(), which was seen to give this warning
on GCC 5.1 on 32 bit: "assuming signed overflow does not occur
when simplifying conditional".
|
|
b3239907
|
2015-10-02T11:27:40
|
|
uniname/uniname-tests: avoid compiler warnings
* tests/uniname/test-uninames.c (fill_names, fill_aliases): Remove
unused local variables.
(test_alias_lookup): Fix alias name display in failure cases.
|
|
d2de2a91
|
2015-09-26T23:55:07
|
|
c-ctype: do not worry about EBCDIC + char signed
Drop support for EBCDIC with char being signed, as this breaks too
many programs. Problem reported by Ben Pfaff in:
http://lists.gnu.org/archive/html/bug-gnulib/2015-09/msg00053.html
* lib/c-ctype.h: Verify that we are not using EBCDIC with
char being signed.
(_C_CTYPE_LOWER_A_THRU_F_N): New macro.
(_C_CTYPE_LOWER_N, _C_CTYPE_A_THRU_F): Use it.
(_C_CTYPE_DIGIT, _C_CTYPE_LOWER, _C_CTYPE_PUNCT, _C_CTYPE_UPPER):
(c_isascii, c_isgraph, c_isprint, c_ispunct, c_tolower, c_toupper):
* tests/test-c-ctype.c (test_all):
Simplify by assuming standard char values cannot be negative.
* tests/test-c-ctype.c (NCHARS, to_char): Remove; all uses removed.
|
|
ff1ef114
|
2015-09-25T19:45:59
|
|
c-ctype: port better to z/OS EBCDIC
Problems reported by Daniel Richard G. in:
http://lists.gnu.org/archive/html/bug-gnulib/2015-09/msg00050.html
* lib/c-ctype.h (_C_CTYPE_CNTRL): Rewrite in terms of
the C standard escapes and _C_CTYPE_OTHER_CNTRL.
(_C_CTYPE_OTHER_CNTRL): New macro.
* tests/test-c-ctype.c (test_all): Test from CHAR_MIN, not
from SCHAR_MIN, as the functions are defined only from values
promoted from char or from unsigned char, not necessarily from
signed char.
|
|
f8fe25fa
|
2015-09-25T11:25:03
|
|
gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
The gl_PROG_AR_RANLIB (it is always called by gl_EARLY) sets AR
and ARFLAGS variables. Doing this unconditionally could break
later Automake's AM_PROG_AR invocation (at least it's
AC_CHECK_TOOLS call to detect correct 'ar' binary).
Original purpose of the gl_PROG_AR_RANLIB was only to handle the
Amsterdam Compiler Kit, so make the previous code to have effects
only on ACK, and rather automatically call the Automake's
AM_PROG_AR as soon as possible to decide other cases.
References:
http://lists.gnu.org/archive/html/bug-gnulib/2015-07/msg00001.html
* m4/gnulib-common.m4 (gl_PROG_AR_RANLIB): AC_BEFORE AM_PROG_AR.
Set the AR/ARFLAGS to ACK defaults OR call AM_PROG_AR. If neither
is possible, keep setting AR/ARFLAGS to reasonable defaults.
* gnulib-tool (func_import): Put the gl_USE_SYSTEM_EXTENSIONS
right before gl_PROG_AR_RANLIB into gnulib-comp.m4 (if the
'extensions' module is used.
* modules/extensions (configure.ac-early): Remove as this snippet
is added to gnulib-comp.m4 earlier anyway.
|
|
f2823523
|
2015-09-25T11:16:27
|
|
sockets: MS Windows initalization fixes
Problem reported by Test User in:
http://lists.gnu.org/archive/html/help-shishi/2015-09/msg00001.html
* lib/sockets.h (SOCKETS_1_0, SOCKETS_2_0, SOCKETS_2_1):
Correct the endianness.
* lib/sockets.c (gl_sockets_startup): Return 2 on any version
number mismatch, not just on <. Cleanup before any such failure.
|
|
11792d29
|
2015-09-25T14:18:24
|
|
gc: fix detection of installed libgcrypt version
* m4/gc.m4: Use AM_PATH_LIBCRYPT to test for libcrypt versions
at least as recent as 1.4.4. The previously used macro is not
available now, since modules were removed in version 1.6.0.
|
|
43a090ce
|
2015-09-25T00:01:10
|
|
c-ctype: rewrite to use inline functions
This simplifies maintenance, since it makes for just one
implementation of each function, letting the compiler have the fun
of optimization. In practice this works well nowadays with GCC.
E.g., c_isascii might need only three instructions even though the
source code lists every ASCII character individually in a large
switch statement.
Also, fix some z/OS porting bugs reported by Daniel Richard G. in:
http://lists.gnu.org/archive/html/bug-gnulib/2015-09/msg00037.html
* NEWS: Document the API change.
* lib/c-ctype.c: Drastically simplify, since this now just expands
inline functions.
* lib/c-ctype.h: Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
(C_CTYPE_INLINE): New macro.
(C_CTYPE_CONSECUTIVE_DIGITS, C_CTYPE_CONSECUTIVE_LOWERCASE)
(C_CTYPE_CONSECUTIVE_UPPERCASE): Remove.
Verify that either ASCII or EBCDIC is being used.
(_C_CTYPE_SIGNED_EBCDIC, _C_CTYPE_CNTRL, _C_CTYPE_A_THRU_F_N)
(_C_CTYPE_DIGIT_N, _C_CTYPE_LOWER_N, _C_CTYPE_UPPER_N)
(_C_CTYPE_CASES, _C_CTYPE_A_THRU_F, _C_CTYPE_DIGIT, _C_CTYPE_LOWER)
(_C_CTYPE_UPPER, _C_CTYPE_PUNCT_PLAIN):
New private macros.
(_C_CTYPE_CNTRL): In EBCDIC, '\x07' is a control, not '\xff'.
(c_isalnum, c_isalpha, c_isascii, c_isblank, c_iscntrl, c_isdigit)
(c_isgraph, c_islower, c_isprint, c_ispunct, c_isspace, c_isupper)
(c_isxdigit, c_tolower, c_toupper): Now inline functions.
(c_tolower, c_toupper): When converting, return the unsigned char,
as that is what z/OS does.
* lib/c-strcaseeq.h (CASEEQ): Simplify in the light of the removal
of some c-ctype.h macros.
* modules/c-ctype (Depends-on): Add extern-inline; remove verify.
* tests/test-c-ctype.c (test_all): Fix test for c_toupper and
c_tolower promotion to be compatible with z/OS.
|
|
720ba29a
|
2015-09-24T17:17:38
|
|
gitlog-to-changelog: trim only trailing whitespaces
This is fix for --format regression introduced by commit
2b93079a5d1baa4d; it caused that --format='%s%n%n%b%n' (see the
doubled %n string) had no effect anymore. This format
specification has been used e.g. by GNU paxuitils (commit
edfd8bcc3).
* build-aux/gitlog-to-changelog (main): Stop squashing multiple
newlines in commmit messages.
|
|
a406de9c
|
2015-09-23T12:26:38
|
|
Test that c_iscntrl agrees with iscntrl, etc.
Suggested by Daniel Richard G. in:
http://lists.gnu.org/archive/html/bug-gnulib/2015-09/msg00034.html
* modules/c-ctype-tests (Depends-on): Add ctype.
* tests/test-c-ctype.c: Include <ctype.h>.
(NCHARS): New constant.
(test_agree_with_C_locale): New function.
(main): Use it.
(test_all): Use named constants.
|
|
5b09f8c0
|
2015-09-23T12:02:35
|
|
c-ctype: improve c_isascii testing
* tests/test-c-ctype.c (test_all): Port c_isascii test to EBCDIC.
Add a test to count the number of ASCII characters.
|
|
617d6628
|
2015-09-23T08:11:16
|
|
Fix ChangeLog typo
|
|
e6f00a57
|
2015-09-22T20:04:13
|
|
savewd: remove SAVEWD_CHDIR_READABLE
It was problematic in the light of file systems that ignore umask.
Problem reported by Sebastian Ungar in: http://bugs.gnu.org/21534
* NEWS: Document this.
* lib/mkancesdirs.c (mkancesdirs): MAKE_DIR now returns 0 if
successful, -1 (setting errno) on failure, rather than something
more complicated than that.
* lib/mkdir-p.c (make_dir_parents):
Do not use SAVEWD_CHDIR_READABLE.
* lib/savewd.c (savewd_chdir):
Remove support for SAVEWD_CHDIR_READABLE.
* lib/savewd.h (SAVEWD_CHDIR_READABLE): Remove.
|
|
6b34bf6d
|
2015-09-22T19:41:52
|
|
Update ChangeLog to match previous patch.
|
|
ad029587
|
2015-09-22T12:44:25
|
|
* modules/c-ctype (Depends-on): Add verify.
|
|
7e2a8ea2
|
2015-09-22T12:17:06
|
|
c-ctype: port better to EBCDIC
Problems reported by Daniel Richard G. in
http://lists.gnu.org/archive/html/bug-gnulib/2015-09/msg00020.html
* lib/c-ctype.c: Include <limits.h>, for CHAR_MIN and CHAR_MAX.
Include "verify.h".
(C_CTYPE_ASCII, C_CTYPE_CONSECUTIVE_DIGITS)
(C_CTYPE_CONSECUTIVE_LOWERCASE, C_CTYPE_CONSECUTIVE_UPPERCASE):
Define as enum constants with value false, if not defined, so that
code can use 'if' instead of 'ifdef'. Using 'if' helps make the
code more portable, as both branches of the 'if' are compiled on
all platforms.
(C_CTYPE_EBCDIC): New constant.
(to_char): New static function.
(c_isalnum, c_isalpha, c_isdigit, c_islower, c_isgraph, c_isprint)
(c_ispunct, c_isupper, c_isxdigit, c_tolower, c_toupper):
Rewrite to use 'if' instead of 'ifdef'.
Use to_char if non-ASCII. Prefer <= to >=.
Prefer true and false to 1 and 0, for booleans.
(c_iscntrl): Use 'if', not 'ifdef'. Special case for EBCDIC.
Verify that the character set is either ASCII or EBCDIC.
* tests/test-c-ctype.c: Include <limits.h>, for CHAR_MIN
(to_char): New function.
(test_all): Port to EBCDIC. Add some more tests, e.g., for c_ispunct.
|
|
6439a0af
|
2015-09-21T23:46:05
|
|
nanosleep: fix return code for interrupted replacement
* lib/nanosleep.c (nanosleep): In the replaced nanosleep, ensure
that we return -1 in the case the call is interrupted by a signal,
rather than the current value of 1.
Diagnosed and tested by Daniel Richard G.
|
|
5513b409
|
2015-09-19T13:53:34
|
|
Diagnose ERE '()|\1'
Problem reported by Hanno Böck in: http://bugs.gnu.org/21513
* lib/regcomp.c (parse_reg_exp): While parsing alternatives, keep
track of the set of previously-completed subexpressions available
before the first alternative, and restore this set just before
parsing each subsequent alternative. This lets us diagnose the
invalid back-reference in the ERE '()|\1'.
|
|
c9ff68cb
|
2015-09-19T13:44:49
|
|
Revert previous patch, as it did not fix the bug after all.
|
|
7f6191fd
|
2015-09-19T10:16:02
|
|
regex: fix dangling-backreference bug
This should fix the following bugs:
http://bugs.gnu.org/21513 assertion error in pop_fail_stack
http://bugs.gnu.org/19775 Test failing after the CVE fix
https://sourceware.org/bugzilla/show_bug.cgi?id=11053
Wrong results with backreferences
https://sourceware.org/bugzilla/show_bug.cgi?id=17356
regex assertion violation with triple backreferences
* lib/regexec.c (set_regs): Don't pop an empty failure stack.
|
|
2f8140bc
|
2015-09-19T09:21:47
|
|
regex: merge patches from libc
2015-09-08 Joseph Myers <joseph@codesourcery.com>
Move bits/libc-lock.h and bits/libc-lockP.h out of bits/ (bug 14912).
* lib/regex_internal.h:
Include <libc-lock.h> instead of <bits/libc-lock.h>.
2015-06-09 Joseph Myers <joseph@codesourcery.com>
Fix regcomp wcscoll, wcscmp namespace (bug 18497).
* lib/regcomp.c (build_range_exp): Call __wcscoll instead of
wcscoll.
* lib/regexec.c (check_node_accept_bytes): Likewise.
2015-06-05 Joseph Myers <joseph@codesourcery.com>
Fix regex wcrtomb namespace (bug 18496).
* lib/regex_internal.c (build_wcs_upper_buffer): Call __wcrtomb
instead of wcrtomb.
2015-06-05 Joseph Myers <joseph@codesourcery.com>
Fix regex wctype namespace (bug 18495).
* lib/regcomp.c (re_compile_fastmap_iter): Call __towlower
instead of towlower.
* lib/regex_internal.c (build_wcs_upper_buffer): Call __iswlower
instead of iswlower. Call __towupper instead of towupper.
* lib/regex_internal.h (IS_WIDE_WORD_CHAR): Call __iswalnum
instead of iswalnum.
2015-01-07 Chris Metcalf <cmetcalf@ezchip.com>
* lib/regcomp.c (parse_bracket_exp): Initialize type to
COLL_SYM in a couple of places to avoid uninitialized variable
wanings on tilegx gcc 4.8.2.
2014-11-24 Siddhesh Poyarekar <siddhesh@redhat.com>
* lib/regex_internal.h: Remove NOT_IN_libc.
2014-11-17 Andreas Schwab <schwab@suse.de>
* lib/regex_internal.h: Don't include <locale/elem-hash.h>.
2014-09-11 Roland McGrath <roland@hack.frob.com>
Move findidx nested functions to top-level.
* lib/regcomp.c [_LIBC]: #include <locale/weight.h>.
(build_equiv_class) [_LIBC]: Don't #include it inside the function.
Pass new arguments to findidx.
* lib/regexec.c [RE_ENABLE_I18N] [_LIBC]: #include <locale/weight.h>.
[RE_ENABLE_I18N] (check_node_accept_bytes) [_LIBC]:
Don't #include it inside the function. Pass new arguments to findidx.
* lib/regex_internal.h:
[!NOT_IN_libc] [_LIBC]: #include <locale/weight.h>.
(re_string_elem_size_at): Don't #include it inside the function.
Pass new arguments to findidx.
2014-08-01 Siddhesh Poyarekar <siddhesh@redhat.com>
Check if DEBUG is defined in regex_internal.c
* lib/regex_internal.c: Check if DEBUG is defined and is set.
|
|
9ef06e39
|
2015-09-08T19:43:32
|
|
ceill: detect buggy OpenBSD implementation
* m4/ceill.m4 (gl_FUNC_CEILL): Detect buggy openBSD implementation
which returns zero for small values. Discussed here:
http://lists.gnu.org/archive/html/bug-gnulib/2015-08/msg00010.html
|
|
c6148bca
|
2015-08-31T16:07:58
|
|
mountlist: add me_mntroot field on Linux machines
* lib/mountlist.c (read_file_system_list): Populate me_mntroot in
mount_entry so Linux machines based on /proc/self/mountinfo can
distinguish between bind mounts and original mounts. In reality bind
mounts aren't treated differently than mountroot=/ mounts by the
kernel, but the user often wants these bind mounts distinguished.
* lib/mountlist.h (struct mount_entry): Add me_mntroot element.
More details at https://pad.lv/1432871
|
|
8b7d8f7a
|
2015-09-04T12:06:46
|
|
doc: Describe to use multiple instances of gnulib
* doc/gnulib-tool.texi: Add a section to the manual outlining how two
instances of gnulib with different modules can be used, for example one
for a lib and another one for associated tools.
|
|
7ab64d26
|
2015-09-01T11:59:35
|
|
base32: mark function as __attribute__ const
* lib/base32.h (isbase32): Mark __attribute__ const as
suggested by GCC, and consistent with the base64 module.
|
|
b4f31e3a
|
2015-08-20T09:09:58
|
|
gnulib-tool: don't transform binary files with sed
* gnulib-tool (func_add_or_update): Don't apply sed_transform_* to
.mo and .class files.
Reported by Denis Denisov.
|
|
30f42902
|
2015-08-10T17:22:15
|
|
gperf: respect silent rules
* modules/gperf (Makefile.am): Define V_GPERF, V_GPERF_, and
V_GPERF_0 for silent rules.
* modules/iconv_open (Makefile.am): Use V_GPERF.
* modules/unicase/locale-language (Makefile.am): Likewise.
* modules/unicase/special-casing (Makefile.am): Likewise.
* modules/unictype/category-byname (Makefile.am): Likewise.
* modules/unictype/combining-class-byname (Makefile.am): Likewise.
* modules/unictype/joininggroup-byname (Makefile.am): Likewise.
* modules/unictype/joiningtype-byname (Makefile.am): Likewise.
* modules/unictype/property-byname (Makefile.am): Likewise.
* modules/unictype/scripts (Makefile.am): Likewise.
* modules/uninorm/composition (Makefile.am): Likewise.
|
|
5bb169c3
|
2015-08-03T12:34:38
|
|
Improve port of stdalign to C++11
Problem reported by Sundaram in:
http://lists.gnu.org/archive/html/bug-gnulib/2015-08/msg00003.html
* lib/stdalign.in.h (alignof, alignas): Don't define if C++11 or newer.
(__alignas_is_defined): Define if C++11 or newer.
|
|
c496809e
|
2015-08-01T23:30:07
|
|
pmccabe2html: fix gawk regex escaping
* build-aux/pmccabe2html: Add one more backslash to properly
escape the gsub replacement value. Fixes this error:
gawk: ./build-aux/pmccabe2html:425: \
warning: escape sequence `\&' treated as plain `&'
|
|
9c70545f
|
2015-07-29T13:48:10
|
|
time_rz: port to pedantic memcpy
* lib/time_rz.c (tzalloc): Pacify pedantic memcpy implementations
that reject memcpy (..., NULL, 0).
|
|
d3bc6917
|
2015-07-27T16:41:17
|
|
time_rz: port better to MinGW
Don't change tzname, as this makes MinGW dump core (Bug#21020).
Instead, store the tzname copy in the struct tm_zone object.
Problem reported by Eli Zaretskii in: http://bugs.gnu.org/21020#48
* lib/strftime.c [!_LIBC]:
* lib/time_rz.c: Include time-internal.h.
* lib/strftime.c (strftime_case_) [!HAVE_TM_ZONE]: Infer the zone
name from *TZ rather than from TZNAME, doable because *TZ now has
a tzname_copy member.
* lib/time-internal.h: New file, with contents taken from
lib/time_rz.c. It's separate because strftime.c now accesses
struct tm_zone members.
(struct tm_zone) [HAVE_TZNAME && !HAVE_TM_ZONE]:
New member tzname_copy.
* lib/time_rz.c (struct tm_zone): Move to time-internal.h.
(tzalloc) [HAVE_TZNAME && !HAVE_TM_ZONE]:
Initialize tzname_copy member.
(save_abbr) [HAVE_TZNAME && !HAVE_TM_ZONE]: Save abbreviation
in tzname_copy member.
(revert_tz) [HAVE_TZNAME]: Remove no-longer-needed tzname saving.
(restore_tzname): Remove; no longer needed. All calls removed.
* modules/time_rz (Files): Add lib/time-internal.h.
|
|
b18e6d98
|
2015-07-27T07:53:36
|
|
time: port __need_time_t to MinGW
* lib/time.in.h (__need_time_t): Do not treat specially on MinGW.
Fix reported by Eli Zaretskii in: http://bugs.gnu.org/21020#36
|
|
fe699d37
|
2015-07-25T16:37:17
|
|
strftime: fix newly-introduced bug on Solaris
* lib/strftime.c (strftime_case_): Set the local variable 'zone'
consistently at the start, rather than doing some of the setup at
the start and some in the %Z format spec. This is cleaner, and
works better with time_rz on platforms like Solaris where struct
tm lacks a tm_zone member, as when !HAVE_TM_GMTOFF %z's calls to
mktime_z and localtime_rz can mess up the tzname cache.
|
|
c1340b3d
|
2015-07-25T15:20:57
|
|
test-strftime: test for Solaris bug
* modules/strftime-tests (Depends-on): Add strerror.
* tests/test-strftime.c: Include <errno.h>.
(posixtm_test): New function, containing the old 'main'.
(struct tzalloc_test, struct localtime_rz_test): New types.
(TZ, LT): New static vars.
(tzalloc_test): New function.
(main): Rewrite in terms of posixtm_test and tzalloc_test.
|
|
5ed44b37
|
2015-07-25T15:20:10
|
|
time_rz: port to Solaris etc.
Works around a tzname problem on platforms like Solaris that have
tzname but not tm_zone, by setting tzname at the appropriate time
and restoring it later.
* lib/time_rz.c (tzname_address, tzname_value) [HAVE_TZNAME]:
New static vars.
(save_abbr) [HAVE_TZNAME]: Set them.
(revert_tz) [HAVE_TZNAME]: Clear or use them.
(restore_tzname): New function.
(localtime_rz, mktime_z): Use it.
|
|
1f2146e9
|
2015-07-25T15:13:13
|
|
time_rz: now LGPL
* modules/time_rz (License): Now LGPL, because strftime depends on it.
|
|
2134fd0a
|
2015-07-25T15:10:16
|
|
time_rz: fix off-by-one typo
* lib/time_rz.c (extend_abbrs): Fix off-by-one typo.
|
|
d3e697dd
|
2015-07-25T15:11:42
|
|
time_rz: make a constant 'const'
* lib/time_rz.c (local_tz): Now const.
|
|
a89e3449
|
2015-07-23T18:28:13
|
|
fprintftime, strftime: use timezone_t args
* NEWS: Document the change.
* lib/fprintftime.h (fprintftime):
* lib/strftime.c (extra_args) [my_strftime]:
* lib/strftime.h (nstrftime):
Time zone arg is now of type timezone_t, not int.
* lib/strftime.c (mktime_z) [_LIBC]: New macro.
(__gmtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: Remove; no longer used.
(my_strftime) [emacs && !my_strftime]:
(emacs_strftimeu) [emacs && !FPRINTFTIME]:
Remove; Emacs doesn't need this any more.
(HAVE_TZSET) [my_strftime]: Unset, since we no longer want
fprintftime and nstrftime to call tzset.
(ut) [!my_strftime]: Remove, replacing with ...
(tz) [!my_stftime]: ... this new macro. All uses changed.
(strftime_case_): Use localtime_rz and mktime_z instead
of localtime_r and mktime.
* modules/fprintftime (Depends-on): Add time_rz.
* modules/strftime (Depends-on): Add time_rz. Remove time_r.
* tests/test-strftime.c (main): Adjust to new nstrftime API.
|
|
4bc76593
|
2015-07-23T17:44:19
|
|
time_rz: new module
* MODULES.html.sh: Add time_rz.
* lib/time_rz.c, m4/time_rz.m4, modules/time_rz: New files.
* lib/time.in.h (timezone_t, tzalloc, tzfree, localtime_rz, mktime_z):
New decls if _GNU_SOURCE && @GNULIB_TIME_RZ@ && ! @HAVE_TIMEZONE_T@.
* m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_DEFAULTS):
New var HAVE_TIMEZONE_T (default 0).
* m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS):
New var GNULIB_TIME_RZ (default 0).
* modules/time (time.h): Substitute the new vars.
|
|
e187c794
|
2015-07-23T17:43:33
|
|
flexmember: license is now unlimited
* modules/flexmember (License): Change to unlimited,
since its only source file gives an unlimited license.
|
|
5db53430
|
2015-07-14T08:03:02
|
|
maint: update copyright paper procedures
Requested by Donald R. Robertson III via gnu.org ticket #1028294.
* config/srclist.txt: Drop outdated files.
* doc/Copyright/conditions.txt: Update to latest.
* doc/Copyright/assign.changes.manual: Delete.
* doc/Copyright/assign.future.manual: Likewise.
* doc/Copyright/assign.manual: Likewise.
* doc/Copyright/assign.translation.manual: Likewise.
* doc/Copyright/disclaim.changes.manual: Likewise.
* doc/Copyright/disclaim.manual: Likewise.
* doc/Copyright/disclaim.program: Likewise.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
9b6679dc
|
2015-07-07T15:36:43
|
|
localename: fix link error on Illumos
Illumos defines __sun, but does not have getlocalename_l nor the
equivalent. This partially reverts commit 387c214.
* m4/localename.m4 (gl_LOCALENAME): Check if getlocalename_l is
available, as well as uselocale.
* lib/localename.c [HAVE_USELOCALE && __sun]: Don't fallback to
use getlocalename_l if it is not available.
|
|
b3b5ecd0
|
2015-07-07T15:12:52
|
|
unistr/uN-strtok-tests: avoid a trivial leak
* tests/unistr/test-u-strtok.h (test_u_strtok): Untabify. Free
input and delim after the multibyte delimiter tests.
|
|
f4664046
|
2015-07-04T11:05:00
|
|
file-has-acl, acl-permissions: fix HP-UX typos
Problem reported by John David Anglin in: http://bugs.gnu.org/20979
* lib/file-has-acl.c (file_has_acl):
* lib/set-permissions.c (context_acl_from_mode)
(context_aclv_from_mode, set_acls):
Fix some obvious typos when HAVE_GETCL /* HP-UX */.
They were introduced by the recent ACL changes.
|
|
5a5a9388
|
2015-07-04T08:25:21
|
|
regex: match current GNU grep behavior
These symbols have not matched GNU grep behavior for quite some time.
Fix prompted by Balazs Kezes bug report at: http://bugs.gnu.org/20974
* lib/regex.h (RE_SYNTAX_GREP, RE_SYNTAX_EGREP):
Change to match current GNU behavior.
Simplify by expressing it as differences from POSIX BREs and EREs.
(RE_SYNTAX_POSIX_EGREP): No longer differs from GNU behavior.
|
|
7a4daa4d
|
2015-07-03T14:58:19
|
|
set-permissions.c: adjust acl_from_mode's cpp guard
* lib/set-permissions.c (acl_from_mode): Guard with #ifdef
directives identical to those guarding the sole use.
Otherwise, on some systems, we'd get a warning about
the function being defined but not used.
Also, filter through cppi to correct misleading indentation
of cpp directives.
|
|
d03962a9
|
2015-07-03T14:52:47
|
|
tests: restrict shells to those that support 'local'
The local keyword is very widely supported and used
in tests in coreutils and grep at least. Therefore
restrict to testing with shells that support it.
This mainly excludes /bin/sh on Solaris.
Note standard ksh also doesn't support this keyword,
but that wasn't in the list of considered shells anyway.
For discussion on adding 'local' to POSIX, see:
http://thread.gmane.org/gmane.linux.debian.devel.bugs.general/122267/focus=3271
* tests/init.sh (gl_shell_test_script_): Add a test for 'local'.
|
|
8a172a2e
|
2015-07-03T12:00:44
|
|
fix mistakes in ChangeLog entries
|
|
2c554339
|
2015-07-03T11:42:43
|
|
unistr/uN-strtok: handle multibyte delimiters
Previously, uN_strtok moved PTR to the next unit to the token end.
When DELIM contained a multibyte character, the new position could
be a middle of a multibyte character.
* lib/unistr/u-strtok.h (FUNC): Place PTR at the next character
after the token.
* lib/unistr/u8-strtok.c (U_STRMBLEN): New macro.
* lib/unistr/u16-strtok.c (U_STRMBLEN): New macro.
* lib/unistr/u32-strtok.c (U_STRMBLEN): New macro.
* modules/unistr/u8-strtok (Depends-on): Depend on
unistr/u8-strmblen.
* modules/unistr/u16-strtok (Depends-on): Depend on
unistr/u16-strmblen.
* modules/unistr/u32-strtok (Depends-on): Depend on
unistr/u32-strmblen.
* tests/unistr/test-u-strtok.h: New file.
* tests/unistr/test-u8-strtok.c: New file.
* tests/unistr/test-u16-strtok.c: New file.
* tests/unistr/test-u32-strtok.c: New file.
* modules/unistr/u8-strtok-tests: New file.
* modules/unistr/u32-strtok-tests: New file.
* modules/unistr/u16-strtok-tests: New file.
Copyright-paperwork-exempt: yes
Co-authored-by: Daiki Ueno <ueno@gnu.org>
|
|
841d0dcf
|
2015-07-02T14:36:33
|
|
update-copyright: fix test failure with perl >= 5.22
* build-aux/update-copyright: Escape a literal left curly bracket,
required with perl >= 5.22
|
|
ea309033
|
2015-07-02T16:48:24
|
|
u{16,32}-strstr-tests: relax timeout condition
On slower platforms (e.g., Solaris 10/SPARC), u{16,32}-strstr tests can
take longer than 5 seconds to complete.
Reported by Dagobert Michelsen in:
https://lists.gnu.org/archive/html/bug-libunistring/2015-06/msg00006.html
* tests/unistr/test-u16-strstr.c (main): Increase timeout from 5
seconds to 10 seconds.
* tests/unistr/test-u32-strstr.c (main): Likewise.
|
|
55109802
|
2015-07-01T09:38:35
|
|
gnulib-common.m4: change the ARFLAGS default to 'cr'
In some GNU/Linux distributions people started to compile 'ar'
binary with --enable-deterministic-archives (binutils project).
That, however, in combination with previous autotools long time
working default AR{_,}FLAGS=cru causes warnings on such
installations:
ar: `u' modifier ignored since `D' is the default (see `U')
The 'u' option (at least with GNU binutils) did small optimization
during repeated builds because it instructed 'ar' to not
open/close unchanged *.o files and to rather read their contents
from old archive file. However, its removal should not cause a
big performance hit for usual workflows.
Distributions started using --enable-deterministic-archives
knowing that it will disable the 'u', with the benefit of having
rather a bit more deterministic builds.
Also, to justify this change a bit more, keeping 'u' in ARFLAGS
could only result in many per-project changes to override
Automake's ARFLAGS default, just to silent such warnings.
* m4/gnulib-common.m4 (gl_PROG_AR_RANLIB): Set ARFLAGS='cr' if not
set already.
|
|
b6b3ed1f
|
2015-07-01T12:30:57
|
|
selinux-h: avoid double free after *getfilecon()
Originally reported by Ben Shelton on bug-tar:
http://lists.gnu.org/archive/html/bug-tar/2015-04/msg00009.html
* lib/getfilecon.c (map_to_failure): Set the already freed '*con'
pointer to NULL. Man getfilecon(3) says that any non-NULL '*con'
parameter should be freed by freecon(3) (regardless the return
value).
|
|
9ba6a008
|
2015-07-01T10:18:11
|
|
fix pty related tests issues on Windows
* lib/grantpt.c (grantpt): grantpt.c seems to be never used on Windows,
however it's still present in tests/ subdirectory of the final project.
Therefore avoid it to pass `make check`.
* tests/test-openpty.c (main): Windows has no PTYs and gnulib's openpty()
will just return -ENOSYS, so avoid this non applicable test allowing
the build to proceed.
|
|
716083c1
|
2015-06-30T20:35:26
|
|
acl: fix definition of acl_from_mode on FreeBSD
This was causing basic coreutils copy operations to fail
with ENOTSUP or ENOENT error messages.
* lib/acl-internal.h (acl_from_mode): Only define when
! defined HAVE_ACL_FROM_TEXT. That allows the version
of acl_from_mode() defined in lib/set-permissions.c to
be used on FreeBSD at least.
* lib/set-permissions.c: Fix up comment spelling,
and a redundant variable assignment; noticed in passing.
|
|
259e4fc2
|
2015-06-30T22:01:06
|
|
readutmp: port to FreeBSD >= 9
* lib/readutmp.h: Map utmpxname() to setutxdb().
With that coreutils who(1) and pinky(1) tests pass.
|