view COPYING @ 17366:9855b352e525

regex: port to mingw's recent addition of undeclared alarm On mingw (at least, when cross-compiling with Fedora 18's mingw32-headers-2.0.999-0.15.trunk.20121110.fc18.noarch build), compilation of test-regex fails: test-regex.c: In function 'main': test-regex.c:42:11: error: 'SIGALRM' undeclared (first use in this function) test-regex.c:42:11: note: each undeclared identifier is reported only once for each function it appears in test-regex.c:43:3: warning: implicit declaration of function 'alarm' It turns out that recent mingw64 added an export of alarm() and SIGALRM, but guarded their declarations behind __USE_MINGW_ALARM (default off, and with alarm() only in the non-standard <io.h>); so the m4 tests were setting HAVE_ALARM to 1 based on link success but then failing to compile. * doc/posix-functions/alarm.texi (alarm): Document that alarm exists but still doesn't work in newer mingw. * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Check for alarm declaration, not existence. Ensure SIGALRM is not trapped. * m4/mktime.m4 (gl_FUNC_MKTIME): Likewise. * m4/regex.m4 (gl_REGEX): Likewise. * m4/remainderf.m4 (gl_FUNC_REMAINDERF_WORKS): Likewise. * tests/test-regex.c (main): Use correct probe for alarm. Signed-off-by: Eric Blake <>
author Eric Blake <>
date Mon, 11 Mar 2013 14:51:33 -0600
parents 70e0e23ed97a
line wrap: on
line source

$Id: COPYING,v 1.3 2006-10-26 16:20:28 eggert Exp $
The files in here are mostly copyright (C) Free Software Foundation, and
are under assorted licenses.  Mostly, but not entirely, GPL.

Many modules are provided dual-license, either GPL or LGPL at your
option.  The headers of files in the lib directory (e.g., lib/error.c)
state GPL for convenience, since the bulk of current gnulib users are
GPL'd programs.  But the files in the modules directory (e.g.,
modules/error) state the true license of each file, and when you use
'gnulib-tool --lgpl --import <modules>', gnulib-tool either rewrites
the files to have an LGPL header as part of copying them from gnulib
to your project directory, or fails because the modules you requested
were not licensed under LGPL.

Some of the source files in lib/ have different licenses.  Also, the
copy of maintain.texi in doc/ has a verbatim-copying license, and
doc/standards.texi and make-stds.texi are GFDL.