Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKornél Pál <kornelpal@gmail.com>2008-03-20 14:21:49 +0300
committerKornél Pál <kornelpal@gmail.com>2008-03-20 14:21:49 +0300
commit5a5b001f5464e10ce8f49b96db6a54efab0d174c (patch)
tree23fc363841c2891c7b7018aa412c87417462b328 /winconfig.h
parent5f7aee49d371582700238c11960702d895c3121c (diff)
Moved Windows version macros to CPPFLAGS in configure.in from individual source files to ensure Windows version compatibility; winconfig.h: Added compile-time feature detection and support for 64-bit Windows versions. Updated VERSION to 1.9.
svn path=/trunk/mono/; revision=98664
Diffstat (limited to 'winconfig.h')
-rw-r--r--winconfig.h59
1 files changed, 50 insertions, 9 deletions
diff --git a/winconfig.h b/winconfig.h
index 072f3b86c43..1e3446e3548 100644
--- a/winconfig.h
+++ b/winconfig.h
@@ -1,5 +1,39 @@
/* config.h. Generated by configure. */
/* config.h.in. Generated from configure.in by autoheader. */
+
+/* Version macros for Windows SDK headers */
+#ifdef _WIN64
+#ifdef _M_IA64
+/* Windows XP 64-bit Edition (Itanium) is the first release that is based on Windows XP */
+#define WINVER 0x0501
+#define _WIN32_WINNT 0x0501
+/* Includes Internet Explorer 6.0 */
+#define _WIN32_IE 0x0600
+#else /* !_M_IA64 */
+/* Windows XP Professional x64 Edition is the first release that is based on Windows Server 2003 SP1 */
+#define WINVER 0x0502
+#define _WIN32_WINNT 0x0502
+/* Includes Internet Explorer 6.0 SP2 */
+#define _WIN32_IE 0x0603
+#endif /* _M_IA64 */
+#else /* !_WIN64 */
+/* Windows 2000 is required */
+#define WINVER 0x0500
+#define _WIN32_WINNT 0x0500
+/* Includes Internet Explorer 5.01 */
+#define _WIN32_IE 0x0501
+#endif /* _WIN64 */
+
+#ifndef _UNICODE
+#define _UNICODE
+#endif
+#ifndef UNICODE
+#define UNICODE
+#endif
+
+#define WIN32_THREADS
+#define FD_SETSIZE 1024
+
/* #undef HAVE_INET_PTON */
/* #undef HAVE_INET_ATON */
/* #undef HAVE_MSG_NOSIGNAL */
@@ -40,14 +74,19 @@
/* #undef HAVE_WORKING_SIGALTSTACK */
/* The architecture this is running on */
+#if defined(_M_IA64)
+#define ARCHITECTURE "ia64"
+#elif defined(_M_AMD64)
+#define ARCHITECTURE "amd64"
+#elif defined(_M_IX86)
#define ARCHITECTURE "x86"
+#else
+#error Unknown architecture
+#endif
/* String of disabled features */
#define DISABLED_FEATURES "none"
-/* Have GetProcessId */
-#define HAVE_GETPROCESSID 1
-
/* Disable AOT support */
/* #undef DISABLE_AOT */
@@ -151,7 +190,9 @@
/* #undef HAVE_GETGRNAM_R */
/* Define to 1 if you have the `GetProcessId' function. */
-/* #undef HAVE_GETPROCESSID */
+#if (_WIN32_WINNT >= 0x0502)
+#define HAVE_GETPROCESSID 1
+#endif
/* Define to 1 if you have the `getpwnam_r' function. */
/* #undef HAVE_GETPWNAM_R */
@@ -430,7 +471,11 @@
/* #undef SIZEOF_SIZE_T */
/* The size of a `void *', as computed by sizeof. */
+#ifdef _WIN64
+#define SIZEOF_VOID_P 8
+#else
#define SIZEOF_VOID_P 4
+#endif
/* Define to 1 if you have the ANSI C header files. */
#define STDC_HEADERS 1
@@ -439,8 +484,4 @@
#define USED_GC_NAME "Included Boehm (with typed GC)"
/* Version number of package */
-#define VERSION "1.2"
-
-#define WINVER 0x0500
-
-#define _WIN32_WINNT 0x0500 \ No newline at end of file
+#define VERSION "1.9"