33 Commits
Author SHA1 Message Date
Paul Eggert a3fd683de3 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'.
2017-01-01 02:59:23 +00:00
Paul Eggert 71090a2a31 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'.
2016-01-01 00:57:21 -08:00
Paul Eggert b9bfe78424 version-etc: new year
* doc/gnulib.texi:
* lib/version-etc.c (COPYRIGHT_YEAR): Update copyright date.
* all files: Run 'make update-copyright'.
2014-12-31 17:47:54 -08:00
Eric Blake 1276a2c5f2 maint: update copyright
I ran 'make update-copyright'.

Signed-off-by: Eric Blake <eblake@redhat.com>
2014-01-01 00:07:10 -07:00
Eric Blake 9fc81090f6 maint: update all copyright year number ranges
Run "make update-copyright".  Compare to commit 1602f0a from last year.

Signed-off-by: Eric Blake <eblake@redhat.com>
2013-01-01 00:50:58 +00:00
Jim Meyering 1602f0afed maint: update all copyright year number ranges
Run "make update-copyright".
2012-01-01 10:04:58 +01:00
Bruno Haible 6195fa324f Declare system functions in a way that works with C++.
* m4/fdopendir.m4 (gl_FUNC_FDOPENDIR) [C++]: In the test program,
declare fdopendir as extern "C".
* m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS) [C++]: In the test program,
declare frexpl as extern "C".
* m4/getaddrinfo.m4 (gl_GETADDRINFO) [C++]: In the test program,
declare gai_strerror as extern "C".
* m4/getdomainname.m4 (gl_FUNC_GETDOMAINNAME) [C++]: In the test
programs, declare gai_strerror as extern "C".
* m4/getlogin_r.m4 (gl_FUNC_GETLOGIN_R) [C++]: In the test program,
declare getlogin_r as extern "C".
* m4/ioctl.m4 (gl_FUNC_IOCTL) [C++]: In the test program, declare ioctl
as extern "C".
* m4/ldexpl.m4 (gl_FUNC_LDEXPL_WORKS) [C++]: In the test program,
declare ldexpl as extern "C".
* m4/logb.m4 (gl_FUNC_LOGB) [C++]: In the test programs, declare logb
as extern "C".
* m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS) [C++]: In the test
program, declare getmntinfo as extern "C".
* m4/stpncpy.m4 (gl_FUNC_STPNCPY) [C++]: In the test program, declare
stpncpy as extern "C".
* m4/strerror_r.m4 (gl_FUNC_STRERROR_R_WORKS) [C++]: In the test
program, declare __xpg_strerror_r as extern "C".
* m4/strndup.m4 (gl_FUNC_STRNDUP) [C++]: In the test program, declare
strndup as extern "C".
* m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT) [C++]: In the test program,
declare memset and bzero as extern "C".
Reported by Sam Steingold <sds@gnu.org>.
2011-07-22 00:16:46 +02:00
Paul Eggert 350d202a28 * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Poison pselect.
Suggested by Bruno Haible.
2011-07-06 00:44:21 -07:00
Paul Eggert 1b1ea5a514 pselect: new module
* lib/sys_select.in.h: Include <signal.h>, for 'sigset_t'.
(pselect): New decls.
* m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Require AC_C_RESTRICT,
since the standard pselect decl uses 'restrict'.
(gl_SYS_SELECT_H_DEFAULTS): Add defaults for GNULIB_PSELECT,
HAVE_PSELECT, REPLACE_PSELECT.
* modules/sys_select (sys/select.h): Substitute GNULIB_PSELECT,
HAVE_PSELECT, REPLACE_PSELECT.
* lib/pselect.c, m4/pselect.m4, modules/pselect: New files.
2011-06-30 14:59:13 -07:00
Paul Eggert 18c7880d06 sys_select: don't depend on sys_socket
This is so that Emacs doesn't have to drag in m4/sockpfaf.m4 etc; see
<http://lists.gnu.org/archive/html/bug-gnulib/2011-06/msg00358.html>.
This fix works on GNU and GNU-like platforms, but has not been tested
on native Windows.
* lib/sys_select.in.h: Include <sys/socket.h> only if native Windows.
* m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Do not require
gl_HEADER_SYS_SOCKET.
* modules/sys_select (Files): Add m4/sys_socket_h.m4, for
gl_PREREQ_SYS_H_WINSOCK2.
2011-06-30 10:58:39 -07:00
Paul Eggert 8397b02df8 gl_CHECK_NEXT_HEADERS implies AC_CHECK_HEADERS_ONCE
* m4/include_next.m4 (gl_CHECK_HEXT_HEADERS): Document this.
* m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Don't bother to invoke
AC_CHECK_HEADERS_ONCE on a header that we also invoke
gl_CHECK_NEXT_HEADERS on, since the latter invokes the former.
* m4/netdb_h.m4 (gl_HEADER_NETDB): Likewise.
* m4/pthread.m4 (gl_PTHREAD_CHECK): Likewise.
* m4/sched_h.m4 (gl_SCHED_H): Likewise.
* m4/search_h.m4 (gl_SEARCH_H): Likewise.
* m4/spawn_h.m4 (gl_SPAWN_H): Likewise.
* m4/sys_file_h.m4 (gl_HEADER_SYS_FILE_H): Likewise.
* m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
* m4/sys_times_h.m4 (gl_SYS_TIMES_H): Likewise.
* m4/sys_utsname_h.m4 (gl_SYS_UTSNAME_H): Likewise.
* m4/termios_h.m4 (gl_TERMIOS_H): Likewise.
* m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
* m4/wchar_h.m4 (gl_WCHAR_H): Likewise.
* m4/wctype_h.m4 (gl_WCTYPE_H): Likewise.
2011-01-21 15:47:40 -08:00
Jim Meyering d60f3b0c6b maint: update almost all copyright ranges to include 2011
Run the new "make update-copyright" rule.
2011-01-01 22:12:59 +01:00
Bruno Haible 63bc47a1fe Port to uClibc.
* lib/relocatable.c (find_shared_library_fullname): Treat uClibc like
glibc.
* lib/strerror_r.c: Likewise.
* m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Likewise.
* m4/duplocale.m4 (gl_FUNC_DUPLOCALE): Likewise.
* m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Likewise.
* m4/glibc21.m4 (gl_GLIBC21): Likewise.
* tests/test-sigaction.c (handler, main): Likewise.
* lib/localename.c (gl_locale_name_thread_unsafe, HAVE_LOCALE_NULL):
Treat uClibc like a non-glibc platform.
* lib/propername.c (proper_name_utf8): Likewise.
* lib/spawn.in.h: Likewise.
* lib/striconv.c (mem_cd_iconv, str_cd_iconv, str_iconv): Likewise.
* lib/striconveh.c (iconveh_open, iconv_carefully, iconv_carefully_1,
mem_cd_iconveh_internal): Likewise.
* lib/striconveha.c (mem_iconveha, str_iconveha): Likewise.
* lib/string.in.h (memchr, memrchr, rawmemchr, strchrnul, strpbrk,
strstr, strcasestr): Likewise.
* lib/unicodeio.c (unicode_to_mb): Likewise.
* m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
* m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
* m4/glibc2.m4 (gt_GLIBC2): Likewise.
* m4/iconv_open.m4 (gl_FUNC_ICONV_OPEN): Likewise.
* m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE, gl_FUNC_MEMMEM): Likewise.
* m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Likewise.
* m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE, gl_FUNC_STRCASESTR):
Likewise.
* m4/strstr.m4 (gl_FUNC_STRSTR_SIMPLE, gl_FUNC_STRSTR): Likewise.
* m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
* m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H): Likewise.
* m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
* m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
* m4/sys_times_h.m4 (gl_SYS_TIMES_H): Likewise.
* m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
* m4/wchar_h.m4 (gl_WCHAR_H): Likewise.
* tests/test-getopt.h (OPTIND_MIN): Likewise.
* tests/test-striconveha.c (main): Likewise.
* doc/posix-functions/getdelim.texi: Mention an uClibc bug.
* doc/posix-functions/getline.texi: Likewise.
Reported by Mike Frysinger <vapier@gentoo.org>.
2010-11-20 18:54:00 +01:00
Bruno Haible cd21604b6b Distinguish two kinds of module indicators. 2010-03-28 00:46:24 +01:00
Bruno Haible da857f5cfa Factorize common .m4 code. 2010-03-27 18:38:53 +01:00
Bruno Haible dd7d0aad52 Fix bug introduced on 2009-12-31. 2010-03-15 00:49:47 +01:00
Bruno Haible c1735278a8 Tests of module 'sys_select' in C++ mode. 2010-03-08 03:11:20 +01:00
Eric Blake cbd5934b19 warn-on-use: use instead of link-warning
Each *.in.h file serves two purposes - provide enough self-contained
content to serve as a replacement for the system header regardless of
the user's compiler, and offer the developer the ability to detect any
gnulib modules that might have been inadvertantly excluded.  The
former requires independence from config.h, and routes everything
through a Makefile.am snippet that uses @@ substitution specific to
the modules that were in use, with details learned at configure time.

