]> Savannah Git Hosting - gnulib.git/log
gnulib.git
10 years agoAssume unbroken ungetc() on Android
Kevin Cernekee [Wed, 11 Feb 2015 23:22:50 +0000 (15:22 -0800)]
Assume unbroken ungetc() on Android

* m4/ungetc.m4: Add Android case to host OS check.  The ungetc()
test case passed when running on an Android host, and the code
hasn't really changed since 2009.

10 years agoFix FILE struct compatibility with Android API level >= 21
Kevin Cernekee [Wed, 11 Feb 2015 23:22:49 +0000 (15:22 -0800)]
Fix FILE struct compatibility with Android API level >= 21

* lib/stdio-impl.h: Test explicitly for __ANDROID__ instead of
__sferror.  Recent versions of Bionic's stdio.h no longer define
__sferror.
* lib/fbufmode.c: Likewise.
* lib/fflush.c: Likewise.
* lib/fpurge.c: Likewise.
* lib/freadable.c: Likewise.
* lib/freadahead.c: Likewise.
* lib/freading.c: Likewise.
* lib/freadptr.c: Likewise.
* lib/freadseek.c: Likewise.
* lib/fseeko.c: Likewise.
* lib/fseterr.c: Likewise.
* lib/fwritable.c: Likewise.
* lib/fwriting.c: Likewise.

10 years agotests: avoid recent -Werror=unused-variable regression in test-locale
Pádraig Brady [Wed, 11 Feb 2015 03:52:57 +0000 (03:52 +0000)]
tests: avoid recent -Werror=unused-variable regression in test-locale

* tests/test-locale.c (main): Reference the variable to avoid the
"unused variable" warning.

10 years agomaint: various whitespace cleanups in tempname
Pádraig Brady [Wed, 11 Feb 2015 02:46:28 +0000 (02:46 +0000)]
maint: various whitespace cleanups in tempname

Recent changes to the tempname module, introduced
whitespace inconsistencies that are triggering
issues in coreutils diffs generated against the new files.

* lib/tempname.c: Normalize spacing and line length.
* lib/tempname.h: Likewise.
* modules/tempname: Likewise.

10 years agotests: provide returns_() to simplify exit status checking
Pádraig Brady [Wed, 11 Feb 2015 00:16:55 +0000 (00:16 +0000)]
tests: provide returns_() to simplify exit status checking

* tests/init.sh (returns_): A new function for use in tests,
to allow for easier checking of return values, where you expect
a command to exit with failure status.  By checking for a particular
exit code, you don't hide any crashes for example.

10 years agomountlist: only use libmount when specified
Pádraig Brady [Tue, 20 Jan 2015 01:40:54 +0000 (01:40 +0000)]
mountlist: only use libmount when specified

libmount can propagate device IDs provided by Linux in
/proc/self/mountinfo.  However there are currently many
shared libs dependencies introduced by libmount with
associated runtime and virt mem overhead.  Therefore don't
enable by default.

* m4/ls-mntd-fs.m4: Use --with-libmount to enable at build time.
Note the ac_cv_lib_libmount_mnt_table_parse_stream cache variable
had a typo and so was ineffective, thus there is no backwards
compatibility issue.

10 years agouniname/unimame-tests: don't link with -lunistring
Daiki Ueno [Sun, 8 Feb 2015 08:38:03 +0000 (17:38 +0900)]
uniname/unimame-tests: don't link with -lunistring

* modules/uniname/uniname-tests (Makefile.am): Don't link against
$(LIBUNISTRING).  Document the rationale why we need to
conditionalize the test.

10 years agofstrcmp: don't assume strlen < INT_MAX
Paul Eggert [Sun, 8 Feb 2015 02:09:00 +0000 (18:09 -0800)]
fstrcmp: don't assume strlen < INT_MAX

* lib/fstrcmp.c: Include stddef.h and stdint.h.
(uintptr_t): Remove, as we're now assuming stdint.
(OFFSET, EXTRA_CONTEXT_FIELDS, fstrcmp_bounded):
Prefer ptrdiff_t to int when the value could exceed INT_MAX
if the input string is long.
(fstrcmp_bounded): Check for size-calculation overflow.  Prefer
uintptr_t to size_t when the underlying value is a pointer casted
to an unsigned integer.  Avoid unnecessary 'buffer != NULL' test.
* modules/fstrcmp (Depends-on): Add stdint.

10 years agodiffseq: prefer ptrdiff_t to ssize_t
Paul Eggert [Sun, 8 Feb 2015 02:02:42 +0000 (18:02 -0800)]
diffseq: prefer ptrdiff_t to ssize_t

* lib/diffseq.h: In commentary, prefer ptrdiff_t to ssize_t.
ptrdiff_t is the natural type for signed indexes.
On a few older platforms, ssize_t is narrower than size_t.

10 years agoxalloc: fix typo that suppressed warnings
Paul Eggert [Sun, 8 Feb 2015 01:27:03 +0000 (17:27 -0800)]
xalloc: fix typo that suppressed warnings

* lib/xalloc.h: Add missing _GL_INLINE_HEADER_END.
This typo, introduced a couple of years ago, mistakenly suppressed
some -Wsuggest-attribute=const, -Wmissing-prototypes, and
-Wmissing-declarations warnings.

10 years agofull-read: fix license notice typo
Paul Eggert [Sat, 7 Feb 2015 23:15:31 +0000 (15:15 -0800)]
full-read: fix license notice typo

* lib/full-read.h: Remove a stray line in the license notice.
Reported by Sam Ellis in: http://bugs.gnu.org/19808

10 years agocrypto/gc: fix a -Wswitch warning
Paul Eggert [Sat, 7 Feb 2015 23:09:00 +0000 (15:09 -0800)]
crypto/gc: fix a -Wswitch warning

Reported by Bruce Korb in:
http://lists.gnu.org/archive/html/bug-gnulib/2015-02/msg00046.html
* lib/gc-gnulib.c (gc_hash_open): Fail faster if MODE is nonzero.

10 years agoautoupdate
Karl Berry [Fri, 6 Feb 2015 15:09:18 +0000 (07:09 -0800)]
autoupdate

10 years agoupdate from texinfo
Karl Berry [Fri, 6 Feb 2015 01:00:22 +0000 (17:00 -0800)]
update from texinfo

