r18545 - gnucash/trunk/src - Fix guile-1.6 compatibility of r18541 (bug#582325).

Christian Stimming cstim at code.gnucash.org
Mon Jan 4 15:21:22 EST 2010


Author: cstim
Date: 2010-01-04 15:21:22 -0500 (Mon, 04 Jan 2010)
New Revision: 18545
Trac: http://svn.gnucash.org/trac/changeset/18545

Modified:
   gnucash/trunk/src/app-utils/app-utils.i
   gnucash/trunk/src/app-utils/file-utils.c
   gnucash/trunk/src/business/business-core/business-core.i
   gnucash/trunk/src/business/business-core/gncBusGuile.c
   gnucash/trunk/src/core-utils/Makefile.am
   gnucash/trunk/src/core-utils/core-utils.i
   gnucash/trunk/src/engine/engine.i
   gnucash/trunk/src/engine/gnc-hooks.c
   gnucash/trunk/src/gnc-ui.h
   gnucash/trunk/src/gnome/gnome.i
   gnucash/trunk/src/guile-mappings.h
Log:
Fix guile-1.6 compatibility of r18541 (bug#582325).

We still suppport guile-1.6, hence we can use the functions
introduced in guile-1.8 only by providing our own backward compatibility
macro definitions in guile-mappings.h.

Modified: gnucash/trunk/src/app-utils/app-utils.i
===================================================================
--- gnucash/trunk/src/app-utils/app-utils.i	2010-01-04 20:18:21 UTC (rev 18544)
+++ gnucash/trunk/src/app-utils/app-utils.i	2010-01-04 20:21:22 UTC (rev 18545)
@@ -3,6 +3,7 @@
 /* Includes the header in the wrapper code */
 #include <config.h>
 #include <option-util.h>
+#include <guile-mappings.h>
 #include <gnc-euro.h>
 #include <gnc-exp-parser.h>
 #include <gnc-ui-util.h>

Modified: gnucash/trunk/src/app-utils/file-utils.c
===================================================================
--- gnucash/trunk/src/app-utils/file-utils.c	2010-01-04 20:18:21 UTC (rev 18544)
+++ gnucash/trunk/src/app-utils/file-utils.c	2010-01-04 20:21:22 UTC (rev 18545)
@@ -34,6 +34,7 @@
 #include <sys/types.h>
 #include <unistd.h>
 
+#include "guile-mappings.h"
 #include "file-utils.h"
 #include "gnc-engine.h"
 #include "gnc-filepath-utils.h"

Modified: gnucash/trunk/src/business/business-core/business-core.i
===================================================================
--- gnucash/trunk/src/business/business-core/business-core.i	2010-01-04 20:18:21 UTC (rev 18544)
+++ gnucash/trunk/src/business/business-core/business-core.i	2010-01-04 20:21:22 UTC (rev 18545)
@@ -2,6 +2,7 @@
 %{
 /* Includes the header in the wrapper code */
 #include <config.h>
+#include <guile-mappings.h>
 #include <gncAddress.h>
 #include <gncBillTerm.h>
 #include <gncCustomer.h>

Modified: gnucash/trunk/src/business/business-core/gncBusGuile.c
===================================================================
--- gnucash/trunk/src/business/business-core/gncBusGuile.c	2010-01-04 20:18:21 UTC (rev 18544)
+++ gnucash/trunk/src/business/business-core/gncBusGuile.c	2010-01-04 20:21:22 UTC (rev 18545)
@@ -26,6 +26,7 @@
 #include "gncBusGuile.h"
 #include "engine-helpers.h"
 #include "swig-runtime.h"
+#include "guile-mappings.h"
 #define FUNC_NAME G_STRFUNC
 
 static swig_type_info *

Modified: gnucash/trunk/src/core-utils/Makefile.am
===================================================================
--- gnucash/trunk/src/core-utils/Makefile.am	2010-01-04 20:18:21 UTC (rev 18544)
+++ gnucash/trunk/src/core-utils/Makefile.am	2010-01-04 20:21:22 UTC (rev 18545)
@@ -35,8 +35,10 @@
   ${GUILE_INCS} \
   ${GLIB_CFLAGS} \
   ${GCONF_CFLAGS} \
-  ${GTK_CFLAGS}
+  ${GTK_CFLAGS} \
+  -I${top_srcdir}/src
 
+
 gncmoddir = ${GNC_SHAREDIR}/guile-modules/gnucash
 gncmod_DATA = core-utils.scm
 

Modified: gnucash/trunk/src/core-utils/core-utils.i
===================================================================
--- gnucash/trunk/src/core-utils/core-utils.i	2010-01-04 20:18:21 UTC (rev 18544)
+++ gnucash/trunk/src/core-utils/core-utils.i	2010-01-04 20:21:22 UTC (rev 18545)
@@ -1,5 +1,6 @@
 %module sw_core_utils
 %{
+#include <guile-mappings.h>
 #include <gnc-glib-utils.h>
 #include <gnc-main.h>
 #include <glib.h>

Modified: gnucash/trunk/src/engine/engine.i
===================================================================
--- gnucash/trunk/src/engine/engine.i	2010-01-04 20:18:21 UTC (rev 18544)
+++ gnucash/trunk/src/engine/engine.i	2010-01-04 20:21:22 UTC (rev 18545)
@@ -5,6 +5,7 @@
 #include <glib.h>
 #include <qof.h>
 #include <Query.h>
+#include <guile-mappings.h>
 #include <gnc-budget.h>
 #include <gnc-commodity.h>
 #include <gnc-engine.h>

Modified: gnucash/trunk/src/engine/gnc-hooks.c
===================================================================
--- gnucash/trunk/src/engine/gnc-hooks.c	2010-01-04 20:18:21 UTC (rev 18544)
+++ gnucash/trunk/src/engine/gnc-hooks.c	2010-01-04 20:21:22 UTC (rev 18545)
@@ -26,6 +26,7 @@
 #include <glib.h>
 #include <stdio.h>
 #include <libguile.h>
+#include <guile-mappings.h>
 #include "swig-runtime.h"
 #include "gnc-hooks.h"
 #include "gnc-hooks-scm.h"

Modified: gnucash/trunk/src/gnc-ui.h
===================================================================
--- gnucash/trunk/src/gnc-ui.h	2010-01-04 20:18:21 UTC (rev 18544)
+++ gnucash/trunk/src/gnc-ui.h	2010-01-04 20:21:22 UTC (rev 18545)
@@ -36,6 +36,7 @@
 #include "gnc-ui-common.h"
 #include "Account.h"
 #include "gnc-pricedb.h"
+#include "guile-mappings.h"
 
 
 /** Help Files ******************************************************/

Modified: gnucash/trunk/src/gnome/gnome.i
===================================================================
--- gnucash/trunk/src/gnome/gnome.i	2010-01-04 20:18:21 UTC (rev 18544)
+++ gnucash/trunk/src/gnome/gnome.i	2010-01-04 20:21:22 UTC (rev 18545)
@@ -4,6 +4,7 @@
 #include <config.h>
 #include <gtk/gtk.h>
 #include <dialog-progress.h>
+#include "guile-mappings.h"
 
 SCM scm_init_sw_gnome_module (void);
 %}

Modified: gnucash/trunk/src/guile-mappings.h
===================================================================
--- gnucash/trunk/src/guile-mappings.h	2010-01-04 20:18:21 UTC (rev 18544)
+++ gnucash/trunk/src/guile-mappings.h	2010-01-04 20:21:22 UTC (rev 18545)
@@ -17,6 +17,24 @@
  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.        *
 \********************************************************************/
 
+#include <libguile/version.h> /* for SCM_MAJOR_VERSION etc */
+
+/* Backward-compatibility macros for guile-1.6 for functions which
+   were introduced in libguile-1.8.0 */
+#if (SCM_MAJOR_VERSION == 1) && (SCM_MINOR_VERSION <= 6)
+# define scm_is_bool SCM_BOOLP
+# define scm_is_false SCM_FALSEP
+# define scm_is_null SCM_NULLP
+# define scm_is_number SCM_NUMBERP
+# define scm_is_pair SCM_CONSP
+# define scm_is_string SCM_STRINGP
+# define scm_is_symbol SCM_SYMBOLP
+# define scm_is_true SCM_NFALSEP
+# define scm_is_vector SCM_VECTORP
+# define scm_to_locale_string SCM_STRING_CHARS
+# define scm_i_string_length SCM_STRING_LENGTH
+#endif
+
 /* Convenience macros */
 
 #define scm_is_equal(obj1,obj2)	scm_is_true(scm_equal_p(obj1,obj2))



More information about the gnucash-changes mailing list