Mercurial > gnulib
annotate lib/sys_time.in.h @ 16327:588e064cc6e1
sys_time: Override 'struct timeval' on some native Windows platforms.
* m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Test whether tv_sec
has the right type. Set REPLACE_STRUCT_TIMEVAL if not.
(gl_HEADER_SYS_TIME_H_DEFAULTS): Initialize REPLACE_STRUCT_TIMEVAL.
* lib/sys_time.in.h: Include <winsock2.h> also when 'struct timeval'
needs to be overridden.
(timeval): Override if REPLACE_STRUCT_TIMEVAL is set.
* modules/sys_time (Makefile.am): Substitute REPLACE_STRUCT_TIMEVAL.
* tests/test-sys_select.c: Check that the tv_sec member has the same
size as a 'time_t'.
* tests/test-sys_time.c: Likewise.
* m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): If REPLACE_STRUCT_TIMEVAL
is set, set also REPLACE_GETTIMEOFDAY.
* lib/gettimeofday.c (gettimeofday): If 'struct timeval' is overridden,
convert the resulting 'struct timeval' before returning.
* lib/select.c: Include <sys/time.h>.
(select, timeval): Undefine at the right place.
* modules/select (Depends-on): Add sys_time.
* doc/posix-headers/sys_time.texi: Mention the problem with tv_sec on
some Windows platforms.
Reported by Marc-André Lureau <marcandre.lureau@redhat.com>.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Sat, 28 Jan 2012 18:12:10 +0100 |
parents | 8250f2777afc |
children | bb182ee4a09d |
rev | line source |
---|---|
9268
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
1 /* Provide a more complete sys/time.h. |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
2 |
16201
8250f2777afc
maint: update all copyright year number ranges
Jim Meyering <meyering@redhat.com>
parents:
15613
diff
changeset
|
3 Copyright (C) 2007-2012 Free Software Foundation, Inc. |
9268
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
4 |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
5 This program is free software; you can redistribute it and/or modify |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
6 it under the terms of the GNU General Public License as published by |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
7 the Free Software Foundation; either version 2, or (at your option) |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
8 any later version. |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
9 |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
10 This program is distributed in the hope that it will be useful, |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
11 but WITHOUT ANY WARRANTY; without even the implied warranty of |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
13 GNU General Public License for more details. |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
14 |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
15 You should have received a copy of the GNU General Public License |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
16 along with this program; if not, write to the Free Software Foundation, |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
17 Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
18 |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
19 /* Written by Paul Eggert. */ |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
20 |
10655
8668b19a7032
Avoid gcc warnings because of #pragma GCC system_header on older gcc.
Bruno Haible <bruno@clisp.org>
parents:
10375
diff
changeset
|
21 #if __GNUC__ >= 3 |
10375
f96e845fc36d
Avoid some "gcc -pedantic" warnings.
Bruno Haible <bruno@clisp.org>
parents:
9268
diff
changeset
|
22 @PRAGMA_SYSTEM_HEADER@ |
10655
8668b19a7032
Avoid gcc warnings because of #pragma GCC system_header on older gcc.
Bruno Haible <bruno@clisp.org>
parents:
10375
diff
changeset
|
23 #endif |
13761
a19ace3ba849
Avoid line length limitation from HP NonStop system header files.
Bruno Haible <bruno@clisp.org>
parents:
13479
diff
changeset
|
24 @PRAGMA_COLUMNS@ |
10375
f96e845fc36d
Avoid some "gcc -pedantic" warnings.
Bruno Haible <bruno@clisp.org>
parents:
9268
diff
changeset
|
25 |
14840
5f709022a256
Allow multiple gnulib generated include files to be combined.
Bruno Haible <bruno@clisp.org>
parents:
14274
diff
changeset
|
26 #if defined _@GUARD_PREFIX@_SYS_TIME_H |
13099
f4aae3195883
sys_time: avoid compiler warnings
Eric Blake <eblake@redhat.com>
parents:
13094
diff
changeset
|
27 |
9268
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
28 /* Simply delegate to the system's header, without adding anything. */ |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
29 # if @HAVE_SYS_TIME_H@ |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
30 # @INCLUDE_NEXT@ @NEXT_SYS_TIME_H@ |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
31 # endif |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
32 |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
33 #else |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
34 |
14840
5f709022a256
Allow multiple gnulib generated include files to be combined.
Bruno Haible <bruno@clisp.org>
parents:
14274
diff
changeset
|
35 # define _@GUARD_PREFIX@_SYS_TIME_H |
9268
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
36 |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
37 # if @HAVE_SYS_TIME_H@ |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
38 # @INCLUDE_NEXT@ @NEXT_SYS_TIME_H@ |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
39 # else |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
40 # include <time.h> |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
41 # endif |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
42 |
16327
588e064cc6e1
sys_time: Override 'struct timeval' on some native Windows platforms.
Bruno Haible <bruno@clisp.org>
parents:
16201
diff
changeset
|
43 /* On native Windows with MSVC, get the 'struct timeval' type. |
588e064cc6e1
sys_time: Override 'struct timeval' on some native Windows platforms.
Bruno Haible <bruno@clisp.org>
parents:
16201
diff
changeset
|
44 Also, on native Windows with a 64-bit time_t, where we are overriding the |
588e064cc6e1
sys_time: Override 'struct timeval' on some native Windows platforms.
Bruno Haible <bruno@clisp.org>
parents:
16201
diff
changeset
|
45 'struct timeval' type, get all declarations of system functions whose |
588e064cc6e1
sys_time: Override 'struct timeval' on some native Windows platforms.
Bruno Haible <bruno@clisp.org>
parents:
16201
diff
changeset
|
46 signature contains 'struct timeval'. */ |
588e064cc6e1
sys_time: Override 'struct timeval' on some native Windows platforms.
Bruno Haible <bruno@clisp.org>
parents:
16201
diff
changeset
|
47 # if (defined _MSC_VER || @REPLACE_STRUCT_TIMEVAL@) && @HAVE_WINSOCK2_H@ && !defined _GL_INCLUDING_WINSOCK2_H |
15613
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
48 # define _GL_INCLUDING_WINSOCK2_H |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
49 # include <winsock2.h> |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
50 # undef _GL_INCLUDING_WINSOCK2_H |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
51 # endif |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
52 |
12947
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
53 /* The definitions of _GL_FUNCDECL_RPL etc. are copied here. */ |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
54 |
12422
f7842310a565
New module 'arg-nonnull'. Declare which arguments expect non-NULL values.
Bruno Haible <bruno@clisp.org>
parents:
10842
diff
changeset
|
55 /* The definition of _GL_ARG_NONNULL is copied here. */ |
f7842310a565
New module 'arg-nonnull'. Declare which arguments expect non-NULL values.
Bruno Haible <bruno@clisp.org>
parents:
10842
diff
changeset
|
56 |
12844 | 57 /* The definition of _GL_WARN_ON_USE is copied here. */ |
58 | |
12947
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
59 # ifdef __cplusplus |
10842
4a02c5d90eaf
sys_time: Add extern "C" block for C++.
Simon Josefsson <simon@josefsson.org>
parents:
10655
diff
changeset
|
60 extern "C" { |
12947
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
61 # endif |
10842
4a02c5d90eaf
sys_time: Add extern "C" block for C++.
Simon Josefsson <simon@josefsson.org>
parents:
10655
diff
changeset
|
62 |
16327
588e064cc6e1
sys_time: Override 'struct timeval' on some native Windows platforms.
Bruno Haible <bruno@clisp.org>
parents:
16201
diff
changeset
|
63 # if !@HAVE_STRUCT_TIMEVAL@ || @REPLACE_STRUCT_TIMEVAL@ |
588e064cc6e1
sys_time: Override 'struct timeval' on some native Windows platforms.
Bruno Haible <bruno@clisp.org>
parents:
16201
diff
changeset
|
64 |
588e064cc6e1
sys_time: Override 'struct timeval' on some native Windows platforms.
Bruno Haible <bruno@clisp.org>
parents:
16201
diff
changeset
|
65 # if @REPLACE_STRUCT_TIMEVAL@ |
588e064cc6e1
sys_time: Override 'struct timeval' on some native Windows platforms.
Bruno Haible <bruno@clisp.org>
parents:
16201
diff
changeset
|
66 # define timeval rpl_timeval |
588e064cc6e1
sys_time: Override 'struct timeval' on some native Windows platforms.
Bruno Haible <bruno@clisp.org>
parents:
16201
diff
changeset
|
67 # endif |
14274
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
68 |
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
69 # if !GNULIB_defined_struct_timeval |
9268
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
70 struct timeval |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
71 { |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
72 time_t tv_sec; |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
73 long int tv_usec; |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
74 }; |
14274
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
75 # define GNULIB_defined_struct_timeval 1 |
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
76 # endif |
da5595160b9f
Allow multiple gnulib generated replacements to coexist.
Bruno Haible <bruno@clisp.org>
parents:
14079
diff
changeset
|
77 |
9268
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
78 # endif |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
79 |
12947
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
80 # ifdef __cplusplus |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
81 } |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
82 # endif |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
83 |
12844 | 84 # if @GNULIB_GETTIMEOFDAY@ |
85 # if @REPLACE_GETTIMEOFDAY@ | |
12947
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
86 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
87 # undef gettimeofday |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
88 # define gettimeofday rpl_gettimeofday |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
89 # endif |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
90 _GL_FUNCDECL_RPL (gettimeofday, int, |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
91 (struct timeval *restrict, void *restrict) |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
92 _GL_ARG_NONNULL ((1))); |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
93 _GL_CXXALIAS_RPL (gettimeofday, int, |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
94 (struct timeval *restrict, void *restrict)); |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
95 # else |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
96 # if !@HAVE_GETTIMEOFDAY@ |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
97 _GL_FUNCDECL_SYS (gettimeofday, int, |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
98 (struct timeval *restrict, void *restrict) |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
99 _GL_ARG_NONNULL ((1))); |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
100 # endif |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
101 /* Need to cast, because on glibc systems, by default, the second argument is |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
102 struct timezone *. */ |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
103 _GL_CXXALIAS_SYS_CAST (gettimeofday, int, |
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
104 (struct timeval *restrict, void *restrict)); |
12888
88955fc5764d
gettimeofday: restore support for platforms that lack function
Eric Blake <eblake@redhat.com>
parents:
12844
diff
changeset
|
105 # endif |
12947
c2b20f3765ff
sys_time: Avoid #define replacements in C++ mode.
Bruno Haible <bruno@clisp.org>
parents:
12888
diff
changeset
|
106 _GL_CXXALIASWARN (gettimeofday); |
12844 | 107 # elif defined GNULIB_POSIXCHECK |
108 # undef gettimeofday | |
109 # if HAVE_RAW_DECL_GETTIMEOFDAY | |
110 _GL_WARN_ON_USE (gettimeofday, "gettimeofday is unportable - " | |
13479
8a0b8adde2be
Use spaces for indentation, not tabs.
Bruno Haible <bruno@clisp.org>
parents:
13099
diff
changeset
|
111 "use gnulib module gettimeofday for portability"); |
12844 | 112 # endif |
9268
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
113 # endif |
a553c18c572d
Rename sys_time_.h to sys_time.in.h.
Bruno Haible <bruno@clisp.org>
parents:
diff
changeset
|
114 |
15613
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
115 /* Hide some function declarations from <winsock2.h>. */ |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
116 |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
117 # if defined _MSC_VER && @HAVE_WINSOCK2_H@ |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
118 # if !defined _@GUARD_PREFIX@_UNISTD_H |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
119 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
120 # undef close |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
121 # define close close_used_without_including_unistd_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
122 # else |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
123 _GL_WARN_ON_USE (close, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
124 "close() used without including <unistd.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
125 # endif |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
126 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
127 # undef gethostname |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
128 # define gethostname gethostname_used_without_including_unistd_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
129 # else |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
130 _GL_WARN_ON_USE (gethostname, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
131 "gethostname() used without including <unistd.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
132 # endif |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
133 # endif |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
134 # if !defined _@GUARD_PREFIX@_SYS_SOCKET_H |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
135 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
136 # undef socket |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
137 # define socket socket_used_without_including_sys_socket_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
138 # undef connect |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
139 # define connect connect_used_without_including_sys_socket_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
140 # undef accept |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
141 # define accept accept_used_without_including_sys_socket_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
142 # undef bind |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
143 # define bind bind_used_without_including_sys_socket_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
144 # undef getpeername |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
145 # define getpeername getpeername_used_without_including_sys_socket_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
146 # undef getsockname |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
147 # define getsockname getsockname_used_without_including_sys_socket_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
148 # undef getsockopt |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
149 # define getsockopt getsockopt_used_without_including_sys_socket_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
150 # undef listen |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
151 # define listen listen_used_without_including_sys_socket_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
152 # undef recv |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
153 # define recv recv_used_without_including_sys_socket_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
154 # undef send |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
155 # define send send_used_without_including_sys_socket_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
156 # undef recvfrom |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
157 # define recvfrom recvfrom_used_without_including_sys_socket_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
158 # undef sendto |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
159 # define sendto sendto_used_without_including_sys_socket_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
160 # undef setsockopt |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
161 # define setsockopt setsockopt_used_without_including_sys_socket_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
162 # undef shutdown |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
163 # define shutdown shutdown_used_without_including_sys_socket_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
164 # else |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
165 _GL_WARN_ON_USE (socket, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
166 "socket() used without including <sys/socket.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
167 _GL_WARN_ON_USE (connect, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
168 "connect() used without including <sys/socket.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
169 _GL_WARN_ON_USE (accept, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
170 "accept() used without including <sys/socket.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
171 _GL_WARN_ON_USE (bind, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
172 "bind() used without including <sys/socket.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
173 _GL_WARN_ON_USE (getpeername, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
174 "getpeername() used without including <sys/socket.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
175 _GL_WARN_ON_USE (getsockname, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
176 "getsockname() used without including <sys/socket.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
177 _GL_WARN_ON_USE (getsockopt, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
178 "getsockopt() used without including <sys/socket.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
179 _GL_WARN_ON_USE (listen, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
180 "listen() used without including <sys/socket.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
181 _GL_WARN_ON_USE (recv, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
182 "recv() used without including <sys/socket.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
183 _GL_WARN_ON_USE (send, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
184 "send() used without including <sys/socket.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
185 _GL_WARN_ON_USE (recvfrom, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
186 "recvfrom() used without including <sys/socket.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
187 _GL_WARN_ON_USE (sendto, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
188 "sendto() used without including <sys/socket.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
189 _GL_WARN_ON_USE (setsockopt, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
190 "setsockopt() used without including <sys/socket.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
191 _GL_WARN_ON_USE (shutdown, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
192 "shutdown() used without including <sys/socket.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
193 # endif |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
194 # endif |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
195 # if !defined _@GUARD_PREFIX@_SYS_SELECT_H |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
196 # if !(defined __cplusplus && defined GNULIB_NAMESPACE) |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
197 # undef select |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
198 # define select select_used_without_including_sys_select_h |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
199 # else |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
200 _GL_WARN_ON_USE (select, |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
201 "select() used without including <sys/select.h>"); |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
202 # endif |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
203 # endif |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
204 # endif |
e819b881a9e2
sys_time: Support for MSVC.
Bruno Haible <bruno@clisp.org>
parents:
14840
diff
changeset
|
205 |
14840
5f709022a256
Allow multiple gnulib generated include files to be combined.
Bruno Haible <bruno@clisp.org>
parents:
14274
diff
changeset
|
206 #endif /* _@GUARD_PREFIX@_SYS_TIME_H */ |