10 years agotempname: new try_tempname function
Andreas Gruenbacher [Sat, 31 Jan 2015 22:49:13 +0000 (23:49 +0100)]
tempname: new try_tempname function

The way how gen_tempname() creates files is not always sufficient. For example,
it may make sense to create directories when creating the temporary file or
directory fails with errno set to ENOENT.  Add a try_tempname() variant of
gen_tempname() that allows that. Implement gen_tempname() on top of it.

* lib/tempname.c (try_tempname): New function and backend of gen_tempname().
(try_file, try_dir, try_nocreate): Callbacks to use for the different kinds
that gen_tempname supports (GT_FILE, GT_DIR, GT_NOCREATE).
* lib/tempname.h (try_tempname): Declare here.
* modules/tempname: Mention try_tempname.

10 years agognulib-tool: fix handling of patch(1) diagnostics
Pádraig Brady [Tue, 3 Feb 2015 10:27:38 +0000 (10:27 +0000)]
gnulib-tool: fix handling of patch(1) diagnostics

* gnulib-tool: Send diagnostics from patch(1) to stderr,
as otherwise gnulib-tool will reparse that output and attempt
to lookup modules.

10 years agobootstrap: exit immediately upon gnulib-tool failure
Pádraig Brady [Tue, 3 Feb 2015 03:55:48 +0000 (03:55 +0000)]
bootstrap: exit immediately upon gnulib-tool failure

* build-aux/bootstrap: Exit immediately if gnulib-tool fails.
This was noticed when gnulib-tool exited early due to failure
to apply a patch in coreutils at http://hydra.nixos.org/eval/1172233,
but various confusing errors were then given as the build proceeded.

10 years agosymlinkat: include all required header files
Andreas Gruenbacher [Sun, 1 Feb 2015 20:40:11 +0000 (21:40 +0100)]
symlinkat: include all required header files

Following on from commit 032bd151, include header files required
on OS X 10.10 (Yosemite) at least.

* lib/symlinkat.c (HAVE_SYMLINK_AT): Add <sys/stat.h> for fstatat(),
and string.h for strlen().
Reported at https://savannah.gnu.org/bugs/index.php?44151
and by Jack Howarth.

10 years agoupdate from texinfo
Karl Berry [Sat, 31 Jan 2015 18:18:51 +0000 (10:18 -0800)]
update from texinfo

10 years agoupdate from texinfo
Karl Berry [Sat, 31 Jan 2015 00:07:17 +0000 (16:07 -0800)]
update from texinfo

10 years agoupdate from texinfo
Karl Berry [Fri, 30 Jan 2015 23:55:58 +0000 (15:55 -0800)]
update from texinfo

10 years agolocalename: support Solaris 12 and illumos
Pádraig Brady [Thu, 29 Jan 2015 16:44:48 +0000 (16:44 +0000)]
localename: support Solaris 12 and illumos

* lib/localename.c (gl_locale_name_thread_unsafe): call
getlocalename_l() on newer __sun platforms.
Reported by Alexander Pyhalov.
Fix suggested by Rich Burridge.

10 years agolocale: fix tests on illumos
Alexander Pyhalov [Thu, 29 Jan 2015 16:35:24 +0000 (16:35 +0000)]
locale: fix tests on illumos

* tests/test-locale.c: LC_GLOBAL_LOCALE is a function call on illumos,
so move from global scope to main().

10 years agounictype: avoid undefined left-shift behavior
Daiki Ueno [Sat, 24 Jan 2015 02:11:34 +0000 (11:11 +0900)]
unictype: avoid undefined left-shift behavior

* lib/unictype/bidi_of.c (uc_bidi_class): Building libunistring with
gcc's -fsanitize=shift and running its tests triggered:
  unictype/bidi_of.c:43:60: runtime error: left shift of 40167 by 16 \
    places cannot be represented in type 'int'
Cast LHS to 'unsigned int' after integer promotion.
* lib/unictype/categ_of.c (lookup_withtable): Likewise.
* lib/unictype/joininggroup_of.c (uc_joining_group): Likewise.

10 years agolibunistring: bump version of unitypes dependants
Daiki Ueno [Tue, 20 Jan 2015 09:09:03 +0000 (18:09 +0900)]
libunistring: bump version of unitypes dependants

Due to the header file search order, all the headers which depend
on unitypes.h need to be generated, when the preinstalled
libunistring is older.
* modules/unicase/base (configure.ac): Bump minimum version to
0.9.4.
* modules/uniconv/base (configure.ac): Likewise.
* modules/unilbrk/base (configure.ac): Likewise.
* modules/uninorm/base (configure.ac): Likewise.
* modules/unistdio/base (configure.ac): Likewise.
* modules/unistr/base (configure.ac): Likewise.
* modules/uniwbrk/base (configure.ac): Likewise.
* modules/uniwidth/base (configure.ac): Likewise.

10 years agounictype/category-none: fix link with libunistring
Daiki Ueno [Tue, 20 Jan 2015 06:46:54 +0000 (15:46 +0900)]
unictype/category-none: fix link with libunistring

Since _UC_CATEGORY_NONE is not a public symbol, it will be
prefixed with "libstring_" when compiled as part of libunistring.
To avoid undefined symbol at link time, increase the minimum
version when the dependant modules are updated.
* modules/unictype/category-none (configure.ac): Bump minimum
version to 0.9.5.

10 years agounitypes: fix build with installed libunistring
Daiki Ueno [Tue, 20 Jan 2015 06:34:36 +0000 (15:34 +0900)]
unitypes: fix build with installed libunistring

The minimum version was not bumped after _UC_ATTRIBUTE_CONST and
_UC_ATTRIBUTE_PURE were added to unitypes.in.h.
* modules/unitypes (configure.ac): Bump minimum version to 0.9.4.

10 years agotime: port to MinGW32 3.21
Paul Eggert [Fri, 16 Jan 2015 01:37:14 +0000 (17:37 -0800)]
time: port to MinGW32 3.21

Problem reported by Eli Zaretskii in:
http://lists.gnu.org/archive/html/bug-gnulib/2015-01/msg00042.html
* lib/time.in.h:
* m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC):
* modules/time (Depends-on):
Fall back on unistd.h if the other include files don't define
struct timespec.

10 years agoupdate-copyright: apply to self
Paul Eggert [Thu, 15 Jan 2015 20:57:10 +0000 (12:57 -0800)]
update-copyright: apply to self