The latter works by poisoning anything that gnulib did not replace,
but which the developer had natively available, explaining why their
tests passed during development.  Poisoning relies on gcc features,
and requires manual triggering by adding -DGNULIB_POSIXCHECK to
CFLAGS; it assumes that <config.h> is properly included.  In fact, we
do not want to use @@ substitution for HAVE_DECL_* during poisoning,
because the warning is only relevant for the gnulib modules which were
not included, and thus where the m4 macros to set proper @@ values
have not been run.  Furthermore, we only need to poison interfaces
that already have a declaration; if something is not declared, then
the developer wouldn't have been able to link, so their code won't be
using the problematic interface in the first place.

* modules/stdio (Depends-on, Makefile.am): Drop link-warning.
* modules/unistd (Depends-on, Makefile.am): Likewise.
* modules/arpa_inet (Depends-on): Replace link-warning with
warn-on-use.
(Makefile.am): Update rules accordingly.
* modules/ctype (Depends-on, Makefile.am): Likewise.
* modules/dirent (Depends-on, Makefile.am): Likewise.
* modules/fcntl-h (Depends-on, Makefile.am): Likewise.
* modules/inttypes (Depends-on, Makefile.am): Likewise.
* modules/langinfo (Depends-on, Makefile.am): Likewise.
* modules/locale (Depends-on, Makefile.am): Likewise.
* modules/math (Depends-on, Makefile.am): Likewise.
* modules/search (Depends-on, Makefile.am): Likewise.
* modules/signal (Depends-on, Makefile.am): Likewise.
* modules/spawn (Depends-on, Makefile.am): Likewise.
* modules/stdlib (Depends-on, Makefile.am): Likewise.
* modules/string (Depends-on, Makefile.am): Likewise.
* modules/strings (Depends-on, Makefile.am): Likewise.
* modules/sys_file (Depends-on, Makefile.am): Likewise.
* modules/sys_ioctl (Depends-on, Makefile.am): Likewise.
* modules/sys_select (Depends-on, Makefile.am): Likewise.
* modules/sys_socket (Depends-on, Makefile.am): Likewise.
* modules/sys_stat (Depends-on, Makefile.am): Likewise.
* modules/sys_times (Depends-on, Makefile.am): Likewise.
* modules/sys_utsname (Depends-on, Makefile.am): Likewise.
* modules/wchar (Depends-on, Makefile.am): Likewise.
* m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Check which functions
should be poisoned.
* m4/ctype.m4 (gl_CTYPE_H): Likewise.
* m4/dirent_h.m4 (gl_DIRENT_H): Likewise.
* m4/fcntl_h.m4 (gl_FCNTL_H): Likewise.
* m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
* m4/langinfo_h.m4 (gl_LANGINFO_H): Likewise.
* m4/locale_h.m4 (gl_LOCALE_H): Likewise.
* m4/math_h.m4 (gl_MATH_H): Likewise.
* m4/search_h.m4 (gl_SEARCH_H): Likewise.
* m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
* m4/spawn_h.m4 (gl_SPAWN_H): Likewise.
* m4/stdio_h.m4 (gl_STDIO_H): Likewise.
* m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
* m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
* m4/strings_h.m4 (gl_HEADER_STRINGS_H_BODY): Likewise.
* m4/sys_file_h.m4 (gl_HEADER_SYS_FILE_H_DEFAULTS): Likewise.
* m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H): Likewise.
* m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
* m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
* m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
* m4/sys_times_h.m4 (gl_SYS_TIMES_H): Likewise.
* m4/sys_utsname_h.m4 (gl_SYS_UTSNAME_H): Likewise.
* m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
* m4/wchar.m4 (gl_WCHAR_H): Likewise.
* lib/arpa_inet.in.h: Use _GL_WARN_ON_USE instead of
GL_LINK_WARNING.
* lib/ctype.in.h: Likewise.
* lib/dirent.in.h: Likewise.
* lib/fcntl.in.h: Likewise.
* lib/inttypes.in.h: Likewise.
* lib/langinfo.in.h: Likewise.
* lib/locale.in.h: Likewise.
* lib/math.in.h: Likewise.
* lib/search.in.h: Likewise.
* lib/signal.in.h: Likewise.
* lib/spawn.in.h: Likewise.
* lib/stdio.in.h: Likewise.
* lib/stdlib.in.h: Likewise.
* lib/string.in.h: Likewise.
* lib/strings.in.h: Likewise.
* lib/sys_file.in.h: Likewise.
* lib/sys_ioctl.in.h: Likewise.
* lib/sys_select.in.h: Likewise.
* lib/sys_socket.in.h: Likewise.
* lib/sys_stat.in.h: Likewise.
* lib/sys_times.in.h: Likewise.
* lib/sys_utsname.in.h: Likewise.
* lib/unistd.in.h: Likewise.
* lib/wchar.in.h: Likewise.

