r18907 - gnucash/trunk/src - MSVC compatiblity: Fix include files in MSVC. Replace QSTRCMP by g_strcmp0 on MSVC.

Christian Stimming cstim at code.gnucash.org
Sun Mar 14 17:02:13 EDT 2010


Author: cstim
Date: 2010-03-14 17:02:13 -0400 (Sun, 14 Mar 2010)
New Revision: 18907
Trac: http://svn.gnucash.org/trac/changeset/18907

Modified:
   gnucash/trunk/src/app-utils/file-utils.c
   gnucash/trunk/src/app-utils/guile-util.c
   gnucash/trunk/src/calculation/fin.c
   gnucash/trunk/src/libqof/qof/qofid.h
Log:
MSVC compatiblity: Fix include files in MSVC. Replace QSTRCMP by g_strcmp0 on MSVC.

Modified: gnucash/trunk/src/app-utils/file-utils.c
===================================================================
--- gnucash/trunk/src/app-utils/file-utils.c	2010-03-14 21:01:52 UTC (rev 18906)
+++ gnucash/trunk/src/app-utils/file-utils.c	2010-03-14 21:02:13 UTC (rev 18907)
@@ -29,7 +29,14 @@
 #include <string.h>
 #include <sys/stat.h>
 #include <sys/types.h>
-#include <unistd.h>
+#ifdef HAVE_UNISTD_H
+# include <unistd.h>
+#else
+# include <io.h>
+# define close _close
+# define lseek _lseek
+# define read _read
+#endif
 
 #include "guile-mappings.h"
 #include "file-utils.h"

Modified: gnucash/trunk/src/app-utils/guile-util.c
===================================================================
--- gnucash/trunk/src/app-utils/guile-util.c	2010-03-14 21:01:52 UTC (rev 18906)
+++ gnucash/trunk/src/app-utils/guile-util.c	2010-03-14 21:02:13 UTC (rev 18907)
@@ -27,7 +27,10 @@
 #include <libguile.h>
 #include <errno.h>
 #ifdef HAVE_UNISTD_H
-#include <unistd.h>
+# include <unistd.h>
+#else
+# include <io.h>
+# define close _close
 #endif
 #ifndef HAVE_STRPTIME
 #    include "strptime.h"

Modified: gnucash/trunk/src/calculation/fin.c
===================================================================
--- gnucash/trunk/src/calculation/fin.c	2010-03-14 21:01:52 UTC (rev 18906)
+++ gnucash/trunk/src/calculation/fin.c	2010-03-14 21:02:13 UTC (rev 18907)
@@ -1198,7 +1198,7 @@
 #include <stdio.h>
 #include <glib.h>
 #include <math.h>
-#ifdef G_OS_WIN32
+#if defined(G_OS_WIN32) && !defined(_MSC_VER)
 #include <pow.h>
 #endif
 #include <string.h>

Modified: gnucash/trunk/src/libqof/qof/qofid.h
===================================================================
--- gnucash/trunk/src/libqof/qof/qofid.h	2010-03-14 21:01:52 UTC (rev 18906)
+++ gnucash/trunk/src/libqof/qof/qofid.h	2010-03-14 21:02:13 UTC (rev 18907)
@@ -94,7 +94,8 @@
 #define QOF_ID_SESSION        "Session"
 
 /** Inline string comparision; compiler will optimize away most of this */
-#define QSTRCMP(da,db) ({                \
+#ifndef _MSC_VER
+# define QSTRCMP(da,db) ({                \
   gint val = 0;                          \
   if ((da) && (db)) {                    \
     if ((da) != (db)) {                  \
@@ -109,6 +110,10 @@
   }                                      \
   val; /* block assumes value of last statement */  \
 })
+#else
+/* MSVC: Simply use g_strcmp */
+# define QSTRCMP g_strcmp0
+#endif
 
 /** return TRUE if object is of the given type */
 #define QOF_CHECK_TYPE(obj,type) (((obj) != NULL) && \



More information about the gnucash-changes mailing list