* build-aux/update-copyright: Fix copyright date.  How ironic!

10 years agolibunistring: update to Unicode 7.0.0
Daiki Ueno [Thu, 15 Jan 2015 03:44:00 +0000 (12:44 +0900)]
libunistring: update to Unicode 7.0.0

* lib/unictype/joininggroup_byname.gperf: Add Straight Waw and
Manichaean names.
* lib/unictype/joininggroup_name.h: Likewise.
* lib/unictype.in.h (UC_JOINING_GROUP_STRAIGHT_WAW)
(UC_JOINING_GROUP_MANICHAEAN_ALEPH): New enumeration values.
* lib/gen-uni-tables.c (UC_JOINING_GROUP_STRAIGHT_WAW)
(UC_JOINING_GROUP_MANICHAEAN_*): New enumeration values.
(fill_arabicshaping, joining_group_as_c_identifier): Support those
enum values.
(is_property_alphabetic): Accept newly added characters to
cuneiform numeric signs.
(is_property_default_ignorable_code_point): Reject U+0605.
(FIELDLEN): Increase from 120 to 160.
* lib/uniwidth/width.c (nonspacing_table_data): Add U+0605,
U+08FF, U+0C00, U+0C81, U+0D01, U+1AB0..U+1ABE, U+1BAC..U+1BAD,
U+1CF8..U+1CF9, U+1DE7..U+1DF5, U+A9E5, U+AA7C, U+FE27..U+FE2D,
U+102E0, U+10376..U+1037A, U+10AE5..U+10AE6, U+1107F, U+11173,
U+1122F..U+11231, U+11234, U+11236..U+11237, U+112DF,
U+112E3..U+112EA, U+11301, U+1133C, U+11340, U+11366..U+1136C,
U+11370..U+11374, U+114B3..U+114B8, U+114BA, U+114BF..U+114C0,
U+114C2..U+114C3, U+115B2..U+115B5, U+115BC..U+115C0,
U+11633..U+1163A, U+1163D, U+1163F..U+11640, U+16AF0..U+16AF4,
U+16B30..U+16B36, U+1BC9D..U+1BC9E, U+1BCA0..U+1BCA3, and
U+1E8D0..U+1E8D6.
(uc_width): Adjust nonspacing_table_ind boundary from 240 to 248.
* tests/uniwidth/test-uc_width2.sh: Same updates as in
lib/uniwidth/width.c.
* all generated files under lib/uni* and tests/uni*: Regenerate.

10 years agolibunistring: update to Unicode 6.3.0
Daiki Ueno [Thu, 15 Jan 2015 03:16:53 +0000 (12:16 +0900)]
libunistring: update to Unicode 6.3.0

* lib/uniwbrk.in.h (WBP_DQ, WBP_SQ, WBP_HL): New enumeration values.
* lib/uniwbrk/u-wordbreaks.h (FUNC): Support WB7a, WB7b, and WB7c.
Update WB5, WB6, WB7, WB9, WB11, WB12, WB13a, and WB13b.
* lib/uniwbrk/wbrktable.h (uniwbrk_table): Adjust table size.
* lib/uniwbrk/wbrktable.c (uniwbrk_table): Support rule WB7a.
Update WB5, WB9, WB10, WB13a, and WB13b.
* tests/uniwbrk/test-uc-wordbreaks.c
(wordbreakproperty_to_string): Support WBP_DQ, WBP_SQ, and WBP_HL.
* lib/gen-uni-tables.c (UC_BIDI_LRI, UC_BIDI_RLI, UC_BIDI_FSI)
(UC_BIDI_PDI): New enumeration values.
(bidi_category_byname): Support those enum values.
(is_WBP_MIDNUMLET): Exclude 0x0027 (SINGLE QUOTE), which is now a
dedicated property assigned.
(is_property_case_ignorable): Check 0x0027.
(WBP_DQ, WBP_SQ, WBP_HL): New enumeration values.
(get_wbp, debug_output_wbp, fill_org_wbp, debug_output_org_wbp)
(output_wbp): Support those enum values.
* lib/unictype.in.h (UC_BIDI_LRI, UC_BIDI_RLI, UC_BIDI_FSI)
(UC_BIDI_PDI): New enumeration values.
* lib/unictype/bidi_byname.gperf: Add those property names.
* lib/uniwidth/width.c (nonspacing_table_data): Add U+061C,
U+180E, U+1A1B, and U+2066..U+2069.
* tests/uniwidth/test-uc_width2.sh: Same updates as in
lib/uniwidth/width.c.
* all generated files under lib/uni* and tests/uni*: Regenerate.

10 years agolibunistring: update to Unicode 6.2.0
Daiki Ueno [Thu, 15 Jan 2015 03:14:14 +0000 (12:14 +0900)]
libunistring: update to Unicode 6.2.0

* lib/unilbrk/lbrktables.h (LBP_RI): New enumeration value.
(unilbrk_table): Adjust table size.
* lib/unilbrk/lbrktables.c (unilbrk_table): Add a row and column
for LBP_RI.
* lib/uniwbrk.in.h (WBP_RI): New enumeration value.
* lib/uniwbrk/u-wordbreaks.h (FUNC): Support rule WB13c.
Normalize table index skipping ignored properties.
* lib/uniwbrk/wbrktable.c (uniwbrk_table): Support WBP_RI.  Remove
WBP_EXTEND and WBP_FORMAT, which are now computed without using
the table.
* lib/uniwbrk/wbrktable.h: Adjust table size.
* lib/unigbrk.in.h (GBP_RI): New enumeration value.
* lib/unigbrk/uc-is-grapheme-break.c (UC_IS_GRAPHEME_BREAK):
Support rule GB8a.
(UC_GRAPHEME_BREAKS_FOR, gb_table): Support GBP_RI.
* tests/unigbrk/test-uc-is-grapheme-break.c
(graphemebreakproperty_to_string): Support GBP_RI.
* lib/gen-uni-tables.c (LBP_RI): New enumeration value.
(get_lbp, debug_output_lbp, fill_org_lbp, debug_output_org_lbp)
(output_lbp): Support LBP_RI.  Adjust some characters changed from
LBP_AL to LBP_ID.
(output_lbp): Support LBP_RI.
(WBP_RI): New enumeration value.
(debug_output_wbp, fill_org_wbp, debug_output_org_wbp)
(output_wbp): Support WBP_RI.
(GBP_RI): New enumeration value.
(output_gbp_test, fill_org_gbp): Support GBP_RI.
* all generated files under lib/uni* and tests/uni*: Regenerate.

