1#*************************************************************************** 2# _ _ ____ _ 3# Project ___| | | | _ \| | 4# / __| | | | |_) | | 5# | (__| |_| | _ <| |___ 6# \___|\___/|_| \_\_____| 7# 8# Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. 9# 10# This software is licensed as described in the file COPYING, which 11# you should have received as part of this distribution. The terms 12# are also available at https://curl.se/docs/copyright.html. 13# 14# You may opt to use, copy, modify, merge, publish, distribute and/or sell 15# copies of the Software, and permit persons to whom the Software is 16# furnished to do so, under the terms of the COPYING file. 17# 18# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY 19# KIND, either express or implied. 20# 21# SPDX-License-Identifier: curl 22# 23########################################################################### 24if(NOT WIN32) 25 message(FATAL_ERROR "This file should be included on Windows platform only") 26endif() 27 28set(HAVE_LOCALE_H 1) 29 30if(MINGW) 31 set(HAVE_SNPRINTF 1) 32 set(HAVE_UNISTD_H 1) 33 set(HAVE_LIBGEN_H 1) 34 set(HAVE_STDDEF_H 1) # detected by CMake internally in check_type_size() 35 set(HAVE_STDBOOL_H 1) 36 set(HAVE_BOOL_T "${HAVE_STDBOOL_H}") 37 set(HAVE_STRTOLL 1) 38 set(HAVE_BASENAME 1) 39 set(HAVE_STRCASECMP 1) 40 set(HAVE_FTRUNCATE 1) 41 set(HAVE_SYS_PARAM_H 1) 42 set(HAVE_SYS_TIME_H 1) 43 set(HAVE_GETTIMEOFDAY 1) 44else() 45 set(HAVE_LIBGEN_H 0) 46 set(HAVE_STRCASECMP 0) 47 set(HAVE_FTRUNCATE 0) 48 set(HAVE_SYS_PARAM_H 0) 49 set(HAVE_SYS_TIME_H 0) 50 set(HAVE_GETTIMEOFDAY 0) 51 if(MSVC) 52 set(HAVE_UNISTD_H 0) 53 set(HAVE_LOCALE_H 1) 54 set(HAVE_STDDEF_H 1) # detected by CMake internally in check_type_size() 55 set(HAVE_STDATOMIC_H 0) 56 if(NOT MSVC_VERSION LESS 1800) 57 set(HAVE_STDBOOL_H 1) 58 set(HAVE_STRTOLL 1) 59 else() 60 set(HAVE_STDBOOL_H 0) 61 set(HAVE_STRTOLL 0) 62 endif() 63 set(HAVE_BOOL_T "${HAVE_STDBOOL_H}") 64 if(NOT MSVC_VERSION LESS 1900) 65 set(HAVE_SNPRINTF 1) 66 else() 67 set(HAVE_SNPRINTF 0) 68 endif() 69 set(HAVE_BASENAME 0) 70 set(HAVE_STRTOK_R 0) 71 set(HAVE_FILE_OFFSET_BITS 0) 72 set(HAVE_ATOMIC 0) 73 endif() 74endif() 75 76# Available in Windows XP and newer 77set(HAVE_GETADDRINFO 1) 78set(HAVE_FREEADDRINFO 1) 79 80set(HAVE_FCHMOD 0) 81set(HAVE_SOCKETPAIR 0) 82set(HAVE_SENDMSG 0) 83set(HAVE_ALARM 0) 84set(HAVE_FCNTL 0) 85set(HAVE_GETPPID 0) 86set(HAVE_UTIMES 0) 87set(HAVE_GETPWUID_R 0) 88set(HAVE_STRERROR_R 0) 89set(HAVE_SIGINTERRUPT 0) 90set(HAVE_PIPE 0) 91set(HAVE_IF_NAMETOINDEX 0) 92set(HAVE_GETRLIMIT 0) 93set(HAVE_SETRLIMIT 0) 94set(HAVE_FSETXATTR 0) 95set(HAVE_LIBSOCKET 0) 96set(HAVE_SETLOCALE 1) 97set(HAVE_SETMODE 1) 98set(HAVE_GETPEERNAME 1) 99set(HAVE_GETSOCKNAME 1) 100set(HAVE_GETHOSTNAME 1) 101set(HAVE_LIBZ 0) 102 103set(HAVE_RECV 1) 104set(HAVE_SEND 1) 105set(HAVE_STROPTS_H 0) 106set(HAVE_SYS_XATTR_H 0) 107set(HAVE_ARC4RANDOM 0) 108set(HAVE_FNMATCH 0) 109set(HAVE_SCHED_YIELD 0) 110set(HAVE_ARPA_INET_H 0) 111set(HAVE_FCNTL_H 1) 112set(HAVE_IFADDRS_H 0) 113set(HAVE_IO_H 1) 114set(HAVE_NETDB_H 0) 115set(HAVE_NETINET_IN_H 0) 116set(HAVE_NETINET_TCP_H 0) 117set(HAVE_NETINET_UDP_H 0) 118set(HAVE_NET_IF_H 0) 119set(HAVE_IOCTL_SIOCGIFADDR 0) 120set(HAVE_POLL_H 0) 121set(HAVE_POLL_FINE 0) 122set(HAVE_PWD_H 0) 123set(HAVE_STRINGS_H 0) # mingw-w64 has it (wrapper to string.h) 124set(HAVE_SYS_FILIO_H 0) 125set(HAVE_SYS_WAIT_H 0) 126set(HAVE_SYS_IOCTL_H 0) 127set(HAVE_SYS_POLL_H 0) 128set(HAVE_SYS_RESOURCE_H 0) 129set(HAVE_SYS_SELECT_H 0) 130set(HAVE_SYS_SOCKET_H 0) 131set(HAVE_SYS_SOCKIO_H 0) 132set(HAVE_SYS_STAT_H 1) 133set(HAVE_SYS_TYPES_H 1) 134set(HAVE_SYS_UN_H 0) 135set(HAVE_SYS_UTIME_H 1) 136set(HAVE_TERMIOS_H 0) 137set(HAVE_TERMIO_H 0) 138set(HAVE_UTIME_H 0) # mingw-w64 has it (wrapper to sys/utime.h) 139 140set(HAVE_FSEEKO 0) 141set(HAVE__FSEEKI64 1) 142set(HAVE_SOCKET 1) 143set(HAVE_SELECT 1) 144set(HAVE_STRDUP 1) 145set(HAVE_STRICMP 1) 146set(HAVE_STRCMPI 1) 147set(HAVE_MEMRCHR 0) 148set(HAVE_CLOSESOCKET 1) 149set(HAVE_SIGSETJMP 0) 150set(HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1) 151set(HAVE_GETPASS_R 0) 152set(HAVE_GETPWUID 0) 153set(HAVE_GETEUID 0) 154set(HAVE_UTIME 1) 155set(HAVE_GMTIME_R 0) 156set(HAVE_GETHOSTBYNAME_R 0) 157set(HAVE_SIGNAL 1) 158set(HAVE_SIGACTION 0) 159set(HAVE_LINUX_TCP_H 0) 160set(HAVE_GLIBC_STRERROR_R 0) 161set(HAVE_MACH_ABSOLUTE_TIME 0) 162set(HAVE_GETIFADDRS 0) 163set(HAVE_FCNTL_O_NONBLOCK 0) 164set(HAVE_IOCTLSOCKET 1) 165set(HAVE_IOCTLSOCKET_CAMEL 0) 166set(HAVE_IOCTLSOCKET_CAMEL_FIONBIO 0) 167set(HAVE_IOCTLSOCKET_FIONBIO 1) 168set(HAVE_IOCTL_FIONBIO 0) 169set(HAVE_SETSOCKOPT_SO_NONBLOCK 0) 170set(HAVE_POSIX_STRERROR_R 0) 171set(HAVE_BUILTIN_AVAILABLE 0) 172set(HAVE_MSG_NOSIGNAL 0) 173set(HAVE_STRUCT_TIMEVAL 1) 174set(HAVE_STRUCT_SOCKADDR_STORAGE 1) 175 176set(HAVE_GETHOSTBYNAME_R_3 0) 177set(HAVE_GETHOSTBYNAME_R_3_REENTRANT 0) 178set(HAVE_GETHOSTBYNAME_R_5 0) 179set(HAVE_GETHOSTBYNAME_R_5_REENTRANT 0) 180set(HAVE_GETHOSTBYNAME_R_6 0) 181set(HAVE_GETHOSTBYNAME_R_6_REENTRANT 0) 182 183set(HAVE_O_NONBLOCK 0) 184set(HAVE_IN_ADDR_T 0) 185set(STDC_HEADERS 1) 186 187set(HAVE_SIZEOF_SUSECONDS_T 0) 188set(HAVE_SIZEOF_SA_FAMILY_T 0) 189