quickjs-tart

quickjs-based runtime for wallet-core logic
Log | Files | Refs | README | LICENSE

config-win32.h (12421B)


      1 /* MIT License
      2  *
      3  * Copyright (c) 2004 Daniel Stenberg
      4  *
      5  * Permission is hereby granted, free of charge, to any person obtaining a copy
      6  * of this software and associated documentation files (the "Software"), to deal
      7  * in the Software without restriction, including without limitation the rights
      8  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
      9  * copies of the Software, and to permit persons to whom the Software is
     10  * furnished to do so, subject to the following conditions:
     11  *
     12  * The above copyright notice and this permission notice (including the next
     13  * paragraph) shall be included in all copies or substantial portions of the
     14  * Software.
     15  *
     16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     17  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     18  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
     19  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     20  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
     21  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
     22  * SOFTWARE.
     23  *
     24  * SPDX-License-Identifier: MIT
     25  */
     26 #ifndef HEADER_CARES_CONFIG_WIN32_H
     27 #define HEADER_CARES_CONFIG_WIN32_H
     28 
     29 /* ================================================================ */
     30 /*   c-ares/config-win32.h - Hand crafted config file for Windows   */
     31 /* ================================================================ */
     32 
     33 /* ---------------------------------------------------------------- */
     34 /*                          HEADER FILES                            */
     35 /* ---------------------------------------------------------------- */
     36 
     37 /* Define if you have the <assert.h> header file. */
     38 #define HAVE_ASSERT_H 1
     39 
     40 /* Define if you have the <errno.h> header file. */
     41 #define HAVE_ERRNO_H 1
     42 
     43 /* Define if you have the <getopt.h> header file. */
     44 #if defined(__MINGW32__) || defined(__POCC__)
     45 #  define HAVE_GETOPT_H 1
     46 #endif
     47 
     48 /* Define if you have the <limits.h> header file. */
     49 #define HAVE_LIMITS_H 1
     50 
     51 /* Define if you have the <process.h> header file. */
     52 #ifndef __SALFORDC__
     53 #  define HAVE_PROCESS_H 1
     54 #endif
     55 
     56 /* Define if you have the <signal.h> header file. */
     57 #define HAVE_SIGNAL_H 1
     58 
     59 /* Define if you have the <sys/time.h> header file */
     60 /* #define HAVE_SYS_TIME_H 1 */
     61 
     62 /* Define if you have the <time.h> header file. */
     63 #define HAVE_TIME_H 1
     64 
     65 /* Define if you have the <unistd.h> header file. */
     66 #if defined(__MINGW32__) || defined(__WATCOMC__) || defined(__LCC__) || \
     67   defined(__POCC__)
     68 #  define HAVE_UNISTD_H 1
     69 #endif
     70 
     71 /* Define if you have the <windows.h> header file. */
     72 #define HAVE_WINDOWS_H 1
     73 
     74 /* Define if you have the <winsock.h> header file. */
     75 #define HAVE_WINSOCK_H 1
     76 
     77 /* Define if you have the <winsock2.h> header file. */
     78 #ifndef __SALFORDC__
     79 #  define HAVE_WINSOCK2_H 1
     80 #endif
     81 
     82 /* Define if you have the <ws2tcpip.h> header file. */
     83 #ifndef __SALFORDC__
     84 #  define HAVE_WS2TCPIP_H 1
     85 #endif
     86 
     87 /* Define if you have <iphlpapi.h> header file */
     88 #define HAVE_IPHLPAPI_H 1
     89 
     90 /* Define if you have <netioapi.h> header file */
     91 #if !defined(__WATCOMC__) && !defined(WATT32)
     92 #  define HAVE_NETIOAPI_H 1
     93 #endif
     94 
     95 #define HAVE_SYS_TYPES_H 1
     96 #define HAVE_SYS_STAT_H  1
     97 
     98 /* If we are building with OpenWatcom, we need to specify that we have
     99  * <stdint.h>. */
    100 #if defined(__WATCOMC__)
    101 #  define HAVE_STDINT_H
    102 #endif
    103 
    104 /* ---------------------------------------------------------------- */
    105 /*                        OTHER HEADER INFO                         */
    106 /* ---------------------------------------------------------------- */
    107 
    108 /* Define if you have the ANSI C header files. */
    109 #define STDC_HEADERS 1
    110 
    111 /* ---------------------------------------------------------------- */
    112 /*                             FUNCTIONS                            */
    113 /* ---------------------------------------------------------------- */
    114 
    115 /* Define if you have the closesocket function. */
    116 #define HAVE_CLOSESOCKET 1
    117 
    118 /* Define if you have the getenv function. */
    119 #define HAVE_GETENV 1
    120 
    121 /* Define if you have the gethostname function. */
    122 #define HAVE_GETHOSTNAME 1
    123 
    124 /* Define if you have the ioctlsocket function. */
    125 #define HAVE_IOCTLSOCKET 1
    126 
    127 /* Define if you have a working ioctlsocket FIONBIO function. */
    128 #define HAVE_IOCTLSOCKET_FIONBIO 1
    129 
    130 /* Define if you have the strcasecmp function. */
    131 /* #define HAVE_STRCASECMP 1 */
    132 
    133 /* Define if you have the strdup function. */
    134 #define HAVE_STRDUP 1
    135 
    136 /* Define if you have the stricmp function. */
    137 #define HAVE_STRICMP 1
    138 
    139 /* Define if you have the strncasecmp function. */
    140 /* #define HAVE_STRNCASECMP 1 */
    141 
    142 /* Define if you have the strnicmp function. */
    143 #define HAVE_STRNICMP 1
    144 
    145 /* Define if you have the recv function. */
    146 #define HAVE_RECV 1
    147 
    148 /* Define to the type of arg 1 for recv. */
    149 #define RECV_TYPE_ARG1 SOCKET
    150 
    151 /* Define to the type of arg 2 for recv. */
    152 #define RECV_TYPE_ARG2 char *
    153 
    154 /* Define to the type of arg 3 for recv. */
    155 #define RECV_TYPE_ARG3 int
    156 
    157 /* Define to the type of arg 4 for recv. */
    158 #define RECV_TYPE_ARG4 int
    159 
    160 /* Define to the function return type for recv. */
    161 #define RECV_TYPE_RETV int
    162 
    163 /* Define if you have the recvfrom function. */
    164 #define HAVE_RECVFROM 1
    165 
    166 /* Define to the type of arg 1 for recvfrom. */
    167 #define RECVFROM_TYPE_ARG1 SOCKET
    168 
    169 /* Define to the type pointed by arg 2 for recvfrom. */
    170 #define RECVFROM_TYPE_ARG2 char
    171 
    172 /* Define to the type of arg 3 for recvfrom. */
    173 #define RECVFROM_TYPE_ARG3 int
    174 
    175 /* Define to the type of arg 4 for recvfrom. */
    176 #define RECVFROM_TYPE_ARG4 int
    177 
    178 /* Define to the type pointed by arg 5 for recvfrom. */
    179 #define RECVFROM_TYPE_ARG5 struct sockaddr
    180 
    181 /* Define to the type pointed by arg 6 for recvfrom. */
    182 #define RECVFROM_TYPE_ARG6 int
    183 
    184 /* Define to the function return type for recvfrom. */
    185 #define RECVFROM_TYPE_RETV int
    186 
    187 /* Define if you have the send function. */
    188 #define HAVE_SEND 1
    189 
    190 /* Define if you have the sendto function. */
    191 #define HAVE_SENDTO 1
    192 
    193 /* Define to the type of arg 1 for send. */
    194 #define SEND_TYPE_ARG1 SOCKET
    195 
    196 /* Define to the type of arg 2 for send. */
    197 #define SEND_TYPE_ARG2 const char *
    198 
    199 /* Define to the type of arg 3 for send. */
    200 #define SEND_TYPE_ARG3 int
    201 
    202 /* Define to the type of arg 4 for send. */
    203 #define SEND_TYPE_ARG4 int
    204 
    205 /* Define to the function return type for send. */
    206 #define SEND_TYPE_RETV int
    207 
    208 /* Specifics for the Watt-32 tcp/ip stack. */
    209 #ifdef WATT32
    210 #  undef RECV_TYPE_ARG1
    211 #  define RECV_TYPE_ARG1 int
    212 #  undef SEND_TYPE_ARG1
    213 #  define SEND_TYPE_ARG1 int
    214 #  undef RECVFROM_TYPE_ARG1
    215 #  define RECVFROM_TYPE_ARG1       int
    216 #  define NS_INADDRSZ              4
    217 #  define HAVE_ARPA_NAMESER_H      1
    218 #  define HAVE_ARPA_INET_H         1
    219 #  define HAVE_NETDB_H             1
    220 #  define HAVE_NETINET_IN_H        1
    221 #  define HAVE_SYS_SOCKET_H        1
    222 #  define HAVE_SYS_IOCTL_H         1
    223 #  define HAVE_NETINET_TCP_H       1
    224 #  define HAVE_AF_INET6            1
    225 #  define HAVE_PF_INET6            1
    226 #  define HAVE_STRUCT_IN6_ADDR     1
    227 #  define HAVE_STRUCT_SOCKADDR_IN6 1
    228 #  define HAVE_WRITEV              1
    229 #  define HAVE_IF_NAMETOINDEX      1
    230 #  define HAVE_IF_INDEXTONAME      1
    231 #  define HAVE_GETSERVBYPORT_R     1
    232 #  define GETSERVBYPORT_R_ARGS     6
    233 #  undef HAVE_WINSOCK_H
    234 #  undef HAVE_WINSOCK2_H
    235 #  undef HAVE_WS2TCPIP_H
    236 #  undef HAVE_IPHLPAPI_H
    237 #  undef HAVE_NETIOAPI_H
    238 #endif
    239 
    240 /* Threading support enabled for Vista+ */
    241 #if !defined(_WIN32_WINNT) || _WIN32_WINNT >= 0x0600
    242 #  define CARES_THREADS 1
    243 #endif
    244 
    245 /* ---------------------------------------------------------------- */
    246 /*                       TYPEDEF REPLACEMENTS                       */
    247 /* ---------------------------------------------------------------- */
    248 
    249 /* ---------------------------------------------------------------- */
    250 /*                            TYPE SIZES                            */
    251 /* ---------------------------------------------------------------- */
    252 
    253 /* ---------------------------------------------------------------- */
    254 /*                          STRUCT RELATED                          */
    255 /* ---------------------------------------------------------------- */
    256 
    257 /* Define if you have struct addrinfo. */
    258 #define HAVE_STRUCT_ADDRINFO 1
    259 
    260 /* Define if you have struct sockaddr_storage. */
    261 #if !defined(__SALFORDC__) && !defined(__BORLANDC__)
    262 #  define HAVE_STRUCT_SOCKADDR_STORAGE 1
    263 #endif
    264 
    265 /* Define if you have struct timeval. */
    266 #define HAVE_STRUCT_TIMEVAL 1
    267 
    268 /* ---------------------------------------------------------------- */
    269 /*                        COMPILER SPECIFIC                         */
    270 /* ---------------------------------------------------------------- */
    271 
    272 /* Define to avoid VS2005 complaining about portable C functions. */
    273 #if defined(_MSC_VER) && (_MSC_VER >= 1400)
    274 #  define _CRT_SECURE_NO_DEPRECATE  1
    275 #  define _CRT_NONSTDC_NO_DEPRECATE 1
    276 #endif
    277 
    278 /* Set the Target to Win8 */
    279 #if defined(_MSC_VER) && (_MSC_VER >= 1500)
    280 #  define MSVC_MIN_TARGET 0x0602
    281 #endif
    282 
    283 /* MSVC default target settings */
    284 #if defined(_MSC_VER) && (_MSC_VER >= 1500)
    285 #  ifndef _WIN32_WINNT
    286 #    define _WIN32_WINNT MSVC_MIN_TARGET
    287 #  endif
    288 #  ifndef WINVER
    289 #    define WINVER MSVC_MIN_TARGET
    290 #  endif
    291 #endif
    292 
    293 /* When no build target is specified Pelles C 5.00 and later default build
    294    target is Windows Vista. */
    295 #if defined(__POCC__) && (__POCC__ >= 500)
    296 #  ifndef _WIN32_WINNT
    297 #    define _WIN32_WINNT 0x0602
    298 #  endif
    299 #  ifndef WINVER
    300 #    define WINVER 0x0602
    301 #  endif
    302 #endif
    303 
    304 /* Availability of freeaddrinfo, getaddrinfo and getnameinfo functions is
    305    quite convoluted, compiler dependent and even build target dependent. */
    306 #if defined(HAVE_WS2TCPIP_H)
    307 #  if defined(__POCC__)
    308 #    define HAVE_FREEADDRINFO 1
    309 #    define HAVE_GETADDRINFO  1
    310 #    define HAVE_GETNAMEINFO  1
    311 #  elif defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0501)
    312 #    define HAVE_FREEADDRINFO 1
    313 #    define HAVE_GETADDRINFO  1
    314 #    define HAVE_GETNAMEINFO  1
    315 #  elif defined(_MSC_VER) && (_MSC_VER >= 1200)
    316 #    define HAVE_FREEADDRINFO 1
    317 #    define HAVE_GETADDRINFO  1
    318 #    define HAVE_GETNAMEINFO  1
    319 #  endif
    320 #endif
    321 
    322 #if defined(__POCC__)
    323 #  ifndef _MSC_VER
    324 #    error Microsoft extensions /Ze compiler option is required
    325 #  endif
    326 #  ifndef __POCC__OLDNAMES
    327 #    error Compatibility names /Go compiler option is required
    328 #  endif
    329 #endif
    330 
    331 /* ---------------------------------------------------------------- */
    332 /*                         IPV6 COMPATIBILITY                       */
    333 /* ---------------------------------------------------------------- */
    334 
    335 /* Define if you have address family AF_INET6. */
    336 #ifdef HAVE_WINSOCK2_H
    337 #  define HAVE_AF_INET6 1
    338 #endif
    339 
    340 /* Define if you have protocol family PF_INET6. */
    341 #ifdef HAVE_WINSOCK2_H
    342 #  define HAVE_PF_INET6 1
    343 #endif
    344 
    345 /* Define if you have struct in6_addr. */
    346 #ifdef HAVE_WS2TCPIP_H
    347 #  define HAVE_STRUCT_IN6_ADDR 1
    348 #endif
    349 
    350 /* Define if you have struct sockaddr_in6. */
    351 #ifdef HAVE_WS2TCPIP_H
    352 #  define HAVE_STRUCT_SOCKADDR_IN6 1
    353 #endif
    354 
    355 /* Define if you have sockaddr_in6 with scopeid. */
    356 #ifdef HAVE_WS2TCPIP_H
    357 #  define HAVE_STRUCT_SOCKADDR_IN6_SIN6_SCOPE_ID 1
    358 #endif
    359 
    360 /* Define to 1 if you have the `RegisterWaitForSingleObject' function. */
    361 #define HAVE_REGISTERWAITFORSINGLEOBJECT 1
    362 
    363 #if defined(_WIN32_WINNT) && (_WIN32_WINNT >= 0x0600) && \
    364   !defined(__WATCOMC__) && !defined(WATT32)
    365 /* Define if you have if_nametoindex() */
    366 #  define HAVE_IF_NAMETOINDEX 1
    367 /* Define if you have if_indextoname() */
    368 #  define HAVE_IF_INDEXTONAME 1
    369 /* Define to 1 if you have the `ConvertInterfaceIndexToLuid' function. */
    370 #  define HAVE_CONVERTINTERFACEINDEXTOLUID 1
    371 /* Define to 1 if you have the `ConvertInterfaceLuidToNameA' function. */
    372 #  define HAVE_CONVERTINTERFACELUIDTONAMEA 1
    373 /* Define to 1 if you have the `NotifyIpInterfaceChange' function. */
    374 #  define HAVE_NOTIFYIPINTERFACECHANGE 1
    375 /* Define to 1 if you have the `GetBestRoute2` function */
    376 #  define HAVE_GETBESTROUTE2 1
    377 #endif
    378 
    379 /* ---------------------------------------------------------------- */
    380 /*                              Win CE                              */
    381 /* ---------------------------------------------------------------- */
    382 
    383 /* FIXME: A proper config-win32ce.h should be created to hold these */
    384 
    385 /*
    386  *  System error codes for Windows CE
    387  */
    388 
    389 #if defined(_WIN32_WCE) && !defined(HAVE_ERRNO_H)
    390 #  define ENOENT ERROR_FILE_NOT_FOUND
    391 #  define ESRCH  ERROR_PATH_NOT_FOUND
    392 #  define ENOMEM ERROR_NOT_ENOUGH_MEMORY
    393 #  define ENOSPC ERROR_INVALID_PARAMETER
    394 #endif
    395 
    396 #endif /* HEADER_CARES_CONFIG_WIN32_H */