10 years agolibunistring: update to Unicode 6.1.0
Daiki Ueno [Thu, 15 Jan 2015 03:08:17 +0000 (12:08 +0900)]
libunistring: update to Unicode 6.1.0

* lib/gen-uni-tables.c (output_joining_group): Switch to
3-level table to accommodate joining groups defined with higher
codepoint value.  Since there are only 88 groups defined in
Unicode 7.0.0, use 7-bit packed format for level3 entries.
(get_lbp): Update for Unicode 6.1.0.
* lib/unictype/joininggroup_of.c (uc_joining_group): Adjust to use
3-level table.
* lib/unictype/joininggroup_byname.gperf: Add Rohingya Yeh
joining group name.
* lib/unictype/joininggroup_name.h: Likewise.
* lib/unilbrk/lbrktables.h (LBP_HL): New enumeration value.
(unilbrk_table): Adjust table size.
* lib/unilbrk/lbrktables.c (unilbrk_table): Add a row and column
for LBP_HL.
* lib/uniwidth/width.c (nonspacing_table_data): Add U+0604,
U+08E4..U+08FE, U+1BAB, U+1CF4, U+A674..U+A67B, U+A69F,
U+AAEC..U+AAED, U+AAF6, U+11100..U+11102, U+11127..U+1112B,
U+1112D..U+11134, U+11180..U+11181, U+111B6..U+111BE, U+116AB,
U+116AD, U+116B0..U+116B5, U+116B7, U+16F8F..U+16F92.  Remove
U+302E..U+302F.
* tests/uniwidth/test-uc_width2.sh: Same updates as in
lib/uniwidth/width.c.
* all generated files under lib/uni* and tests/uni*: Regenerate.
* modules/uni*/* (configure.ac): Bump minimum version to 0.9.5.

10 years agouniwbrk/u32-wordbreaks-tests: add conformance test
Daiki Ueno [Thu, 15 Jan 2015 03:06:30 +0000 (12:06 +0900)]
uniwbrk/u32-wordbreaks-tests: add conformance test

* modules/uniwbrk/u32-wordbreaks-tests (Files): Add
tests/uniwbrk/test-uc-wordbreaks.c,
tests/uniwbrk/test-uc-wordbreaks.sh, and
tests/uniwbrk/WordBreakTest.txt.
(Makefile.am): Add uniwbrk/test-uc-wordbreaks.sh to $(TESTS), add
test-uc-wordbreaks to $(check_PROGRAMS), and define
test_uc_wordbreaks_SOURCES and test_uc_wordbreaks_LDADD.
* tests/uniwbrk/test-uc-wordbreaks.sh: New file.
* tests/uniwbrk/test-uc-wordbreaks.c: New file.

10 years agouniwbrk: ignore Extended/Format characters at BOL
Daiki Ueno [Thu, 15 Jan 2015 03:03:09 +0000 (12:03 +0900)]
uniwbrk: ignore Extended/Format characters at BOL

* lib/uniwbrk/u-wordbreaks.h (FUNC): Ignore Extend and Format
characters if the previous character property is one of
WBP_NEWLINE, WBP_CR, and WBP_LF.

10 years agotest-strstr.c: avoid a trivial leak
Jim Meyering [Mon, 12 Jan 2015 00:47:11 +0000 (16:47 -0800)]
test-strstr.c: avoid a trivial leak

* tests/test-strstr.c (main): Free haystack.

10 years agoupdate-copyright: recognize groff's \(co marker
Jim Meyering [Mon, 12 Jan 2015 00:44:35 +0000 (16:44 -0800)]
update-copyright: recognize groff's \(co marker

* build-aux/update-copyright (circle_c_re): Also accept
uses of \(co, as found in gzip.1.

10 years agomaint.mk: fix compatibility with OS X nm
Pádraig Brady [Thu, 8 Jan 2015 12:18:54 +0000 (12:18 +0000)]
maint.mk: fix compatibility with OS X nm

* top/maint.mk (_gl_tight_scope): Use the -g option to
show exported items rather than the -e option which is
ignored on all platforms except OS X where it gives an error.
Reported by Assaf Gordon.

10 years agolocalcharset: improve charset detection on OS/2
KO Myung-Hun [Wed, 7 Jan 2015 05:36:52 +0000 (14:36 +0900)]
localcharset: improve charset detection on OS/2

Use system codepage when appropriate.  Map OS/2 codepages to
GNU canonical charset names if possible.

* lib/config.charset: Don't output aliases if "$os" is os2*.
* lib/localcharset.c (get_charset_aliases) [OS2]: Hardcode the
result for OS/2.
(locale_charset) [OS2]: Use system codepage if codeset is omitted
from the locale name which is neither "C" nor "POSIX".

10 years agocount-leading-zeros: use 64-bit intrinsics on 32-bit Windows
Paul Eggert [Tue, 6 Jan 2015 17:05:22 +0000 (09:05 -0800)]
count-leading-zeros: use 64-bit intrinsics on 32-bit Windows

This reverts the last patch but one, as it shouldn't be needed now
that the typo is fixed.
* lib/count-leading-zeros.h (count_leading_zeros_ll):
* lib/count-trailing-zeros.h:
* lib/count-one-bits.h:
Go back to using 64-bit intrinsics.

10 years agocount-leading-zeros: fix pragma typos
Paul Eggert [Tue, 6 Jan 2015 16:50:04 +0000 (08:50 -0800)]
count-leading-zeros: fix pragma typos

* lib/count-leading-zeros.h (_BitScanReverse, _BitScanReverse64):
Fix typos in declaration of intrinsics when _MSC_VER.

10 years agoautoupdate
Karl Berry [Tue, 6 Jan 2015 13:53:30 +0000 (05:53 -0800)]
autoupdate

10 years agocount-leading-zeros: avoid 64-bit intrinsics on 32-bit Windows
Pádraig Brady [Tue, 6 Jan 2015 02:27:16 +0000 (02:27 +0000)]
count-leading-zeros: avoid 64-bit intrinsics on 32-bit Windows

* lib/count-leading-zeros.h (count_leading_zeros_ll): Use 32 bit
intrinsics in this case.
* lib/count-trailing-zeros.h: Likewise.
* lib/count-one-bits.h: Likewise.

10 years agouniname/uniname: update to Unicode 7.0.0
Daiki Ueno [Tue, 6 Jan 2015 09:53:40 +0000 (18:53 +0900)]
uniname/uniname: update to Unicode 7.0.0

To accommodate new characters added since Unicode 5.1.0, this
changes the internal representation of codepoint ranges.
Previously, we grouped codepoint ranges by manually assigned 4-bit
tag, which only allowed 16 groups.  This removes the limitation by
switching to binary search on a table.  For the detail rationale and the
benchmark results, see:
https://lists.gnu.org/archive/html/bug-libunistring/2014-06/msg00001.html

* lib/uniname/gen-uninames.lisp (unicode-char): Rename CODE member
to INDEX, as it no longer represents a codepoint.
(range): New struct.
(main): Switch to intervals list from a bit-pattern based
classification.
* lib/uniname/uninames.h: Regenerate.
* tests/uniname/UnicodeDataNames.txt: Update to Unicode 7.0.0.
* modules/uniname/base (configure.ac): Bump minimum version to
0.9.5.
* modules/uniname/uniname (configure.ac): Bump minimum version to
0.9.5.

10 years agodoc: update INSTALL from autoconf
Eric Blake [Mon, 5 Jan 2015 23:15:44 +0000 (16:15 -0700)]
doc: update INSTALL from autoconf

Picks up the copyright year, and also the fact that newer texinfo
uses '' instead of `' for quoting.

* doc/install.texi: Resync from autoconf.
* doc/INSTALL: Reflect recent autoconf update.
* doc/INSTALL.ISO: Likewise.
* doc/INSTALL.UTF-8: Likewise.

Signed-off-by: Eric Blake <eblake@redhat.com>
10 years agostdio: fix use of PRIdMAX on modern mingw
Eric Blake [Mon, 5 Jan 2015 21:08:27 +0000 (14:08 -0700)]
stdio: fix use of PRIdMAX on modern mingw

Commit cf88e56ab broke the use of PRIdMAX and friends on modern
mingw64 installations.  Basically, when requesting
_USE_MINGW_ANSI_STDIO, not only does mingw turn on support for %lld,
it also rewrites <inttypes.h> to provide PRIdMAX as "lld" instead of
"I64d" (but only when <stdio.h> is also included).  But if a user is
NOT using the gnulib printf module, gnulib's <stdio.h> was still
giving printf() the system printf attribute, which causes the
compiler to then complain about an unknown %lld specifier, even though
we know we don't need to use the non-standard %I64d.  So this patch
adds a configure-time probe that should work with older gcc (which
does not differentiate between printf flavors) and older mingw (where
_USE_MINGW_ANSI_STDIO has no impact on behavior), while fixing the
mismatch in flavors on modern systems.

* m4/stdio_h.m4 (gl_STDIO_H): Probe for printf flavor via inttypes.
* lib/stdio.in.h (_GL_ATTRIBUTE_FORMAT_PRINTF_SYSTEM): Use result
to work with modern mingw.

Signed-off-by: Eric Blake <eblake@redhat.com>
10 years agoFix check for pthreads.h pollution on Mingw64
Daniel P. Berrange [Mon, 15 Dec 2014 17:44:22 +0000 (17:44 +0000)]
Fix check for pthreads.h pollution on Mingw64

A previous commit attempted to workaround pollution in the
Mingw64 pthreads.h header file

  commit d5fec6c22f03c6a73d62260c9ce091c10c0a9cbd
  Author: Eric Blake <eblake@redhat.com>
  Date:   Wed Jan 22 20:39:45 2014 -0700

    pthread: work around winpthread header pollution on mingw

It activated its workaround based on existance of the strtok_r
wrapper in pthreads.h. As luck would have it, latest Mingw64
headers removed the strtok_r wrapper from pthreads.h, but left
all the others. So the gnulib workaround was not activated.

Change the configure check to look for several of the broken
wrappers, instead of just strtok_r

Signed-off-by: Eric Blake <eblake@redhat.com>
10 years agolib-symbol-versions: cache script check
Paul Eggert [Sat, 3 Jan 2015 23:21:54 +0000 (15:21 -0800)]
lib-symbol-versions: cache script check

* m4/ld-version-script.m4 (gl_LD_VERSION_SCRIPT):
Cache the check for linker version scripts.
From a suggestion by Christophe Curis in:
http://lists.gnu.org/archive/html/bug-gnulib/2015-01/msg00011.html

10 years agomaint: fix grammar nits in propername
Benno Schulenberg [Sun, 4 Jan 2015 10:23:51 +0000 (11:23 +0100)]
maint: fix grammar nits in propername

* lib/propername.h: Remove a mistaken comma and a duplicate "from",
and use an adequate verb and tense.

10 years agogendocs: Update bug-report address and URLs to Gnulib's.
Ludovic Courtès [Fri, 2 Jan 2015 22:00:34 +0000 (23:00 +0100)]
gendocs: Update bug-report address and URLs to Gnulib's.

* build-aux/gendocs.sh: Change email addresses and upstream URLs
from to Gnulib's.
(scripturl, templateurl): Adjust accordingly.

10 years agogendocs: Add 'doc/gendocs_template_min'.
Ludovic Courtès [Fri, 2 Jan 2015 20:34:34 +0000 (21:34 +0100)]
gendocs: Add 'doc/gendocs_template_min'.

Suggested by Paul Eggert <eggert@cs.ucla.edu>.

* module/gendocs: Add 'doc/gendocs_template_min'.

10 years agogendocs: Change maintainer.
Ludovic Courtès [Wed, 17 Dec 2014 16:45:27 +0000 (17:45 +0100)]
gendocs: Change maintainer.

10 years agogendocs: copyright date and version fix
Paul Eggert [Thu, 1 Jan 2015 23:19:42 +0000 (15:19 -0800)]
gendocs: copyright date and version fix

Reported by Karl Berry in:
http://lists.gnu.org/archive/html/bug-gnulib/2015-01/msg00002.html
* build-aux/gendocs.sh, doc/gendocs_template, doc/gendocs_template_min:
Fix copyright date.
* build-aux/gendocs.sh (scriptversion): Update.

10 years agoderived INSTALL
Karl Berry [Thu, 1 Jan 2015 19:05:02 +0000 (11:05 -0800)]
derived INSTALL

10 years agorevert copyright updates in slaved files
Karl Berry [Thu, 1 Jan 2015 19:04:33 +0000 (11:04 -0800)]
revert copyright updates in slaved files

10 years agoversion-etc: new year
Paul Eggert [Thu, 1 Jan 2015 01:38:23 +0000 (01:38 +0000)]
version-etc: new year

* doc/gnulib.texi:
* lib/version-etc.c (COPYRIGHT_YEAR): Update copyright date.
* all files: Run 'make update-copyright'.

10 years agoautoupdate
Karl Berry [Wed, 31 Dec 2014 22:21:13 +0000 (14:21 -0800)]
autoupdate

10 years agoautoupdate
Karl Berry [Wed, 31 Dec 2014 14:55:37 +0000 (06:55 -0800)]
autoupdate

10 years agoxstrtol: ensure errno is reset
Pádraig Brady [Tue, 30 Dec 2014 23:37:26 +0000 (23:37 +0000)]
xstrtol: ensure errno is reset

Since commit 3bf75404, on 26-09-1998, errno may not have been reset.
Noticed with a spurious coreutils test failure on Darwin 14.0.0.

* lib/xstrtol.c (__xstrtol): Always reset errno before returning.

10 years agoutimens: fix dependency typo
Paul Eggert [Sun, 28 Dec 2014 22:03:39 +0000 (14:03 -0800)]
utimens: fix dependency typo

* modules/utimens (Depends-on): Remove 'assure'.
This bug was introduced in the recent 'assure' patch.

10 years agoautoupdate
Karl Berry [Fri, 26 Dec 2014 16:28:48 +0000 (08:28 -0800)]
autoupdate

10 years agodocs: mention why libgen.h is bad
Eric Blake [Mon, 22 Dec 2014 18:46:41 +0000 (11:46 -0700)]
docs: mention why libgen.h is bad

I just debugged a failure in sharutils-4.14.2-1 for using basename()
without including <libgen.h>.  In the process, I realized that we
aren't doing a good job of explaining why we don't offer a libgen.h
replacement (it is useless because the only two functions it
provides are also useless).

* doc/posix-headers/libgen.texi (libgen.h): Refer to dirname module.

Signed-off-by: Eric Blake <eblake@redhat.com>
10 years agoautoupdate
Karl Berry [Sun, 21 Dec 2014 15:03:14 +0000 (07:03 -0800)]
autoupdate

10 years agoassure: new module
Paul Eggert [Sat, 20 Dec 2014 21:00:21 +0000 (13:00 -0800)]
assure: new module

This works better than 'assert' when compiling with -DNDEBUG,
as it avoids some compiler diagnostics in that case.
Reported by Norihiro Tanaka in:
http://lists.gnu.org/archive/html/bug-gnulib/2014-12/msg00215.html
* MODULES.html.sh (func_all_modules): Add 'assure'.
* lib/assure.h, modules/assure: New files.
* lib/chdir-long.c, lib/cycle-check.c, lib/fchdir.c, lib/fts.c:
* lib/poll.c, lib/savewd.c, lib/utimens.c, lib/xstrtol.c:
Prefer 'assure' to 'assert'.
* modules/chdir-long, modules/cycle-check, modules/fchdir:
* modules/poll, modules/savewd, modules/utimens, modules/xstrtol:
Depend on 'assure'.

10 years agoautoupdate
Karl Berry [Fri, 19 Dec 2014 14:56:42 +0000 (06:56 -0800)]
autoupdate

10 years agostdalign: port better to HP compilers
Paul Eggert [Wed, 17 Dec 2014 01:57:23 +0000 (17:57 -0800)]
stdalign: port better to HP compilers

* m4/stdalign.m4 (gl_STDALIGN_H): Try the test if __HP_cc or
__HP_aCC are nonzero, to be consistent with the 2014-01-20 patch.

10 years agostdalign: work around Apple GCC 4.0 bug
Paul Eggert [Wed, 17 Dec 2014 01:29:33 +0000 (17:29 -0800)]
stdalign: work around Apple GCC 4.0 bug

Reported by David Fang in:
http://lists.gnu.org/archive/html/bug-gnulib/2014-12/msg00194.html
* lib/stdalign.in.h (_Alignas):
* m4/stdalign.m4 (gl_STDALIGN_H):
Do not use aligned attribute with GCC 4.0 on Apple.

10 years agogendocs.sh and templates now maintained in gnulib
Karl Berry [Wed, 17 Dec 2014 22:46:25 +0000 (14:46 -0800)]
gendocs.sh and templates now maintained in gnulib

10 years agogetcwd: fix test failure on OS X 10.9
Pádraig Brady [Tue, 16 Dec 2014 02:35:19 +0000 (02:35 +0000)]
getcwd: fix test failure on OS X 10.9

* m4/getcwd-path-max.m4: Avoid the replacement if it
won't be effective due to the PATH_MAX limitation of lstat().
(gl_cv_func_getcwd_path_max): Adjust to indicate this case.
* m4/getcwd.m4 (gl_FUNC_GETCWD): Define HAVE_GETCWD_SHORTER
for this case for use in tests, and also exclude this
case when setting REPLACE_GETCWD.
* tests/test-getcwd.c (test_long_name): Restrict the
tested path length so that lstat() will not be passed
a path greater than PATH_MAX.
Also key a test condition on HAVE_OPENAT_SUPPORT rather
than AT_FDCWD, since the latter is set unconditionally
since Sep 2009 in commit 52c658e9.

10 years agoparse-datetime: avoid a compiler warning with byacc
Tim Rühsen [Sun, 14 Dec 2014 20:32:54 +0000 (20:32 +0000)]
parse-datetime: avoid a compiler warning with byacc

* lib/parse-datetime.y (yylex): Use the same prototype in the
function definition as the declaration, to avoid a -Wstrict-prototypes
warning seen when using byacc.

10 years agounicase/locale-language-tests: fix LOCALE_FR test
Daiki Ueno [Fri, 12 Dec 2014 00:20:59 +0000 (09:20 +0900)]
unicase/locale-language-tests: fix LOCALE_FR test

* tests/unicase/test-locale-language.sh: Really use $LOCALE_FR for
a French locale with traditional encoding.
Reported by umerqayam in:
http://lists.gnu.org/archive/html/bug-libunistring/2014-12/msg00000.html

10 years agoautoupdate
Karl Berry [Sat, 13 Dec 2014 14:51:11 +0000 (06:51 -0800)]
autoupdate

10 years agoupdate from texinfo
Karl Berry [Fri, 12 Dec 2014 23:24:21 +0000 (15:24 -0800)]
update from texinfo

10 years agostddef: support C11's max_align_t
Paul Eggert [Fri, 12 Dec 2014 19:27:45 +0000 (11:27 -0800)]
stddef: support C11's max_align_t

* doc/posix-headers/stddef.texi (stddef.h): Document max_align_t.
* lib/stddef.in.h (_@GUARD_PREFIX@_STDDEF_H) [__need_wint_t]:
Do not undef, as that might cause max_align_t to be defined twice.
Instead, change use to check for _GL_STDDEF_WINT_T too.
(max_align_t) [!HAVE_MAX_ALIGN_T]: New decl.
* m4/stddef_h.m4 (gl_STDDEF_H, gl_STDDEF_H_DEFAULTS):
Check for max_align_t.
* modules/stddef (stddef.h): Substitute HAVE_MAX_ALIGN_T.
* modules/stddef-tests (Depends-on): Add stdalign.
* tests/test-stddef.c: Test max_align_t.

10 years agounistd: fix iOS check conditional
Daiki Ueno [Thu, 11 Dec 2014 07:07:31 +0000 (16:07 +0900)]
unistd: fix iOS check conditional

On Mac OS X 10.8, the TARGET_* macros are unconditonally defined
as 0 or 1 in <TargetConditionals.h>, and the previous check always
yielded true on non-iOS environment.
* lib/unistd.in.h (environ) [__APPLE__]: Check the values of
TARGET_OS_IPHONE and TARGET_IPHONE_SIMULATOR, instead of whether
they are defined.

10 years agoposixtm: avoid compiler warning in a better way
Paul Eggert [Wed, 10 Dec 2014 02:11:46 +0000 (18:11 -0800)]
posixtm: avoid compiler warning in a better way

* lib/posixtm.c (IF_LINT): Remove.
(year, posix_time_parse):
Return true (not 0) if successful.  All callers changed.
(posix_time_parse): Simplify to pacify GCC without need for IF_LINT.

10 years agorelocatable: support UNIXROOT in relocate() on EMX
KO Myung-Hun [Tue, 9 Dec 2014 01:40:48 +0000 (10:40 +0900)]
relocatable: support UNIXROOT in relocate() on EMX

UNIXROOT is used to specify a drive of a root of FHS. So if a path is
started with '/', then it should be translated to "$UNIXROOT/".

* lib/relocatable.c (relocate): Prepend $UNIXROOT to pathname if it is
started with '/' on EMX.

10 years agofreopen: workaround freopen() on OS/2 kLIBC
KO Myung-Hun [Fri, 5 Dec 2014 06:01:36 +0000 (15:01 +0900)]
freopen: workaround freopen() on OS/2 kLIBC

On OS/2 kLIBC, freopen() returns NULL even if it is successful if
filename is NULL.

* lib/freopen.c (rpl_freopen): Workaround.
* m4/freopen.m4: Add os2* case.

10 years agoget_shared_library_fullname: port to EMX
KO Myung-Hun [Wed, 3 Dec 2014 06:46:17 +0000 (15:46 +0900)]
get_shared_library_fullname: port to EMX

* lib/relocatable.c: Define strcmp and strncmp to stricmp and strnicmp
on EMX, respectively.
(_DLL_InitTerm): New on EMX.
(get_shared_library_fullname): Implement on EMX.

Signed-off-by: Eric Blake <eblake@redhat.com>
10 years agofind_executable: port to EMX
KO Myung-Hun [Wed, 3 Dec 2014 07:02:50 +0000 (16:02 +0900)]
find_executable: port to EMX

* lib/progreloc.c (find_executable): Implement on EMX.

Signed-off-by: Eric Blake <eblake@redhat.com>
10 years agosched: check struct sched_param in spawn.h as well
KO Myung-Hun [Thu, 4 Dec 2014 01:03:34 +0000 (10:03 +0900)]
sched: check struct sched_param in spawn.h as well

On OS/2 kLIBC, struct sched_param is in spawn.h. So without this a
redefinition error occurs when sched.h is inclued by spawn.h.

* lib/sched.in.h: Include spawn.h on kLIBC.
* lib/sched_h.m4: Check struct sched_param in spawn.h as well.

10 years agosupport GNU format printf and scanf on mingw
Pádraig Brady [Tue, 2 Dec 2014 13:34:06 +0000 (13:34 +0000)]
support GNU format printf and scanf on mingw

Allow %lld and %Lf to work on mingw as per:
http://sourceforge.net/p/mingw-w64/wiki2/gnu%20printf/

10 years agobootstrap: Allow perl modules in $buildreq
Martin Kletzander [Mon, 8 Dec 2014 12:19:12 +0000 (13:19 +0100)]
bootstrap: Allow perl modules in $buildreq

With this patch it is possible to put e.g. "perl::XML:XPath -" in
$buildreq in bootstrap.conf which will cause a check for perl module
XML::XPath using:

  perl -m"XML::XPath" -e 'exit 0' >/dev/null 2>&1

If this fails due to any other error than XML::XPath missing, it is left
on the user to fix up his/her bootstrap.conf.  One of the examples
might be perl itself missing, which should be in $buildreq and precede
any perl::Module specifications.  Versioning of perl modules is not
supported.

Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
10 years agoapply _GL_ATTRIBUTE_PURE to some inline functions
Pádraig Brady [Sat, 6 Dec 2014 01:28:17 +0000 (01:28 +0000)]
apply _GL_ATTRIBUTE_PURE to some inline functions

clang 3.4.2 flagged these inline functions as pure

* lib/savewd.h (savewd_errno): Set _GL_ATTRIBUTE_PURE.
* lib/sig-handler.h (get_handler): Likewise.
* lib/stat-time.h (get_stat_{a,c,m,birth}time{,_ns}): Likewise.
* lib/timespec.h (timespec_cmp, timespec_sign): Likewise.

10 years agovasnprintf: fix potential incorrect errno
Pádraig Brady [Mon, 8 Dec 2014 09:46:38 +0000 (09:46 +0000)]
vasnprintf: fix potential incorrect errno

An adjustment of the previous commit c5c4f53b.

* lib/vasnprintf.c (VASNPRINTF): free() generally doesn't set errno,
but it can potentially in certain edge cases.
Reported by Eric Blake.

10 years agovasnprintf: fix potential use after free
Pádraig Brady [Sat, 6 Dec 2014 01:14:02 +0000 (01:14 +0000)]
vasnprintf: fix potential use after free

* lib/vasnprintf.c (VASNPRINTF): Fix free-memory read,
flagged by clang-analyzer 3.4.2.

10 years agoautoupdate
Karl Berry [Fri, 5 Dec 2014 13:56:18 +0000 (05:56 -0800)]
autoupdate

10 years agofilevercmp, posixtm: avoid compiler warnings with -O3
Pádraig Brady [Fri, 5 Dec 2014 12:32:49 +0000 (12:32 +0000)]
filevercmp, posixtm: avoid compiler warnings with -O3

* lib/filevercmp.h (filevercmp): Tag with _GL_ATTRIBUTE_PURE
* lib/posixtm.c: (IF_LINT): Define.
(posix_time_parse): Use it to void a "may be used uninitialized"
warning, seen only with -O3.

10 years agoFix LDBL80_WORDS macro on big endian platforms.
Bruno Haible [Fri, 5 Dec 2014 10:30:27 +0000 (11:30 +0100)]
Fix LDBL80_WORDS macro on big endian platforms.

* m4/isfinite.m4 (gl_ISFINITEL_WORKS): Add missing parenthesis in
LDBL80_WORDS macro.
* m4/isinf.m4 (gl_ISINFL_WORKS): Likewise.
* m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Likewise.
* tests/test-isfinite.c (test_isfinitel): Likewise.
* tests/test-isinf.c (test_isinfl): Likewise.
* tests/test-isnan.c (test_long_double): Likewise.
* tests/test-isnanl.h (main): Likewise.
* tests/test-snprintf-posix.h (LDBL80_WORDS): Add missing parenthesis.
* tests/test-sprintf-posix.h (LDBL80_WORDS): Likewise.
* tests/test-vasnprintf-posix.c (LDBL80_WORDS): Likewise.
* tests/test-vasprintf-posix.c (LDBL80_WORDS): Likewise.
Reported by Pádraig Brady.

10 years agoautoupdate
Karl Berry [Wed, 3 Dec 2014 15:04:40 +0000 (07:04 -0800)]
autoupdate

10 years agogit-version-gen: do not print new line characters
KO Myung-Hun [Tue, 2 Dec 2014 05:55:20 +0000 (14:55 +0900)]
git-version-gen: do not print new line characters

On platforms with CRLF endings (such as OS/2), use of 'echo' may
leave behind an unwanted CR.

* build-aux/git-version-gen: Use printf instead of echo and tr.

Signed-off-by: Eric Blake <eblake@redhat.com>
10 years agognulib-tool: recognize x:* as an absolute path
KO Myung-Hun [Tue, 2 Dec 2014 03:50:49 +0000 (12:50 +0900)]
gnulib-tool: recognize x:* as an absolute path

On OS/2, x:* is an absolute path, too.

* gnulib-tool (func_gnulib_dir): Add ?:* case.
(func_relconcat): Likewise.

Signed-off-by: Eric Blake <eblake@redhat.com>
10 years agoargp: avoid extraneous translation and mem leak with empty pre doc
Andrei Borzenkov [Tue, 2 Dec 2014 16:05:10 +0000 (16:05 +0000)]
argp: avoid extraneous translation and mem leak with empty pre doc

* lib/argp-help.c (argp_doc): Never translate the empty string,
when "\v" is the first or last character of the string, as that
has a reserved meaning to return the header info from a po file.
This also fixes a small memory leak in the !post case.
The issue can be seen with this command for example:
LC_MESSAGES=en_US grub2-mknetdir --help

10 years agoautoupdate
Karl Berry [Sat, 29 Nov 2014 14:00:25 +0000 (06:00 -0800)]
autoupdate

10 years agodoc: mention that _BSD_SOURCE is deprecated for _DEFAULT_SOURCE
Pádraig Brady [Fri, 28 Nov 2014 10:57:31 +0000 (10:57 +0000)]
doc: mention that _BSD_SOURCE is deprecated for _DEFAULT_SOURCE

* doc/posix-functions/setjmp.texi: Defining _BSD_SOURCE will induce
warnings unless _DEFAULT_SOURCE is also defined.

10 years agouniname/uniname-tests: skip if system's libunistring is used
Daiki Ueno [Thu, 27 Nov 2014 09:46:43 +0000 (18:46 +0900)]
uniname/uniname-tests: skip if system's libunistring is used

* modules/uniname/uniname-tests (Makefile.am): Skip test if
uniname/uniname module is not compiled.

10 years agoprintf: fix configure check on big endian systems
Pádraig Brady [Thu, 27 Nov 2014 11:17:07 +0000 (11:17 +0000)]
printf: fix configure check on big endian systems

* m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Add missing bracket.

10 years agopipe-filter-gi, pipe-filter-ii: port to AIX
Daiki Ueno [Tue, 18 Nov 2014 12:11:09 +0000 (21:11 +0900)]
pipe-filter-gi, pipe-filter-ii: port to AIX

On AIX 7.1, 'select' is defined as static and cannot be referred
to from inline function.
* lib/pipe-filter-aux.h (nointr_select): Remove, manually expand
the definition...
* lib/pipe-filter-gi.c (filter_loop): ...here, and...
* lib/pipe-filter-ii.c (pipe_filter_ii_execute): ...here.

10 years agogitlog-to-changelog: add --until
Paul Eggert [Thu, 20 Nov 2014 17:29:35 +0000 (09:29 -0800)]
gitlog-to-changelog: add --until

* build-aux/gitlog-to-changelog: Support new --until option.
Need described by Eli Zaretskii in: http://bugs.gnu.org/19113

10 years agoupdate from texinfo
Karl Berry [Sun, 16 Nov 2014 18:41:11 +0000 (10:41 -0800)]
update from texinfo