Signed-off-by: Eric Blake <ebb9@byu.net>
2010-01-20 07:04:51 -07:00
Eric Blake e7100ae487 headers: make check of system header explicit
Exploiting knowledge of internal behavior of other macros can
be dangerous, especially since AC_CHECK_HEADERS_ONCE is designed
to be cheap on subsequent use.

* m4/netdb_h.m4 (gl_HEADER_NETDB): Don't exploit knowledge of
gl_CHECK_NEXT_HEADER internals, but call AC_CHECK_HEADERS_ONCE
ourselves.
* m4/search_h.m4 (gl_SEARCH_H): Likewise.
* m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
* m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
* m4/inttypes.m4 (gl_INTTYPES_H): Likewise, for gt_INTTYPES_PRI
internals.
* m4/wchar.m4 (gl_WCHAR_H): Skip followup test if header is
missing.
Suggested by Bruno Haible.

Signed-off-by: Eric Blake <ebb9@byu.net>
2010-01-01 10:52:47 -07:00
Jim Meyering b2e2010c7c update nearly all FSF copyright year lists to include 2010
Use the same procedure as for 2009, outlined in
http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/20081
2010-01-01 10:42:00 +01:00
Bruno Haible 4f8fcf1d70 Fix bug in last change of m4/sys_select_h.m4. 2009-12-31 22:27:32 +01:00
Eric Blake d1a73882fc link-warning: always build headers with link warnings
Replacement headers must be built unconditionally if they use
GL_LINK_WARNING, if the warning is to ever trigger on a
glibc system during CFLAGS=-DGNULIB_POSIXCHECK.

