113498266Sopenharmony_ci#ifndef HEADER_CURL_CONFIG_WIN32_H 213498266Sopenharmony_ci#define HEADER_CURL_CONFIG_WIN32_H 313498266Sopenharmony_ci/*************************************************************************** 413498266Sopenharmony_ci * _ _ ____ _ 513498266Sopenharmony_ci * Project ___| | | | _ \| | 613498266Sopenharmony_ci * / __| | | | |_) | | 713498266Sopenharmony_ci * | (__| |_| | _ <| |___ 813498266Sopenharmony_ci * \___|\___/|_| \_\_____| 913498266Sopenharmony_ci * 1013498266Sopenharmony_ci * Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. 1113498266Sopenharmony_ci * 1213498266Sopenharmony_ci * This software is licensed as described in the file COPYING, which 1313498266Sopenharmony_ci * you should have received as part of this distribution. The terms 1413498266Sopenharmony_ci * are also available at https://curl.se/docs/copyright.html. 1513498266Sopenharmony_ci * 1613498266Sopenharmony_ci * You may opt to use, copy, modify, merge, publish, distribute and/or sell 1713498266Sopenharmony_ci * copies of the Software, and permit persons to whom the Software is 1813498266Sopenharmony_ci * furnished to do so, under the terms of the COPYING file. 1913498266Sopenharmony_ci * 2013498266Sopenharmony_ci * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY 2113498266Sopenharmony_ci * KIND, either express or implied. 2213498266Sopenharmony_ci * 2313498266Sopenharmony_ci * SPDX-License-Identifier: curl 2413498266Sopenharmony_ci * 2513498266Sopenharmony_ci ***************************************************************************/ 2613498266Sopenharmony_ci 2713498266Sopenharmony_ci/* ================================================================ */ 2813498266Sopenharmony_ci/* Hand crafted config file for Windows */ 2913498266Sopenharmony_ci/* ================================================================ */ 3013498266Sopenharmony_ci 3113498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 3213498266Sopenharmony_ci/* HEADER FILES */ 3313498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 3413498266Sopenharmony_ci 3513498266Sopenharmony_ci/* Define if you have the <arpa/inet.h> header file. */ 3613498266Sopenharmony_ci/* #define HAVE_ARPA_INET_H 1 */ 3713498266Sopenharmony_ci 3813498266Sopenharmony_ci/* Define if you have the <fcntl.h> header file. */ 3913498266Sopenharmony_ci#define HAVE_FCNTL_H 1 4013498266Sopenharmony_ci 4113498266Sopenharmony_ci/* Define if you have the <io.h> header file. */ 4213498266Sopenharmony_ci#define HAVE_IO_H 1 4313498266Sopenharmony_ci 4413498266Sopenharmony_ci/* Define if you have the <locale.h> header file. */ 4513498266Sopenharmony_ci#define HAVE_LOCALE_H 1 4613498266Sopenharmony_ci 4713498266Sopenharmony_ci/* Define if you need <malloc.h> header even with <stdlib.h> header file. */ 4813498266Sopenharmony_ci#define NEED_MALLOC_H 1 4913498266Sopenharmony_ci 5013498266Sopenharmony_ci/* Define if you have the <netdb.h> header file. */ 5113498266Sopenharmony_ci/* #define HAVE_NETDB_H 1 */ 5213498266Sopenharmony_ci 5313498266Sopenharmony_ci/* Define if you have the <netinet/in.h> header file. */ 5413498266Sopenharmony_ci/* #define HAVE_NETINET_IN_H 1 */ 5513498266Sopenharmony_ci 5613498266Sopenharmony_ci/* Define to 1 if you have the <stdbool.h> header file. */ 5713498266Sopenharmony_ci#if (defined(_MSC_VER) && (_MSC_VER >= 1800)) || defined(__MINGW32__) 5813498266Sopenharmony_ci#define HAVE_STDBOOL_H 1 5913498266Sopenharmony_ci#endif 6013498266Sopenharmony_ci 6113498266Sopenharmony_ci/* Define if you have the <sys/param.h> header file. */ 6213498266Sopenharmony_ci#if defined(__MINGW32__) 6313498266Sopenharmony_ci#define HAVE_SYS_PARAM_H 1 6413498266Sopenharmony_ci#endif 6513498266Sopenharmony_ci 6613498266Sopenharmony_ci/* Define if you have the <sys/select.h> header file. */ 6713498266Sopenharmony_ci/* #define HAVE_SYS_SELECT_H 1 */ 6813498266Sopenharmony_ci 6913498266Sopenharmony_ci/* Define if you have the <sys/socket.h> header file. */ 7013498266Sopenharmony_ci/* #define HAVE_SYS_SOCKET_H 1 */ 7113498266Sopenharmony_ci 7213498266Sopenharmony_ci/* Define if you have the <sys/sockio.h> header file. */ 7313498266Sopenharmony_ci/* #define HAVE_SYS_SOCKIO_H 1 */ 7413498266Sopenharmony_ci 7513498266Sopenharmony_ci/* Define if you have the <sys/stat.h> header file. */ 7613498266Sopenharmony_ci#define HAVE_SYS_STAT_H 1 7713498266Sopenharmony_ci 7813498266Sopenharmony_ci/* Define if you have the <sys/time.h> header file. */ 7913498266Sopenharmony_ci#if defined(__MINGW32__) 8013498266Sopenharmony_ci#define HAVE_SYS_TIME_H 1 8113498266Sopenharmony_ci#endif 8213498266Sopenharmony_ci 8313498266Sopenharmony_ci/* Define if you have the <sys/types.h> header file. */ 8413498266Sopenharmony_ci#define HAVE_SYS_TYPES_H 1 8513498266Sopenharmony_ci 8613498266Sopenharmony_ci/* Define if you have the <sys/utime.h> header file. */ 8713498266Sopenharmony_ci#define HAVE_SYS_UTIME_H 1 8813498266Sopenharmony_ci 8913498266Sopenharmony_ci/* Define if you have the <termio.h> header file. */ 9013498266Sopenharmony_ci/* #define HAVE_TERMIO_H 1 */ 9113498266Sopenharmony_ci 9213498266Sopenharmony_ci/* Define if you have the <termios.h> header file. */ 9313498266Sopenharmony_ci/* #define HAVE_TERMIOS_H 1 */ 9413498266Sopenharmony_ci 9513498266Sopenharmony_ci/* Define if you have the <unistd.h> header file. */ 9613498266Sopenharmony_ci#if defined(__MINGW32__) 9713498266Sopenharmony_ci#define HAVE_UNISTD_H 1 9813498266Sopenharmony_ci#endif 9913498266Sopenharmony_ci 10013498266Sopenharmony_ci/* Define to 1 if you have the <libgen.h> header file. */ 10113498266Sopenharmony_ci#if defined(__MINGW32__) 10213498266Sopenharmony_ci#define HAVE_LIBGEN_H 1 10313498266Sopenharmony_ci#endif 10413498266Sopenharmony_ci 10513498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 10613498266Sopenharmony_ci/* OTHER HEADER INFO */ 10713498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 10813498266Sopenharmony_ci 10913498266Sopenharmony_ci/* Define if you have the ANSI C header files. */ 11013498266Sopenharmony_ci#define STDC_HEADERS 1 11113498266Sopenharmony_ci 11213498266Sopenharmony_ci/* Define to 1 if bool is an available type. */ 11313498266Sopenharmony_ci#if (defined(_MSC_VER) && (_MSC_VER >= 1800)) || defined(__MINGW32__) 11413498266Sopenharmony_ci#define HAVE_BOOL_T 1 11513498266Sopenharmony_ci#endif 11613498266Sopenharmony_ci 11713498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 11813498266Sopenharmony_ci/* FUNCTIONS */ 11913498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 12013498266Sopenharmony_ci 12113498266Sopenharmony_ci/* Define if you have the closesocket function. */ 12213498266Sopenharmony_ci#define HAVE_CLOSESOCKET 1 12313498266Sopenharmony_ci 12413498266Sopenharmony_ci/* Define if you have the ftruncate function. */ 12513498266Sopenharmony_ci#if defined(__MINGW32__) 12613498266Sopenharmony_ci#define HAVE_FTRUNCATE 1 12713498266Sopenharmony_ci#endif 12813498266Sopenharmony_ci 12913498266Sopenharmony_ci/* Define to 1 if you have the `getpeername' function. */ 13013498266Sopenharmony_ci#define HAVE_GETPEERNAME 1 13113498266Sopenharmony_ci 13213498266Sopenharmony_ci/* Define to 1 if you have the getsockname function. */ 13313498266Sopenharmony_ci#define HAVE_GETSOCKNAME 1 13413498266Sopenharmony_ci 13513498266Sopenharmony_ci/* Define if you have the gethostname function. */ 13613498266Sopenharmony_ci#define HAVE_GETHOSTNAME 1 13713498266Sopenharmony_ci 13813498266Sopenharmony_ci/* Define if you have the gettimeofday function. */ 13913498266Sopenharmony_ci#if defined(__MINGW32__) 14013498266Sopenharmony_ci#define HAVE_GETTIMEOFDAY 1 14113498266Sopenharmony_ci#endif 14213498266Sopenharmony_ci 14313498266Sopenharmony_ci/* Define if you have the ioctlsocket function. */ 14413498266Sopenharmony_ci#define HAVE_IOCTLSOCKET 1 14513498266Sopenharmony_ci 14613498266Sopenharmony_ci/* Define if you have a working ioctlsocket FIONBIO function. */ 14713498266Sopenharmony_ci#define HAVE_IOCTLSOCKET_FIONBIO 1 14813498266Sopenharmony_ci 14913498266Sopenharmony_ci/* Define if you have the select function. */ 15013498266Sopenharmony_ci#define HAVE_SELECT 1 15113498266Sopenharmony_ci 15213498266Sopenharmony_ci/* Define if you have the setlocale function. */ 15313498266Sopenharmony_ci#define HAVE_SETLOCALE 1 15413498266Sopenharmony_ci 15513498266Sopenharmony_ci/* Define if you have the setmode function. */ 15613498266Sopenharmony_ci#define HAVE_SETMODE 1 15713498266Sopenharmony_ci 15813498266Sopenharmony_ci/* Define if you have the socket function. */ 15913498266Sopenharmony_ci#define HAVE_SOCKET 1 16013498266Sopenharmony_ci 16113498266Sopenharmony_ci/* Define if you have the strcasecmp function. */ 16213498266Sopenharmony_ci#if defined(__MINGW32__) 16313498266Sopenharmony_ci#define HAVE_STRCASECMP 1 16413498266Sopenharmony_ci#endif 16513498266Sopenharmony_ci 16613498266Sopenharmony_ci/* Define if you have the strdup function. */ 16713498266Sopenharmony_ci#define HAVE_STRDUP 1 16813498266Sopenharmony_ci 16913498266Sopenharmony_ci/* Define if you have the stricmp function. */ 17013498266Sopenharmony_ci#define HAVE_STRICMP 1 17113498266Sopenharmony_ci 17213498266Sopenharmony_ci/* Define if you have the strtoll function. */ 17313498266Sopenharmony_ci#if (defined(_MSC_VER) && (_MSC_VER >= 1800)) || defined(__MINGW32__) 17413498266Sopenharmony_ci#define HAVE_STRTOLL 1 17513498266Sopenharmony_ci#endif 17613498266Sopenharmony_ci 17713498266Sopenharmony_ci/* Define if you have the utime function. */ 17813498266Sopenharmony_ci#define HAVE_UTIME 1 17913498266Sopenharmony_ci 18013498266Sopenharmony_ci/* Define if you have the recv function. */ 18113498266Sopenharmony_ci#define HAVE_RECV 1 18213498266Sopenharmony_ci 18313498266Sopenharmony_ci/* Define to the type of arg 1 for recv. */ 18413498266Sopenharmony_ci#define RECV_TYPE_ARG1 SOCKET 18513498266Sopenharmony_ci 18613498266Sopenharmony_ci/* Define to the type of arg 2 for recv. */ 18713498266Sopenharmony_ci#define RECV_TYPE_ARG2 char * 18813498266Sopenharmony_ci 18913498266Sopenharmony_ci/* Define to the type of arg 3 for recv. */ 19013498266Sopenharmony_ci#define RECV_TYPE_ARG3 int 19113498266Sopenharmony_ci 19213498266Sopenharmony_ci/* Define to the type of arg 4 for recv. */ 19313498266Sopenharmony_ci#define RECV_TYPE_ARG4 int 19413498266Sopenharmony_ci 19513498266Sopenharmony_ci/* Define to the function return type for recv. */ 19613498266Sopenharmony_ci#define RECV_TYPE_RETV int 19713498266Sopenharmony_ci 19813498266Sopenharmony_ci/* Define if you have the send function. */ 19913498266Sopenharmony_ci#define HAVE_SEND 1 20013498266Sopenharmony_ci 20113498266Sopenharmony_ci/* Define to the type of arg 1 for send. */ 20213498266Sopenharmony_ci#define SEND_TYPE_ARG1 SOCKET 20313498266Sopenharmony_ci 20413498266Sopenharmony_ci/* Define to the type qualifier of arg 2 for send. */ 20513498266Sopenharmony_ci#define SEND_QUAL_ARG2 const 20613498266Sopenharmony_ci 20713498266Sopenharmony_ci/* Define to the type of arg 2 for send. */ 20813498266Sopenharmony_ci#define SEND_TYPE_ARG2 char * 20913498266Sopenharmony_ci 21013498266Sopenharmony_ci/* Define to the type of arg 3 for send. */ 21113498266Sopenharmony_ci#define SEND_TYPE_ARG3 int 21213498266Sopenharmony_ci 21313498266Sopenharmony_ci/* Define to the type of arg 4 for send. */ 21413498266Sopenharmony_ci#define SEND_TYPE_ARG4 int 21513498266Sopenharmony_ci 21613498266Sopenharmony_ci/* Define to the function return type for send. */ 21713498266Sopenharmony_ci#define SEND_TYPE_RETV int 21813498266Sopenharmony_ci 21913498266Sopenharmony_ci/* Define to 1 if you have the snprintf function. */ 22013498266Sopenharmony_ci#if (defined(_MSC_VER) && (_MSC_VER >= 1900)) || defined(__MINGW32__) 22113498266Sopenharmony_ci#define HAVE_SNPRINTF 1 22213498266Sopenharmony_ci#endif 22313498266Sopenharmony_ci 22413498266Sopenharmony_ci#if defined(_WIN32_WINNT) && _WIN32_WINNT >= 0x600 /* Vista */ 22513498266Sopenharmony_ci/* Define to 1 if you have a IPv6 capable working inet_ntop function. */ 22613498266Sopenharmony_ci#define HAVE_INET_NTOP 1 22713498266Sopenharmony_ci/* Define to 1 if you have a IPv6 capable working inet_pton function. */ 22813498266Sopenharmony_ci#define HAVE_INET_PTON 1 22913498266Sopenharmony_ci#endif 23013498266Sopenharmony_ci 23113498266Sopenharmony_ci/* Define to 1 if you have the `basename' function. */ 23213498266Sopenharmony_ci#if defined(__MINGW32__) 23313498266Sopenharmony_ci#define HAVE_BASENAME 1 23413498266Sopenharmony_ci#endif 23513498266Sopenharmony_ci 23613498266Sopenharmony_ci/* Define to 1 if you have the strtok_r function. */ 23713498266Sopenharmony_ci#if defined(__MINGW32__) 23813498266Sopenharmony_ci#define HAVE_STRTOK_R 1 23913498266Sopenharmony_ci#endif 24013498266Sopenharmony_ci 24113498266Sopenharmony_ci/* Define to 1 if you have the signal function. */ 24213498266Sopenharmony_ci#define HAVE_SIGNAL 1 24313498266Sopenharmony_ci 24413498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 24513498266Sopenharmony_ci/* TYPEDEF REPLACEMENTS */ 24613498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 24713498266Sopenharmony_ci 24813498266Sopenharmony_ci/* Define if in_addr_t is not an available 'typedefed' type. */ 24913498266Sopenharmony_ci#define in_addr_t unsigned long 25013498266Sopenharmony_ci 25113498266Sopenharmony_ci/* Define if ssize_t is not an available 'typedefed' type. */ 25213498266Sopenharmony_ci#ifndef _SSIZE_T_DEFINED 25313498266Sopenharmony_ci# if defined(__MINGW32__) 25413498266Sopenharmony_ci# elif defined(_WIN64) 25513498266Sopenharmony_ci# define _SSIZE_T_DEFINED 25613498266Sopenharmony_ci# define ssize_t __int64 25713498266Sopenharmony_ci# else 25813498266Sopenharmony_ci# define _SSIZE_T_DEFINED 25913498266Sopenharmony_ci# define ssize_t int 26013498266Sopenharmony_ci# endif 26113498266Sopenharmony_ci#endif 26213498266Sopenharmony_ci 26313498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 26413498266Sopenharmony_ci/* TYPE SIZES */ 26513498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 26613498266Sopenharmony_ci 26713498266Sopenharmony_ci/* Define to the size of `int', as computed by sizeof. */ 26813498266Sopenharmony_ci#define SIZEOF_INT 4 26913498266Sopenharmony_ci 27013498266Sopenharmony_ci/* Define to the size of `long long', as computed by sizeof. */ 27113498266Sopenharmony_ci/* #define SIZEOF_LONG_LONG 8 */ 27213498266Sopenharmony_ci 27313498266Sopenharmony_ci/* Define to the size of `long', as computed by sizeof. */ 27413498266Sopenharmony_ci#define SIZEOF_LONG 4 27513498266Sopenharmony_ci 27613498266Sopenharmony_ci/* Define to the size of `size_t', as computed by sizeof. */ 27713498266Sopenharmony_ci#if defined(_WIN64) 27813498266Sopenharmony_ci# define SIZEOF_SIZE_T 8 27913498266Sopenharmony_ci#else 28013498266Sopenharmony_ci# define SIZEOF_SIZE_T 4 28113498266Sopenharmony_ci#endif 28213498266Sopenharmony_ci 28313498266Sopenharmony_ci/* Define to the size of `curl_off_t', as computed by sizeof. */ 28413498266Sopenharmony_ci#define SIZEOF_CURL_OFF_T 8 28513498266Sopenharmony_ci 28613498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 28713498266Sopenharmony_ci/* COMPILER SPECIFIC */ 28813498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 28913498266Sopenharmony_ci 29013498266Sopenharmony_ci/* Define to nothing if compiler does not support 'const' qualifier. */ 29113498266Sopenharmony_ci/* #define const */ 29213498266Sopenharmony_ci 29313498266Sopenharmony_ci/* Define to nothing if compiler does not support 'volatile' qualifier. */ 29413498266Sopenharmony_ci/* #define volatile */ 29513498266Sopenharmony_ci 29613498266Sopenharmony_ci/* Windows should not have HAVE_GMTIME_R defined */ 29713498266Sopenharmony_ci/* #undef HAVE_GMTIME_R */ 29813498266Sopenharmony_ci 29913498266Sopenharmony_ci/* Define if the compiler supports the 'long long' data type. */ 30013498266Sopenharmony_ci#if (defined(_MSC_VER) && (_MSC_VER >= 1310)) || defined(__MINGW32__) 30113498266Sopenharmony_ci#define HAVE_LONGLONG 1 30213498266Sopenharmony_ci#endif 30313498266Sopenharmony_ci 30413498266Sopenharmony_ci/* Define to avoid VS2005 complaining about portable C functions. */ 30513498266Sopenharmony_ci#if defined(_MSC_VER) && (_MSC_VER >= 1400) 30613498266Sopenharmony_ci#define _CRT_SECURE_NO_DEPRECATE 1 30713498266Sopenharmony_ci#define _CRT_NONSTDC_NO_DEPRECATE 1 30813498266Sopenharmony_ci#endif 30913498266Sopenharmony_ci 31013498266Sopenharmony_ci/* mingw-w64 and visual studio >= 2005 (MSVCR80) 31113498266Sopenharmony_ci all default to 64-bit time_t unless _USE_32BIT_TIME_T is defined */ 31213498266Sopenharmony_ci#if (defined(_MSC_VER) && (_MSC_VER >= 1400)) || defined(__MINGW32__) 31313498266Sopenharmony_ci# ifndef _USE_32BIT_TIME_T 31413498266Sopenharmony_ci# define SIZEOF_TIME_T 8 31513498266Sopenharmony_ci# else 31613498266Sopenharmony_ci# define SIZEOF_TIME_T 4 31713498266Sopenharmony_ci# endif 31813498266Sopenharmony_ci#endif 31913498266Sopenharmony_ci 32013498266Sopenharmony_ci/* Define some minimum and default build targets for Visual Studio */ 32113498266Sopenharmony_ci#if defined(_MSC_VER) 32213498266Sopenharmony_ci /* Officially, Microsoft's Windows SDK versions 6.X does not support Windows 32313498266Sopenharmony_ci 2000 as a supported build target. VS2008 default installations provides 32413498266Sopenharmony_ci an embedded Windows SDK v6.0A along with the claim that Windows 2000 is a 32513498266Sopenharmony_ci valid build target for VS2008. Popular belief is that binaries built with 32613498266Sopenharmony_ci VS2008 using Windows SDK versions v6.X and Windows 2000 as a build target 32713498266Sopenharmony_ci are functional. */ 32813498266Sopenharmony_ci# define VS2008_MIN_TARGET 0x0500 32913498266Sopenharmony_ci 33013498266Sopenharmony_ci /* The minimum build target for VS2012 is Vista unless Update 1 is installed 33113498266Sopenharmony_ci and the v110_xp toolset is chosen. */ 33213498266Sopenharmony_ci# if defined(_USING_V110_SDK71_) 33313498266Sopenharmony_ci# define VS2012_MIN_TARGET 0x0501 33413498266Sopenharmony_ci# else 33513498266Sopenharmony_ci# define VS2012_MIN_TARGET 0x0600 33613498266Sopenharmony_ci# endif 33713498266Sopenharmony_ci 33813498266Sopenharmony_ci /* VS2008 default build target is Windows Vista. We override default target 33913498266Sopenharmony_ci to be Windows XP. */ 34013498266Sopenharmony_ci# define VS2008_DEF_TARGET 0x0501 34113498266Sopenharmony_ci 34213498266Sopenharmony_ci /* VS2012 default build target is Windows Vista unless Update 1 is installed 34313498266Sopenharmony_ci and the v110_xp toolset is chosen. */ 34413498266Sopenharmony_ci# if defined(_USING_V110_SDK71_) 34513498266Sopenharmony_ci# define VS2012_DEF_TARGET 0x0501 34613498266Sopenharmony_ci# else 34713498266Sopenharmony_ci# define VS2012_DEF_TARGET 0x0600 34813498266Sopenharmony_ci# endif 34913498266Sopenharmony_ci#endif 35013498266Sopenharmony_ci 35113498266Sopenharmony_ci/* VS2008 default target settings and minimum build target check. */ 35213498266Sopenharmony_ci#if defined(_MSC_VER) && (_MSC_VER >= 1500) && (_MSC_VER <= 1600) 35313498266Sopenharmony_ci# ifndef _WIN32_WINNT 35413498266Sopenharmony_ci# define _WIN32_WINNT VS2008_DEF_TARGET 35513498266Sopenharmony_ci# endif 35613498266Sopenharmony_ci# ifndef WINVER 35713498266Sopenharmony_ci# define WINVER VS2008_DEF_TARGET 35813498266Sopenharmony_ci# endif 35913498266Sopenharmony_ci# if (_WIN32_WINNT < VS2008_MIN_TARGET) || (WINVER < VS2008_MIN_TARGET) 36013498266Sopenharmony_ci# error VS2008 does not support Windows build targets prior to Windows 2000 36113498266Sopenharmony_ci# endif 36213498266Sopenharmony_ci#endif 36313498266Sopenharmony_ci 36413498266Sopenharmony_ci/* VS2012 default target settings and minimum build target check. */ 36513498266Sopenharmony_ci#if defined(_MSC_VER) && (_MSC_VER >= 1700) 36613498266Sopenharmony_ci# ifndef _WIN32_WINNT 36713498266Sopenharmony_ci# define _WIN32_WINNT VS2012_DEF_TARGET 36813498266Sopenharmony_ci# endif 36913498266Sopenharmony_ci# ifndef WINVER 37013498266Sopenharmony_ci# define WINVER VS2012_DEF_TARGET 37113498266Sopenharmony_ci# endif 37213498266Sopenharmony_ci# if (_WIN32_WINNT < VS2012_MIN_TARGET) || (WINVER < VS2012_MIN_TARGET) 37313498266Sopenharmony_ci# if defined(_USING_V110_SDK71_) 37413498266Sopenharmony_ci# error VS2012 does not support Windows build targets prior to Windows XP 37513498266Sopenharmony_ci# else 37613498266Sopenharmony_ci# error VS2012 does not support Windows build targets prior to Windows \ 37713498266Sopenharmony_ciVista 37813498266Sopenharmony_ci# endif 37913498266Sopenharmony_ci# endif 38013498266Sopenharmony_ci#endif 38113498266Sopenharmony_ci 38213498266Sopenharmony_ci/* Windows XP is required for freeaddrinfo, getaddrinfo */ 38313498266Sopenharmony_ci#define HAVE_FREEADDRINFO 1 38413498266Sopenharmony_ci#define HAVE_GETADDRINFO 1 38513498266Sopenharmony_ci#define HAVE_GETADDRINFO_THREADSAFE 1 38613498266Sopenharmony_ci 38713498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 38813498266Sopenharmony_ci/* STRUCT RELATED */ 38913498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 39013498266Sopenharmony_ci 39113498266Sopenharmony_ci/* Define if you have struct sockaddr_storage. */ 39213498266Sopenharmony_ci#define HAVE_STRUCT_SOCKADDR_STORAGE 1 39313498266Sopenharmony_ci 39413498266Sopenharmony_ci/* Define if you have struct timeval. */ 39513498266Sopenharmony_ci#define HAVE_STRUCT_TIMEVAL 1 39613498266Sopenharmony_ci 39713498266Sopenharmony_ci/* Define if struct sockaddr_in6 has the sin6_scope_id member. */ 39813498266Sopenharmony_ci#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1 39913498266Sopenharmony_ci 40013498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 40113498266Sopenharmony_ci/* LARGE FILE SUPPORT */ 40213498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 40313498266Sopenharmony_ci 40413498266Sopenharmony_ci#if defined(_MSC_VER) && !defined(_WIN32_WCE) 40513498266Sopenharmony_ci# if (_MSC_VER >= 900) && (_INTEGRAL_MAX_BITS >= 64) 40613498266Sopenharmony_ci# define USE_WIN32_LARGE_FILES 40713498266Sopenharmony_ci# else 40813498266Sopenharmony_ci# define USE_WIN32_SMALL_FILES 40913498266Sopenharmony_ci# endif 41013498266Sopenharmony_ci#endif 41113498266Sopenharmony_ci 41213498266Sopenharmony_ci#if defined(__MINGW32__) && !defined(USE_WIN32_LARGE_FILES) 41313498266Sopenharmony_ci# define USE_WIN32_LARGE_FILES 41413498266Sopenharmony_ci#endif 41513498266Sopenharmony_ci 41613498266Sopenharmony_ci#if !defined(USE_WIN32_LARGE_FILES) && !defined(USE_WIN32_SMALL_FILES) 41713498266Sopenharmony_ci# define USE_WIN32_SMALL_FILES 41813498266Sopenharmony_ci#endif 41913498266Sopenharmony_ci 42013498266Sopenharmony_ci/* Number of bits in a file offset, on hosts where this is settable. */ 42113498266Sopenharmony_ci#if defined(USE_WIN32_LARGE_FILES) && defined(__MINGW32__) 42213498266Sopenharmony_ci# ifndef _FILE_OFFSET_BITS 42313498266Sopenharmony_ci# define _FILE_OFFSET_BITS 64 42413498266Sopenharmony_ci# endif 42513498266Sopenharmony_ci#endif 42613498266Sopenharmony_ci 42713498266Sopenharmony_ci#ifdef USE_WIN32_LARGE_FILES 42813498266Sopenharmony_ci#define HAVE__FSEEKI64 42913498266Sopenharmony_ci#endif 43013498266Sopenharmony_ci 43113498266Sopenharmony_ci/* Define to the size of `off_t', as computed by sizeof. */ 43213498266Sopenharmony_ci#if defined(__MINGW32__) && \ 43313498266Sopenharmony_ci defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64) 43413498266Sopenharmony_ci# define SIZEOF_OFF_T 8 43513498266Sopenharmony_ci#else 43613498266Sopenharmony_ci# define SIZEOF_OFF_T 4 43713498266Sopenharmony_ci#endif 43813498266Sopenharmony_ci 43913498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 44013498266Sopenharmony_ci/* DNS RESOLVER SPECIALTY */ 44113498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 44213498266Sopenharmony_ci 44313498266Sopenharmony_ci/* 44413498266Sopenharmony_ci * Undefine both USE_ARES and USE_THREADS_WIN32 for synchronous DNS. 44513498266Sopenharmony_ci */ 44613498266Sopenharmony_ci 44713498266Sopenharmony_ci/* Define to enable c-ares asynchronous DNS lookups. */ 44813498266Sopenharmony_ci/* #define USE_ARES 1 */ 44913498266Sopenharmony_ci 45013498266Sopenharmony_ci/* Default define to enable threaded asynchronous DNS lookups. */ 45113498266Sopenharmony_ci#if !defined(USE_SYNC_DNS) && !defined(USE_ARES) && \ 45213498266Sopenharmony_ci !defined(USE_THREADS_WIN32) 45313498266Sopenharmony_ci# define USE_THREADS_WIN32 1 45413498266Sopenharmony_ci#endif 45513498266Sopenharmony_ci 45613498266Sopenharmony_ci#if defined(USE_ARES) && defined(USE_THREADS_WIN32) 45713498266Sopenharmony_ci# error "Only one DNS lookup specialty may be defined at most" 45813498266Sopenharmony_ci#endif 45913498266Sopenharmony_ci 46013498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 46113498266Sopenharmony_ci/* LDAP SUPPORT */ 46213498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 46313498266Sopenharmony_ci 46413498266Sopenharmony_ci#if defined(CURL_HAS_NOVELL_LDAPSDK) 46513498266Sopenharmony_ci#undef USE_WIN32_LDAP 46613498266Sopenharmony_ci#define HAVE_LDAP_SSL_H 1 46713498266Sopenharmony_ci#define HAVE_LDAP_URL_PARSE 1 46813498266Sopenharmony_ci#elif defined(CURL_HAS_OPENLDAP_LDAPSDK) 46913498266Sopenharmony_ci#undef USE_WIN32_LDAP 47013498266Sopenharmony_ci#define HAVE_LDAP_URL_PARSE 1 47113498266Sopenharmony_ci#else 47213498266Sopenharmony_ci#undef HAVE_LDAP_URL_PARSE 47313498266Sopenharmony_ci#define HAVE_LDAP_SSL 1 47413498266Sopenharmony_ci#define USE_WIN32_LDAP 1 47513498266Sopenharmony_ci#endif 47613498266Sopenharmony_ci 47713498266Sopenharmony_ci/* Define to use the Windows crypto library. */ 47813498266Sopenharmony_ci#if !defined(CURL_WINDOWS_APP) 47913498266Sopenharmony_ci#define USE_WIN32_CRYPTO 48013498266Sopenharmony_ci#endif 48113498266Sopenharmony_ci 48213498266Sopenharmony_ci/* Define to use Unix sockets. */ 48313498266Sopenharmony_ci#define USE_UNIX_SOCKETS 48413498266Sopenharmony_ci 48513498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 48613498266Sopenharmony_ci/* ADDITIONAL DEFINITIONS */ 48713498266Sopenharmony_ci/* ---------------------------------------------------------------- */ 48813498266Sopenharmony_ci 48913498266Sopenharmony_ci/* Define cpu-machine-OS */ 49013498266Sopenharmony_ci#ifndef OS 49113498266Sopenharmony_ci#if defined(_M_IX86) || defined(__i386__) /* x86 (MSVC or gcc) */ 49213498266Sopenharmony_ci#define OS "i386-pc-win32" 49313498266Sopenharmony_ci#elif defined(_M_X64) || defined(__x86_64__) /* x86_64 (MSVC >=2005 or gcc) */ 49413498266Sopenharmony_ci#define OS "x86_64-pc-win32" 49513498266Sopenharmony_ci#elif defined(_M_IA64) || defined(__ia64__) /* Itanium */ 49613498266Sopenharmony_ci#define OS "ia64-pc-win32" 49713498266Sopenharmony_ci#elif defined(_M_ARM_NT) || defined(__arm__) /* ARMv7-Thumb2 (Windows RT) */ 49813498266Sopenharmony_ci#define OS "thumbv7a-pc-win32" 49913498266Sopenharmony_ci#elif defined(_M_ARM64) || defined(__aarch64__) /* ARM64 (Windows 10) */ 50013498266Sopenharmony_ci#define OS "aarch64-pc-win32" 50113498266Sopenharmony_ci#else 50213498266Sopenharmony_ci#define OS "unknown-pc-win32" 50313498266Sopenharmony_ci#endif 50413498266Sopenharmony_ci#endif 50513498266Sopenharmony_ci 50613498266Sopenharmony_ci/* Name of package */ 50713498266Sopenharmony_ci#define PACKAGE "curl" 50813498266Sopenharmony_ci 50913498266Sopenharmony_ci/* If you want to build curl with the built-in manual */ 51013498266Sopenharmony_ci#define USE_MANUAL 1 51113498266Sopenharmony_ci 51213498266Sopenharmony_ci#if defined(USE_IPV6) 51313498266Sopenharmony_ci# define ENABLE_IPV6 1 51413498266Sopenharmony_ci#endif 51513498266Sopenharmony_ci 51613498266Sopenharmony_ci#endif /* HEADER_CURL_CONFIG_WIN32_H */ 517