/* The architecture this is running on */
#if defined(_M_IA64)
-#define ARCHITECTURE "ia64"
+#define MONO_ARCHITECTURE "ia64"
#elif defined(_M_AMD64)
-#define ARCHITECTURE "amd64"
+#define MONO_ARCHITECTURE "amd64"
#elif defined(_M_IX86)
-#define ARCHITECTURE "x86"
+#define MONO_ARCHITECTURE "x86"
#else
#error Unknown architecture
#endif
-#if _WIN32_WINNT < 0x0502
-#error "Mono requires WinXP SP2 or later"
-#endif /* _WIN32_WINNT < 0x0502 */
+#ifndef WINVER
+#define WINVER 0x0A00
+#endif
+
+#include <SDKDDKVer.h>
+
+#if _WIN32_WINNT < 0x0600
+#error "Mono requires Windows Vista or later"
+#endif /* _WIN32_WINNT < 0x0600 */
+
+#ifndef HAVE_WINAPI_FAMILY_SUPPORT
+
+#define HAVE_WINAPI_FAMILY_SUPPORT
+
+/* WIN API Family support */
+#include <winapifamily.h>
+
+#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
+ #define HAVE_CLASSIC_WINAPI_SUPPORT 1
+ #define HAVE_UWP_WINAPI_SUPPORT 0
+#elif WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
+ #define HAVE_CLASSIC_WINAPI_SUPPORT 0
+ #define HAVE_UWP_WINAPI_SUPPORT 1
+#ifndef HAVE_EXTERN_DEFINED_WINAPI_SUPPORT
+ #error Unsupported WINAPI family
+#endif
+#else
+ #define HAVE_CLASSIC_WINAPI_SUPPORT 0
+ #define HAVE_UWP_WINAPI_SUPPORT 0
+#ifndef HAVE_EXTERN_DEFINED_WINAPI_SUPPORT
+ #error Unsupported WINAPI family
+#endif
+#endif
+
+#endif
/*
* Features that are not required in the Windows port
/* Disable reflection emit support */
/* #undef DISABLE_REFLECTION_EMIT */
-/* Disable inter-process shared handles */
-/* #undef DISABLE_SHARED_HANDLES */
-
/* Disable advanced SSA JIT optimizations */
/* #undef DISABLE_SSA */
/* Define to 1 if you have the <checklist.h> header file. */
/* #undef HAVE_CHECKLIST_H */
+/* Define to 1 if you have the <complex.h> header file. */
+#define HAVE_COMPLEX_H 1
+
+/* Define to 1 if you have the `system' function. */
+#if HAVE_WINAPI_FAMILY_SUPPORT(HAVE_CLASSIC_WINAPI_SUPPORT)
+#define HAVE_SYSTEM 1
+#endif
+
+
/* Have /dev/random */
#define HAVE_CRYPT_RNG 1
/* Define to 1 if you have the `fstatvfs' function. */
/* #undef HAVE_FSTATVFS */
-/* Have GC_enable */
-/* #define HAVE_GC_ENABLE 1 */
-
-/* Have GC_gcj_malloc */
-/* #define HAVE_GC_GCJ_MALLOC 1 */
+/* Define to 1 if you have the `getaddrinfo' function. */
+#define HAVE_GETADDRINFO 1
-/* Define to 1 if you have the <gc/gc.h> header file. */
-/* #undef HAVE_GC_GC_H */
+/* Define to 1 if you have the `getnameinfo' function. */
+#define HAVE_GETNAMEINFO 1
-/* Have gc.h */
-/* #define HAVE_GC_H 1 */
+/* Define to 1 if you have the `getprotobyname' function. */
+#define HAVE_GETPROTOBYNAME 1
/* Define to 1 if you have the `getdomainname' function. */
/* #undef HAVE_GETDOMAINNAME */
/* #undef HAVE_INET_ATON */
/* Define to 1 if you have the `inet_pton' function. */
-/* #undef HAVE_INET_PTON */
+#define HAVE_INET_PTON 1
/* Define to 1 if you have the <inttypes.h> header file. */
#define HAVE_INTTYPES_H 1
/* No GC support. */
/* #undef HAVE_NULL_GC */
-/* Have oprofile support */
-/* #undef HAVE_OPROFILE */
-
/* Define to 1 if you have the `poll' function. */
/* #undef HAVE_POLL */
/* Using the simple generational GC. */
/* #undef HAVE_SGEN_GC */
+ /* Have signal */
+#define HAVE_SIGNAL 1
+
+ /* Define to 1 if you have the <signal.h> header file. */
+#define HAVE_SIGNAL_H 1
+
/* Have signbit */
/* #undef HAVE_SIGNBIT */
/* Define to 1 if you have the <wchar.h> header file. */
#define HAVE_WCHAR_H 1
+/* Define to 1 if you have IPv6 support. */
+#define HAVE_STRUCT_SOCKADDR_IN6 1
+
/* Have a working sigaltstack */
/* #undef HAVE_WORKING_SIGALTSTACK */
/* #undef USE_MONO_MUTEX */
/* Version number of package */
-#define VERSION "3.12.1"
+#define VERSION "#MONO_VERSION#"
+
+/* Version of the corlib-runtime interface */
+#define MONO_CORLIB_VERSION #MONO_CORLIB_VERSION#
+
#endif