r15928 - gnucash/trunk - Make sure that each GNCModule has a unique set of symbols.
Derek Atkins
warlord at cvs.gnucash.org
Wed Apr 18 19:23:08 EDT 2007
Author: warlord
Date: 2007-04-18 19:23:04 -0400 (Wed, 18 Apr 2007)
New Revision: 15928
Trac: http://svn.gnucash.org/trac/changeset/15928
Modified:
gnucash/trunk/
gnucash/trunk/src/app-utils/gncmod-app-utils.c
gnucash/trunk/src/backend/file/gncmod-backend-file.c
gnucash/trunk/src/business/business-core/file/gncmod-business-backend-file.c
gnucash/trunk/src/business/business-core/gncmod-business-core.c
gnucash/trunk/src/business/business-gnome/gncmod-business-gnome.c
gnucash/trunk/src/business/business-utils/gncmod-business-utils.c
gnucash/trunk/src/business/dialog-tax-table/gncmod-dialog-tax-table.c
gnucash/trunk/src/calculation/gncmod-calculation.c
gnucash/trunk/src/engine/gncmod-engine.c
gnucash/trunk/src/engine/test-core/gncmod-test-engine.c
gnucash/trunk/src/gnc-module/gnc-module-api.h
gnucash/trunk/src/gnc-module/gnc-module.c
gnucash/trunk/src/gnc-module/test/misc-mods/agedver.c
gnucash/trunk/src/gnc-module/test/misc-mods/futuremodsys.c
gnucash/trunk/src/gnc-module/test/misc-mods/incompatdep.c
gnucash/trunk/src/gnc-module/test/mod-bar/gnc-mod-bar.c
gnucash/trunk/src/gnc-module/test/mod-baz/gnc-mod-baz.c
gnucash/trunk/src/gnc-module/test/mod-foo/gnc-mod-foo.c
gnucash/trunk/src/gnome-search/gncmod-gnome-search.c
gnucash/trunk/src/gnome-utils/gncmod-gnome-utils.c
gnucash/trunk/src/import-export/binary-import/gncmod-binary-import.c
gnucash/trunk/src/import-export/gncmod-generic-import.c
gnucash/trunk/src/import-export/hbci/gncmod-hbci.c
gnucash/trunk/src/import-export/log-replay/gncmod-log-replay.c
gnucash/trunk/src/import-export/ofx/gncmod-ofx-import.c
gnucash/trunk/src/import-export/qif-import/gncmod-qif-import.c
gnucash/trunk/src/import-export/qif-io-core/gncmod-qifiocore.c
gnucash/trunk/src/register/ledger-core/gncmod-ledger-core.c
gnucash/trunk/src/register/register-core/gncmod-register-core.c
gnucash/trunk/src/register/register-gnome/gncmod-register-gnome.c
gnucash/trunk/src/report/locale-specific/us/gncmod-locale-reports-us.c
gnucash/trunk/src/report/report-gnome/gncmod-report-gnome.c
gnucash/trunk/src/report/report-system/gncmod-report-system.c
gnucash/trunk/src/report/standard-reports/gncmod-standard-reports.c
gnucash/trunk/src/report/stylesheets/gncmod-stylesheets.c
gnucash/trunk/src/report/utility-reports/gncmod-utility-reports.c
gnucash/trunk/src/tax/us/gncmod-tax-us.c
gnucash/trunk/src/test-core/gncmod-test.c
Log:
Make sure that each GNCModule has a unique set of symbols.
Change gnc-module.c to load the unique symbols based on the module filename.
Change gnc-module-api.h to declare the functions based on a provided filename.
Change ALL the modules to use the new symbol names.
This change should allow the code to build cleanly on the MacIntel platform.
Property changes on: gnucash/trunk
___________________________________________________________________
Name: svk:merge
- 3889ce50-311e-0410-a464-f059747ec5d1:/local/gnucash/branches/swig-redo:802
3889ce50-311e-0410-a464-f059747ec5d1:/local/gnucash/trunk:1037
57a11ea4-9604-0410-9ed3-97b8803252fd:/gnucash/branches/gobject-engine-dev-warlord:15827
d2ab10a8-8a95-4986-baff-8d511d9f15b2:/local/gnucash/branches/gobject-engine-dev-warlord:14369
d2ab10a8-8a95-4986-baff-8d511d9f15b2:/local/gnucash/branches/gobject-engine-dev-warlord1:14446
d2ab10a8-8a95-4986-baff-8d511d9f15b2:/local/gnucash/trunk:14542
d2ab10a8-8a95-4986-baff-8d511d9f15b2:/local/gnucash/trunk2:13366
+ 3889ce50-311e-0410-a464-f059747ec5d1:/local/gnucash/branches/swig-redo:802
3889ce50-311e-0410-a464-f059747ec5d1:/local/gnucash/trunk:1037
57a11ea4-9604-0410-9ed3-97b8803252fd:/gnucash/branches/gobject-engine-dev-warlord:15827
d2ab10a8-8a95-4986-baff-8d511d9f15b2:/local/gnucash/branches/gobject-engine-dev-warlord:14369
d2ab10a8-8a95-4986-baff-8d511d9f15b2:/local/gnucash/branches/gobject-engine-dev-warlord1:14446
d2ab10a8-8a95-4986-baff-8d511d9f15b2:/local/gnucash/trunk:14543
d2ab10a8-8a95-4986-baff-8d511d9f15b2:/local/gnucash/trunk2:13366
Modified: gnucash/trunk/src/app-utils/gncmod-app-utils.c
===================================================================
--- gnucash/trunk/src/app-utils/gncmod-app-utils.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/app-utils/gncmod-app-utils.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -16,22 +16,24 @@
#include "gnc-hooks.h"
#include "gnc-exp-parser.h"
+GNC_MODULE_API_DECL(libgncmod_app_utils)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_app_utils_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_app_utils_gnc_module_current = 0;
+int libgncmod_app_utils_gnc_module_revision = 0;
+int libgncmod_app_utils_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_app_utils_gnc_module_path(void) {
return g_strdup("gnucash/app-utils");
}
char *
-gnc_module_description(void) {
+libgncmod_app_utils_gnc_module_description(void) {
return g_strdup("Utilities for building gnc applications");
}
@@ -54,7 +56,7 @@
extern SCM scm_init_sw_app_utils_module(void);
int
-gnc_module_init(int refcount)
+libgncmod_app_utils_gnc_module_init(int refcount)
{
/* load the engine (we depend on it) */
if(!gnc_module_load("gnucash/engine", 0)) {
@@ -82,7 +84,7 @@
}
int
-gnc_module_end(int refcount)
+libgncmod_app_utils_gnc_module_end(int refcount)
{
if (refcount == 0)
gnc_component_manager_shutdown ();
Modified: gnucash/trunk/src/backend/file/gncmod-backend-file.c
===================================================================
--- gnucash/trunk/src/backend/file/gncmod-backend-file.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/backend/file/gncmod-backend-file.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -12,31 +12,33 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
+GNC_MODULE_API_DECL(libgncmod_backend_file)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgnc_backend_file_utils_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_backend_file_gnc_module_current = 0;
+int libgncmod_backend_file_gnc_module_revision = 0;
+int libgncmod_backend_file_gnc_module_age = 0;
static GNCModule engine;
char *
-gnc_module_path(void)
+libgncmod_backend_file_gnc_module_path(void)
{
return g_strdup("gnucash/backend/file");
}
char *
-gnc_module_description(void)
+libgncmod_backend_file_gnc_module_description(void)
{
return g_strdup("The binary and XML (v1 and v2) backends for GnuCash");
}
int
-gnc_module_init(int refcount)
+libgncmod_backend_file_gnc_module_init(int refcount)
{
engine = gnc_module_load("gnucash/engine", 0);
if(!engine) return FALSE;
@@ -49,12 +51,12 @@
}
int
-gnc_module_end(int refcount)
+libgncmod_backend_file_gnc_module_end(int refcount)
{
int unload = TRUE;
if (engine)
- unload = gnc_module_unload(engine);
+ unload = libgnc_backend_file_utils_gnc_module_unload(engine);
if (refcount == 0)
engine = NULL;
Modified: gnucash/trunk/src/business/business-core/file/gncmod-business-backend-file.c
===================================================================
--- gnucash/trunk/src/business/business-core/file/gncmod-business-backend-file.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/business/business-core/file/gncmod-business-backend-file.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -43,32 +43,34 @@
#include "gnc-tax-table-xml-v2.h"
#include "gnc-vendor-xml-v2.h"
+GNC_MODULE_API_DECL(libgncmod_business_backend_file)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_business_backend_file_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_business_backend_file_gnc_module_current = 0;
+int libgncmod_business_backend_file_gnc_module_revision = 0;
+int libgncmod_business_backend_file_gnc_module_age = 0;
static GNCModule bus_core;
static GNCModule file;
char *
-gnc_module_path(void)
+libgncmod_business_backend_file_gnc_module_path(void)
{
return g_strdup("gnucash/business-core-file");
}
char *
-gnc_module_description(void)
+libgncmod_business_backend_file_gnc_module_description(void)
{
return g_strdup("The XML (v2) parsers for GnuCash business objects");
}
int
-gnc_module_init(int refcount)
+libgncmod_business_backend_file_gnc_module_init(int refcount)
{
if(!gnc_engine_is_initialized()) { return FALSE; }
@@ -94,7 +96,7 @@
}
int
-gnc_module_end(int refcount)
+libgncmod_business_backend_file_gnc_module_end(int refcount)
{
int unload = TRUE;
Modified: gnucash/trunk/src/business/business-core/gncmod-business-core.c
===================================================================
--- gnucash/trunk/src/business/business-core/gncmod-business-core.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/business/business-core/gncmod-business-core.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -42,31 +42,33 @@
#include "gncTaxTableP.h"
#include "gncVendorP.h"
+GNC_MODULE_API_DECL(libgncmod_business_core)
+
extern SCM scm_init_sw_business_core_module (void);
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_business_core_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_business_core_gnc_module_current = 0;
+int libgncmod_business_core_gnc_module_revision = 0;
+int libgncmod_business_core_gnc_module_age = 0;
char *
-gnc_module_path(void)
+libgncmod_business_core_gnc_module_path(void)
{
return g_strdup("gnucash/business-core");
}
char *
-gnc_module_description(void)
+libgncmod_business_core_gnc_module_description(void)
{
return g_strdup("The GnuCash business core");
}
int
-gnc_module_init(int refcount)
+libgncmod_business_core_gnc_module_init(int refcount)
{
/* load the engine (we depend on it) */
if(!gnc_module_load("gnucash/engine", 0)) {
@@ -97,6 +99,6 @@
}
int
-gnc_module_end(int refcount) {
+libgncmod_business_core_gnc_module_end(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/business/business-gnome/gncmod-business-gnome.c
===================================================================
--- gnucash/trunk/src/business/business-gnome/gncmod-business-gnome.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/business/business-gnome/gncmod-business-gnome.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -49,29 +49,31 @@
#include "dialog-invoice.h"
#include "dialog-preferences.h"
+GNC_MODULE_API_DECL(libgncmod_business_gnome)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_business_gnome_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_business_gnome_gnc_module_current = 0;
+int libgncmod_business_gnome_gnc_module_revision = 0;
+int libgncmod_business_gnome_gnc_module_age = 0;
char *
-gnc_module_path(void)
+libgncmod_business_gnome_gnc_module_path(void)
{
return g_strdup("gnucash/business-gnome");
}
char *
-gnc_module_description(void)
+libgncmod_business_gnome_gnc_module_description(void)
{
return g_strdup("The GnuCash business module GNOME UI");
}
int
-gnc_module_init(int refcount)
+libgncmod_business_gnome_gnc_module_init(int refcount)
{
/* load business-core: we depend on it -- and it depends on the engine */
if (!gnc_module_load ("gnucash/business-core", 0)) {
@@ -90,7 +92,7 @@
if (!gnc_module_load ("gnucash/report/report-gnome", 0)) {
return FALSE;
}
- // if (!gnc_module_load ("gnucash/report/standard-reports", 0)) {
+ // if (!libgncmod_business_gnome_gnc_module_load ("gnucash/report/standard-reports", 0)) {
// return FALSE;
// }
@@ -137,6 +139,6 @@
}
int
-gnc_module_end(int refcount) {
+libgncmod_business_gnome_gnc_module_end(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/business/business-utils/gncmod-business-utils.c
===================================================================
--- gnucash/trunk/src/business/business-utils/gncmod-business-utils.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/business/business-utils/gncmod-business-utils.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -29,29 +29,31 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
+GNC_MODULE_API_DECL(libgncmod_business_utils)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_business_utils_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_business_utils_gnc_module_current = 0;
+int libgncmod_business_utils_gnc_module_revision = 0;
+int libgncmod_business_utils_gnc_module_age = 0;
char *
-gnc_module_path(void)
+libgncmod_business_utils_gnc_module_path(void)
{
return g_strdup("gnucash/business-utils");
}
char *
-gnc_module_description(void)
+libgncmod_business_utils_gnc_module_description(void)
{
return g_strdup("The GnuCash business utilities module");
}
int
-gnc_module_init(int refcount)
+libgncmod_business_utils_gnc_module_init(int refcount)
{
/* load the business-core (we depend on it) */
if (!gnc_module_load("gnucash/business-core", 0)) {
@@ -74,6 +76,6 @@
}
int
-gnc_module_end(int refcount) {
+libgncmod_business_utils_gnc_module_end(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/business/dialog-tax-table/gncmod-dialog-tax-table.c
===================================================================
--- gnucash/trunk/src/business/dialog-tax-table/gncmod-dialog-tax-table.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/business/dialog-tax-table/gncmod-dialog-tax-table.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -29,30 +29,32 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
+GNC_MODULE_API_DECL(libgncmod_dialog_tax_table)
+
extern SCM scm_init_sw_dialog_tax_table_module(void);
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_dialog_tax_table_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_dialog_tax_table_gnc_module_current = 0;
+int libgncmod_dialog_tax_table_gnc_module_revision = 0;
+int libgncmod_dialog_tax_table_gnc_module_age = 0;
char *
-gnc_module_path(void)
+libgncmod_dialog_tax_table_gnc_module_path(void)
{
return g_strdup("gnucash/dialog-tax-table");
}
char *
-gnc_module_description(void)
+libgncmod_dialog_tax_table_gnc_module_description(void)
{
return g_strdup("The GnuCash tax-table GNOME UI module");
}
int
-gnc_module_init(int refcount)
+libgncmod_dialog_tax_table_gnc_module_init(int refcount)
{
/* load business-core: we depend on it -- and it depends on the engine */
if (!gnc_module_load ("gnucash/business-core", 0)) {
@@ -73,6 +75,6 @@
}
int
-gnc_module_end(int refcount) {
+libgncmod_dialog_tax_table_gnc_module_end(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/calculation/gncmod-calculation.c
===================================================================
--- gnucash/trunk/src/calculation/gncmod-calculation.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/calculation/gncmod-calculation.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -11,31 +11,33 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
+GNC_MODULE_API_DECL(libgncmod_calculation)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_calculation_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_calculation_gnc_module_current = 0;
+int libgncmod_calculation_gnc_module_revision = 0;
+int libgncmod_calculation_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_calculation_gnc_module_path(void) {
return g_strdup("gnucash/calculation");
}
char *
-gnc_module_description(void) {
+libgncmod_calculation_gnc_module_description(void) {
return g_strdup("GnuCash calculation module");
}
int
-gnc_module_init(int refcount) {
+libgncmod_calculation_gnc_module_init(int refcount) {
return TRUE;
}
int
-gnc_module_end(int refcount) {
+libgncmod_calculation_gnc_module_end(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/engine/gncmod-engine.c
===================================================================
--- gnucash/trunk/src/engine/gncmod-engine.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/engine/gncmod-engine.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -12,23 +12,25 @@
#include "gnc-engine.h"
#include "gnc-module-api.h"
+GNC_MODULE_API_DECL(libgncmod_engine)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_engine_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_engine_gnc_module_current = 0;
+int libgncmod_engine_gnc_module_revision = 0;
+int libgncmod_engine_gnc_module_age = 0;
char *
-gnc_module_path(void)
+libgncmod_engine_gnc_module_path(void)
{
return g_strdup("gnucash/engine");
}
char *
-gnc_module_description(void)
+libgncmod_engine_gnc_module_description(void)
{
return g_strdup("The GnuCash accounting engine");
}
@@ -36,7 +38,7 @@
extern SCM scm_init_sw_engine_module(void);
int
-gnc_module_init(int refcount)
+libgncmod_engine_gnc_module_init(int refcount)
{
if(refcount == 0)
{
@@ -52,6 +54,6 @@
}
int
-gnc_module_end(int refcount) {
+libgncmod_engine_gnc_module_end(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/engine/test-core/gncmod-test-engine.c
===================================================================
--- gnucash/trunk/src/engine/test-core/gncmod-test-engine.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/engine/test-core/gncmod-test-engine.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -11,31 +11,33 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
+GNC_MODULE_API_DECL(libgncmod_test_engine)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_test_engine_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_test_engine_gnc_module_current = 0;
+int libgncmod_test_engine_gnc_module_revision = 0;
+int libgncmod_test_engine_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_test_engine_gnc_module_path(void) {
return g_strdup("gnucash/engine/test");
}
char *
-gnc_module_description(void) {
+libgncmod_test_engine_gnc_module_description(void) {
return g_strdup("GnuCash Engine test infrastructure.");
}
int
-gnc_module_init(int refcount) {
+libgncmod_test_engine_gnc_module_init(int refcount) {
return TRUE;
}
int
-gnc_module_end(int refcount) {
+libgncmod_test_engine_gnc_module_end(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/gnc-module/gnc-module-api.h
===================================================================
--- gnucash/trunk/src/gnc-module/gnc-module-api.h 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/gnc-module/gnc-module-api.h 2007-04-18 23:23:04 UTC (rev 15928)
@@ -24,9 +24,10 @@
#ifndef GNC_MODULE_API_H
#define GNC_MODULE_API_H
-char * gnc_module_path (void);
-char * gnc_module_description (void);
-int gnc_module_init (int refcount);
-int gnc_module_end (int refcount);
+#define GNC_MODULE_API_DECL(gmf) \
+ char * gmf##_gnc_module_path (void); \
+ char * gmf##_gnc_module_description (void); \
+ int gmf##_gnc_module_init (int refcount); \
+ int gmf##_gnc_module_end (int refcount);
#endif
Modified: gnucash/trunk/src/gnc-module/gnc-module.c
===================================================================
--- gnucash/trunk/src/gnc-module/gnc-module.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/gnc-module/gnc-module.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -253,6 +253,38 @@
}
+/*
+ * gnc_module_get_symbol
+ * gets the munged symbol from the file
+ */
+static gboolean
+gnc_module_get_symbol(GModule* gmodule, const char* symbol, gpointer res)
+{
+ gchar** strs;
+ gchar* munged_symbol;
+ gboolean ret;
+
+ g_return_val_if_fail(gmodule, FALSE);
+ g_return_val_if_fail(symbol, FALSE);
+
+ /* Separate the file from its extension */
+ strs = g_strsplit(g_path_get_basename(g_module_name(gmodule)), ".", 2);
+
+ /* Translate any dashes to underscores */
+ g_strdelimit(strs[0], "-", '_');
+
+ /* Create the symbol <filename>_<symbol> and retrieve that symbol */
+ munged_symbol = g_strdup_printf("%s_%s", strs[0], symbol);
+ ret = g_module_symbol(gmodule, munged_symbol, res);
+
+ /* printf("(%d) Looking for symbol %s\n", ret, munged_symbol); */
+
+ /* Free everything */
+ g_strfreev(strs);
+ g_free(munged_symbol);
+ return ret;
+}
+
/*************************************************************
* gnc_module_get_info
* check a proposed gnc_module by looking for specific symbols in it;
@@ -278,7 +310,7 @@
/* the modsysver tells us what the expected symbols and their
* types are */
- if (!g_module_symbol(gmodule, "gnc_module_system_interface", &modsysver)) {
+ if (!gnc_module_get_symbol(gmodule, "gnc_module_system_interface", &modsysver)) {
/* g_debug("Module '%s' does not contain 'gnc_module_system_interface'\n", */
/* fullpath); */
goto get_info_close;
@@ -289,12 +321,12 @@
goto get_info_close;
}
- if (!g_module_symbol(gmodule, "gnc_module_init", &initfunc) ||
- !g_module_symbol(gmodule, "gnc_module_path", &pathfunc) ||
- !g_module_symbol(gmodule, "gnc_module_description", &descripfunc) ||
- !g_module_symbol(gmodule, "gnc_module_current", &iface) ||
- !g_module_symbol(gmodule, "gnc_module_revision", &revision) ||
- !g_module_symbol(gmodule, "gnc_module_age", &age)) {
+ if (!gnc_module_get_symbol(gmodule, "gnc_module_init", &initfunc) ||
+ !gnc_module_get_symbol(gmodule, "gnc_module_path", &pathfunc) ||
+ !gnc_module_get_symbol(gmodule, "gnc_module_description", &descripfunc) ||
+ !gnc_module_get_symbol(gmodule, "gnc_module_current", &iface) ||
+ !gnc_module_get_symbol(gmodule, "gnc_module_revision", &revision) ||
+ !gnc_module_get_symbol(gmodule, "gnc_module_age", &age)) {
g_warning("Module '%s' does not match module signature\n", fullpath);
goto get_info_close;
}
@@ -466,7 +498,7 @@
{
gpointer initfunc;
- if (g_module_symbol(gmodule, "gnc_module_init", &initfunc))
+ if (gnc_module_get_symbol(gmodule, "gnc_module_init", &initfunc))
{
/* stick it in the hash table */
info = g_new0(GNCLoadedModule, 1);
@@ -545,7 +577,7 @@
int unload_val = TRUE;
info->load_count--;
- if (g_module_symbol(info->gmodule, "gnc_module_end", &unload_thunk))
+ if (gnc_module_get_symbol(info->gmodule, "gnc_module_end", &unload_thunk))
{
int (* thunk)(int) = unload_thunk;
unload_val = thunk(info->load_count);
Modified: gnucash/trunk/src/gnc-module/test/misc-mods/agedver.c
===================================================================
--- gnucash/trunk/src/gnc-module/test/misc-mods/agedver.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/gnc-module/test/misc-mods/agedver.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -6,23 +6,25 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
-int gnc_module_system_interface = 0;
+GNC_MODULE_API_DECL(libagedver)
-int gnc_module_current = 12;
-int gnc_module_age = 9;
-int gnc_module_revision = 0;
+int libagedver_gnc_module_system_interface = 0;
+int libagedver_gnc_module_current = 12;
+int libagedver_gnc_module_age = 9;
+int libagedver_gnc_module_revision = 0;
+
char *
-gnc_module_path(void) {
+libagedver_gnc_module_path(void) {
return g_strdup("gnucash/agedver");
}
char *
-gnc_module_description(void) {
+libagedver_gnc_module_description(void) {
return g_strdup("this is a frequently extended module");
}
int
-gnc_module_init(int refcount) {
+libagedver_gnc_module_init(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/gnc-module/test/misc-mods/futuremodsys.c
===================================================================
--- gnucash/trunk/src/gnc-module/test/misc-mods/futuremodsys.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/gnc-module/test/misc-mods/futuremodsys.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -7,25 +7,26 @@
#include <gmodule.h>
#include "gnc-module-api.h"
+GNC_MODULE_API_DECL(libfuturemodsys)
-int gnc_module_system_interface = 123456;
+int libfuturemodsys_gnc_module_system_interface = 123456;
-int gnc_module_current = 0;
-int gnc_module_age = 0;
-int gnc_module_revision = 0;
+int libfuturemodsys_gnc_module_current = 0;
+int libfuturemodsys_gnc_module_age = 0;
+int libfuturemodsys_gnc_module_revision = 0;
char *
-gnc_module_path(void) {
+libfuturemodsys_gnc_module_path(void) {
return g_strdup("gnucash/futuremodsys");
}
char *
-gnc_module_description(void) {
+libfuturemodsys_gnc_module_description(void) {
return g_strdup("this is a broken future module");
}
int
-gnc_module_init(int refcount) {
+libfuturemodsys_gnc_module_init(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/gnc-module/test/misc-mods/incompatdep.c
===================================================================
--- gnucash/trunk/src/gnc-module/test/misc-mods/incompatdep.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/gnc-module/test/misc-mods/incompatdep.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -7,25 +7,27 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
-int gnc_module_system_interface = 0;
+GNC_MODULE_API_DECL(libincompatdep)
-int gnc_module_current = 0;
-int gnc_module_age = 0;
-int gnc_module_revision = 0;
+int libincompatdep_gnc_module_system_interface = 0;
+int libincompatdep_gnc_module_current = 0;
+int libincompatdep_gnc_module_age = 0;
+int libincompatdep_gnc_module_revision = 0;
+
char *
-gnc_module_path(void) {
+libincompatdep_gnc_module_path(void) {
return g_strdup("gnucash/incompatdep");
}
char *
-gnc_module_description(void) {
+libincompatdep_gnc_module_description(void) {
return g_strdup("this is a broken module");
}
int
-gnc_module_init(int refcount) {
+libincompatdep_gnc_module_init(int refcount) {
if (gnc_module_load("gnucash/foo", 25))
{
return TRUE;
Modified: gnucash/trunk/src/gnc-module/test/mod-bar/gnc-mod-bar.c
===================================================================
--- gnucash/trunk/src/gnc-module/test/mod-bar/gnc-mod-bar.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/gnc-module/test/mod-bar/gnc-mod-bar.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -9,24 +9,26 @@
#include "gnc-module-api.h"
#include "swig-bar.c"
-int gnc_module_system_interface = 0;
+GNC_MODULE_API_DECL(libgncmodbar)
-int gnc_module_current = 0;
-int gnc_module_age = 0;
-int gnc_module_revision = 0;
+int libgncmodbar_gnc_module_system_interface = 0;
+int libgncmodbar_gnc_module_current = 0;
+int libgncmodbar_gnc_module_age = 0;
+int libgncmodbar_gnc_module_revision = 0;
+
char *
-gnc_module_path(void) {
+libgncmodbar_gnc_module_path(void) {
return g_strdup("gnucash/bar");
}
char *
-gnc_module_description(void) {
+libgncmodbar_gnc_module_description(void) {
return g_strdup("this is a bar module");
}
int
-gnc_module_init(int refcount) {
+libgncmodbar_gnc_module_init(int refcount) {
/* publish the wrapped Scheme bindings for libbar */
scm_init_sw_bar_module();
scm_c_eval_string("(use-modules (sw_bar))");
Modified: gnucash/trunk/src/gnc-module/test/mod-baz/gnc-mod-baz.c
===================================================================
--- gnucash/trunk/src/gnc-module/test/mod-baz/gnc-mod-baz.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/gnc-module/test/mod-baz/gnc-mod-baz.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -10,24 +10,26 @@
#include "gnc-module-api.h"
#include "swig-baz.c"
-int gnc_module_system_interface = 0;
+GNC_MODULE_API_DECL(libgncmodbaz)
-int gnc_module_current = 0;
-int gnc_module_age = 0;
-int gnc_module_revision = 0;
+int libgncmodbaz_gnc_module_system_interface = 0;
+int libgncmodbaz_gnc_module_current = 0;
+int libgncmodbaz_gnc_module_age = 0;
+int libgncmodbaz_gnc_module_revision = 0;
+
char *
-gnc_module_path(void) {
+libgncmodbaz_gnc_module_path(void) {
return g_strdup("gnucash/baz");
}
char *
-gnc_module_description(void) {
+libgncmodbaz_gnc_module_description(void) {
return g_strdup("this is the baz module");
}
int
-gnc_module_init(int refcount) {
+libgncmodbaz_gnc_module_init(int refcount) {
/* load libfoo */
if(gnc_module_load("gnucash/foo", 0)) {
/* publish the wrapped Scheme bindings for libbaz */
Modified: gnucash/trunk/src/gnc-module/test/mod-foo/gnc-mod-foo.c
===================================================================
--- gnucash/trunk/src/gnc-module/test/mod-foo/gnc-mod-foo.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/gnc-module/test/mod-foo/gnc-mod-foo.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -9,25 +9,26 @@
#include "gnc-module-api.h"
#include "swig-foo.c"
+GNC_MODULE_API_DECL(libgncmodfoo)
-int gnc_module_system_interface = 0;
+int libgncmodfoo_gnc_module_system_interface = 0;
-int gnc_module_current = 0;
-int gnc_module_age = 0;
-int gnc_module_revision = 0;
+int libgncmodfoo_gnc_module_current = 0;
+int libgncmodfoo_gnc_module_age = 0;
+int libgncmodfoo_gnc_module_revision = 0;
char *
-gnc_module_path(void) {
+libgncmodfoo_gnc_module_path(void) {
return g_strdup("gnucash/foo");
}
char *
-gnc_module_description(void) {
+libgncmodfoo_gnc_module_description(void) {
return g_strdup("this is a foo module");
}
int
-gnc_module_init(int refcount) {
+libgncmodfoo_gnc_module_init(int refcount) {
/* publish the wrapped Scheme bindings for libfoo */
scm_init_sw_foo_module();
scm_c_eval_string("(use-modules (sw_foo))");
Modified: gnucash/trunk/src/gnome-search/gncmod-gnome-search.c
===================================================================
--- gnucash/trunk/src/gnome-search/gncmod-gnome-search.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/gnome-search/gncmod-gnome-search.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -35,29 +35,31 @@
#include "search-core-type.h"
+GNC_MODULE_API_DECL(libgncmod_gnome_search)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_gnome_search_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_gnome_search_gnc_module_current = 0;
+int libgncmod_gnome_search_gnc_module_revision = 0;
+int libgncmod_gnome_search_gnc_module_age = 0;
char *
-gnc_module_path(void)
+libgncmod_gnome_search_gnc_module_path(void)
{
return g_strdup("gnucash/gnome-search");
}
char *
-gnc_module_description(void)
+libgncmod_gnome_search_gnc_module_description(void)
{
return g_strdup("The GnuCash Gnome Search UI");
}
int
-gnc_module_init(int refcount)
+libgncmod_gnome_search_gnc_module_init(int refcount)
{
/* load the engine (we depend on it) */
if(!gnc_module_load("gnucash/engine", 0)) {
@@ -78,7 +80,7 @@
}
int
-gnc_module_end(int refcount) {
+libgncmod_gnome_search_gnc_module_end(int refcount) {
/* XXX Unload the other modules */
if (refcount == 0) {
Modified: gnucash/trunk/src/gnome-utils/gncmod-gnome-utils.c
===================================================================
--- gnucash/trunk/src/gnome-utils/gncmod-gnome-utils.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/gnome-utils/gncmod-gnome-utils.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -23,22 +23,24 @@
#include "gnc-druid-provider-file-gnome.h"
#include "gnc-druid-provider-multifile-gnome.h"
+GNC_MODULE_API_DECL(libgncmod_gnome_utils)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_gnome_utils_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_gnome_utils_gnc_module_current = 0;
+int libgncmod_gnome_utils_gnc_module_revision = 0;
+int libgncmod_gnome_utils_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_gnome_utils_gnc_module_path(void) {
return g_strdup("gnucash/gnome-utils");
}
char *
-gnc_module_description(void) {
+libgncmod_gnome_utils_gnc_module_description(void) {
return g_strdup("Utilities for using Gnome/Gtk with GnuCash");
}
@@ -53,7 +55,7 @@
extern SCM scm_init_sw_gnome_utils_module(void);
int
-gnc_module_init(int refcount) {
+libgncmod_gnome_utils_gnc_module_init(int refcount) {
/* load the engine (we depend on it) */
if(!gnc_module_load("gnucash/engine", 0)) {
return FALSE;
@@ -88,7 +90,7 @@
}
int
-gnc_module_end(int refcount)
+libgncmod_gnome_utils_gnc_module_end(int refcount)
{
return TRUE;
}
Modified: gnucash/trunk/src/import-export/binary-import/gncmod-binary-import.c
===================================================================
--- gnucash/trunk/src/import-export/binary-import/gncmod-binary-import.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/import-export/binary-import/gncmod-binary-import.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -14,27 +14,29 @@
#include "gnc-module-api.h"
#include "druid-commodity.h"
+GNC_MODULE_API_DECL(libgncmod_binary_import)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_binary_import_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_binary_import_gnc_module_current = 0;
+int libgncmod_binary_import_gnc_module_revision = 0;
+int libgncmod_binary_import_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_binary_import_gnc_module_path(void) {
return g_strdup("gnucash/import-export/binary-import");
}
char *
-gnc_module_description(void) {
+libgncmod_binary_import_gnc_module_description(void) {
return g_strdup("Utilities importing GnuCash binary files");
}
int
-gnc_module_init(int refcount) {
+libgncmod_binary_import_gnc_module_init(int refcount) {
/* load the engine (we depend on it) */
if(!gnc_module_load("gnucash/engine", 0)) {
return FALSE;
@@ -57,6 +59,6 @@
}
int
-gnc_module_end(int refcount) {
+libgncmod_binary_import_gnc_module_end(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/import-export/gncmod-generic-import.c
===================================================================
--- gnucash/trunk/src/import-export/gncmod-generic-import.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/import-export/gncmod-generic-import.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -13,30 +13,33 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
+
+GNC_MODULE_API_DECL(libgncmod_generic_import)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_generic_import_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_generic_import_gnc_module_current = 0;
+int libgncmod_generic_import_gnc_module_revision = 0;
+int libgncmod_generic_import_gnc_module_age = 0;
/*static GNCModule engine; NOTUSED */
char *
-gnc_module_path(void)
+libgncmod_generic_import_gnc_module_path(void)
{
return g_strdup("gnucash/import-export");
}
char *
-gnc_module_description(void)
+libgncmod_generic_import_gnc_module_description(void)
{
return g_strdup("Gnome GUI and C code for the generic import functions");
}
int
-gnc_module_init(int refcount)
+libgncmod_generic_import_gnc_module_init(int refcount)
{
if(!gnc_module_load("gnucash/engine", 0))
{
@@ -62,7 +65,7 @@
}
int
-gnc_module_end(int refcount)
+libgncmod_generic_import_gnc_module_end(int refcount)
{
return TRUE;
}
Modified: gnucash/trunk/src/import-export/hbci/gncmod-hbci.c
===================================================================
--- gnucash/trunk/src/import-export/hbci/gncmod-hbci.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/import-export/hbci/gncmod-hbci.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -18,28 +18,30 @@
#include <gwenhywfar/gwenhywfar.h>
#include "dialog-preferences.h"
+GNC_MODULE_API_DECL(libgncmod_hbci)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_hbci_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_hbci_gnc_module_current = 0;
+int libgncmod_hbci_gnc_module_revision = 0;
+int libgncmod_hbci_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_hbci_gnc_module_path(void) {
return g_strdup("gnucash/import-export/hbci");
}
char *
-gnc_module_description(void) {
+libgncmod_hbci_gnc_module_description(void) {
return g_strdup("Support for Online Banking protocols");
}
int
-gnc_module_init(int refcount)
+libgncmod_hbci_gnc_module_init(int refcount)
{
/* load the engine (we depend on it) */
if(!gnc_module_load("gnucash/engine", 0)) {
@@ -71,7 +73,7 @@
}
int
-gnc_module_end(int refcount) {
+libgncmod_hbci_gnc_module_end(int refcount) {
gnc_AB_BANKING_delete(0);
/* Finalize gwen library */
Modified: gnucash/trunk/src/import-export/log-replay/gncmod-log-replay.c
===================================================================
--- gnucash/trunk/src/import-export/log-replay/gncmod-log-replay.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/import-export/log-replay/gncmod-log-replay.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -33,32 +33,34 @@
#include "gnc-module-api.h"
#include "gnc-plugin-log-replay.h"
+GNC_MODULE_API_DECL(libgncmod_log_replay)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_log_replay_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_log_replay_gnc_module_current = 0;
+int libgncmod_log_replay_gnc_module_revision = 0;
+int libgncmod_log_replay_gnc_module_age = 0;
//static GNCModule bus_core;
//static GNCModule file;
char *
-gnc_module_path(void)
+libgncmod_log_replay_gnc_module_path(void)
{
return g_strdup("gnucash/import-export/log-replay");
}
char *
-gnc_module_description(void)
+libgncmod_log_replay_gnc_module_description(void)
{
return g_strdup("C code for log file replay");
}
int
-gnc_module_init(int refcount)
+libgncmod_log_replay_gnc_module_init(int refcount)
{
if(!gnc_module_load("gnucash/engine", 0))
{
@@ -84,7 +86,7 @@
}
int
-gnc_module_end(int refcount)
+libgncmod_log_replay_gnc_module_end(int refcount)
{
return TRUE;
}
Modified: gnucash/trunk/src/import-export/ofx/gncmod-ofx-import.c
===================================================================
--- gnucash/trunk/src/import-export/ofx/gncmod-ofx-import.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/import-export/ofx/gncmod-ofx-import.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -32,32 +32,34 @@
#include "gnc-module-api.h"
#include "gnc-plugin-ofx.h"
+GNC_MODULE_API_DECL(libgncmod_ofx)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_ofx_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_ofx_gnc_module_current = 0;
+int libgncmod_ofx_gnc_module_revision = 0;
+int libgncmod_ofx_gnc_module_age = 0;
//static GNCModule bus_core;
//static GNCModule file;
char *
-gnc_module_path(void)
+libgncmod_ofx_gnc_module_path(void)
{
return g_strdup("gnucash/import-export/ofx");
}
char *
-gnc_module_description(void)
+libgncmod_ofx_gnc_module_description(void)
{
return g_strdup("Gnome GUI and C code for OFX importer using libofx");
}
int
-gnc_module_init(int refcount)
+libgncmod_ofx_gnc_module_init(int refcount)
{
if(!gnc_module_load("gnucash/engine", 0))
{
@@ -83,7 +85,7 @@
}
int
-gnc_module_end(int refcount)
+libgncmod_ofx_gnc_module_end(int refcount)
{
return TRUE;
}
Modified: gnucash/trunk/src/import-export/qif-import/gncmod-qif-import.c
===================================================================
--- gnucash/trunk/src/import-export/qif-import/gncmod-qif-import.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/import-export/qif-import/gncmod-qif-import.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -16,29 +16,31 @@
#include "gnc-plugin-qif-import.h"
+GNC_MODULE_API_DECL(libgncmod_qif_import)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_qif_import_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_qif_import_gnc_module_current = 0;
+int libgncmod_qif_import_gnc_module_revision = 0;
+int libgncmod_qif_import_gnc_module_age = 0;
char *
-gnc_module_path(void)
+libgncmod_qif_import_gnc_module_path(void)
{
return g_strdup("gnucash/import-export/qif-import");
}
char *
-gnc_module_description(void)
+libgncmod_qif_import_gnc_module_description(void)
{
return g_strdup("Gnome GUI and Scheme code for QIF importer");
}
int
-gnc_module_init(int refcount)
+libgncmod_qif_import_gnc_module_init(int refcount)
{
if(!gnc_module_load("gnucash/engine", 0))
{
@@ -72,7 +74,7 @@
}
int
-gnc_module_end(int refcount)
+libgncmod_qif_import_gnc_module_end(int refcount)
{
return TRUE;
}
Modified: gnucash/trunk/src/import-export/qif-io-core/gncmod-qifiocore.c
===================================================================
--- gnucash/trunk/src/import-export/qif-io-core/gncmod-qifiocore.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/import-export/qif-io-core/gncmod-qifiocore.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -11,27 +11,29 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
+GNC_MODULE_API_DECL(libgncmod_qifiocore)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_qifiocore_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_qifiocore_gnc_module_current = 0;
+int libgncmod_qifiocore_gnc_module_revision = 0;
+int libgncmod_qifiocore_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_qifiocore_gnc_module_path(void) {
return g_strdup("gnucash/qif-io/core");
}
char *
-gnc_module_description(void) {
+libgncmod_qifiocore_gnc_module_description(void) {
return g_strdup("Core components of QIF import/export (non-GUI)");
}
int
-gnc_module_init(int refcount) {
+libgncmod_qifiocore_gnc_module_init(int refcount) {
/* load the engine (we depend on it) */
if(!gnc_module_load("gnucash/engine", 0)) {
return FALSE;
@@ -52,6 +54,6 @@
}
int
-gnc_module_end(int refcount) {
+libgncmod_qifiocore_gnc_module_end(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/register/ledger-core/gncmod-ledger-core.c
===================================================================
--- gnucash/trunk/src/register/ledger-core/gncmod-ledger-core.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/register/ledger-core/gncmod-ledger-core.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -10,27 +10,29 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
+GNC_MODULE_API_DECL(libgncmod_ledger_core)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_ledger_core_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_ledger_core_gnc_module_current = 0;
+int libgncmod_ledger_core_gnc_module_revision = 0;
+int libgncmod_ledger_core_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_ledger_core_gnc_module_path(void) {
return g_strdup("gnucash/register/ledger-core");
}
char *
-gnc_module_description(void) {
+libgncmod_ledger_core_gnc_module_description(void) {
return g_strdup("Toolkit-independent GUI for financial ledgers");
}
int
-gnc_module_init(int refcount) {
+libgncmod_ledger_core_gnc_module_init(int refcount) {
if(!gnc_module_load("gnucash/engine", 0))
{
return FALSE;
Modified: gnucash/trunk/src/register/register-core/gncmod-register-core.c
===================================================================
--- gnucash/trunk/src/register/register-core/gncmod-register-core.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/register/register-core/gncmod-register-core.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -12,27 +12,29 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
+GNC_MODULE_API_DECL(libgncmod_register_core)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_register_core_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_register_core_gnc_module_current = 0;
+int libgncmod_register_core_gnc_module_revision = 0;
+int libgncmod_register_core_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_register_core_gnc_module_path(void) {
return g_strdup("gnucash/register/register-core");
}
char *
-gnc_module_description(void) {
+libgncmod_register_core_gnc_module_description(void) {
return g_strdup("Toolkit-independent GUI for ledger-like table displays");
}
int
-gnc_module_init(int refcount)
+libgncmod_register_core_gnc_module_init(int refcount)
{
if(!gnc_module_load("gnucash/engine", 0))
{
Modified: gnucash/trunk/src/register/register-gnome/gncmod-register-gnome.c
===================================================================
--- gnucash/trunk/src/register/register-gnome/gncmod-register-gnome.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/register/register-gnome/gncmod-register-gnome.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -19,27 +19,29 @@
#include "register-common.h"
#include "table-gnome.h"
+GNC_MODULE_API_DECL(libgncmod_register_gnome)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_register_gnome_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_register_gnome_gnc_module_current = 0;
+int libgncmod_register_gnome_gnc_module_revision = 0;
+int libgncmod_register_gnome_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_register_gnome_gnc_module_path(void) {
return g_strdup("gnucash/register/register-gnome");
}
char *
-gnc_module_description(void) {
+libgncmod_register_gnome_gnc_module_description(void) {
return g_strdup("Gnome GUI for ledger-like table displays");
}
int
-gnc_module_init(int refcount) {
+libgncmod_register_gnome_gnc_module_init(int refcount) {
if(!gnc_module_load("gnucash/register/register-core", 0)) {
return FALSE;
}
Modified: gnucash/trunk/src/report/locale-specific/us/gncmod-locale-reports-us.c
===================================================================
--- gnucash/trunk/src/report/locale-specific/us/gncmod-locale-reports-us.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/report/locale-specific/us/gncmod-locale-reports-us.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -12,17 +12,19 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
+GNC_MODULE_API_DECL(libgncmod_locale_reports_us)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_locale_reports_us_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_locale_reports_us_gnc_module_current = 0;
+int libgncmod_locale_reports_us_gnc_module_revision = 0;
+int libgncmod_locale_reports_us_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_locale_reports_us_gnc_module_path(void) {
/* const char *thislocale = setlocale(LC_ALL, NULL);
if (strncmp(thislocale, "de_DE", 5) == 0)
return g_strdup("gnucash/report/locale-specific/de_DE");
@@ -31,12 +33,12 @@
}
char *
-gnc_module_description(void) {
+libgncmod_locale_reports_us_gnc_module_description(void) {
return g_strdup("US income tax reports and related material");
}
int
-gnc_module_init(int refcount) {
+libgncmod_locale_reports_us_gnc_module_init(int refcount) {
/* load the tax info */
#ifdef LOCALE_SPECIFIC_TAX
const char *thislocale = setlocale(LC_ALL, NULL);
@@ -85,6 +87,6 @@
}
int
-gnc_module_end(int refcount) {
+libgncmod_locale_reports_us_gnc_module_end(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/report/report-gnome/gncmod-report-gnome.c
===================================================================
--- gnucash/trunk/src/report/report-gnome/gncmod-report-gnome.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/report/report-gnome/gncmod-report-gnome.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -18,23 +18,25 @@
#include "window-report.h"
+GNC_MODULE_API_DECL(libgncmod_report_gnome)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_report_gnome_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_report_gnome_gnc_module_current = 0;
+int libgncmod_report_gnome_gnc_module_revision = 0;
+int libgncmod_report_gnome_gnc_module_age = 0;
char *
-gnc_module_path(void)
+libgncmod_report_gnome_gnc_module_path(void)
{
return g_strdup("gnucash/report/report-gnome");
}
char *
-gnc_module_description(void)
+libgncmod_report_gnome_gnc_module_description(void)
{
return g_strdup("Gnome component of GnuCash report generation system");
}
@@ -49,7 +51,7 @@
extern SCM scm_init_sw_report_gnome_module(void);
int
-gnc_module_init(int refcount)
+libgncmod_report_gnome_gnc_module_init(int refcount)
{
if(!gnc_module_load("gnucash/app-utils", 0)) {
return FALSE;
@@ -74,7 +76,7 @@
}
int
-gnc_module_end(int refcount)
+libgncmod_report_gnome_gnc_module_end(int refcount)
{
return TRUE;
}
Modified: gnucash/trunk/src/report/report-system/gncmod-report-system.c
===================================================================
--- gnucash/trunk/src/report/report-system/gncmod-report-system.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/report/report-system/gncmod-report-system.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -12,29 +12,31 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
+GNC_MODULE_API_DECL(libgncmod_report_system)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_report_system_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_report_system_gnc_module_current = 0;
+int libgncmod_report_system_gnc_module_revision = 0;
+int libgncmod_report_system_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_report_system_gnc_module_path(void) {
return g_strdup("gnucash/report/report-system");
}
char *
-gnc_module_description(void) {
+libgncmod_report_system_gnc_module_description(void) {
return g_strdup("Core components of GnuCash report generation system");
}
extern SCM scm_init_sw_report_system_module(void);
int
-gnc_module_init(int refcount) {
+libgncmod_report_system_gnc_module_init(int refcount) {
/* load the engine (we depend on it) */
if(!gnc_module_load("gnucash/engine", 0)) {
return FALSE;
@@ -57,6 +59,6 @@
}
int
-gnc_module_end(int refcount) {
+libgncmod_report_system_gnc_module_end(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/report/standard-reports/gncmod-standard-reports.c
===================================================================
--- gnucash/trunk/src/report/standard-reports/gncmod-standard-reports.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/report/standard-reports/gncmod-standard-reports.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -12,27 +12,29 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
+GNC_MODULE_API_DECL(libgncmod_standard_reports)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_standard_reports_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_standard_reports_gnc_module_current = 0;
+int libgncmod_standard_reports_gnc_module_revision = 0;
+int libgncmod_standard_reports_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_standard_reports_gnc_module_path(void) {
return g_strdup("gnucash/report/standard-reports");
}
char *
-gnc_module_description(void) {
+libgncmod_standard_reports_gnc_module_description(void) {
return g_strdup("Standard income, asset, balance sheet, etc. reports");
}
int
-gnc_module_init(int refcount) {
+libgncmod_standard_reports_gnc_module_init(int refcount) {
/* load the report system */
if(!gnc_module_load("gnucash/report/report-system", 0)) {
return FALSE;
@@ -47,6 +49,6 @@
}
int
-gnc_module_end(int refcount) {
+libgncmod_standard_reports_gnc_module_end(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/report/stylesheets/gncmod-stylesheets.c
===================================================================
--- gnucash/trunk/src/report/stylesheets/gncmod-stylesheets.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/report/stylesheets/gncmod-stylesheets.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -14,27 +14,29 @@
#include "gnc-module-api.h"
#include "gnc-plugin-stylesheets.h"
+GNC_MODULE_API_DECL(libgncmod_stylesheets)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_stylesheets_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_stylesheets_gnc_module_current = 0;
+int libgncmod_stylesheets_gnc_module_revision = 0;
+int libgncmod_stylesheets_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_stylesheets_gnc_module_path(void) {
return g_strdup("gnucash/report/stylesheets");
}
char *
-gnc_module_description(void) {
+libgncmod_stylesheets_gnc_module_description(void) {
return g_strdup("Standard report stylesheet definitions");
}
int
-gnc_module_init(int refcount) {
+libgncmod_stylesheets_gnc_module_init(int refcount) {
/* load the report system */
if(!gnc_module_load("gnucash/report/report-system", 0)) {
return FALSE;
@@ -53,6 +55,6 @@
}
int
-gnc_module_end(int refcount) {
+libgncmod_stylesheets_gnc_module_end(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/report/utility-reports/gncmod-utility-reports.c
===================================================================
--- gnucash/trunk/src/report/utility-reports/gncmod-utility-reports.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/report/utility-reports/gncmod-utility-reports.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -12,27 +12,29 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
+GNC_MODULE_API_DECL(libgncmod_utility_reports)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_utility_reports_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_utility_reports_gnc_module_current = 0;
+int libgncmod_utility_reports_gnc_module_revision = 0;
+int libgncmod_utility_reports_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_utility_reports_gnc_module_path(void) {
return g_strdup("gnucash/report/utility-reports");
}
char *
-gnc_module_description(void) {
+libgncmod_utility_reports_gnc_module_description(void) {
return g_strdup("Non-financial (utility) reports");
}
int
-gnc_module_init(int refcount) {
+libgncmod_utility_reports_gnc_module_init(int refcount) {
/* load the report system */
if(!gnc_module_load("gnucash/report/report-system", 0)) {
return FALSE;
@@ -48,6 +50,6 @@
}
int
-gnc_module_end(int refcount) {
+libgncmod_utility_reports_gnc_module_end(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/tax/us/gncmod-tax-us.c
===================================================================
--- gnucash/trunk/src/tax/us/gncmod-tax-us.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/tax/us/gncmod-tax-us.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -12,17 +12,19 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
+GNC_MODULE_API_DECL(libgncmod_tax_us)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_tax_us_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_tax_us_gnc_module_current = 0;
+int libgncmod_tax_us_gnc_module_revision = 0;
+int libgncmod_tax_us_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_tax_us_gnc_module_path(void) {
#ifdef LOCALE_SPECIFIC_TAX
const char *thislocale = setlocale(LC_ALL, NULL);
if (strncmp(thislocale, "de_DE", 5) == 0)
@@ -33,7 +35,7 @@
}
char *
-gnc_module_description(void) {
+libgncmod_tax_us_gnc_module_description(void) {
return g_strdup("US income tax information");
}
@@ -46,7 +48,7 @@
}
int
-gnc_module_init(int refcount) {
+libgncmod_tax_us_gnc_module_init(int refcount) {
/* This is a very simple hack that loads the (new, special) German
tax definition file in a German locale, or (default) loads the
previous US tax file. */
@@ -61,6 +63,6 @@
}
int
-gnc_module_end(int refcount) {
+libgncmod_tax_us_gnc_module_end(int refcount) {
return TRUE;
}
Modified: gnucash/trunk/src/test-core/gncmod-test.c
===================================================================
--- gnucash/trunk/src/test-core/gncmod-test.c 2007-04-18 23:22:52 UTC (rev 15927)
+++ gnucash/trunk/src/test-core/gncmod-test.c 2007-04-18 23:23:04 UTC (rev 15928)
@@ -11,31 +11,33 @@
#include "gnc-module.h"
#include "gnc-module-api.h"
+GNC_MODULE_API_DECL(libgncmod_test)
+
/* version of the gnc module system interface we require */
-int gnc_module_system_interface = 0;
+int libgncmod_test_gnc_module_system_interface = 0;
/* module versioning uses libtool semantics. */
-int gnc_module_current = 0;
-int gnc_module_revision = 0;
-int gnc_module_age = 0;
+int libgncmod_test_gnc_module_current = 0;
+int libgncmod_test_gnc_module_revision = 0;
+int libgncmod_test_gnc_module_age = 0;
char *
-gnc_module_path(void) {
+libgncmod_test_gnc_module_path(void) {
return g_strdup("gnucash/test");
}
char *
-gnc_module_description(void) {
+libgncmod_test_gnc_module_description(void) {
return g_strdup("Basic GnuCash test infrastructure.");
}
int
-gnc_module_init(int refcount) {
+libgncmod_test_gnc_module_init(int refcount) {
return TRUE;
}
int
-gnc_module_end(int refcount) {
+libgncmod_test_gnc_module_end(int refcount) {
return TRUE;
}
More information about the gnucash-changes
mailing list