1 #ifndef __LIB_CONFIG_WIN32_H
2 #define __LIB_CONFIG_WIN32_H
4 /* ================================================================ */
5 /* lib/config-win32.h - Hand crafted config file for Windows */
6 /* ================================================================ */
8 /* ---------------------------------------------------------------- */
10 /* ---------------------------------------------------------------- */
12 /* Define if you have the <arpa/inet.h> header file. */
13 /* #define HAVE_ARPA_INET_H 1 */
15 /* Define if you have the <assert.h> header file. */
16 #define HAVE_ASSERT_H 1
18 /* Define if you have the <crypto.h> header file. */
19 /* #define HAVE_CRYPTO_H 1 */
21 /* Define if you have the <dlfcn.h> header file. */
22 /* #define HAVE_DLFCN_H 1 */
24 /* Define if you have the <err.h> header file. */
25 /* #define HAVE_ERR_H 1 */
27 /* Define if you have the <fcntl.h> header file. */
28 #define HAVE_FCNTL_H 1
30 /* Define if you have the <getopt.h> header file. */
31 /* #define HAVE_GETOPT_H 1 */
33 /* Define if you have the <io.h> header file. */
36 /* Define if you need the malloc.h header file even with stdlib.h */
38 #define NEED_MALLOC_H 1
41 /* Define if you have the <netdb.h> header file. */
42 /* #define HAVE_NETDB_H 1 */
44 /* Define if you have the <netinet/in.h> header file. */
45 /* #define HAVE_NETINET_IN_H 1 */
47 /* Define if you have the <process.h> header file. */
49 #define HAVE_PROCESS_H 1
52 /* Define if you have the <signal.h> header file. */
53 #define HAVE_SIGNAL_H 1
55 /* Define if you have the <sgtty.h> header file. */
56 /* #define HAVE_SGTTY_H 1 */
58 /* Define if you have the <ssl.h> header file. */
59 /* #define HAVE_SSL_H 1 */
61 /* Define if you have the <stdlib.h> header file. */
62 #define HAVE_STDLIB_H 1
64 /* Define if you have the <sys/param.h> header file. */
65 /* #define HAVE_SYS_PARAM_H 1 */
67 /* Define if you have the <sys/select.h> header file. */
68 /* #define HAVE_SYS_SELECT_H 1 */
70 /* Define if you have the <sys/socket.h> header file. */
71 /* #define HAVE_SYS_SOCKET_H 1 */
73 /* Define if you have the <sys/sockio.h> header file. */
74 /* #define HAVE_SYS_SOCKIO_H 1 */
76 /* Define if you have the <sys/stat.h> header file. */
77 #define HAVE_SYS_STAT_H 1
79 /* Define if you have the <sys/time.h> header file */
80 /* #define HAVE_SYS_TIME_H 1 */
82 /* Define if you have the <sys/types.h> header file. */
83 #define HAVE_SYS_TYPES_H 1
85 /* Define if you have the <sys/utime.h> header file */
87 #define HAVE_SYS_UTIME_H 1
90 /* Define if you have the <termio.h> header file. */
91 /* #define HAVE_TERMIO_H 1 */
93 /* Define if you have the <termios.h> header file. */
94 /* #define HAVE_TERMIOS_H 1 */
96 /* Define if you have the <time.h> header file. */
99 /* Define if you have the <unistd.h> header file. */
100 #if defined(__MINGW32__) || defined(__WATCOMC__) || defined(__LCC__) || \
102 #define HAVE_UNISTD_H 1
105 /* Define if you have the <windows.h> header file. */
106 #define HAVE_WINDOWS_H 1
108 /* Define if you have the <winsock.h> header file. */
109 #define HAVE_WINSOCK_H 1
112 /* Define if you have the <winsock2.h> header file. */
113 #define HAVE_WINSOCK2_H 1
115 /* Define if you have the <ws2tcpip.h> header file. */
116 #define HAVE_WS2TCPIP_H 1
119 /* ---------------------------------------------------------------- */
120 /* OTHER HEADER INFO */
121 /* ---------------------------------------------------------------- */
123 /* Define if sig_atomic_t is an available typedef. */
124 #define HAVE_SIG_ATOMIC_T 1
126 /* Define if you have the ANSI C header files. */
127 #define STDC_HEADERS 1
129 /* Define if you can safely include both <sys/time.h> and <time.h>. */
130 /* #define TIME_WITH_SYS_TIME 1 */
132 /* ---------------------------------------------------------------- */
134 /* ---------------------------------------------------------------- */
136 /* Define if you have the closesocket function. */
137 #define HAVE_CLOSESOCKET 1
139 /* Define if you don't have vprintf but do have _doprnt. */
140 /* #define HAVE_DOPRNT 1 */
142 /* Define if you have the gethostbyaddr function. */
143 #define HAVE_GETHOSTBYADDR 1
145 /* Define if you have the gethostname function. */
146 #define HAVE_GETHOSTNAME 1
148 /* Define if you have the getpass function. */
149 /* #define HAVE_GETPASS 1 */
151 /* Define if you have the getservbyname function. */
152 #define HAVE_GETSERVBYNAME 1
154 /* Define if you have the getprotobyname function. */
155 #define HAVE_GETPROTOBYNAME
157 /* Define if you have the gettimeofday function. */
158 /* #define HAVE_GETTIMEOFDAY 1 */
160 /* Define if you have the inet_addr function. */
161 #define HAVE_INET_ADDR 1
163 /* Define if you have the inet_ntoa function. */
164 #define HAVE_INET_NTOA 1
166 /* Define if you have the ioctlsocket function. */
167 #define HAVE_IOCTLSOCKET 1
169 /* Define if you have the perror function. */
170 #define HAVE_PERROR 1
172 /* Define if you have the RAND_screen function when using SSL */
173 #define HAVE_RAND_SCREEN 1
175 /* Define if you have the `RAND_status' function when using SSL. */
176 #define HAVE_RAND_STATUS 1
178 /* Define if you have the select function. */
179 #define HAVE_SELECT 1
181 /* Define if you have the setvbuf function. */
182 #define HAVE_SETVBUF 1
184 /* Define if you have the socket function. */
185 #define HAVE_SOCKET 1
187 /* Define if you have the strcasecmp function. */
188 /* #define HAVE_STRCASECMP 1 */
190 /* Define if you have the stricmp function. */
191 #define HAVE_STRICMP 1
193 /* Define if you have the strdup function. */
194 #define HAVE_STRDUP 1
196 /* Define if you have the strftime function. */
197 #define HAVE_STRFTIME 1
199 /* Define if you have the strstr function. */
200 #define HAVE_STRSTR 1
202 /* Define if you have the strtoll function. */
203 #if defined(__MINGW32__) || defined(__WATCOMC__) || defined(__POCC__)
204 #define HAVE_STRTOLL 1
207 /* Define if you have the tcgetattr function. */
208 /* #define HAVE_TCGETATTR 1 */
210 /* Define if you have the tcsetattr function. */
211 /* #define HAVE_TCSETATTR 1 */
213 /* Define if you have the utime function */
218 /* Define if you have the getnameinfo function. */
219 #define HAVE_GETNAMEINFO 1
221 /* Define to the type qualifier of arg 1 for getnameinfo. */
222 #define GETNAMEINFO_QUAL_ARG1 const
224 /* Define to the type of arg 1 for getnameinfo. */
225 #define GETNAMEINFO_TYPE_ARG1 struct sockaddr *
227 /* Define to the type of arg 2 for getnameinfo. */
228 #define GETNAMEINFO_TYPE_ARG2 socklen_t
230 /* Define to the type of args 4 and 6 for getnameinfo. */
231 #define GETNAMEINFO_TYPE_ARG46 DWORD
233 /* Define to the type of arg 7 for getnameinfo. */
234 #define GETNAMEINFO_TYPE_ARG7 int
236 /* Define if you have the recv function. */
239 /* Define to the type of arg 1 for recv. */
240 #define RECV_TYPE_ARG1 SOCKET
242 /* Define to the type of arg 2 for recv. */
243 #define RECV_TYPE_ARG2 char *
245 /* Define to the type of arg 3 for recv. */
246 #define RECV_TYPE_ARG3 int
248 /* Define to the type of arg 4 for recv. */
249 #define RECV_TYPE_ARG4 int
251 /* Define to the function return type for recv. */
252 #define RECV_TYPE_RETV int
254 /* Define if you have the send function. */
257 /* Define to the type of arg 1 for send. */
258 #define SEND_TYPE_ARG1 SOCKET
260 /* Define to the type qualifier of arg 2 for send. */
261 #define SEND_QUAL_ARG2 const
263 /* Define to the type of arg 2 for send. */
264 #define SEND_TYPE_ARG2 char *
266 /* Define to the type of arg 3 for send. */
267 #define SEND_TYPE_ARG3 int
269 /* Define to the type of arg 4 for send. */
270 #define SEND_TYPE_ARG4 int
272 /* Define to the function return type for send. */
273 #define SEND_TYPE_RETV int
275 /* ---------------------------------------------------------------- */
276 /* TYPEDEF REPLACEMENTS */
277 /* ---------------------------------------------------------------- */
279 /* Define this if in_addr_t is not an available 'typedefed' type */
280 #define in_addr_t unsigned long
282 /* Define as the return type of signal handlers (int or void). */
283 #define RETSIGTYPE void
285 #if (defined(__WATCOMC__) && (__WATCOMC__ >= 1240)) || defined(__POCC__)
286 #elif defined(_WIN64)
287 #define ssize_t __int64
292 /* Define to 'int' if socklen_t is not an available 'typedefed' type */
293 #ifndef HAVE_WS2TCPIP_H
294 #define socklen_t int
297 /* ---------------------------------------------------------------- */
299 /* ---------------------------------------------------------------- */
301 /* The number of bytes in a long double. */
302 #define SIZEOF_LONG_DOUBLE 16
304 /* The number of bytes in a long long. */
305 /* #define SIZEOF_LONG_LONG 8 */
307 /* Undef SIZEOF_CURL_OFF_T if already defined. */
308 #ifdef SIZEOF_CURL_OFF_T
309 #undef SIZEOF_CURL_OFF_T
312 /* Define SIZEOF_CURL_OFF_T as computed by sizeof(curl_off_t) */
313 /* Borland/PellesC/SalfordC lacks _lseeki64(), so we don't support
316 #if defined(__BORLANDC__) || defined(__POCC__) || defined(__SALFORDC__)
317 #define SIZEOF_CURL_OFF_T 4
319 #define SIZEOF_CURL_OFF_T 8
322 /* ---------------------------------------------------------------- */
324 /* ---------------------------------------------------------------- */
326 /* Define this if you have struct sockaddr_storage */
328 #define HAVE_STRUCT_SOCKADDR_STORAGE 1
331 /* Define this if you have struct timeval */
332 #define HAVE_STRUCT_TIMEVAL 1
334 /* ---------------------------------------------------------------- */
335 /* COMPILER SPECIFIC */
336 /* ---------------------------------------------------------------- */
338 /* Undef keyword 'const' if it does not work. */
341 /* Windows should not have HAVE_GMTIME_R defined */
342 /* #undef HAVE_GMTIME_R */
344 /* Define if the compiler supports C99 variadic macro style. */
345 #if defined(_MSC_VER) && (_MSC_VER >= 1400)
346 #define HAVE_VARIADIC_MACROS_C99 1
349 /* Define if the compiler supports LONGLONG. */
350 #if defined(__MINGW32__) || defined(__WATCOMC__)
351 #define HAVE_LONGLONG 1
354 /* ---------------------------------------------------------------- */
355 /* LDAP LIBRARY FILES */
356 /* ---------------------------------------------------------------- */
358 /* lber dynamic library file */
359 /* #define DL_LBER_FILE */
361 /* ldap dynamic library file */
362 #define DL_LDAP_FILE "wldap32.dll"
364 /* ---------------------------------------------------------------- */
365 /* ADDITIONAL DEFINITIONS */
366 /* ---------------------------------------------------------------- */
368 /* Defines set for VS2005 to _not_ deprecate a few functions we use. */
369 #define _CRT_SECURE_NO_DEPRECATE 1
370 #define _CRT_NONSTDC_NO_DEPRECATE 1
372 /* Define cpu-machine-OS */
374 #if defined(_M_IX86) || defined(__i386__) /* x86 (MSVC or gcc) */
375 #define OS "i386-pc-win32"
376 #elif defined(_M_IA64) /* Itanium */
377 #define OS "ia64-pc-win32"
378 #elif defined(_M_X64) /* AMD64/EM64T - Not defined until MSVC 2005 */
379 #define OS "amd64-pc-win32"
381 #define OS "unknown-pc-win32"
384 /* Name of package */
385 #define PACKAGE "curl"
388 #endif /* __LIB_CONFIG_WIN32_H */