1 #ifndef HEADER_CURL_CONFIG_WIN32_H 2 #define HEADER_CURL_CONFIG_WIN32_H 3 /*************************************************************************** 4 * _ _ ____ _ 5 * Project ___| | | | _ \| | 6 * / __| | | | |_) | | 7 * | (__| |_| | _ <| |___ 8 * \___|\___/|_| \_\_____| 9 * 10 * Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. 11 * 12 * This software is licensed as described in the file COPYING, which 13 * you should have received as part of this distribution. The terms 14 * are also available at https://curl.se/docs/copyright.html. 15 * 16 * You may opt to use, copy, modify, merge, publish, distribute and/or sell 17 * copies of the Software, and permit persons to whom the Software is 18 * furnished to do so, under the terms of the COPYING file. 19 * 20 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY 21 * KIND, either express or implied. 22 * 23 * SPDX-License-Identifier: curl 24 * 25 ***************************************************************************/ 26 27 /* ================================================================ */ 28 /* Hand crafted config file for Windows */ 29 /* ================================================================ */ 30 31 /* ---------------------------------------------------------------- */ 32 /* HEADER FILES */ 33 /* ---------------------------------------------------------------- */ 34 35 /* Define if you have the <arpa/inet.h> header file. */ 36 /* #define HAVE_ARPA_INET_H 1 */ 37 38 /* Define if you have the <fcntl.h> header file. */ 39 #define HAVE_FCNTL_H 1 40 41 /* Define to 1 if you have the <inttypes.h> header file. */ 42 #if defined(__MINGW32__) || \ 43 (defined(_MSC_VER) && (_MSC_VER >= 1800)) 44 #define HAVE_INTTYPES_H 1 45 #endif 46 47 /* Define to 1 if you have the <stdint.h> header file. */ 48 #if defined(__MINGW32__) || defined(__POCC__) || \ 49 (defined(_MSC_VER) && (_MSC_VER >= 1600)) || \ 50 (defined(__BORLANDC__) && (__BORLANDC__ >= 0x0582)) 51 #define HAVE_STDINT_H 1 52 #endif 53 54 /* Define if you have the <io.h> header file. */ 55 #define HAVE_IO_H 1 56 57 /* Define if you have the <locale.h> header file. */ 58 #define HAVE_LOCALE_H 1 59 60 /* Define if you need <malloc.h> header even with <stdlib.h> header file. */ 61 #if !defined(__SALFORDC__) && !defined(__POCC__) 62 #define NEED_MALLOC_H 1 63 #endif 64 65 /* Define if you have the <netdb.h> header file. */ 66 /* #define HAVE_NETDB_H 1 */ 67 68 /* Define if you have the <netinet/in.h> header file. */ 69 /* #define HAVE_NETINET_IN_H 1 */ 70 71 /* Define if you have the <signal.h> header file. */ 72 #define HAVE_SIGNAL_H 1 73 74 /* Define if you have the <ssl.h> header file. */ 75 /* #define HAVE_SSL_H 1 */ 76 77 /* Define to 1 if you have the <stdbool.h> header file. */ 78 #if (defined(_MSC_VER) && (_MSC_VER >= 1800)) || \ 79 defined(__MINGW64_VERSION_MAJOR) 80 #define HAVE_STDBOOL_H 1 81 #endif 82 83 /* Define if you have the <stdlib.h> header file. */ 84 #define HAVE_STDLIB_H 1 85 86 /* Define if you have the <sys/param.h> header file. */ 87 /* #define HAVE_SYS_PARAM_H 1 */ 88 89 /* Define if you have the <sys/select.h> header file. */ 90 /* #define HAVE_SYS_SELECT_H 1 */ 91 92 /* Define if you have the <sys/socket.h> header file. */ 93 /* #define HAVE_SYS_SOCKET_H 1 */ 94 95 /* Define if you have the <sys/sockio.h> header file. */ 96 /* #define HAVE_SYS_SOCKIO_H 1 */ 97 98 /* Define if you have the <sys/stat.h> header file. */ 99 #define HAVE_SYS_STAT_H 1 100 101 /* Define if you have the <sys/time.h> header file. */ 102 /* #define HAVE_SYS_TIME_H 1 */ 103 104 /* Define if you have the <sys/types.h> header file. */ 105 #define HAVE_SYS_TYPES_H 1 106 107 /* Define if you have the <sys/utime.h> header file. */ 108 #ifndef __BORLANDC__ 109 #define HAVE_SYS_UTIME_H 1 110 #endif 111 112 /* Define if you have the <termio.h> header file. */ 113 /* #define HAVE_TERMIO_H 1 */ 114 115 /* Define if you have the <termios.h> header file. */ 116 /* #define HAVE_TERMIOS_H 1 */ 117 118 /* Define if you have the <time.h> header file. */ 119 #define HAVE_TIME_H 1 120 121 /* Define if you have the <unistd.h> header file. */ 122 #if defined(__MINGW32__) || defined(__LCC__) || defined(__POCC__) 123 #define HAVE_UNISTD_H 1 124 #endif 125 126 /* Define if you have the <windows.h> header file. */ 127 #define HAVE_WINDOWS_H 1 128 129 /* Define if you have the <winsock2.h> header file. */ 130 #ifndef __SALFORDC__ 131 #define HAVE_WINSOCK2_H 1 132 #endif 133 134 /* Define if you have the <ws2tcpip.h> header file. */ 135 #ifndef __SALFORDC__ 136 #define HAVE_WS2TCPIP_H 1 137 #endif 138 139 /* Define to 1 if you have the <setjmp.h> header file. */ 140 #define HAVE_SETJMP_H 1 141 142 /* Define to 1 if you have the <string.h> header file. */ 143 #define HAVE_STRING_H 1 144 145 /* Define to 1 if you have the <libgen.h> header file. */ 146 #if defined(__MINGW64_VERSION_MAJOR) 147 #define HAVE_LIBGEN_H 1 148 #endif 149 150 /* ---------------------------------------------------------------- */ 151 /* OTHER HEADER INFO */ 152 /* ---------------------------------------------------------------- */ 153 154 /* Define if you have the ANSI C header files. */ 155 #define STDC_HEADERS 1 156 157 /* Define if you can safely include both <sys/time.h> and <time.h>. */ 158 /* #define TIME_WITH_SYS_TIME 1 */ 159 160 /* Define to 1 if bool is an available type. */ 161 #if (defined(_MSC_VER) && (_MSC_VER >= 1800)) || \ 162 defined(__MINGW64_VERSION_MAJOR) 163 #define HAVE_BOOL_T 1 164 #endif 165 166 /* ---------------------------------------------------------------- */ 167 /* FUNCTIONS */ 168 /* ---------------------------------------------------------------- */ 169 170 /* Define if you have the closesocket function. */ 171 #define HAVE_CLOSESOCKET 1 172 173 /* Define if you have the ftruncate function. */ 174 #if defined(__MINGW64_VERSION_MAJOR) 175 #define HAVE_FTRUNCATE 1 176 #endif 177 178 /* Define to 1 if you have the `getpeername' function. */ 179 #define HAVE_GETPEERNAME 1 180 181 /* Define to 1 if you have the getsockname function. */ 182 #define HAVE_GETSOCKNAME 1 183 184 /* Define if you have the gethostname function. */ 185 #define HAVE_GETHOSTNAME 1 186 187 /* Define if you have the gettimeofday function. */ 188 /* #define HAVE_GETTIMEOFDAY 1 */ 189 190 /* Define if you have the ioctlsocket function. */ 191 #define HAVE_IOCTLSOCKET 1 192 193 /* Define if you have a working ioctlsocket FIONBIO function. */ 194 #define HAVE_IOCTLSOCKET_FIONBIO 1 195 196 /* Define if you have the select function. */ 197 #define HAVE_SELECT 1 198 199 /* Define if you have the setlocale function. */ 200 #define HAVE_SETLOCALE 1 201 202 /* Define if you have the setmode function. */ 203 #define HAVE_SETMODE 1 204 205 /* Define if you have the socket function. */ 206 #define HAVE_SOCKET 1 207 208 /* Define if you have the strcasecmp function. */ 209 #ifdef __MINGW32__ 210 #define HAVE_STRCASECMP 1 211 #endif 212 213 /* Define if you have the strdup function. */ 214 #define HAVE_STRDUP 1 215 216 /* Define if you have the stricmp function. */ 217 #define HAVE_STRICMP 1 218 219 /* Define if you have the strtoll function. */ 220 #if defined(__MINGW32__) || defined(__POCC__) || \ 221 (defined(_MSC_VER) && (_MSC_VER >= 1800)) 222 #define HAVE_STRTOLL 1 223 #endif 224 225 /* Define if you have the utime function. */ 226 #ifndef __BORLANDC__ 227 #define HAVE_UTIME 1 228 #endif 229 230 /* Define if you have the recv function. */ 231 #define HAVE_RECV 1 232 233 /* Define to the type of arg 1 for recv. */ 234 #define RECV_TYPE_ARG1 SOCKET 235 236 /* Define to the type of arg 2 for recv. */ 237 #define RECV_TYPE_ARG2 char * 238 239 /* Define to the type of arg 3 for recv. */ 240 #define RECV_TYPE_ARG3 int 241 242 /* Define to the type of arg 4 for recv. */ 243 #define RECV_TYPE_ARG4 int 244 245 /* Define to the function return type for recv. */ 246 #define RECV_TYPE_RETV int 247 248 /* Define if you have the send function. */ 249 #define HAVE_SEND 1 250 251 /* Define to the type of arg 1 for send. */ 252 #define SEND_TYPE_ARG1 SOCKET 253 254 /* Define to the type qualifier of arg 2 for send. */ 255 #define SEND_QUAL_ARG2 const 256 257 /* Define to the type of arg 2 for send. */ 258 #define SEND_TYPE_ARG2 char * 259 260 /* Define to the type of arg 3 for send. */ 261 #define SEND_TYPE_ARG3 int 262 263 /* Define to the type of arg 4 for send. */ 264 #define SEND_TYPE_ARG4 int 265 266 /* Define to the function return type for send. */ 267 #define SEND_TYPE_RETV int 268 269 /* Define to 1 if you have the snprintf function. */ 270 #if defined(_MSC_VER) && (_MSC_VER >= 1900) 271 #define HAVE_SNPRINTF 1 272 #endif 273 274 #if defined(_WIN32_WINNT) && _WIN32_WINNT >= 0x600 /* Vista */ 275 /* Define to 1 if you have a IPv6 capable working inet_ntop function. */ 276 #define HAVE_INET_NTOP 1 277 /* Define to 1 if you have a IPv6 capable working inet_pton function. */ 278 #define HAVE_INET_PTON 1 279 #endif 280 281 /* Define to 1 if you have the `basename' function. */ 282 #if defined(__MINGW64_VERSION_MAJOR) 283 #define HAVE_BASENAME 1 284 #endif 285 286 /* Define to 1 if you have the strtok_r function. */ 287 #if defined(__MINGW64_VERSION_MAJOR) 288 #define HAVE_STRTOK_R 1 289 #endif 290 291 /* Define to 1 if you have the signal function. */ 292 #define HAVE_SIGNAL 1 293 294 /* ---------------------------------------------------------------- */ 295 /* TYPEDEF REPLACEMENTS */ 296 /* ---------------------------------------------------------------- */ 297 298 /* Define if in_addr_t is not an available 'typedefed' type. */ 299 #define in_addr_t unsigned long 300 301 /* Define if ssize_t is not an available 'typedefed' type. */ 302 #ifndef _SSIZE_T_DEFINED 303 # if defined(__POCC__) || defined(__MINGW32__) 304 # elif defined(_WIN64) 305 # define _SSIZE_T_DEFINED 306 # define ssize_t __int64 307 # else 308 # define _SSIZE_T_DEFINED 309 # define ssize_t int 310 # endif 311 #endif 312 313 /* ---------------------------------------------------------------- */ 314 /* TYPE SIZES */ 315 /* ---------------------------------------------------------------- */ 316 317 /* Define to the size of `int', as computed by sizeof. */ 318 #define SIZEOF_INT 4 319 320 /* Define to the size of `long long', as computed by sizeof. */ 321 /* #define SIZEOF_LONG_LONG 8 */ 322 323 /* Define to the size of `long', as computed by sizeof. */ 324 #define SIZEOF_LONG 4 325 326 /* Define to the size of `size_t', as computed by sizeof. */ 327 #if defined(_WIN64) 328 # define SIZEOF_SIZE_T 8 329 #else 330 # define SIZEOF_SIZE_T 4 331 #endif 332 333 /* Define to the size of `curl_off_t', as computed by sizeof. */ 334 #define SIZEOF_CURL_OFF_T 8 335 336 /* ---------------------------------------------------------------- */ 337 /* BSD-style lwIP TCP/IP stack SPECIFIC */ 338 /* ---------------------------------------------------------------- */ 339 340 /* Define to use BSD-style lwIP TCP/IP stack. */ 341 /* #define USE_LWIPSOCK 1 */ 342 343 #ifdef USE_LWIPSOCK 344 # undef USE_WINSOCK 345 # undef HAVE_WINSOCK2_H 346 # undef HAVE_WS2TCPIP_H 347 # undef HAVE_GETHOSTNAME 348 # undef LWIP_POSIX_SOCKETS_IO_NAMES 349 # undef RECV_TYPE_ARG1 350 # undef RECV_TYPE_ARG3 351 # undef SEND_TYPE_ARG1 352 # undef SEND_TYPE_ARG3 353 # define HAVE_FREEADDRINFO 354 # define HAVE_GETADDRINFO 355 # define HAVE_GETHOSTBYNAME_R 356 # define HAVE_GETHOSTBYNAME_R_6 357 # define LWIP_POSIX_SOCKETS_IO_NAMES 0 358 # define RECV_TYPE_ARG1 int 359 # define RECV_TYPE_ARG3 size_t 360 # define SEND_TYPE_ARG1 int 361 # define SEND_TYPE_ARG3 size_t 362 #endif 363 364 /* ---------------------------------------------------------------- */ 365 /* Watt-32 tcp/ip SPECIFIC */ 366 /* ---------------------------------------------------------------- */ 367 368 #ifdef USE_WATT32 369 #include <tcp.h> 370 #undef byte 371 #undef word 372 #undef USE_WINSOCK 373 #undef HAVE_WINSOCK2_H 374 #undef HAVE_WS2TCPIP_H 375 #define HAVE_GETADDRINFO 376 #define HAVE_SYS_IOCTL_H 377 #define HAVE_SYS_SOCKET_H 378 #define HAVE_NETINET_IN_H 379 #define HAVE_NETDB_H 380 #define HAVE_ARPA_INET_H 381 #define HAVE_FREEADDRINFO 382 #define SOCKET int 383 #endif 384 385 386 /* ---------------------------------------------------------------- */ 387 /* COMPILER SPECIFIC */ 388 /* ---------------------------------------------------------------- */ 389 390 /* Define to nothing if compiler does not support 'const' qualifier. */ 391 /* #define const */ 392 393 /* Define to nothing if compiler does not support 'volatile' qualifier. */ 394 /* #define volatile */ 395 396 /* Windows should not have HAVE_GMTIME_R defined */ 397 /* #undef HAVE_GMTIME_R */ 398 399 /* Define if the compiler supports C99 variadic macro style. */ 400 #if defined(_MSC_VER) && (_MSC_VER >= 1400) 401 #define HAVE_VARIADIC_MACROS_C99 1 402 #endif 403 404 /* Define if the compiler supports the 'long long' data type. */ 405 #if defined(__MINGW32__) || \ 406 (defined(_MSC_VER) && (_MSC_VER >= 1310)) || \ 407 (defined(__BORLANDC__) && (__BORLANDC__ >= 0x561)) 408 #define HAVE_LONGLONG 1 409 #endif 410 411 /* Define to avoid VS2005 complaining about portable C functions. */ 412 #if defined(_MSC_VER) && (_MSC_VER >= 1400) 413 #define _CRT_SECURE_NO_DEPRECATE 1 414 #define _CRT_NONSTDC_NO_DEPRECATE 1 415 #endif 416 417 /* mingw-w64, mingw using >= MSVCR80, and visual studio >= 2005 (MSVCR80) 418 all default to 64-bit time_t unless _USE_32BIT_TIME_T is defined */ 419 #if defined(__MINGW64_VERSION_MAJOR) || \ 420 (defined(__MINGW32__) && (__MSVCRT_VERSION__ >= 0x0800)) || \ 421 (defined(_MSC_VER) && (_MSC_VER >= 1400)) 422 # ifndef _USE_32BIT_TIME_T 423 # define SIZEOF_TIME_T 8 424 # else 425 # define SIZEOF_TIME_T 4 426 # endif 427 #endif 428 429 /* Define some minimum and default build targets for Visual Studio */ 430 #if defined(_MSC_VER) 431 /* Officially, Microsoft's Windows SDK versions 6.X does not support Windows 432 2000 as a supported build target. VS2008 default installations provides 433 an embedded Windows SDK v6.0A along with the claim that Windows 2000 is a 434 valid build target for VS2008. Popular belief is that binaries built with 435 VS2008 using Windows SDK versions v6.X and Windows 2000 as a build target 436 are functional. */ 437 # define VS2008_MIN_TARGET 0x0500 438 439 /* The minimum build target for VS2012 is Vista unless Update 1 is installed 440 and the v110_xp toolset is chosen. */ 441 # if defined(_USING_V110_SDK71_) 442 # define VS2012_MIN_TARGET 0x0501 443 # else 444 # define VS2012_MIN_TARGET 0x0600 445 # endif 446 447 /* VS2008 default build target is Windows Vista. We override default target 448 to be Windows XP. */ 449 # define VS2008_DEF_TARGET 0x0501 450 451 /* VS2012 default build target is Windows Vista unless Update 1 is installed 452 and the v110_xp toolset is chosen. */ 453 # if defined(_USING_V110_SDK71_) 454 # define VS2012_DEF_TARGET 0x0501 455 # else 456 # define VS2012_DEF_TARGET 0x0600 457 # endif 458 #endif 459 460 /* VS2008 default target settings and minimum build target check. */ 461 #if defined(_MSC_VER) && (_MSC_VER >= 1500) && (_MSC_VER <= 1600) 462 # ifndef _WIN32_WINNT 463 # define _WIN32_WINNT VS2008_DEF_TARGET 464 # endif 465 # ifndef WINVER 466 # define WINVER VS2008_DEF_TARGET 467 # endif 468 # if (_WIN32_WINNT < VS2008_MIN_TARGET) || (WINVER < VS2008_MIN_TARGET) 469 # error VS2008 does not support Windows build targets prior to Windows 2000 470 # endif 471 #endif 472 473 /* VS2012 default target settings and minimum build target check. */ 474 #if defined(_MSC_VER) && (_MSC_VER >= 1700) 475 # ifndef _WIN32_WINNT 476 # define _WIN32_WINNT VS2012_DEF_TARGET 477 # endif 478 # ifndef WINVER 479 # define WINVER VS2012_DEF_TARGET 480 # endif 481 # if (_WIN32_WINNT < VS2012_MIN_TARGET) || (WINVER < VS2012_MIN_TARGET) 482 # if defined(_USING_V110_SDK71_) 483 # error VS2012 does not support Windows build targets prior to Windows XP 484 # else 485 # error VS2012 does not support Windows build targets prior to Windows \ 486 Vista 487 # endif 488 # endif 489 #endif 490 491 /* When no build target is specified Pelles C 5.00 and later default build 492 target is Windows Vista. We override default target to be Windows 2000. */ 493 #if defined(__POCC__) && (__POCC__ >= 500) 494 # ifndef _WIN32_WINNT 495 # define _WIN32_WINNT 0x0500 496 # endif 497 # ifndef WINVER 498 # define WINVER 0x0500 499 # endif 500 #endif 501 502 /* Availability of freeaddrinfo, getaddrinfo, and if_nametoindex 503 functions is quite convoluted, compiler dependent and even build target 504 dependent. */ 505 #if defined(HAVE_WS2TCPIP_H) 506 # if defined(__POCC__) 507 # define HAVE_FREEADDRINFO 1 508 # define HAVE_GETADDRINFO 1 509 # define HAVE_GETADDRINFO_THREADSAFE 1 510 # elif defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0501) 511 # define HAVE_FREEADDRINFO 1 512 # define HAVE_GETADDRINFO 1 513 # define HAVE_GETADDRINFO_THREADSAFE 1 514 # elif defined(_MSC_VER) && (_MSC_VER >= 1200) 515 # define HAVE_FREEADDRINFO 1 516 # define HAVE_GETADDRINFO 1 517 # define HAVE_GETADDRINFO_THREADSAFE 1 518 # endif 519 #endif 520 521 #if defined(__POCC__) 522 # ifndef _MSC_VER 523 # error Microsoft extensions /Ze compiler option is required 524 # endif 525 # ifndef __POCC__OLDNAMES 526 # error Compatibility names /Go compiler option is required 527 # endif 528 #endif 529 530 /* ---------------------------------------------------------------- */ 531 /* STRUCT RELATED */ 532 /* ---------------------------------------------------------------- */ 533 534 /* Define if you have struct sockaddr_storage. */ 535 #if !defined(__SALFORDC__) && !defined(__BORLANDC__) 536 #define HAVE_STRUCT_SOCKADDR_STORAGE 1 537 #endif 538 539 /* Define if you have struct timeval. */ 540 #define HAVE_STRUCT_TIMEVAL 1 541 542 /* Define if struct sockaddr_in6 has the sin6_scope_id member. */ 543 #define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1 544 545 /* ---------------------------------------------------------------- */ 546 /* LARGE FILE SUPPORT */ 547 /* ---------------------------------------------------------------- */ 548 549 #if defined(_MSC_VER) && !defined(_WIN32_WCE) 550 # if (_MSC_VER >= 900) && (_INTEGRAL_MAX_BITS >= 64) 551 # define USE_WIN32_LARGE_FILES 552 # else 553 # define USE_WIN32_SMALL_FILES 554 # endif 555 #endif 556 557 #if defined(__MINGW32__) && !defined(USE_WIN32_LARGE_FILES) 558 # define USE_WIN32_LARGE_FILES 559 #endif 560 561 #if defined(__POCC__) 562 # undef USE_WIN32_LARGE_FILES 563 #endif 564 565 #if !defined(USE_WIN32_LARGE_FILES) && !defined(USE_WIN32_SMALL_FILES) 566 # define USE_WIN32_SMALL_FILES 567 #endif 568 569 /* Number of bits in a file offset, on hosts where this is settable. */ 570 #if defined(USE_WIN32_LARGE_FILES) && defined(__MINGW64_VERSION_MAJOR) 571 # ifndef _FILE_OFFSET_BITS 572 # define _FILE_OFFSET_BITS 64 573 # endif 574 #endif 575 576 /* Define to the size of `off_t', as computed by sizeof. */ 577 #if defined(__MINGW64_VERSION_MAJOR) && \ 578 defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64) 579 # define SIZEOF_OFF_T 8 580 #else 581 # define SIZEOF_OFF_T 4 582 #endif 583 584 /* ---------------------------------------------------------------- */ 585 /* DNS RESOLVER SPECIALTY */ 586 /* ---------------------------------------------------------------- */ 587 588 /* 589 * Undefine both USE_ARES and USE_THREADS_WIN32 for synchronous DNS. 590 */ 591 592 /* Define to enable c-ares asynchronous DNS lookups. */ 593 /* #define USE_ARES 1 */ 594 595 /* Default define to enable threaded asynchronous DNS lookups. */ 596 #if !defined(USE_SYNC_DNS) && !defined(USE_ARES) && \ 597 !defined(USE_THREADS_WIN32) 598 # define USE_THREADS_WIN32 1 599 #endif 600 601 #if defined(USE_ARES) && defined(USE_THREADS_WIN32) 602 # error "Only one DNS lookup specialty may be defined at most" 603 #endif 604 605 /* ---------------------------------------------------------------- */ 606 /* LDAP SUPPORT */ 607 /* ---------------------------------------------------------------- */ 608 609 #if defined(CURL_HAS_NOVELL_LDAPSDK) 610 #undef USE_WIN32_LDAP 611 #define HAVE_LDAP_SSL_H 1 612 #define HAVE_LDAP_URL_PARSE 1 613 #elif defined(CURL_HAS_OPENLDAP_LDAPSDK) 614 #undef USE_WIN32_LDAP 615 #define HAVE_LDAP_URL_PARSE 1 616 #else 617 #undef HAVE_LDAP_URL_PARSE 618 #define HAVE_LDAP_SSL 1 619 #define USE_WIN32_LDAP 1 620 #endif 621 622 #if defined(__POCC__) && defined(USE_WIN32_LDAP) 623 # define CURL_DISABLE_LDAP 1 624 #endif 625 626 /* Define to use the Windows crypto library. */ 627 #if !defined(CURL_WINDOWS_APP) 628 #define USE_WIN32_CRYPTO 629 #endif 630 631 /* Define to use Unix sockets. */ 632 #define USE_UNIX_SOCKETS 633 634 /* ---------------------------------------------------------------- */ 635 /* ADDITIONAL DEFINITIONS */ 636 /* ---------------------------------------------------------------- */ 637 638 /* Define cpu-machine-OS */ 639 #ifndef OS 640 #if defined(_M_IX86) || defined(__i386__) /* x86 (MSVC or gcc) */ 641 #define OS "i386-pc-win32" 642 #elif defined(_M_X64) || defined(__x86_64__) /* x86_64 (MSVC >=2005 or gcc) */ 643 #define OS "x86_64-pc-win32" 644 #elif defined(_M_IA64) || defined(__ia64__) /* Itanium */ 645 #define OS "ia64-pc-win32" 646 #elif defined(_M_ARM_NT) || defined(__arm__) /* ARMv7-Thumb2 (Windows RT) */ 647 #define OS "thumbv7a-pc-win32" 648 #elif defined(_M_ARM64) || defined(__aarch64__) /* ARM64 (Windows 10) */ 649 #define OS "aarch64-pc-win32" 650 #else 651 #define OS "unknown-pc-win32" 652 #endif 653 #endif 654 655 /* Name of package */ 656 #define PACKAGE "curl" 657 658 /* If you want to build curl with the built-in manual */ 659 #define USE_MANUAL 1 660 661 #if defined(__POCC__) || defined(USE_IPV6) 662 # define ENABLE_IPV6 1 663 #endif 664 665 #endif /* HEADER_CURL_CONFIG_WIN32_H */ 666