* modules/arpa_inet (Makefile.am): Always build replacement
header.
* modules/ctype (Makefile.am): Likewise.
* modules/dirent (Makefile.am): Likewise.
* modules/inttypes (Makefile.am): Likewise.
* modules/langinfo (Makefile.am): Likewise.
* modules/locale (Makefile.am): Likewise.
* modules/spawn (Makefile.am): Likewise.
* modules/sys_file (Makefile.am): Likewise.
* modules/sys_ioctl (Makefile.am): Likewise.
* modules/sys_select (Makefile.am): Likewise.
* modules/sys_socket (Makefile.am): Likewise.
* modules/sys_times (Makefile.am): Likewise.
* modules/sys_utsname (Makefile.am): Likewise.
* modules/sys_wait (Makefile.am): Likewise.
* modules/wchar (Makefile.am): Likewise.
* m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET)
(gl_ARPA_INET_H_DEFAULTS): Drop unneeded variable.
* m4/ctype.m4 (gl_CTYPE_H_DEFAULTS): Likewise.
* m4/isblank.m4 (gl_FUNC_ISBLANK): Likewise.
* m4/dirent_h.m4 (gl_REPLACE_DIRENT_H, gl_DIRENT_H_DEFAULTS):
Likewise.
* m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
* m4/langinfo_h.m4 (gl_LANGINFO_H): Likewise.
* m4/locale_h.m4 (gl_REPLACE_LOCALE_H, gl_LOCALE_H_DEFAULTS):
Likewise.
* m4/spawn_h.m4 (gl_REPLACE_SPAWN_H, gl_SPAWN_H_DEFAULTS):
Likewise.
* m4/sys_file_h.m4 (gl_HEADER_SYS_FILE_H): Likewise.
* m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H, gl_REPLACE_SYS_IOCTL_H)
(gl_SYS_IOCTL_H_DEFAULTS): Likewise.
* m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
* m4/sys_times_h.m4 (gl_SYS_TIMES_H): Likewise.
* m4/sys_utsname_h.m4 (gl_SYS_UTSNAME_H)
(gl_SYS_UTSNAME_H_DEFAULTS): Likewise.
* m4/wchar.m4 (gl_WCHAR_H, gl_REPLACE_WCHAR_H)
(gl_WCHAR_H_DEFAULTS): Likewise.
2009-12-31 07:05:10 -07:00
Bruno Haible 441aa3044f Use spaces for indentation, not tabs. 2009-12-10 20:28:30 +01:00
Bruno Haible d93c1f1b00 Make <sys/select.h> really self-contained, also on Solaris 10. 2009-08-10 00:26:10 +02:00
Bruno Haible ea64fe0094 Work around select() bug on Interix 3.5. 2009-03-13 21:05:15 +01:00
Bruno Haible 23c6fc446a New module 'select'. 2008-10-05 17:20:58 +02:00
Paolo Bonzini 305951edfe strengthen self-containedness check for sys/select.h
2008-09-29  Paolo Bonzini  <bonzini@gnu.org>
            Bruno Haible  <bruno@clisp.org>

	* lib/sys_select.in.h: Include sys/time.h.
	* m4/sys_select.h.m4: Test that struct timeval is fully defined.
	* modules/sys_select: Depend on sys_time.
	* tests/test-sys_select.c: Test that sys/select.h defines struct
	timeval fully.
