From e021fe94449ca01f0ccbdfa0b20ea564f7b8d5f0 Mon Sep 17 00:00:00 2001
From: Daniel Stenberg <daniel@haxx.se>
Date: Tue, 13 Feb 2007 21:21:44 +0000
Subject: [PATCH] - Robert A. Monat made libcurl build fine with VC2005 - it
 doesn't have   gmtime_r() like the older VC versions. He also made use of
 some machine-   specific defines to differentiate the "OS" define.

---
 CHANGES            |  5 +++++
 lib/config-win32.h | 12 ++++++++++--
 2 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/CHANGES b/CHANGES
index 3ce6545fb8..e792913192 100644
--- a/CHANGES
+++ b/CHANGES
@@ -6,6 +6,11 @@
 
                                   Changelog
 
+Daniel (13 February 2007)
+- Robert A. Monat made libcurl build fine with VC2005 - it doesn't have
+  gmtime_r() like the older VC versions. He also made use of some machine-
+  specific defines to differentiate the "OS" define.
+
 Daniel (12 February 2007)
 - Rob Crittenden added support for NSS (Network Security Service) for the
   SSL/TLS layer. http://www.mozilla.org/projects/security/pki/nss/
diff --git a/lib/config-win32.h b/lib/config-win32.h
index b9703cfcf0..3e1721204b 100644
--- a/lib/config-win32.h
+++ b/lib/config-win32.h
@@ -352,8 +352,8 @@
 /* Undef keyword 'const' if it does not work.  */
 /* #undef const */
 
-#if defined(_MSC_VER) && (_MSC_VER > 1310)
-/* MSVC 2003 has gmtime_r */
+#if defined(_MSC_VER) && (_MSC_VER > 1310) && (_MSC_VER < 1400)
+/* MSVC 2003 has gmtime_r, MSVC 2005 doesn't */
 #define HAVE_GMTIME_R
 #endif
 
@@ -377,7 +377,15 @@
 
 /* Define cpu-machine-OS */
 #undef OS
+#if defined(_M_IX86) /* x86 */
 #define OS "i386-pc-win32"
+#elif defined(_M_IA64) /* Itanium */
+#define OS "ia64-pc-win32"
+#elif defined(_M_X64) /* AMD64/EM64T - Not defined until MSVC 2005 */
+#define OS "amd64-pc-win32"
+#else
+#define OS "unknown-pc-win32"
+#endif
 
 /* Name of package */
 #define PACKAGE "curl"
-- 
GitLab