2009-11-16 Halton Huo <[email protected]>
authornonsea
Mon, 16 Nov 2009 10:03:03 +0000
changeset 2240 3339261b2f69
parent 2239 226e691ece4b
child 2241 761a387023f7
2009-11-16 Halton Huo <[email protected]> * SFEgnucash.spec: use SUNWguile * base-specs/gnucash.spec: bump to 2.3.7 * patches/gnucash-01-inline.diff: rename from -03 * patches/gnucash-01-suncc-function.diff: remove upstreamed patch * patches/gnucash-02-gcc.diff: fix bugzilla #602062 * patches/gnucash-02-namely-struct.diff: remove upstreamed patch * patches/gnucash-03-gmp-inc.diff: fix bugzilla #602069 * patches/gnucash-03-inline.diff: * patches/gnucash-04-configure-fail.diff: remove upstreamed patch * patches/gnucash-04-void-return.diff: fix bugzilla #602070 * patches/gnucash-05-solaris-sh.diff: remove upstreamed patch * patches/gnucash-05-solaris-guile.diff: fix solaris guile issue
ChangeLog
SFEgnucash.spec
base-specs/gnucash.spec
patches/gnucash-01-inline.diff
patches/gnucash-01-suncc-function.diff
patches/gnucash-02-gcc.diff
patches/gnucash-02-namely-struct.diff
patches/gnucash-03-gmp-inc.diff
patches/gnucash-03-inline.diff
patches/gnucash-04-configure-fail.diff
patches/gnucash-04-void-return.diff
patches/gnucash-05-solaris-sh.diff
--- a/ChangeLog	Sat Nov 14 22:15:34 2009 +0000
+++ b/ChangeLog	Mon Nov 16 10:03:03 2009 +0000
@@ -1,3 +1,18 @@
+2009-11-16  Halton Huo  <[email protected]>
+
+	* SFEgnucash.spec: use SUNWguile
+	* base-specs/gnucash.spec: bump to 2.3.7
+	* patches/gnucash-01-inline.diff: rename from -03
+	* patches/gnucash-01-suncc-function.diff: remove upstreamed patch
+	* patches/gnucash-02-gcc.diff: fix bugzilla #602062
+	* patches/gnucash-02-namely-struct.diff: remove upstreamed patch
+	* patches/gnucash-03-gmp-inc.diff: fix bugzilla #602069
+	* patches/gnucash-03-inline.diff:
+	* patches/gnucash-04-configure-fail.diff: remove upstreamed patch
+	* patches/gnucash-04-void-return.diff: fix bugzilla #602070
+	* patches/gnucash-05-solaris-sh.diff: remove upstreamed patch
+	* patches/gnucash-05-solaris-guile.diff: fix solaris guile issue
+
 2009-11-14  Albert Lee  <[email protected]>
 
 	* SFEjson-glib.spec: Bump to 0.8.2. Drop patch1. Update source URL,
--- a/SFEgnucash.spec	Sat Nov 14 22:15:34 2009 +0000
+++ b/SFEgnucash.spec	Mon Nov 16 10:03:03 2009 +0000
@@ -3,7 +3,7 @@
 #
 # includes module(s): gnucash
 #
-# Copyright 2008 Sun Microsystems, Inc.
+# Copyright 2009 Sun Microsystems, Inc.
 # This file and all modifications and additions to the pristine
 # package are under the same license as the package itself.
 #
@@ -29,18 +29,18 @@
 #  Cannot find SLIB.  Are you sure you have it installed?
 #  See http://bugzilla.gnome.org/show_bug.cgi?id=347922
 #  and http://bugzilla.gnome.org/show_bug.cgi?id=483631
-# workaround is run following command as:
+# workaround is run following command as root:
 # ln -s /usr/lib/slib /usr/share/guile/1.8/slib
+# mkdir /usr/share/guile/site/
 # guile -c "(use-modules (ice-9 slib)) (require 'new-catalog)"
 Requires:           SUNWslib
 Requires:           SUNWlibgoffice
-Requires:           SFEguile
+Requires:           SUNWguile
 BuildRequires:      SUNWgnome-libs-devel
 BuildRequires:      SUNWlibgoffice-devel
 BuildRequires:      SUNWperl-xml-parser
 BuildRequires:      SUNWlxsl
 BuildRequires:      SUNWswig
-BuildRequires:      SFEguile-devel
 
 %package devel
 Summary:            %{summary} - development files
@@ -48,7 +48,6 @@
 %include default-depend.inc
 Requires: %name
 
-
 %if %build_l10n
 %package l10n
 Summary:            %{summary} - l10n files
@@ -183,6 +182,8 @@
 
 
 %changelog
+* Mon Nov 16 2009 - [email protected]
+- guile integrate into snv_125, use SUNWguile 
 * Mon Oct 20 2008 - [email protected]
 - swig integrate into snv_100, rename SFEswig to SUNWswig
 - slib integrate into snv_93, rename SFEslib to SUNWslib
--- a/base-specs/gnucash.spec	Sat Nov 14 22:15:34 2009 +0000
+++ b/base-specs/gnucash.spec	Mon Nov 16 10:03:03 2009 +0000
@@ -1,7 +1,7 @@
 #
 # spec file for package gnucash
 #
-# Copyright 2008 Sun Microsystems, Inc.
+# Copyright 2009 Sun Microsystems, Inc.
 # This file and all modifications and additions to the pristine
 # package are under the same license as the package itself.
 #
@@ -13,22 +13,22 @@
 Summary:        GnuCash is an application to keep track of your finances.
 License:        GPL
 Group:          Office
-Version:        2.2.7
+Version:        2.3.7
 Release:        1
 Distribution:   Java Desktop System
 Vendor:         Sun Microsystems, Inc.
 URL:            http://www.gnucash.org/
-Source:         http://www.gnucash.org/pub/gnucash/sources/stable/%{name}-%{version}.tar.bz2
-# date:2008-06-24 owner:halton type:bug bugzilla:539947
-Patch1:         %{name}-01-suncc-function.diff
-# date:2008-06-24 owner:halton type:bug bugzilla:539957
-Patch2:         %{name}-02-namely-struct.diff
+Source:         http://www.gnucash.org/pub/gnucash/sources/unstable/2.3.x/%{name}-%{version}.tar.bz2
 # date:2008-06-25 owner:halton type:bug bugzilla:540452
-Patch3:         %{name}-03-inline.diff
-# date:2008-06-27 owner:halton type:bug  bugzilla:539942
-Patch4:         %{name}-04-configure-fail.diff
-# date:2008-08-22 owner:halton type:bug  bugzilla:548218
-Patch5:         %{name}-05-solaris-sh.diff
+Patch1:         %{name}-01-inline.diff
+# date:2009-11-16 owner:halton type:bug bugzilla:602062
+Patch2:         %{name}-02-gcc.diff
+# date:2009-11-16 owner:halton type:bug bugzilla:602069
+Patch3:         %{name}-03-gmp-inc.diff
+# date:2009-11-16 owner:halton type:bug bugzilla:602070
+Patch4:         %{name}-04-void-return.diff
+# date:2009-11-16 owner:halton type:branding
+Patch5:         %{name}-05-solaris-guile.diff
 BuildRoot:      %{tmpdir}/%{name}-%{version}-root
 
 Requires:       libgnomeui >= %{libgnomeui_version}
@@ -162,6 +162,14 @@
 %{_includedir}/gnucash
 
 %changelog