2008-09-29 13:28:57 +02:00
Bruno Haible 4d12840eee Ensure correct syntax when sys/select.h is replaced but sys/socket.h is not. 2008-09-28 17:41:17 +02:00
Paolo Bonzini 76bb60b45a implement full-blown select(2) for winsock
2008-09-24  Paolo Bonzini  <bonzini@gnu.org>

	* NEWS: Document increased portability that sys_select now provides.

	* lib/sys_select.in.h: Install select wrapper.
	* lib/sys_socket.in.h: Use more descriptive name when there is no
	select wrapper.
	* lib/winsock-select.c: New.
	* m4/sys_select_h.m4: Compile lib/winsock-select.c if WinSock is used.
	Require gl_HEADER_SYS_SOCKET.
	* modules/sys_select: Depend on alloca, add lib/winsock-select.c.
	* modules/sys_select-tests: Copy dependencies from modules/poll-tests.
	* tests/test-sys_select.c: Add functional tests.
2008-09-24 18:59:21 +02:00
Bruno Haible b6d1202a37 Fix underquoting of AC_LANG_PROGRAM arguments. 2008-04-15 01:52:03 +02:00
Paul Eggert 73f2a1c055 * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
* m4/iconv_h.m4 (gl_ICONV_H): Likewise.
* m4/locale_h.m4 (gl_LOCALE_H): Likewise.
* m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
* m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
* m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
* m4/sysexits.m4 (gl_SYSEXITS): Likewise.
SCALAR(0x828a248)
* lib/dirent_.h: Likewise.
* lib/iconv_.h: Likewise.
* lib/locale_.h: Likewise.
* lib/netinet_in_.h: Likewise.
* lib/sys_select_.h: Likewise.
* lib/sys_socket_.h: Likewise.
* lib/sysexits_.h: Likewise.
* modules/fchdir: Likewise.
* modules/iconv_open: Likewise.
* modules/locale: Likewise.
* modules/netinet_in: Likewise.
* modules/sys_select: Likewise.
* modules/sys_socket: Likewise.
* modules/sysexits: Likewise.
2007-06-21 17:08:44 +00:00
Bruno Haible 8dd2664a22 Make <sys/select.h> self-contained, i.e. make it possible to include it
without prior <sys/types.h>.
2007-03-08 03:48:30 +00:00
Simon Josefsson 7e5eb8ffca Add sys_select module. 2006-06-27 21:21:13 +00:00