1# Distributed under the OSI-approved BSD 3-Clause License. See accompanying 2# file Copyright.txt or https://cmake.org/licensing for details. 3 4# Hard-code third-party try_compile checks where we know the answer. 5 6# Results for builds targeting all supported platforms. 7set(HAVE_ASSERT_H 1) 8set(HAVE__CrtSetReportMode 0) # unused anyway 9set(HAVE_CTYPE_H 1) 10set(HAVE_LOCALE_H 1) 11set(HAVE_MEMMOVE 1) 12set(HAVE_SETLOCALE 1) 13set(HAVE_STDDEF_H 1) 14set(HAVE_STDIO_H 1) 15set(HAVE_STDLIB_H 1) 16set(HAVE_STRCHR 1) 17set(HAVE_STRDUP 1) 18set(HAVE_STRFTIME 1) 19set(HAVE_STRING_H 1) 20set(HAVE_STRRCHR 1) 21set(HAVE_WCHAR_H 1) 22 23# Used by TEST_BIG_ENDIAN. 24set(CMAKE_SIZEOF_UNSIGNED_SHORT 2) 25set(HAVE_CMAKE_SIZEOF_UNSIGNED_SHORT 1) 26 27if(WIN32) 28 # Results for builds targeting Windows platforms. 29 # This covers both MSVC-ABI and GNU-ABI toolchains. 30 31 set(HAVE_ALARM 0) 32 set(HAVE_ARC4RANDOM 0) 33 set(HAVE_ARC4RANDOM_BUF 0) 34 set(HAVE_ARPA_TFTP_H 0) 35 set(HAVE_BSWAP_16 0) 36 set(HAVE_BSWAP_32 0) 37 set(HAVE_BSWAP_64 0) 38 set(HAVE_BUILTIN_AVAILABLE 0) 39 set(HAVE_BYTESWAP_H 0) 40 set(HAVE_CHFLAGS 0) 41 set(HAVE_CHOWN 0) 42 set(HAVE_CHROOT 0) 43 set(HAVE_COPYFILE_H 0) 44 set(HAVE_CRYPTO_H 0) 45 set(HAVE__CTIME64_S 1) 46 set(HAVE_CTIME_R 0) 47 set(HAVE_CYGWIN_CONV_PATH 0) 48 set(HAVE_DES_H 0) 49 set(HAVE_DIRECT_H 1) 50 set(HAVE_DIRFD 0) 51 set(HAVE_DLFCN_H 0) 52 set(HAVE_D_MD_ORDER 0) 53 set(HAVE_EFTYPE 0) 54 set(HAVE_EILSEQ 1) 55 set(HAVE_ERR_H 0) 56 set(HAVE_ERRNO_H 1) 57 set(HAVE_EXT2FS_EXT2_FS_H 0) 58 set(HAVE_FCHDIR 0) 59 set(HAVE_FCHFLAGS 0) 60 set(HAVE_FCHMOD 0) 61 set(HAVE_FCHOWN 0) 62 set(HAVE_FCNTL 0) 63 set(HAVE_FCNTL_H 1) 64 set(HAVE_FCNTL_O_NONBLOCK 0) 65 set(HAVE_FDOPENDIR 0) 66 set(HAVE_FORK 0) 67 set(HAVE_FREEADDRINFO 1) 68 set(HAVE_FREEIFADDRS 0) 69 set(HAVE__FSEEKI64 1) 70 set(HAVE_FSETXATTR 0) 71 set(HAVE_FSTAT 1) 72 set(HAVE_FSTATAT 0) 73 set(HAVE_FSTATFS 0) 74 set(HAVE_FSTATVFS 0) 75 set(HAVE_FTRUNCATE 0) 76 set(HAVE_FUTIMENS 0) 77 set(HAVE_FUTIMES 0) 78 set(HAVE_FUTIMESAT 0) 79 set(HAVE_GETEUID 0) 80 set(HAVE_GETGRGID_R 0) 81 set(HAVE_GETGRNAM_R 0) 82 set(HAVE_GETHOSTBYNAME 1) 83 set(HAVE_GETPAGESIZE 0) 84 set(HAVE_GETPEERNAME 1) 85 set(HAVE_GETPID 1) 86 set(HAVE_GETPPID 0) 87 set(HAVE_GETPROTOBYNAME 1) 88 set(HAVE_GETPWNAM_R 0) 89 set(HAVE_GETPWUID_R 0) 90 set(HAVE_GETRANDOM 0) 91 set(HAVE_GETRLIMIT 0) 92 set(HAVE_GETSOCKNAME 1) 93 set(HAVE_GETVFSBYNAME 0) 94 set(HAVE_GLIBC_STRERROR_R 0) 95 set(HAVE__GMTIME64_S 1) 96 set(HAVE_GMTIME_R 0) 97 set(HAVE_GRP_H 0) 98 set(HAVE_IDN2_H 0) 99 set(HAVE_IFADDRS_H 0) 100 set(HAVE_IF_NAMETOINDEX 0) 101 set(HAVE_INTTYPES_H 1) 102 set(HAVE_IOCTL 0) 103 set(HAVE_IOCTL_FIONBIO 0) 104 set(HAVE_IOCTL_SIOCGIFADDR 0) 105 set(HAVE_IOCTLSOCKET 1) 106 set(HAVE_IOCTLSOCKET_CAMEL 0) 107 set(HAVE_IOCTLSOCKET_CAMEL_FIONBIO 1) 108 set(HAVE_IOCTLSOCKET_FIONBIO 1) 109 set(HAVE_IO_H 1) 110 set(HAVE_KRB_H 0) 111 set(HAVE_LANGINFO_H 0) 112 set(HAVE_LCHFLAGS 0) 113 set(HAVE_LCHMOD 0) 114 set(HAVE_LCHOWN 0) 115 set(HAVE_LIBIDN2 0) 116 set(HAVE_LIBNETWORK 0) 117 set(HAVE_LIBWINMM 1) 118 set(HAVE_LIBWS2_32 1) 119 set(HAVE_LIMITS_H 1) 120 set(HAVE_LINK 0) 121 set(HAVE_LINUX_FIEMAP_H 0) 122 set(HAVE_LINUX_FS_H 0) 123 set(HAVE_LINUX_MAGIC_H 0) 124 set(HAVE_LINUX_TYPES_H 0) 125 set(HAVE__LOCALTIME64_S 1) 126 set(HAVE_LOCALTIME_R 0) 127 set(HAVE_LSTAT 0) 128 set(HAVE_LUTIMES 0) 129 set(HAVE_MACH_ABSOLUTE_TIME 0) 130 set(HAVE_MBRTOWC 1) 131 set(HAVE_MEMBERSHIP_H 0) 132 set(HAVE_MEMORY_H 1) 133 set(HAVE_MKDIR 1) 134 set(HAVE_MKFIFO 0) 135 set(HAVE__MKGMTIME64 1) 136 set(HAVE_MKNOD 0) 137 set(HAVE_MMAP 0) 138 set(HAVE_MSG_NOSIGNAL 0) 139 set(HAVE_NETINET_TCP_H 0) 140 set(HAVE_NL_LANGINFO 0) 141 set(HAVE_OPENAT 0) 142 set(HAVE_PATHS_H 0) 143 set(HAVE_PEM_H 0) 144 set(HAVE_PIPE 0) 145 set(HAVE_POLL 0) 146 set(HAVE_POLL_FINE 0) 147 set(HAVE_POLL_H 0) 148 set(HAVE_POSIX_SPAWNP 0) 149 set(HAVE_POSIX_STRERROR_R 0) 150 set(HAVE_PROCESS_H 1) 151 set(HAVE_PWD_H 0) 152 set(HAVE_READDIR_R 0) 153 set(HAVE_READLINK 0) 154 set(HAVE_READLINKAT 0) 155 set(HAVE_READPASSPHRASE 0) 156 set(HAVE_READPASSPHRASE_H 0) 157 set(HAVE_REGEX_H 0) 158 set(HAVE_RSA_H 0) 159 set(HAVE_SELECT 0) 160 set(HAVE_SETENV 0) 161 set(HAVE_SETMODE 1) 162 set(HAVE_SETRLIMIT 0) 163 set(HAVE_SETSOCKOPT 1) 164 set(HAVE_SETSOCKOPT_SO_NONBLOCK 0) 165 set(HAVE_SIGACTION 0) 166 set(HAVE_SIG_ATOMIC_T_NOT_VOLATILE 1) 167 set(HAVE_SIGINTERRUPT 0) 168 set(HAVE_SIGNAL_H 1) 169 set(HAVE_SIZEOF_ADDRESS_FAMILY 0) 170 set(HAVE_SIZEOF_SA_FAMILY_T 0) 171 set(HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 0) 172 set(HAVE_SPAWN_H 0) 173 set(HAVE_SSL_H 0) 174 set(HAVE_STATFS 0) 175 set(HAVE_STATVFS 0) 176 set(HAVE_STDARG_H 1) 177 set(HAVE_STDBOOL_H 1) 178 set(HAVE_STDINT_H 1) 179 set(HAVE_STRERROR 1) 180 set(HAVE_STRERROR_R 0) 181 set(HAVE_STRNCMPI 0) 182 set(HAVE_STRNCPY_S 1) 183 set(HAVE_STRNLEN 1) 184 set(HAVE_STROPTS_H 0) 185 set(HAVE__STRTOI64 1) 186 set(HAVE_STRTOLL 1) 187 set(HAVE_STRUCT_STATFS_F_NAMEMAX 0) 188 set(HAVE_STRUCT_STAT_ST_BIRTHTIME 0) 189 set(HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC 0) 190 set(HAVE_STRUCT_STAT_ST_BLKSIZE 0) 191 set(HAVE_STRUCT_STAT_ST_FLAGS 0) 192 set(HAVE_STRUCT_STAT_ST_MTIME_N 0) 193 set(HAVE_STRUCT_STAT_ST_MTIMESPEC_TV_NSEC 0) 194 set(HAVE_STRUCT_STAT_ST_MTIME_USEC 0) 195 set(HAVE_STRUCT_STAT_ST_MTIM_TV_NSEC 0) 196 set(HAVE_STRUCT_STAT_ST_UMTIME 0) 197 set(HAVE_STRUCT_TIMEVAL 1) 198 set(HAVE_STRUCT_TM___TM_GMTOFF 0) 199 set(HAVE_STRUCT_TM_TM_GMTOFF 0) 200 set(HAVE_STRUCT_VFSCONF 0) 201 set(HAVE_STRUCT_XVFSCONF 0) 202 set(HAVE_SYMLINK 0) 203 set(HAVE_SYS_ACL_H 0) 204 set(HAVE_SYSCALL_GETRANDOM 0) 205 set(HAVE_SYS_EXTATTR_H 0) 206 set(HAVE_SYS_FILIO_H 0) 207 set(HAVE_SYS_IOCTL_H 0) 208 set(HAVE_SYS_MKDEV_H 0) 209 set(HAVE_SYS_MOUNT_H 0) 210 set(HAVE_SYS_POLL_H 0) 211 set(HAVE_SYS_RESOURCE_H 0) 212 set(HAVE_SYS_RICHACL_H 0) 213 set(HAVE_SYS_SELECT_H 0) 214 set(HAVE_SYS_STATFS_H 0) 215 set(HAVE_SYS_STAT_H 1) 216 set(HAVE_SYS_STATVFS_H 0) 217 set(HAVE_SYS_SYSCTL_H 0) 218 set(HAVE_SYS_SYSMACROS_H 0) 219 set(HAVE_SYS_UIO_H 0) 220 set(HAVE_SYS_UN_H 0) 221 set(HAVE_SYS_UTSNAME_H 0) 222 set(HAVE_SYS_VFS_H 0) 223 set(HAVE_SYS_WAIT_H 0) 224 set(HAVE_SYS_XATTR_H 0) 225 set(HAVE_TIMEGM 0) 226 set(HAVE_TZSET 1) 227 set(HAVE_UNLINKAT 0) 228 set(HAVE_USLEEP 0) 229 set(HAVE_UTIMENSAT 0) 230 set(HAVE_UTIMES 0) 231 set(HAVE_VFORK 0) 232 set(HAVE_WORKING_EXT2_IOC_GETFLAGS 0) 233 set(HAVE_WORKING_FS_IOC_GETFLAGS 0) 234 235 # Some POSIX headers are available on Windows. 236 set(HAVE_SYS_TYPES_H 1) 237 set(HAVE_SYS_UTIME_H 1) 238 set(HAVE_TIME_H 1) 239 set(HAVE_UTIME 1) 240 241 # Wide character APIs are available on Windows. 242 set(HAVE_WCRTOMB 1) 243 set(HAVE_WCSCMP 1) 244 set(HAVE_WCSCPY 1) 245 set(HAVE_WCSLEN 1) 246 set(HAVE_WCTOMB 1) 247 set(HAVE_WCTYPE_H 1) 248 249 # Windows APIs are available on Windows. 250 set(HAVE_WINCRYPT_H 1) 251 set(HAVE_WINDOWS_H 1) 252 set(HAVE_WINIOCTL_H 1) 253 set(HAVE_WINSOCK2_H 1) 254 set(HAVE_WINSOCK_H 1) 255 set(HAVE_WS2TCPIP_H 1) 256 set(USE_WINCRYPT 1) # We do not need to build as a Windows App. 257 258 # UNIX integer id types do not exist on Windows. 259 set(HAVE_ID_T 0) 260 set(HAVE_GID_T 0) 261 set(HAVE_UID_T 0) 262 set(ID_T "") 263 set(GID_T "") 264 set(UID_T "") 265 266 # curl and expat: stdlib.h, stdarg.h, string.h, float.h 267 set(STDC_HEADERS 1) 268 269 # UNIX device APIs do not exist on Windows. 270 set(MAJOR_IN_MKDEV 0) 271 set(MAJOR_IN_SYSMACROS 0) 272 273 # FreeBSD libmd does not exist on Windows. 274 set(LIBMD_FOUND 0) 275 276 # libarchive looks for external hash implementations. 277 set(ARCHIVE_CRYPTO_MD5_LIBC 0) 278 set(ARCHIVE_CRYPTO_MD5_LIBMD 0) 279 set(ARCHIVE_CRYPTO_MD5_LIBSYSTEM 0) 280 set(ARCHIVE_CRYPTO_MD5_WIN 1) 281 set(ARCHIVE_CRYPTO_RMD160_LIBC 0) 282 set(ARCHIVE_CRYPTO_RMD160_LIBMD 0) 283 set(ARCHIVE_CRYPTO_SHA1_LIBC 0) 284 set(ARCHIVE_CRYPTO_SHA1_LIBMD 0) 285 set(ARCHIVE_CRYPTO_SHA1_LIBSYSTEM 0) 286 set(ARCHIVE_CRYPTO_SHA1_WIN 1) 287 set(ARCHIVE_CRYPTO_SHA256_LIBC 0) 288 set(ARCHIVE_CRYPTO_SHA256_LIBC2 0) 289 set(ARCHIVE_CRYPTO_SHA256_LIBC3 0) 290 set(ARCHIVE_CRYPTO_SHA256_LIBMD 0) 291 set(ARCHIVE_CRYPTO_SHA256_LIBSYSTEM 0) 292 set(ARCHIVE_CRYPTO_SHA256_WIN 0) 293 set(ARCHIVE_CRYPTO_SHA384_LIBC 0) 294 set(ARCHIVE_CRYPTO_SHA384_LIBC2 0) 295 set(ARCHIVE_CRYPTO_SHA384_LIBC3 0) 296 set(ARCHIVE_CRYPTO_SHA384_LIBSYSTEM 0) 297 set(ARCHIVE_CRYPTO_SHA384_WIN 0) 298 set(ARCHIVE_CRYPTO_SHA512_LIBC 0) 299 set(ARCHIVE_CRYPTO_SHA512_LIBC2 0) 300 set(ARCHIVE_CRYPTO_SHA512_LIBC3 0) 301 set(ARCHIVE_CRYPTO_SHA512_LIBMD 0) 302 set(ARCHIVE_CRYPTO_SHA512_LIBSYSTEM 0) 303 set(ARCHIVE_CRYPTO_SHA512_WIN 0) 304endif() 305