+* Mon Nov 16 2009 - [email protected]
+- Bump to 2.3.7
+- Remove upstreamed patches: suncc-function.diff, namely-struct.diff and
+  configure-fail.diff and solaris-sh.diff
+- Add patch gcc.diff to fix bugzilla #602062.
+- Add patch gmp-inc.diff to fix bugzilla #602069.
+- Add patch void-return.diff to fix bugzilla #602070.
+- Add patch solaris-guile.diff to fix solaris guile issue.
 * Mon Oct 20 2008 - [email protected]
 - Bump to 2.2.7
 - Remove upstreamed patches: void-return.diff, libgoffice-0.8.diff and reorder
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/gnucash-01-inline.diff	Mon Nov 16 10:03:03 2009 +0000
@@ -0,0 +1,164 @@
+Index: gnucash/src/libqof/qof/qofmath128.c
+===================================================================
+--- gnucash/src/libqof/qof/qofmath128.c	(revision 18412)
++++ gnucash/src/libqof/qof/qofmath128.c	(working copy)
+@@ -37,7 +37,7 @@
+ /** Multiply a pair of signed 64-bit numbers,
+  *  returning a signed 128-bit number.
+  */
+-inline qofint128
++qofint128
+ mult128 (gint64 a, gint64 b)
+ {
+     qofint128 prod;
+@@ -106,7 +106,7 @@
+ }
+ 
+ /** Shift right by one bit (i.e. divide by two) */
+-inline qofint128
++qofint128
+ shift128 (qofint128 x)
+ {
+     guint64 sbit = x.hi & 0x1;
+@@ -127,7 +127,7 @@
+ }
+ 
+ /** Shift leftt by one bit (i.e. multiply by two) */
+-inline qofint128
++qofint128
+ shiftleft128 (qofint128 x)
+ {
+     guint64 sbit;
+@@ -149,7 +149,7 @@
+ }
+ 
+ /** increment a 128-bit number by one */
+-inline qofint128
++qofint128
+ inc128 (qofint128 a)
+ {
+     if (0 == a.isneg)
+@@ -176,7 +176,7 @@
+ /** Divide a signed 128-bit number by a signed 64-bit,
+  *  returning a signed 128-bit number.
+  */
+-inline qofint128
++qofint128
+ div128 (qofint128 n, gint64 d)
+ {
+     qofint128 quotient;
+@@ -215,7 +215,7 @@
+  *  I beleive that ths algo is overflow-free, but should be
+  *  audited some more ...
+  */
+-inline gint64
++gint64
+ rem128 (qofint128 n, gint64 d)
+ {
+     qofint128 quotient = div128 (n, d);
+@@ -228,7 +228,7 @@
+ }
+ 
+ /** Return true of two numbers are equal */
+-inline gboolean
++gboolean
+ equal128 (qofint128 a, qofint128 b)
+ {
+     if (a.lo != b.lo) return 0;
+@@ -238,7 +238,7 @@
+ }
+ 
+ /** Return returns 1 if a>b, -1 if b>a, 0 if a == b */
+-inline int
++int
+ cmp128 (qofint128 a, qofint128 b)
+ {
+     if ((0 == a.isneg) && b.isneg) return 1;
+@@ -260,7 +260,7 @@
+ }
+ 
+ /** Return the greatest common factor of two 64-bit numbers */
+-inline guint64
++guint64
+ gcf64(guint64 num, guint64 denom)
+ {
+     guint64   t;
+@@ -281,7 +281,7 @@
+ }
+ 
+ /** Return the least common multiple of two 64-bit numbers. */
+-inline qofint128
++qofint128
+ lcm128 (guint64 a, guint64 b)
+ {
+     guint64 gcf = gcf64 (a, b);
+@@ -290,7 +290,7 @@
+ }
+ 
+ /** Add a pair of 128-bit numbers, returning a 128-bit number */
+-inline qofint128
++qofint128
+ add128 (qofint128 a, qofint128 b)
+ {
+     qofint128 sum;
+Index: gnucash/src/libqof/qof/qofmath128.h
+===================================================================
+--- gnucash/src/libqof/qof/qofmath128.h	(revision 18412)
++++ gnucash/src/libqof/qof/qofmath128.h	(working copy)
+@@ -41,45 +41,45 @@
+ } qofint128;
+ 
+ /** Return true of two numbers are equal */
+-inline gboolean equal128 (qofint128 a, qofint128 b);
++gboolean equal128 (qofint128 a, qofint128 b);
+ 
+ /** Return returns 1 if a>b, -1 if b>a, 0 if a == b */
+-inline int cmp128 (qofint128 a, qofint128 b);
++int cmp128 (qofint128 a, qofint128 b);
+ 
+ /** Shift right by one bit (i.e. divide by two) */
+-inline qofint128 shift128 (qofint128 x);
++qofint128 shift128 (qofint128 x);
+ 
+ /** Shift left by one bit (i.e. multiply by two) */
+-inline qofint128 shiftleft128 (qofint128 x);
++qofint128 shiftleft128 (qofint128 x);
+ 
+ /** Increment by one */
+-inline qofint128 inc128 (qofint128 a);
++qofint128 inc128 (qofint128 a);
+ 
+ /** Add a pair of 128-bit numbers, returning a 128-bit number */
+-inline qofint128 add128 (qofint128 a, qofint128 b);
++qofint128 add128 (qofint128 a, qofint128 b);
+ 
+ /** Multiply a pair of signed 64-bit numbers,
+  *  returning a signed 128-bit number.
+  */
+-inline qofint128 mult128 (gint64 a, gint64 b);
++qofint128 mult128 (gint64 a, gint64 b);
+ 
+ /** Divide a signed 128-bit number by a signed 64-bit,
+  *  returning a signed 128-bit number.
+  */
+-inline qofint128 div128 (qofint128 n, gint64 d);
++qofint128 div128 (qofint128 n, gint64 d);
+ 
+ /** Return the remainder of a signed 128-bit number modulo
+  *  a signed 64-bit.  That is, return n%d in 128-bit math.
+  *  I beleive that ths algo is overflow-free, but should be
+  *  audited some more ...
+  */
+-inline gint64 rem128 (qofint128 n, gint64 d);
++gint64 rem128 (qofint128 n, gint64 d);
+ 
+ /** Return the greatest common factor of two 64-bit numbers */
+-inline guint64 gcf64(guint64 num, guint64 denom);
++guint64 gcf64(guint64 num, guint64 denom);
+ 
+ /** Return the least common multiple of two 64-bit numbers. */
+-inline qofint128 lcm128 (guint64 a, guint64 b);
++qofint128 lcm128 (guint64 a, guint64 b);
+ 
+ #endif
+ 
--- a/patches/gnucash-01-suncc-function.diff	Sat Nov 14 22:15:34 2009 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,672 +0,0 @@
-Index: trunk/src/core-utils/gnc-gobject-utils.c
-===================================================================
---- trunk/src/core-utils/gnc-gobject-utils.c	(revision 17250)
-+++ trunk/src/core-utils/gnc-gobject-utils.c	(working copy)
-@@ -71,9 +71,9 @@
- static void
- gnc_gobject_dump_gobject (GObject *object, const gchar *name)
- {
--  //printf("Enter %s: object %p, name %s\n", __FUNCTION__, object, name);
-+  //printf("Enter %s: object %p, name %s\n", G_STRFUNC, object, name);
-   g_message("    object %p, ref count %d", object, object->ref_count);
--  //printf("Leave %s:\n", __FUNCTION__);
-+  //printf("Leave %s:\n", G_STRFUNC);
- }
- 
- 
-@@ -86,10 +86,10 @@
- static gboolean
- gnc_gobject_dump_list (const gchar *name, GList *list, gpointer user_data)
- {
--  //printf("Enter %s: name %s, list %p\n", __FUNCTION__, name, list);
-+  //printf("Enter %s: name %s, list %p\n", G_STRFUNC, name, list);
-   g_message("  %d %s", g_list_length(list), name);
-   g_list_foreach(list, (GFunc)gnc_gobject_dump_gobject, (gpointer)name);
--  //printf("Leave %s:\n", __FUNCTION__);
-+  //printf("Leave %s:\n", G_STRFUNC);
-   return TRUE;
- }
- 
-@@ -105,14 +105,14 @@
- {
-   GHashTable *table;
- 
--  //printf("Enter %s:\n", __FUNCTION__);
-+  //printf("Enter %s:\n", G_STRFUNC);
-   table = gnc_gobject_tracking_table();
- 
-   if (g_hash_table_size(table) > 0) {
-     g_message("The following objects remain alive:");
-     g_hash_table_foreach_remove(table, (GHRFunc)gnc_gobject_dump_list, NULL);
-   }
--  //printf("Leave %s:\n", __FUNCTION__);
-+  //printf("Leave %s:\n", G_STRFUNC);
- }
- 
- 
-@@ -135,13 +135,13 @@
-     klass = G_OBJECT_GET_CLASS(object);
-   name = g_type_name(G_TYPE_FROM_CLASS(klass));
- 
--  //printf("Enter %s: object %p of type %s\n", __FUNCTION__, object, name);
-+  //printf("Enter %s: object %p of type %s\n", G_STRFUNC, object, name);
-   table = gnc_gobject_tracking_table();
-   list = g_hash_table_lookup(table, name);
- 
-   if (g_list_index(list, object) != -1) {
-     g_critical("Object %p is already in list of %s", object, name);
--    //printf("Leave %s: already in list\n", __FUNCTION__);
-+    //printf("Leave %s: already in list\n", G_STRFUNC);
-     return;
-   }
- 
-@@ -149,7 +149,7 @@
-   g_hash_table_insert(table, g_strdup(name), list);
- 
-   g_object_weak_ref(object, gnc_gobject_weak_cb, NULL);
--  //printf("Leave %s:\n", __FUNCTION__);
-+  //printf("Leave %s:\n", G_STRFUNC);
- }
- 
- 
-@@ -163,17 +163,17 @@
-   g_return_val_if_fail(G_IS_OBJECT(object), FALSE);
- 
-   name = G_OBJECT_TYPE_NAME(object);
--  //printf("Enter %s: object %p of type %s\n", __FUNCTION__, object, name);
-+  //printf("Enter %s: object %p of type %s\n", G_STRFUNC, object, name);
-   table = gnc_gobject_tracking_table();
-   list = g_hash_table_lookup(table, name);
-   if (!list) {
--    //printf("Leave %s: list for %s objects not found.\n", __FUNCTION__, name);
-+    //printf("Leave %s: list for %s objects not found.\n", G_STRFUNC, name);
-     return FALSE;
-   }
- 
-   item = g_list_find(list, object);
-   if (!item) {
--    //printf("Leave %s: object %p not in %s object list.\n", __FUNCTION__,
-+    //printf("Leave %s: object %p not in %s object list.\n", G_STRFUNC,
-     //       object, name);
-     return FALSE;
-   }
-@@ -181,10 +181,10 @@
-   list = g_list_remove_link(list, item);
-   if (list) {
-     g_hash_table_replace(table, g_strdup(name), list);
--    //printf("Leave %s: object removed.\n", __FUNCTION__);
-+    //printf("Leave %s: object removed.\n", G_STRFUNC);
-   } else {
-     g_hash_table_remove(table, name);
--    //printf("Leave %s: object and list removed.\n", __FUNCTION__);
-+    //printf("Leave %s: object and list removed.\n", G_STRFUNC);
-   }
-   return TRUE;
- }
-@@ -224,9 +224,9 @@
-   GHashTable *table;
-   GList *list;
- 
--  //printf("Enter %s: name %s\n", __FUNCTION__, name);
-+  //printf("Enter %s: name %s\n", G_STRFUNC, name);
-   table = gnc_gobject_tracking_table();
-   list = g_hash_table_lookup(table, name);
--  //printf("Leave %s: list %p\n", __FUNCTION__, list);
-+  //printf("Leave %s: list %p\n", G_STRFUNC, list);
-   return list;
- }
-Index: trunk/src/backend/file/sixtp-utils.c
-===================================================================
---- trunk/src/backend/file/sixtp-utils.c	(revision 17250)
-+++ trunk/src/backend/file/sixtp-utils.c	(working copy)
-@@ -183,7 +183,7 @@
-       return(FALSE);
-     }
-   
--    *result = scm_num2dbl(conversion_result, __FUNCTION__);
-+    *result = scm_num2dbl(conversion_result, G_STRFUNC);
-   } 
-   
- #else /* don't USE_GUILE_FOR_DOUBLE_CONVERSION */
-Index: trunk/lib/libqof/qof/qoflog.h
-===================================================================
---- trunk/lib/libqof/qof/qoflog.h	(revision 17250)
-+++ trunk/lib/libqof/qof/qoflog.h	(working copy)
-@@ -165,7 +165,7 @@
- /** Set the default level for QOF-related log paths. **/
- void qof_log_set_default(QofLogLevel log_level);
- 
--#define PRETTY_FUNC_NAME qof_log_prettify(__FUNCTION__)
-+#define PRETTY_FUNC_NAME qof_log_prettify(G_STRFUNC)
- 
- /** Log a fatal error */
- #define FATAL(format, args...) do { \
-@@ -254,21 +254,21 @@
- #define START_CLOCK(clockno,format, args...) do {        \
-   if (qof_log_check (log_module, QOF_LOG_INFO))          \
-     qof_start_clock (clockno, log_module, QOF_LOG_INFO,  \
--             __FUNCTION__, format , ## args);               \
-+             G_STRFUNC, format , ## args);               \
- } while (0)
- 
- /** report elapsed time since last report on a particular timer */
- #define REPORT_CLOCK(clockno,format, args...) do {       \
-   if (qof_log_check (log_module, QOF_LOG_INFO))          \
-     qof_report_clock (clockno, log_module, QOF_LOG_INFO, \
--             __FUNCTION__, format , ## args);               \
-+             G_STRFUNC, format , ## args);               \
- } while (0)
- 
- /** report total elapsed time since timer started */
- #define REPORT_CLOCK_TOTAL(clockno,format, args...) do {       \
-   if (qof_log_check (log_module, QOF_LOG_INFO))                \
-     qof_report_clock_total (clockno, log_module, QOF_LOG_INFO, \
--             __FUNCTION__, format , ## args);               \
-+             G_STRFUNC, format , ## args);               \
- } while (0)
- 
- 
-Index: trunk/src/engine/kvp-scm.c
-===================================================================
---- trunk/src/engine/kvp-scm.c	(revision 17250)
-+++ trunk/src/engine/kvp-scm.c	(working copy)
-@@ -32,7 +32,7 @@
-         }
-         else 
-         {
--            return kvp_value_new_double(scm_num2dbl(val, __FUNCTION__));
-+            return kvp_value_new_double(scm_num2dbl(val, G_STRFUNC));
-         }
-     }
-     else if(gnc_numeric_p(val))
-@@ -59,7 +59,7 @@
-     }
-     else if(SWIG_IsPointerOfType(val, SWIG_TypeQuery("_p_KvpFrame")))
-     {
--        #define FUNC_NAME __FUNCTION__
-+        #define FUNC_NAME G_STRFUNC
-         KvpFrame *frame = SWIG_MustGetPtr(val, SWIG_TypeQuery("_p_KvpFrame"),
-                                           1, 0);
-         #undef FUNC_NAME
-Index: trunk/src/engine/engine-helpers.c
-===================================================================
---- trunk/src/engine/engine-helpers.c	(revision 17250)
-+++ trunk/src/engine/engine-helpers.c	(working copy)
-@@ -42,7 +42,7 @@
- #include "qofquery-p.h"
- #include "qofquerycore-p.h"
- 
--#define FUNC_NAME __FUNCTION__
-+#define FUNC_NAME G_STRFUNC
- 
- static QofLogModule log_module = GNC_MOD_ENGINE;
- 
-@@ -106,7 +106,7 @@
-   if (gnc_timepair_p (x))
-   {
-     result.tv_sec = gnc_scm_to_gint64(SCM_CAR(x));
--    result.tv_nsec = scm_num2long(SCM_CDR(x), SCM_ARG1, __FUNCTION__);
-+    result.tv_nsec = scm_num2long(SCM_CDR(x), SCM_ARG1, G_STRFUNC);
-   }
-   return(result);
- }
-@@ -203,42 +203,42 @@
- static QofQueryCompare
- gnc_query_scm2compare (SCM how_scm)
- {
--  return scm_num2int(how_scm, SCM_ARG1, __FUNCTION__);
-+  return scm_num2int(how_scm, SCM_ARG1, G_STRFUNC);
- }
- 
- /* QofStringMatch */
- static QofStringMatch
- gnc_query_scm2string (SCM how_scm)
- {
--  return scm_num2int(how_scm, SCM_ARG1, __FUNCTION__);
-+  return scm_num2int(how_scm, SCM_ARG1, G_STRFUNC);
- }
- 
- /* QofDateMatch */
- static QofDateMatch
- gnc_query_scm2date (SCM how_scm)
- {
--  return scm_num2int(how_scm, SCM_ARG1, __FUNCTION__);
-+  return scm_num2int(how_scm, SCM_ARG1, G_STRFUNC);
- }
- 
- /* QofNumericMatch */
- static QofNumericMatch
- gnc_query_scm2numericop (SCM how_scm)
- {
--  return scm_num2int(how_scm, SCM_ARG1, __FUNCTION__);
-+  return scm_num2int(how_scm, SCM_ARG1, G_STRFUNC);
- }
- 
- /* QofGuidMatch */
- static QofGuidMatch
- gnc_query_scm2guid (SCM how_scm)
- {
--  return scm_num2int(how_scm, SCM_ARG1, __FUNCTION__);
-+  return scm_num2int(how_scm, SCM_ARG1, G_STRFUNC);
- }
- 
- /* QofCharMatch */
- static QofCharMatch
- gnc_query_scm2char (SCM how_scm)
- {
--  return scm_num2int(how_scm, SCM_ARG1, __FUNCTION__);
-+  return scm_num2int(how_scm, SCM_ARG1, G_STRFUNC);
- }
- 
- static QofGuidMatch
-@@ -319,7 +319,7 @@
-     scm = SCM_CAR (field_scm);
-     field_scm = SCM_CDR (field_scm);
- 
--    bit = scm_num2int(scm, SCM_ARG2, __FUNCTION__);
-+    bit = scm_num2int(scm, SCM_ARG2, G_STRFUNC);
-     field |= bit;
-   }
- 
-@@ -516,7 +516,7 @@
- static KvpValueType
- gnc_scm2KvpValueTypeype (SCM value_type_scm)
- {
--  return scm_num2int(value_type_scm, SCM_ARG1, __FUNCTION__);
-+  return scm_num2int(value_type_scm, SCM_ARG1, G_STRFUNC);
- }
- 
- static SCM gnc_kvp_frame2scm (KvpFrame *frame);
-@@ -653,7 +653,7 @@
-       break;
- 
-     case KVP_TYPE_DOUBLE:
--      value = kvp_value_new_double (scm_num2dbl (val_scm, __FUNCTION__));
-+      value = kvp_value_new_double (scm_num2dbl (val_scm, G_STRFUNC));
-       break;
- 
-     case KVP_TYPE_STRING: {
-@@ -988,7 +988,7 @@
-       qt_scm = SCM_CDR (qt_scm);
-       if (!SCM_NUMBERP (scm))
-         break;
--      val = scm_num2dbl (scm, __FUNCTION__);
-+      val = scm_num2dbl (scm, G_STRFUNC);
- 
-       pd = qof_query_double_predicate (compare_how, val);
- 
-@@ -1179,7 +1179,7 @@
-         break;
-       scm = SCM_CAR (query_term_scm);
-       query_term_scm = SCM_CDR (query_term_scm);
--      amount = scm_num2dbl (scm, __FUNCTION__);
-+      amount = scm_num2dbl (scm, G_STRFUNC);
- 
-       val = double_to_gnc_numeric (amount, GNC_DENOM_AUTO, 
-                        GNC_HOW_DENOM_SIGFIGS(6) | GNC_HOW_RND_ROUND);
-@@ -1573,7 +1573,7 @@
-     gnc_query_path_free (p);
-     return FALSE;
-   }
--  o = scm_num2int (val, SCM_ARG1, __FUNCTION__);
-+  o = scm_num2int (val, SCM_ARG1, G_STRFUNC);
- 
-   /* increasing */
-   val = SCM_CAR (sort_scm);
-@@ -1813,7 +1813,7 @@
-         break;
-       }
- 
--      max_splits = scm_num2int (value, SCM_ARG1, __FUNCTION__);
-+      max_splits = scm_num2int (value, SCM_ARG1, G_STRFUNC);
- 
-     } else {
-       PERR ("Unknown symbol: %s", symbol);
-@@ -1925,7 +1925,7 @@
-         break;
-       }
- 
--      max_results = scm_num2int (value, SCM_ARG1, __FUNCTION__);
-+      max_results = scm_num2int (value, SCM_ARG1, G_STRFUNC);
- 
-     } else {
-       ok = FALSE;
-@@ -2047,7 +2047,7 @@
-    */
-   for (i = 48; i >=0; i-= 16) {
-     bits = scm_ash(magnitude, SCM_MAKINUM(-i));
--    c_bits = scm_num2ulong(scm_logand(bits, bits00to15_mask), SCM_ARG1, __FUNCTION__);
-+    c_bits = scm_num2ulong(scm_logand(bits, bits00to15_mask), SCM_ARG1, G_STRFUNC);
-     c_result += ((long long)c_bits << i);
-     magnitude = scm_difference(magnitude, scm_ash(bits, SCM_MAKINUM(i)));
-   }
-Index: trunk/src/app-utils/gnc-exp-parser.c
-===================================================================
---- trunk/src/app-utils/gnc-exp-parser.c	(revision 17250)
-+++ trunk/src/app-utils/gnc-exp-parser.c	(working copy)
-@@ -382,7 +382,7 @@
-   }
-     
-   result = g_new0( gnc_numeric, 1 );
--  *result = double_to_gnc_numeric( scm_num2dbl(scmTmp, __FUNCTION__),
-+  *result = double_to_gnc_numeric( scm_num2dbl(scmTmp, G_STRFUNC),
-                                    GNC_DENOM_AUTO,
-                                    GNC_DENOM_SIGFIGS(6) | GNC_RND_ROUND );
-   /* FIXME: cleanup scmArgs = scm_list, cons'ed cells? */
-Index: trunk/src/app-utils/gnc-helpers.c
-===================================================================
---- trunk/src/app-utils/gnc-helpers.c	(revision 17250)
-+++ trunk/src/app-utils/gnc-helpers.c	(working copy)
-@@ -68,11 +68,11 @@
- 
-   info_scm = SCM_CDR (info_scm);
-   info.max_decimal_places = scm_num2int (SCM_CAR (info_scm), SCM_ARG1,
--                                         __FUNCTION__);
-+                                         G_STRFUNC);
- 
-   info_scm = SCM_CDR (info_scm);
-   info.min_decimal_places = scm_num2int (SCM_CAR (info_scm), SCM_ARG1,
--                                         __FUNCTION__);
-+                                         G_STRFUNC);
- 
-   info_scm = SCM_CDR (info_scm);
-   info.use_separators = SCM_NFALSEP (SCM_CAR (info_scm));
-Index: trunk/src/app-utils/option-util.c
-===================================================================
---- trunk/src/app-utils/option-util.c	(revision 17250)
-+++ trunk/src/app-utils/option-util.c	(working copy)
-@@ -821,7 +821,7 @@
- 
-   if(SCM_EXACTP(value))
-   {
--    return scm_num2int(value, SCM_ARG1, __FUNCTION__);
-+    return scm_num2int(value, SCM_ARG1, G_STRFUNC);
-   }
-   else
-   {
-@@ -850,7 +850,7 @@
-   }
-   else
-   {
--    return scm_num2int(value, SCM_ARG1, __FUNCTION__);
-+    return scm_num2int(value, SCM_ARG1, G_STRFUNC);
-   }
- }
- 
-@@ -1032,7 +1032,7 @@
-     if (SCM_FALSEP (scm_integer_p (item))) {
-       PERR ("Invalid type");
-     } else {
--      type = scm_num2long (item, SCM_ARG1, __FUNCTION__);
-+      type = scm_num2long (item, SCM_ARG1, G_STRFUNC);
-       type_list = g_list_prepend (type_list, GINT_TO_POINTER (type));
-     }
-   }
-@@ -1074,7 +1074,7 @@
-     return FALSE;
- 
-   if (lower_bound != NULL)
--    *lower_bound = scm_num2dbl(value, __FUNCTION__);
-+    *lower_bound = scm_num2dbl(value, G_STRFUNC);
- 
-   if (!SCM_LISTP(list) || SCM_NULLP(list))
-     return FALSE;
-@@ -1087,7 +1087,7 @@
-     return FALSE;
- 
-   if (upper_bound != NULL)
--    *upper_bound = scm_num2dbl(value, __FUNCTION__);
-+    *upper_bound = scm_num2dbl(value, G_STRFUNC);
- 
-   if (!SCM_LISTP(list) || SCM_NULLP(list))
-     return FALSE;
-@@ -1103,7 +1103,7 @@
-    * This is still safe for earlier guiles, too -- tested with 1.3.4.
-    */
-   if (num_decimals != NULL) {
--    double decimals = scm_num2dbl(value, __FUNCTION__);
-+    double decimals = scm_num2dbl(value, G_STRFUNC);
-     *num_decimals = (int)decimals;
-   }
- 
-@@ -1118,7 +1118,7 @@
-     return FALSE;
- 
-   if (step_size != NULL)
--    *step_size = scm_num2dbl(value, __FUNCTION__);
-+    *step_size = scm_num2dbl(value, G_STRFUNC);
- 
-   return TRUE;
- }
-@@ -1148,7 +1148,7 @@
-   if (!SCM_NUMBERP(value))
-     return 0.0;
- 
--  return scm_num2dbl(value, __FUNCTION__);
-+  return scm_num2dbl(value, G_STRFUNC);
- }
- 
- 
-@@ -1261,7 +1261,7 @@
- 
-   scale = 1.0 / scale;
- 
--  rgba = scm_num2dbl(SCM_CAR(value), __FUNCTION__);
-+  rgba = scm_num2dbl(SCM_CAR(value), G_STRFUNC);
-   if (red != NULL)
-     *red = MIN(1.0, rgba * scale);
- 
-@@ -1269,7 +1269,7 @@
-   if (!SCM_LISTP(value) || SCM_NULLP(value) || !SCM_NUMBERP(SCM_CAR(value)))
-     return FALSE;
- 
--  rgba = scm_num2dbl(SCM_CAR(value), __FUNCTION__);
-+  rgba = scm_num2dbl(SCM_CAR(value), G_STRFUNC);
-   if (green != NULL)
-     *green = MIN(1.0, rgba * scale);
- 
-@@ -1277,7 +1277,7 @@
-   if (!SCM_LISTP(value) || SCM_NULLP(value) || !SCM_NUMBERP(SCM_CAR(value)))
-     return FALSE;
- 
--  rgba = scm_num2dbl(SCM_CAR(value), __FUNCTION__);
-+  rgba = scm_num2dbl(SCM_CAR(value), G_STRFUNC);
-   if (blue != NULL)
-     *blue = MIN(1.0, rgba * scale);
- 
-@@ -1285,7 +1285,7 @@
-   if (!SCM_LISTP(value) || SCM_NULLP(value) || !SCM_NUMBERP(SCM_CAR(value)))
-     return FALSE;
- 
--  rgba = scm_num2dbl(SCM_CAR(value), __FUNCTION__);
-+  rgba = scm_num2dbl(SCM_CAR(value), G_STRFUNC);
-   if (alpha != NULL)
-     *alpha = MIN(1.0, rgba * scale);
- 
-@@ -2215,7 +2215,7 @@
-     {
-       value = scm_call_0(getter);
-       if (SCM_NUMBERP(value))
--        return scm_num2dbl(value, __FUNCTION__);
-+        return scm_num2dbl(value, G_STRFUNC);
-     }
-   }
- 
-Index: trunk/src/gnome-utils/dialog-options.c
-===================================================================
---- trunk/src/gnome-utils/dialog-options.c	(revision 17250)
-+++ trunk/src/gnome-utils/dialog-options.c	(working copy)
-@@ -53,7 +53,7 @@
- #include "gnc-date-format.h"
- #include "misc-gnome-utils.h"
- 
--#define FUNC_NAME __FUNCTION__
-+#define FUNC_NAME G_STRFUNC
- /* TODO: clean up "register-stocks" junk
-  */
- 
-@@ -2434,7 +2434,7 @@
- 
-   if (SCM_NUMBERP(value))
-   {
--    d_value = scm_num2dbl(value, __FUNCTION__);
-+    d_value = scm_num2dbl(value, G_STRFUNC);
-     gtk_spin_button_set_value(spinner, d_value);
-     return FALSE;
-   }
-Index: trunk/src/report/report-system/gnc-report.c
-===================================================================
---- trunk/src/report/report-system/gnc-report.c	(revision 17250)
-+++ trunk/src/report/report-system/gnc-report.c	(working copy)
-@@ -77,7 +77,7 @@
- 
-     value = scm_call_1(get_id, report);
-     if (SCM_NUMBERP(value)) {
--      id = scm_num2int(value, SCM_ARG1, __FUNCTION__);
-+      id = scm_num2int(value, SCM_ARG1, G_STRFUNC);
-       if (!g_hash_table_lookup(reports, &id)) {
- 	key = g_new(gint, 1);
- 	*key = id;
-Index: trunk/src/report/report-gnome/dialog-column-view.c
-===================================================================
---- trunk/src/report/report-gnome/dialog-column-view.c	(revision 17250)
-+++ trunk/src/report/report-gnome/dialog-column-view.c	(working copy)
-@@ -183,7 +183,7 @@
-       if (SCM_EQUALP (SCM_CAR(contents), selection))
-         row = i;
- 
--      id = scm_num2int(SCM_CAAR(contents), SCM_ARG1, __FUNCTION__);
-+      id = scm_num2int(SCM_CAAR(contents), SCM_ARG1, G_STRFUNC);
-       this_report = gnc_report_find(id);
- 
-       gtk_list_store_append(store, &iter);
-@@ -193,9 +193,9 @@
- 							this_report)),
- 	 CONTENTS_COL_ROW, i,
- 	 CONTENTS_COL_REPORT_COLS, scm_num2int(SCM_CADR(SCM_CAR(contents)),
--					       SCM_ARG1, __FUNCTION__),
-+					       SCM_ARG1, G_STRFUNC),
- 	 CONTENTS_COL_REPORT_ROWS, scm_num2int(SCM_CADDR(SCM_CAR(contents)),
--					       SCM_ARG1, __FUNCTION__),
-+					       SCM_ARG1, G_STRFUNC),
- 	 -1);
-     }
-   }
-@@ -413,7 +413,7 @@
-     template_name = scm_list_ref(r->available_list, 
-                                 scm_int2num(r->available_selected));
-     new_report = scm_call_1(make_report, template_name);
--    id = scm_num2int(new_report, SCM_ARG1, __FUNCTION__);
-+    id = scm_num2int(new_report, SCM_ARG1, G_STRFUNC);
-     scm_call_2(mark_report, gnc_report_find(id), SCM_BOOL_T);
-     oldlength = scm_ilength(r->contents_list);
-     
-@@ -589,10 +589,10 @@
-                           scm_int2num(r->contents_selected));
-     gtk_spin_button_set_value(GTK_SPIN_BUTTON(colspin),
-                               (float)scm_num2int(SCM_CADR(current),
--						 SCM_ARG1, __FUNCTION__));
-+						 SCM_ARG1, G_STRFUNC));
-     gtk_spin_button_set_value(GTK_SPIN_BUTTON(rowspin),
-                               (float)scm_num2int(SCM_CADDR(current),
--						 SCM_ARG1, __FUNCTION__));
-+						 SCM_ARG1, G_STRFUNC));
-   
-     dlg_ret = gtk_dialog_run(GTK_DIALOG(dlg));
-     gtk_widget_hide(dlg);
-Index: trunk/src/report/report-gnome/gnc-plugin-page-report.c
-===================================================================
---- trunk/src/report/report-gnome/gnc-plugin-page-report.c	(revision 17250)
-+++ trunk/src/report/report-gnome/gnc-plugin-page-report.c	(working copy)
-@@ -808,7 +808,7 @@
- 	  return NULL;
- 	}
- 
--	report_id = scm_num2int(final_id, SCM_ARG1, __FUNCTION__);
-+	report_id = scm_num2int(final_id, SCM_ARG1, G_STRFUNC);
- 	report = gnc_report_find(report_id);
- 	if (!report) {
- 	  LEAVE("report doesn't exist");
-Index: trunk/src/gnome/gnc-plugin-page-register.c
-===================================================================
---- trunk/src/gnome/gnc-plugin-page-register.c	(revision 17250)
-+++ trunk/src/gnome/gnc-plugin-page-register.c	(working copy)
-@@ -1872,7 +1872,7 @@
-   arg = scm_apply (func, args, SCM_EOL);
-   g_return_val_if_fail (SCM_EXACTP (arg), -1);
- 
--  return scm_num2int (arg, SCM_ARG1, __FUNCTION__);
-+  return scm_num2int (arg, SCM_ARG1, G_STRFUNC);
- }
- 
- /************************************************************/
-Index: trunk/src/business/business-core/gncBusGuile.c
-===================================================================
---- trunk/src/business/business-core/gncBusGuile.c	(revision 17250)
-+++ trunk/src/business/business-core/gncBusGuile.c	(working copy)
-@@ -26,7 +26,7 @@
- #include "gncBusGuile.h"
- #include "engine-helpers.h"
- #include "swig-runtime.h"
--#define FUNC_NAME __FUNCTION__
-+#define FUNC_NAME G_STRFUNC
- 
- static swig_type_info *
- get_acct_type ()
-Index: trunk/src/business/business-utils/business-options.c
-===================================================================
---- trunk/src/business/business-utils/business-options.c	(revision 17250)
-+++ trunk/src/business/business-utils/business-options.c	(working copy)
-@@ -27,7 +27,7 @@
- #include "business-options.h"
- #include "swig-runtime.h"
- 
--#define FUNC_NAME __FUNCTION__
-+#define FUNC_NAME G_STRFUNC
- 
- #define LOOKUP_OPTION(fcn) \
-   GNCOption *option; \
-Index: trunk/src/business/business-gnome/business-options-gnome.c
-===================================================================
---- trunk/src/business/business-gnome/business-options-gnome.c	(revision 17250)
-+++ trunk/src/business/business-gnome/business-options-gnome.c	(working copy)
-@@ -39,7 +39,7 @@
- #include "business-gnome-utils.h"
- #include "dialog-invoice.h"
- 
--#define FUNC_NAME __FUNCTION__
-+#define FUNC_NAME G_STRFUNC
- 
- static GtkWidget *
- create_owner_widget (GNCOption *option, GncOwnerType type, GtkWidget *hbox)
-@@ -98,7 +98,7 @@
-   SCM odata = gnc_option_get_option_data (option);
- 
-   /* The option data is enum-typed.  It's just the enum value. */
--  return (GncOwnerType) scm_num2int(odata, SCM_ARG1, __FUNCTION__);
-+  return (GncOwnerType) scm_num2int(odata, SCM_ARG1, G_STRFUNC);
- }
- 
- 
-Index: trunk/src/business/business-gnome/dialog-invoice.c
-===================================================================
---- trunk/src/business/business-gnome/dialog-invoice.c	(revision 17250)
-+++ trunk/src/business/business-gnome/dialog-invoice.c	(working copy)
-@@ -587,7 +587,7 @@
- 
-   arg = scm_apply (func, args, SCM_EOL);
-   g_return_if_fail (SCM_EXACTP (arg));
--  report_id = scm_num2int (arg, SCM_ARG1, __FUNCTION__);
-+  report_id = scm_num2int (arg, SCM_ARG1, G_STRFUNC);
- 
-   /* scm_gc_unprotect_object(func); */
-   if (report_id >= 0)
-@@ -789,7 +789,7 @@
-   /* Apply the function to the args */
-   arg = scm_apply (func, args, SCM_EOL);
-   g_return_if_fail (SCM_EXACTP (arg));
--  id = scm_num2int (arg, SCM_ARG1, __FUNCTION__);
-+  id = scm_num2int (arg, SCM_ARG1, G_STRFUNC);
- 
-   if (id >= 0)
-     reportWindow (id);
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/gnucash-02-gcc.diff	Mon Nov 16 10:03:03 2009 +0000
@@ -0,0 +1,13 @@
+Index: gnucash/doc/Makefile.am
+===================================================================
+--- gnucash/doc/Makefile.am	(revision 18412)
++++ gnucash/doc/Makefile.am	(working copy)
+@@ -62,7 +62,7 @@
+ 	mv [email protected] $@
+ 
+ tip_of_the_day.list: tip_of_the_day.list.in Makefile
+-	gcc -E -P -x c -D'N_(x)=x' -o [email protected] $<
++	${CC} -E -P -D'N_(x)=x' -o [email protected] $<
+ 	cat -s [email protected] | ${SED} -e 's/^ *\"\(.*\)\" *$$/\1/' > $@
+ 	rm -f [email protected]
+ 
--- a/patches/gnucash-02-namely-struct.diff	Sat Nov 14 22:15:34 2009 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,751 +0,0 @@
-Index: trunk/src/engine/gnc-pricedb.c
-===================================================================
---- trunk/src/engine/gnc-pricedb.c	(revision 17250)
-+++ trunk/src/engine/gnc-pricedb.c	(working copy)
-@@ -2439,32 +2439,32 @@
- 
- static QofObject price_object_def =
- {
--  interface_version: QOF_OBJECT_VERSION,
--  e_type:            GNC_ID_PRICE,
--  type_label:        "Price",
--  create:            price_create,
--  book_begin:        NULL,
--  book_end:          NULL,
--  is_dirty:          qof_collection_is_dirty,
--  mark_clean:        qof_collection_mark_clean,
--  foreach:           price_foreach,
--  printable:         price_printable,
--  version_cmp:       NULL,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = GNC_ID_PRICE,
-+  .type_label        = "Price",
-+  .create            = price_create,
-+  .book_begin        = NULL,
-+  .book_end          = NULL,
-+  .is_dirty          = qof_collection_is_dirty,
-+  .mark_clean        = qof_collection_mark_clean,
-+  .foreach           = price_foreach,
-+  .printable         = price_printable,
-+  .version_cmp       = NULL,
- };
- 
- static QofObject pricedb_object_def =
- {
--  interface_version: QOF_OBJECT_VERSION,
--  e_type:            GNC_ID_PRICEDB,
--  type_label:        "PriceDB",
--  create:            NULL,
--  book_begin:        pricedb_book_begin,
--  book_end:          pricedb_book_end,
--  is_dirty:          qof_collection_is_dirty,
--  mark_clean:        qof_collection_mark_clean,
--  foreach:           NULL,
--  printable:         NULL,
--  version_cmp:       NULL,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = GNC_ID_PRICEDB,
-+  .type_label        = "PriceDB",
-+  .create            = NULL,
-+  .book_begin        = pricedb_book_begin,
-+  .book_end          = pricedb_book_end,
-+  .is_dirty          = qof_collection_is_dirty,
-+  .mark_clean        = qof_collection_mark_clean,
-+  .foreach           = NULL,
-+  .printable         = NULL,
-+  .version_cmp       = NULL,
- };
- 
- gboolean
-Index: trunk/src/engine/gnc-budget.c
-===================================================================
---- trunk/src/engine/gnc-budget.c	(revision 17250)
-+++ trunk/src/engine/gnc-budget.c	(working copy)
-@@ -425,17 +425,17 @@
- /* Define the QofObject. */
- static QofObject budget_object_def =
- {
--    interface_version: QOF_OBJECT_VERSION,
--    e_type:            GNC_ID_BUDGET,
--    type_label:        "Budget",
--    create:            (gpointer)gnc_budget_new,
--    book_begin:        NULL,
--    book_end:          NULL,
--    is_dirty:          qof_collection_is_dirty,
--    mark_clean:        qof_collection_mark_clean,
--    foreach:           qof_collection_foreach,
--    printable:         (const char* (*)(gpointer)) gnc_budget_get_name,
--    version_cmp:       (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
-+    .interface_version = QOF_OBJECT_VERSION,
-+    .e_type            = GNC_ID_BUDGET,
-+    .type_label        = "Budget",
-+    .create            = (gpointer)gnc_budget_new,
-+    .book_begin        = NULL,
-+    .book_end          = NULL,
-+    .is_dirty          = qof_collection_is_dirty,
-+    .mark_clean        = qof_collection_mark_clean,
-+    .foreach           = qof_collection_foreach,
-+    .printable         = (const char* (*)(gpointer)) gnc_budget_get_name,
-+    .version_cmp       = (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
- };
- 
- 
-Index: trunk/src/engine/Account.c
-===================================================================
---- trunk/src/engine/Account.c	(revision 17250)
-+++ trunk/src/engine/Account.c	(working copy)
-@@ -4473,17 +4473,17 @@
- /* QofObject function implementation and registration */
- 
- static QofObject account_object_def = {
--  interface_version:     QOF_OBJECT_VERSION,
--  e_type:                GNC_ID_ACCOUNT,
--  type_label:            "Account",
--  create:                (gpointer)xaccMallocAccount,
--  book_begin:            NULL,
--  book_end:              NULL,
--  is_dirty:              qof_collection_is_dirty,
--  mark_clean:            qof_collection_mark_clean,
--  foreach:               qof_collection_foreach,
--  printable:             (const char* (*)(gpointer)) xaccAccountGetName,
--  version_cmp:           (int (*)(gpointer,gpointer)) qof_instance_version_cmp,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = GNC_ID_ACCOUNT,
-+  .type_label        = "Account",
-+  .create            = (gpointer)xaccMallocAccount,
-+  .book_begin        = NULL,
-+  .book_end          = NULL,
-+  .is_dirty          = qof_collection_is_dirty,
-+  .mark_clean        = qof_collection_mark_clean,
-+  .foreach           = qof_collection_foreach,
-+  .printable         = (const char* (*)(gpointer)) xaccAccountGetName,
-+  .version_cmp       = (int (*)(gpointer,gpointer)) qof_instance_version_cmp,
- };
- 
- gboolean xaccAccountRegister (void)
-Index: trunk/src/engine/SX-book.c
-===================================================================
---- trunk/src/engine/SX-book.c	(revision 17250)
-+++ trunk/src/engine/SX-book.c	(working copy)
-@@ -162,15 +162,15 @@
- 
- static QofObject sxtg_object_def = 
- {
--  interface_version: QOF_OBJECT_VERSION,
--  e_type:            GNC_ID_SXTG,
--  type_label:        "Scheduled Transaction Templates",
--  book_begin:        sxtg_book_begin,
--  book_end:          sxtg_book_end,
--  is_dirty:          sxtg_is_dirty,
--  mark_clean:        sxtg_mark_clean,
--  foreach:           NULL,
--  printable:         NULL,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = GNC_ID_SXTG,
-+  .type_label        = "Scheduled Transaction Templates",
-+  .book_begin        = sxtg_book_begin,
-+  .book_end          = sxtg_book_end,
-+  .is_dirty          = sxtg_is_dirty,
-+  .mark_clean        = sxtg_mark_clean,
-+  .foreach           = NULL,
-+  .printable         = NULL,
- };
- 
- /* ====================================================================== */
-@@ -294,32 +294,32 @@
- 
- static QofObject sxes_object_def =
- {
--  interface_version: QOF_OBJECT_VERSION,
--  e_type:            GNC_ID_SXES,
--  type_label:        "Scheduled Transactions List",
--  create:            NULL,
--  book_begin:        book_sxes_setup,
--  book_end:          NULL,
--  is_dirty:          book_sxlist_notsaved,
--  mark_clean:        book_sxns_mark_saved,
--  foreach:           NULL,
--  printable:         NULL,
--  version_cmp:       NULL
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = GNC_ID_SXES,
-+  .type_label        = "Scheduled Transactions List",
-+  .create            = NULL,
-+  .book_begin        = book_sxes_setup,
-+  .book_end          = NULL,
-+  .is_dirty          = book_sxlist_notsaved,
-+  .mark_clean        = book_sxns_mark_saved,
-+  .foreach           = NULL,
-+  .printable         = NULL,
-+  .version_cmp       = NULL
- };
-   
- static QofObject sxtt_object_def = 
- {
--  interface_version: QOF_OBJECT_VERSION,
--  e_type:            GNC_ID_SXTT,
--  type_label:        "Scheduled Transaction Templates",
--  create:            NULL,
--  book_begin:        NULL,
--  book_end:          NULL,
--  is_dirty:          NULL,
--  mark_clean:        NULL,
--  foreach:           NULL,
--  printable:         NULL,
--  version_cmp:       NULL,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = GNC_ID_SXTT,
-+  .type_label        = "Scheduled Transaction Templates",
-+  .create            = NULL,
-+  .book_begin        = NULL,
-+  .book_end          = NULL,
-+  .is_dirty          = NULL,
-+  .mark_clean        = NULL,
-+  .foreach           = NULL,
-+  .printable         = NULL,
-+  .version_cmp       = NULL,
- };
- 
- gboolean 
-Index: trunk/src/engine/gnc-lot.c
-===================================================================
---- trunk/src/engine/gnc-lot.c	(revision 17250)
-+++ trunk/src/engine/gnc-lot.c	(working copy)
-@@ -420,17 +420,17 @@
- 
- static QofObject gncLotDesc =
- {
--    interface_version:  QOF_OBJECT_VERSION,
--    e_type:             GNC_ID_LOT,
--    type_label:         "Lot",
--    create:             (gpointer)gnc_lot_new,
--    book_begin:         NULL,
--    book_end:           NULL,
--    is_dirty:           qof_collection_is_dirty,
--    mark_clean:         qof_collection_mark_clean,
--    foreach:            qof_collection_foreach,
--    printable:          NULL,
--    version_cmp:        (int (*)(gpointer,gpointer))qof_instance_version_cmp,
-+    .interface_version = QOF_OBJECT_VERSION,
-+    .e_type            = GNC_ID_LOT,
-+    .type_label        = "Lot",
-+    .create            = (gpointer)gnc_lot_new,
-+    .book_begin        = NULL,
-+    .book_end          = NULL,
-+    .is_dirty          = qof_collection_is_dirty,
-+    .mark_clean        = qof_collection_mark_clean,
-+    .foreach           = qof_collection_foreach,
-+    .printable         = NULL,
-+    .version_cmp       = (int (*)(gpointer,gpointer))qof_instance_version_cmp,
- };
- 
- 
-Index: trunk/src/engine/Transaction.c
-===================================================================
---- trunk/src/engine/Transaction.c	(revision 17250)
-+++ trunk/src/engine/Transaction.c	(working copy)
-@@ -1911,17 +1911,17 @@
- 
- /* Hook into the QofObject registry */
- static QofObject trans_object_def = {
--  interface_version:   QOF_OBJECT_VERSION,
--  e_type:              GNC_ID_TRANS,
--  type_label:          "Transaction",
--  create:              (gpointer)xaccMallocTransaction,
--  book_begin:          NULL,
--  book_end:            NULL,
--  is_dirty:            qof_collection_is_dirty,
--  mark_clean:          qof_collection_mark_clean,
--  foreach:             qof_collection_foreach,
--  printable:           (const char* (*)(gpointer)) xaccTransGetDescription,
--  version_cmp:         (int (*)(gpointer,gpointer)) qof_instance_version_cmp,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = GNC_ID_TRANS,
-+  .type_label        = "Transaction",
-+  .create            = (gpointer)xaccMallocTransaction,
-+  .book_begin        = NULL,
-+  .book_end          = NULL,
-+  .is_dirty          = qof_collection_is_dirty,
-+  .mark_clean        = qof_collection_mark_clean,
-+  .foreach           = qof_collection_foreach,
-+  .printable         = (const char* (*)(gpointer)) xaccTransGetDescription,
-+  .version_cmp       = (int (*)(gpointer,gpointer)) qof_instance_version_cmp,
- };
- 
- static gboolean
-Index: trunk/src/engine/gnc-commodity.c
-===================================================================
---- trunk/src/engine/gnc-commodity.c	(revision 17250)
-+++ trunk/src/engine/gnc-commodity.c	(working copy)
-@@ -1991,28 +1991,28 @@
- 
- static QofObject commodity_object_def = 
- {
--  interface_version: QOF_OBJECT_VERSION,
--  e_type:            GNC_ID_COMMODITY,
--  type_label:        "Commodity",
--  book_begin:        NULL,
--  book_end:          NULL,
--  is_dirty:          qof_collection_is_dirty,
--  mark_clean:        qof_collection_mark_clean,
--  foreach:           qof_collection_foreach,
--  printable:         (const char* (*)(gpointer)) gnc_commodity_get_fullname,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = GNC_ID_COMMODITY,
-+  .type_label        = "Commodity",
-+  .book_begin        = NULL,
-+  .book_end          = NULL,
-+  .is_dirty          = qof_collection_is_dirty,
-+  .mark_clean        = qof_collection_mark_clean,
-+  .foreach           = qof_collection_foreach,
-+  .printable         = (const char* (*)(gpointer)) gnc_commodity_get_fullname,
- };
- 
- static QofObject namespace_object_def = 
- {
--  interface_version: QOF_OBJECT_VERSION,
--  e_type:            GNC_ID_COMMODITY_NAMESPACE,
--  type_label:        "Namespace",
--  book_begin:        NULL,
--  book_end:          NULL,
--  is_dirty:          NULL,
--  mark_clean:        NULL,
--  foreach:           NULL,
--  printable:         NULL,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = GNC_ID_COMMODITY_NAMESPACE,
-+  .type_label        = "Namespace",
-+  .book_begin        = NULL,
-+  .book_end          = NULL,
-+  .is_dirty          = NULL,
-+  .mark_clean        = NULL,
-+  .foreach           = NULL,
-+  .printable         = NULL,
- };
- 
- static void 
-@@ -2047,17 +2047,17 @@
- 
- static QofObject commodity_table_object_def = 
- {
--  interface_version: QOF_OBJECT_VERSION,
--  e_type:            GNC_ID_COMMODITY_TABLE,
--  type_label:        "CommodityTable",
--  create:            NULL,
--  book_begin:        commodity_table_book_begin,
--  book_end:          commodity_table_book_end,
--  is_dirty:          qof_collection_is_dirty,
--  mark_clean:        qof_collection_mark_clean,
--  foreach:           NULL,
--  printable:         NULL,
--  version_cmp:       NULL,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = GNC_ID_COMMODITY_TABLE,
-+  .type_label        = "CommodityTable",
-+  .create            = NULL,
-+  .book_begin        = commodity_table_book_begin,
-+  .book_end          = commodity_table_book_end,
-+  .is_dirty          = qof_collection_is_dirty,
-+  .mark_clean        = qof_collection_mark_clean,
-+  .foreach           = NULL,
-+  .printable         = NULL,
-+  .version_cmp       = NULL,
- };
- 
- gboolean 
-Index: trunk/src/engine/SchedXaction.c
-===================================================================
---- trunk/src/engine/SchedXaction.c	(revision 17250)
-+++ trunk/src/engine/SchedXaction.c	(working copy)
-@@ -849,17 +849,17 @@
- 
- static QofObject SXDesc = 
- {
--	interface_version : QOF_OBJECT_VERSION,
--	e_type            : GNC_SX_ID,
--	type_label        : "Scheduled Transaction",
--	create            : (gpointer)xaccSchedXactionMalloc,
--	book_begin        : NULL,
--	book_end          : NULL,
--	is_dirty          : qof_collection_is_dirty,
--	mark_clean        : qof_collection_mark_clean,
--	foreach           : qof_collection_foreach,
--	printable         : NULL,
--	version_cmp       : (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
-+	.interface_version = QOF_OBJECT_VERSION,
-+	.e_type            = GNC_SX_ID,
-+	.type_label        = "Scheduled Transaction",
-+	.create            = (gpointer)xaccSchedXactionMalloc,
-+	.book_begin        = NULL,
-+	.book_end          = NULL,
-+	.is_dirty          = qof_collection_is_dirty,
-+	.mark_clean        = qof_collection_mark_clean,
-+	.foreach           = qof_collection_foreach,
-+	.printable         = NULL,
-+	.version_cmp       = (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
- };
- 
- gboolean
-Index: trunk/src/engine/Split.c
-===================================================================
---- trunk/src/engine/Split.c	(revision 17250)
-+++ trunk/src/engine/Split.c	(working copy)
-@@ -1743,17 +1743,17 @@
- /* Hook into the QofObject registry */
- 
- static QofObject split_object_def = {
--  interface_version: QOF_OBJECT_VERSION,
--  e_type:            GNC_ID_SPLIT,
--  type_label:        "Split",
--  create:            (gpointer)xaccMallocSplit,
--  book_begin:        NULL,
--  book_end:          NULL,
--  is_dirty:          qof_collection_is_dirty,
--  mark_clean:        qof_collection_mark_clean,
--  foreach:           qof_collection_foreach,
--  printable:         (const char* (*)(gpointer)) xaccSplitGetMemo,
--  version_cmp:       (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = GNC_ID_SPLIT,
-+  .type_label        = "Split",
-+  .create            = (gpointer)xaccMallocSplit,
-+  .book_begin        = NULL,
-+  .book_end          = NULL,
-+  .is_dirty          = qof_collection_is_dirty,
-+  .mark_clean        = qof_collection_mark_clean,
-+  .foreach           = qof_collection_foreach,
-+  .printable         = (const char* (*)(gpointer)) xaccSplitGetMemo,
-+  .version_cmp       = (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
- };
- 
- static gpointer 
-Index: trunk/src/business/business-core/gncAddress.c
-===================================================================
---- trunk/src/business/business-core/gncAddress.c	(revision 17250)
-+++ trunk/src/business/business-core/gncAddress.c	(working copy)
-@@ -372,17 +372,17 @@
- 
- static QofObject GncAddressDesc =
- {
--	interface_version:  QOF_OBJECT_VERSION,
--	e_type:             GNC_ID_ADDRESS,
--	type_label:         "Address",
--	create:             (gpointer)qofAddressCreate,
--	book_begin:         NULL,
--	book_end:           NULL,
--	is_dirty:           qof_collection_is_dirty,
--	mark_clean:         qof_collection_mark_clean,
--	foreach:            qof_collection_foreach,
--	printable:          NULL,
--	version_cmp:        (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
-+	.interface_version = QOF_OBJECT_VERSION,
-+	.e_type            = GNC_ID_ADDRESS,
-+	.type_label        = "Address",
-+	.create            = (gpointer)qofAddressCreate,
-+	.book_begin        = NULL,
-+	.book_end          = NULL,
-+	.is_dirty          = qof_collection_is_dirty,
-+	.mark_clean        = qof_collection_mark_clean,
-+	.foreach           = qof_collection_foreach,
-+	.printable         = NULL,
-+	.version_cmp       = (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
- };
- 
- gboolean gncAddressRegister (void)
-Index: trunk/src/business/business-core/gncBillTerm.c
-===================================================================
---- trunk/src/business/business-core/gncBillTerm.c	(revision 17250)
-+++ trunk/src/business/business-core/gncBillTerm.c	(working copy)
-@@ -702,17 +702,17 @@
- 
- static QofObject gncBillTermDesc = 
- {
--  interface_version:   QOF_OBJECT_VERSION,
--  e_type:              _GNC_MOD_NAME,
--  type_label:          "Billing Term",
--  create:              (gpointer)gncBillTermCreate,
--  book_begin:          _gncBillTermCreate,
--  book_end:            _gncBillTermDestroy,
--  is_dirty:            qof_collection_is_dirty,
--  mark_clean:          qof_collection_mark_clean,
--  foreach:             qof_collection_foreach,
--  printable:           NULL,
--  version_cmp:         (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = _GNC_MOD_NAME,
-+  .type_label        = "Billing Term",
-+  .create            = (gpointer)gncBillTermCreate,
-+  .book_begin        = _gncBillTermCreate,
-+  .book_end          = _gncBillTermDestroy,
-+  .is_dirty          = qof_collection_is_dirty,
-+  .mark_clean        = qof_collection_mark_clean,
-+  .foreach           = qof_collection_foreach,
-+  .printable         = NULL,
-+  .version_cmp       = (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
- };
- 
- gboolean gncBillTermRegister (void)
-Index: trunk/src/business/business-core/gncCustomer.c
-===================================================================
---- trunk/src/business/business-core/gncCustomer.c	(revision 17250)
-+++ trunk/src/business/business-core/gncCustomer.c	(working copy)
-@@ -577,17 +577,17 @@
- 
- static QofObject gncCustomerDesc =
- {
--  interface_version:  QOF_OBJECT_VERSION,
--  e_type:             _GNC_MOD_NAME,
--  type_label:         "Customer",
--  create:             (gpointer)gncCustomerCreate,
--  book_begin:         NULL,
--  book_end:           NULL,
--  is_dirty:           qof_collection_is_dirty,
--  mark_clean:         qof_collection_mark_clean,
--  foreach:            qof_collection_foreach,
--  printable:          (const char* (*)(gpointer))gncCustomerGetName,
--  version_cmp:        (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = _GNC_MOD_NAME,
-+  .type_label        = "Customer",
-+  .create            = (gpointer)gncCustomerCreate,
-+  .book_begin        = NULL,
-+  .book_end          = NULL,
-+  .is_dirty          = qof_collection_is_dirty,
-+  .mark_clean        = qof_collection_mark_clean,
-+  .foreach           = qof_collection_foreach,
-+  .printable         = (const char* (*)(gpointer))gncCustomerGetName,
-+  .version_cmp       = (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
- };
- 
- gboolean gncCustomerRegister (void)
-Index: trunk/src/business/business-core/gncEmployee.c
-===================================================================
---- trunk/src/business/business-core/gncEmployee.c	(revision 17250)
-+++ trunk/src/business/business-core/gncEmployee.c	(working copy)
-@@ -419,17 +419,17 @@
- 
- static QofObject gncEmployeeDesc = 
- {
--  interface_version:  QOF_OBJECT_VERSION,
--  e_type:             _GNC_MOD_NAME,
--  type_label:         "Employee",
--  create:             (gpointer)gncEmployeeCreate,
--  book_begin:         NULL,
--  book_end:           NULL,
--  is_dirty:           qof_collection_is_dirty,
--  mark_clean:         qof_collection_mark_clean,
--  foreach:            qof_collection_foreach,
--  printable:          _gncEmployeePrintable,
--  version_cmp:        (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = _GNC_MOD_NAME,
-+  .type_label        = "Employee",
-+  .create            = (gpointer)gncEmployeeCreate,
-+  .book_begin        = NULL,
-+  .book_end          = NULL,
-+  .is_dirty          = qof_collection_is_dirty,
-+  .mark_clean        = qof_collection_mark_clean,
-+  .foreach           = qof_collection_foreach,
-+  .printable         = _gncEmployeePrintable,
-+  .version_cmp       = (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
- };
- 
- gboolean gncEmployeeRegister (void)
-Index: trunk/src/business/business-core/gncEntry.c
-===================================================================
---- trunk/src/business/business-core/gncEntry.c	(revision 17250)
-+++ trunk/src/business/business-core/gncEntry.c	(working copy)
-@@ -1239,17 +1239,17 @@
- 
- static QofObject gncEntryDesc = 
- {
--  interface_version:  QOF_OBJECT_VERSION,
--  e_type:             _GNC_MOD_NAME,
--  type_label:         "Order/Invoice/Bill Entry",
--  create:             (gpointer)gncEntryCreate,
--  book_begin:         NULL,
--  book_end:           NULL,
--  is_dirty:           qof_collection_is_dirty,
--  mark_clean:         qof_collection_mark_clean,
--  foreach:            qof_collection_foreach,
--  printable:          NULL,
--  version_cmp:        (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = _GNC_MOD_NAME,
-+  .type_label        = "Order/Invoice/Bill Entry",
-+  .create            = (gpointer)gncEntryCreate,
-+  .book_begin        = NULL,
-+  .book_end          = NULL,
-+  .is_dirty          = qof_collection_is_dirty,
-+  .mark_clean        = qof_collection_mark_clean,
-+  .foreach           = qof_collection_foreach,
-+  .printable         = NULL,
-+  .version_cmp       = (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
- };
- 
- gboolean gncEntryRegister (void)
-Index: trunk/src/business/business-core/gncInvoice.c
-===================================================================
---- trunk/src/business/business-core/gncInvoice.c	(revision 17250)
-+++ trunk/src/business/business-core/gncInvoice.c	(working copy)
-@@ -1543,17 +1543,17 @@
- 
- static QofObject gncInvoiceDesc = 
- {
--  interface_version:  QOF_OBJECT_VERSION,
--  e_type:             _GNC_MOD_NAME,
--  type_label:         "Invoice",
--  create:             (gpointer)gncInvoiceCreate,
--  book_begin:         NULL,
--  book_end:           NULL,
--  is_dirty:           qof_collection_is_dirty,
--  mark_clean:         qof_collection_mark_clean,
--  foreach:            qof_collection_foreach,
--  printable:          _gncInvoicePrintable,
--  version_cmp:        (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = _GNC_MOD_NAME,
-+  .type_label        = "Invoice",
-+  .create            = (gpointer)gncInvoiceCreate,
-+  .book_begin        = NULL,
-+  .book_end          = NULL,
-+  .is_dirty          = qof_collection_is_dirty,
-+  .mark_clean        = qof_collection_mark_clean,
-+  .foreach           = qof_collection_foreach,
-+  .printable         = _gncInvoicePrintable,
-+  .version_cmp       = (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
- };
- 
- static void
-Index: trunk/src/business/business-core/gncJob.c
-===================================================================
---- trunk/src/business/business-core/gncJob.c	(revision 17250)
-+++ trunk/src/business/business-core/gncJob.c	(working copy)
-@@ -367,17 +367,17 @@
- 
- static QofObject gncJobDesc = 
- {
--  interface_version:  QOF_OBJECT_VERSION,
--  e_type:             _GNC_MOD_NAME,
--  type_label:         "Job",
--  create:             (gpointer)gncJobCreate,
--  book_begin:         NULL,
--  book_end:           NULL,
--  is_dirty:           qof_collection_is_dirty,
--  mark_clean:         qof_collection_mark_clean,
--  foreach:            qof_collection_foreach,
--  printable:          _gncJobPrintable,
--  version_cmp:        (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = _GNC_MOD_NAME,
-+  .type_label        = "Job",
-+  .create            = (gpointer)gncJobCreate,
-+  .book_begin        = NULL,
-+  .book_end          = NULL,
-+  .is_dirty          = qof_collection_is_dirty,
-+  .mark_clean        = qof_collection_mark_clean,
-+  .foreach           = qof_collection_foreach,
-+  .printable         = _gncJobPrintable,
-+  .version_cmp       = (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
- };
- 
- gboolean gncJobRegister (void)
-Index: trunk/src/business/business-core/gncOrder.c
-===================================================================
---- trunk/src/business/business-core/gncOrder.c	(revision 17250)
-+++ trunk/src/business/business-core/gncOrder.c	(working copy)
-@@ -421,17 +421,17 @@
- 
- static QofObject gncOrderDesc =
- {
--  interface_version:  QOF_OBJECT_VERSION,
--  e_type:             _GNC_MOD_NAME,
--  type_label:         "Order",
--  create:             (gpointer)gncOrderCreate,
--  book_begin:         NULL,
--  book_end:           NULL,
--  is_dirty:           qof_collection_is_dirty,
--  mark_clean:         qof_collection_mark_clean,
--  foreach:            qof_collection_foreach,
--  printable:          _gncOrderPrintable,
--  version_cmp:        (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = _GNC_MOD_NAME,
-+  .type_label        = "Order",
-+  .create            = (gpointer)gncOrderCreate,
-+  .book_begin        = NULL,
-+  .book_end          = NULL,
-+  .is_dirty          = qof_collection_is_dirty,
-+  .mark_clean        = qof_collection_mark_clean,
-+  .foreach           = qof_collection_foreach,
-+  .printable         = _gncOrderPrintable,
-+  .version_cmp       = (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
- };
- 
- gboolean gncOrderRegister (void)
-Index: trunk/src/business/business-core/gncTaxTable.c
-===================================================================
---- trunk/src/business/business-core/gncTaxTable.c	(revision 17250)
-+++ trunk/src/business/business-core/gncTaxTable.c	(working copy)
-@@ -795,17 +795,17 @@
- 
- static QofObject gncTaxTableDesc = 
- {
--  interface_version:  QOF_OBJECT_VERSION,
--  e_type:             _GNC_MOD_NAME,
--  type_label:         "Tax Table",
--  create:             (gpointer)gncTaxTableCreate,
--  book_begin:         _gncTaxTableCreate,
--  book_end:           _gncTaxTableDestroy,
--  is_dirty:           qof_collection_is_dirty,
--  mark_clean:         qof_collection_mark_clean,
--  foreach:            qof_collection_foreach,
--  printable:          NULL,
--  version_cmp:        (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = _GNC_MOD_NAME,
-+  .type_label        = "Tax Table",
-+  .create            = (gpointer)gncTaxTableCreate,
-+  .book_begin        = _gncTaxTableCreate,
-+  .book_end          = _gncTaxTableDestroy,
-+  .is_dirty          = qof_collection_is_dirty,
-+  .mark_clean        = qof_collection_mark_clean,
-+  .foreach           = qof_collection_foreach,
-+  .printable         = NULL,
-+  .version_cmp       = (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
- };
- 
- gboolean gncTaxTableRegister (void)
-Index: trunk/src/business/business-core/gncVendor.c
-===================================================================
---- trunk/src/business/business-core/gncVendor.c	(revision 17250)
-+++ trunk/src/business/business-core/gncVendor.c	(working copy)
-@@ -520,17 +520,17 @@
- 
- static QofObject gncVendorDesc = 
- {
--  interface_version:  QOF_OBJECT_VERSION,
--  e_type:             _GNC_MOD_NAME,
--  type_label:         "Vendor",
--  create:             (gpointer)gncVendorCreate,
--  book_begin:         NULL,
--  book_end:           NULL,
--  is_dirty:           qof_collection_is_dirty,
--  mark_clean:         qof_collection_mark_clean,
--  foreach:            qof_collection_foreach,
--  printable:          _gncVendorPrintable,
--  version_cmp:        (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
-+  .interface_version = QOF_OBJECT_VERSION,
-+  .e_type            = _GNC_MOD_NAME,
-+  .type_label        = "Vendor",
-+  .create            = (gpointer)gncVendorCreate,
-+  .book_begin        = NULL,
-+  .book_end          = NULL,
-+  .is_dirty          = qof_collection_is_dirty,
-+  .mark_clean        = qof_collection_mark_clean,
-+  .foreach           = qof_collection_foreach,
-+  .printable         = _gncVendorPrintable,
-+  .version_cmp       = (int (*)(gpointer, gpointer)) qof_instance_version_cmp,
- };
- 
- gboolean gncVendorRegister (void)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/gnucash-03-gmp-inc.diff	Mon Nov 16 10:03:03 2009 +0000
@@ -0,0 +1,32 @@
+Index: gnucash/src/backend/sql/Makefile.am
+===================================================================
+--- gnucash/src/backend/sql/Makefile.am	(revision 18412)
++++ gnucash/src/backend/sql/Makefile.am	(working copy)
+@@ -12,6 +12,7 @@
+   -I${top_srcdir}/lib/libc\
+   -I${top_srcdir}/src/libqof/qof \
+   ${GLIB_CFLAGS} \
++  ${GUILE_INCS} \
+   ${GCONF_CFLAGS} \
+   ${WARN_CFLAGS}
+ 
+@@ -45,6 +46,7 @@
+ 
+ libgnc_backend_sql_la_LIBADD = \
+    ${GLIB_LIBS} \
++   ${GUILE_LIBS} \
+    ${GCONF_LIBS} \
+    ${top_builddir}/src/engine/libgncmod-engine.la \
+    ${top_builddir}/src/libqof/qof/libgnc-qof.la
+Index: gnucash/src/html/Makefile.am
+===================================================================
+--- gnucash/src/html/Makefile.am	(revision 18412)
++++ gnucash/src/html/Makefile.am	(working copy)
+@@ -14,6 +14,7 @@
+   -I${top_srcdir}/lib/libc \
+   ${QOF_CFLAGS} \
+   ${GLIB_CFLAGS} \
++  ${GUILE_INCS} \
+   ${GTK_CFLAGS} \
+   ${GNOME_CFLAGS} \
+   ${GOFFICE_CFLAGS}
--- a/patches/gnucash-03-inline.diff	Sat Nov 14 22:15:34 2009 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,103 +0,0 @@
-Index: trunk/lib/libqof/qof/qofmath128.c
-===================================================================
---- trunk/lib/libqof/qof/qofmath128.c	(revision 17477)
-+++ trunk/lib/libqof/qof/qofmath128.c	(working copy)
-@@ -37,7 +37,7 @@
- /** Multiply a pair of signed 64-bit numbers, 
-  *  returning a signed 128-bit number.
-  */
--inline qofint128
-+G_INLINE_FUNC qofint128
- mult128 (gint64 a, gint64 b)
- {
-   qofint128 prod;
-@@ -106,7 +106,7 @@
- }
- 
- /** Shift right by one bit (i.e. divide by two) */
--inline qofint128
-+G_INLINE_FUNC qofint128
- shift128 (qofint128 x)
- {
-   guint64 sbit = x.hi & 0x1;
-@@ -127,7 +127,7 @@
- }
- 
- /** Shift leftt by one bit (i.e. multiply by two) */
--inline qofint128
-+G_INLINE_FUNC qofint128
- shiftleft128 (qofint128 x)
- {
-   guint64 sbit;
-@@ -149,7 +149,7 @@
- }
- 
- /** increment a 128-bit number by one */
--inline qofint128
-+G_INLINE_FUNC qofint128
- inc128 (qofint128 a)
- {
-   if (0 == a.isneg)
-@@ -176,7 +176,7 @@
- /** Divide a signed 128-bit number by a signed 64-bit,
-  *  returning a signed 128-bit number.
-  */
--inline qofint128
-+G_INLINE_FUNC qofint128
- div128 (qofint128 n, gint64 d)
- {
-   qofint128 quotient;
-@@ -215,7 +215,7 @@
-  *  I beleive that ths algo is overflow-free, but should be 
-  *  audited some more ... 
-  */
--inline gint64
-+G_INLINE_FUNC gint64
- rem128 (qofint128 n, gint64 d)
- {
-   qofint128 quotient = div128 (n,d);
-@@ -228,7 +228,7 @@
- }
- 
- /** Return true of two numbers are equal */
--inline gboolean
-+G_INLINE_FUNC gboolean
- equal128 (qofint128 a, qofint128 b)
- {
- 	if (a.lo != b.lo) return 0;
-@@ -238,7 +238,7 @@
- }
- 
- /** Return returns 1 if a>b, -1 if b>a, 0 if a == b */
--inline int
-+G_INLINE_FUNC int
- cmp128 (qofint128 a, qofint128 b)
- {
-    if ((0 == a.isneg) && b.isneg) return 1;
-@@ -260,7 +260,7 @@
- }
- 
- /** Return the greatest common factor of two 64-bit numbers */
--inline guint64
-+G_INLINE_FUNC guint64
- gcf64(guint64 num, guint64 denom)
- {
-   guint64   t;
-@@ -281,7 +281,7 @@
- }
- 
- /** Return the least common multiple of two 64-bit numbers. */
--inline qofint128
-+G_INLINE_FUNC qofint128
- lcm128 (guint64 a, guint64 b)
- {
-   guint64 gcf = gcf64 (a,b);
-@@ -290,7 +290,7 @@
- }
- 
- /** Add a pair of 128-bit numbers, returning a 128-bit number */
--inline qofint128
-+G_INLINE_FUNC qofint128
- add128 (qofint128 a, qofint128 b)
- {
-   qofint128 sum;
--- a/patches/gnucash-04-configure-fail.diff	Sat Nov 14 22:15:34 2009 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,10 +0,0 @@
---- gnucash-2.2.5/configure.in.orig	2008-06-27 16:55:40.868976000 +0800
-+++ gnucash-2.2.5/configure.in	2008-06-27 16:56:17.042870000 +0800
-@@ -411,6 +411,7 @@
- AC_MSG_CHECKING(if guile long_long is at least as big as gint64)
- GNC_OLDCFLAGS="$CFLAGS"
- CFLAGS="${GNOME_CFLAGS} ${GUILE_INCS} ${CFLAGS} ${GLIB_CFLAGS}"
-+LDFLAGS="${LDFLAGS} ${GLIB_LIBS}"
- AC_TRY_RUN([
-   #include <glib.h>
-   #include <libguile/__scm.h>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/gnucash-04-void-return.diff	Mon Nov 16 10:03:03 2009 +0000
@@ -0,0 +1,13 @@
+Index: gnucash/src/backend/sql/gnc-budget-sql.c
+===================================================================
+--- gnucash/src/backend/sql/gnc-budget-sql.c	(revision 18412)
++++ gnucash/src/backend/sql/gnc-budget-sql.c	(working copy)
+@@ -173,7 +173,7 @@
+ 
+ 	g_return_if_fail( pObj != NULL );
+ 
+-	return gnc_budget_set_account_period_value( info->budget, info->account, info->period_num, value );
++	gnc_budget_set_account_period_value( info->budget, info->account, info->period_num, value );
+ }
+ 
+ /*----------------------------------------------------------------*/
--- a/patches/gnucash-05-solaris-sh.diff	Sat Nov 14 22:15:34 2009 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,57 +0,0 @@
-Index: trunk/configure.in
-===================================================================
---- trunk/configure.in	(revision 17477)
-+++ trunk/configure.in	(working copy)
-@@ -37,8 +37,9 @@
- # --enable-debug:
- USER_OPTIMIZATION=""
- for flag in $CFLAGS; do
--  if test -z $(echo $flag | sed -e 's,-O.,,'); then
--    USER_OPTIMIZATION="$USER_OPTIMIZATION ${flag}"
-+  tmp_flag=`echo $flag | sed -e 's,-O.,,'`
-+  if test -z "$tmp_flag"; then
-+    USER_OPTIMIZATION="$USER_OPTIMIZATION ${tmp_flag}"
-   fi
- done
- 
-@@ -684,13 +685,14 @@
- 
- AC_ARG_ENABLE( debug,
-   [  --enable-debug               compile with debugging flags set],
-+  [
-        # remove any optimization flags...
--       CFLAGS=$(echo $CFLAGS | sed -e 's,-O.,,g')
-+       CFLAGS=`echo ${CFLAGS} | sed -e 's,-O.,,g'`
-        # ...except for those the user wants.
-        CFLAGS="${CFLAGS} -g ${USER_OPTIMIZATION}"
-        LDFLAGS="${LDFLAGS} -g"
-        AC_DEFINE(DEBUG_MEMORY,1,Enable debug memory),
--       AC_DEFINE(DEBUG_MEMORY,0,Enable debug memory) )
-+       AC_DEFINE(DEBUG_MEMORY,0,Enable debug memory)])
- 
- AC_ARG_ENABLE( profile,
-   [  --enable-profile             compile with profiling set],
-@@ -1162,8 +1164,8 @@
- dnl GIVEN_CFLAGS=$(echo $GIVEN_CFLAGS | sed -e "s;-I/sw/include ;;" | sed -e "s;-I/sw/include$;;")
- case $host_os in
- 	darwin*)
--		GTKHTML_CFLAGS=$(echo $GTKHTML_CFLAGS | ${SED} -e "s;-I/sw/include ;;" | ${SED} -e "s;-I/sw/include$;;")
--		GTKHTML_CFLAGS=$(echo $GTKHTML_CFLAGS | ${SED} -e "s;-I/sw/include/gtkhtml ;;" | ${SED} -e "s;-I/sw/includ/gtkhtmle$;;")
-+		GTKHTML_CFLAGS=`echo $GTKHTML_CFLAGS | ${SED} -e "s;-I/sw/include ;;" | ${SED} -e "s;-I/sw/include$;;"`
-+		GTKHTML_CFLAGS=`echo $GTKHTML_CFLAGS | ${SED} -e "s;-I/sw/include/gtkhtml ;;" | ${SED} -e "s;-I/sw/includ/gtkhtmle$;;"`
- 		;;
- esac
-     AC_SUBST(GTKHTML_CFLAGS)
-Index: trunk/macros/as-scrub-include.m4
-===================================================================
---- trunk/macros/as-scrub-include.m4	(revision 17477)
-+++ trunk/macros/as-scrub-include.m4	(working copy)
-@@ -26,7 +26,7 @@
-   dnl line
-   INCLUDE_DIRS=`echo $INCLUDE_DIRS | sed -e 's/.*<...> search starts here://' | sed -e 's/End of search list.*//'`
-   for dir in $INCLUDE_DIRS; do
--    GIVEN_CFLAGS=$(echo $GIVEN_CFLAGS | sed -e "s;-I$dir ;;" | sed -e "s;-I$dir$;;")
-+    GIVEN_CFLAGS=`echo $GIVEN_CFLAGS | sed -e "s;-I$dir ;;" | sed -e "s;-I$dir$;;"`
-   done
-   [$1]=$GIVEN_CFLAGS
- ])