mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
Convert gncmod-csv-import/export into ordinary libraries
As with qif-import use gnucash plugin interface to initialize the code.
This commit is contained in:
parent
468f34477a
commit
4b51c630f4
@ -53,7 +53,7 @@ endif()
|
|||||||
target_link_libraries (gnucash
|
target_link_libraries (gnucash
|
||||||
gnc-ledger-core gnc-gnome gnc-gnome-utils gnc-app-utils
|
gnc-ledger-core gnc-gnome gnc-gnome-utils gnc-app-utils
|
||||||
gnc-engine gnc-module gnc-core-utils gncmod-report gnucash-guile
|
gnc-engine gnc-module gnc-core-utils gncmod-report gnucash-guile
|
||||||
gnc-qif-import
|
gnc-qif-import gnc-csv-import gnc-csv-export
|
||||||
PkgConfig::GTK3 ${GUILE_LDFLAGS} ${GLIB2_LDFLAGS} ${GTK_MAC_LDFLAGS}
|
PkgConfig::GTK3 ${GUILE_LDFLAGS} ${GLIB2_LDFLAGS} ${GTK_MAC_LDFLAGS}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -50,6 +50,8 @@
|
|||||||
#include "gnc-main-window.h"
|
#include "gnc-main-window.h"
|
||||||
#include "gnc-splash.h"
|
#include "gnc-splash.h"
|
||||||
#include "gnc-gnome-utils.h"
|
#include "gnc-gnome-utils.h"
|
||||||
|
#include "gnc-plugin-csv-export.h"
|
||||||
|
#include "gnc-plugin-csv-import.h"
|
||||||
#include "gnc-plugin-file-history.h"
|
#include "gnc-plugin-file-history.h"
|
||||||
#include "gnc-plugin-qif-import.h"
|
#include "gnc-plugin-qif-import.h"
|
||||||
#include "gnc-plugin-report-system.h"
|
#include "gnc-plugin-report-system.h"
|
||||||
@ -482,6 +484,8 @@ gnc_parse_command_line(int *argc, char ***argv)
|
|||||||
static void
|
static void
|
||||||
load_gnucash_plugins()
|
load_gnucash_plugins()
|
||||||
{
|
{
|
||||||
|
gnc_plugin_csv_export_create_plugin();
|
||||||
|
gnc_plugin_csv_import_create_plugin();
|
||||||
gnc_plugin_qif_import_create_plugin ();
|
gnc_plugin_qif_import_create_plugin ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -497,8 +501,6 @@ load_gnucash_modules()
|
|||||||
} modules[] =
|
} modules[] =
|
||||||
{
|
{
|
||||||
{ "gnucash/import-export/ofx", 0, TRUE },
|
{ "gnucash/import-export/ofx", 0, TRUE },
|
||||||
{ "gnucash/import-export/csv-import", 0, TRUE },
|
|
||||||
{ "gnucash/import-export/csv-export", 0, TRUE },
|
|
||||||
{ "gnucash/import-export/log-replay", 0, TRUE },
|
{ "gnucash/import-export/log-replay", 0, TRUE },
|
||||||
{ "gnucash/import-export/aqbanking", 0, TRUE },
|
{ "gnucash/import-export/aqbanking", 0, TRUE },
|
||||||
{ "gnucash/import-export/bi-import", 0, TRUE},
|
{ "gnucash/import-export/bi-import", 0, TRUE},
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
set(csv_export_SOURCES
|
set(csv_export_SOURCES
|
||||||
gncmod-csv-export.c
|
|
||||||
gnc-plugin-csv-export.c
|
gnc-plugin-csv-export.c
|
||||||
assistant-csv-export.c
|
assistant-csv-export.c
|
||||||
csv-tree-export.c
|
csv-tree-export.c
|
||||||
@ -16,18 +15,23 @@ set(csv_export_noinst_HEADERS
|
|||||||
csv-transactions-export.h
|
csv-transactions-export.h
|
||||||
)
|
)
|
||||||
|
|
||||||
add_library(gncmod-csv-export ${csv_export_noinst_HEADERS} ${csv_export_SOURCES})
|
add_library(gnc-csv-export ${csv_export_noinst_HEADERS} ${csv_export_SOURCES})
|
||||||
|
|
||||||
target_link_libraries(gncmod-csv-export gnc-register-gnome gnc-register-core gnc-ledger-core gnc-engine
|
target_link_libraries(gnc-csv-export gnc-register-gnome gnc-register-core gnc-ledger-core gnc-engine
|
||||||
gnc-module gnc-gnome-utils gnc-gnome gnc-app-utils gnc-core-utils)
|
gnc-module gnc-gnome-utils gnc-gnome gnc-app-utils gnc-core-utils)
|
||||||
|
|
||||||
target_compile_definitions(gncmod-csv-export PRIVATE -DG_LOG_DOMAIN=\"gnc.export.csv\")
|
target_include_directories(gnc-csv-export
|
||||||
|
PUBLIC
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
)
|
||||||
|
|
||||||
|
target_compile_definitions(gnc-csv-export PRIVATE -DG_LOG_DOMAIN=\"gnc.export.csv\")
|
||||||
|
|
||||||
if (APPLE)
|
if (APPLE)
|
||||||
set_target_properties (gncmod-csv-export PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_FULL_LIBDIR}/gnucash")
|
set_target_properties (gnc-csv-export PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_FULL_LIBDIR}/gnucash")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
install(TARGETS gncmod-csv-export
|
install(TARGETS gnc-csv-export
|
||||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
|
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
|
||||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
|
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
|
||||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||||
|
@ -1,73 +0,0 @@
|
|||||||
/********************************************************************\
|
|
||||||
* This program is free software; you can redistribute it and/or *
|
|
||||||
* modify it under the terms of the GNU General Public License as *
|
|
||||||
* published by the Free Software Foundation; either version 2 of *
|
|
||||||
* the License, or (at your option) any later version. *
|
|
||||||
* *
|
|
||||||
* This program is distributed in the hope that it will be useful, *
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
|
||||||
* GNU General Public License for more details. *
|
|
||||||
* *
|
|
||||||
* You should have received a copy of the GNU General Public License*
|
|
||||||
* along with this program; if not, contact: *
|
|
||||||
* *
|
|
||||||
* Free Software Foundation Voice: +1-617-542-5942 *
|
|
||||||
* 51 Franklin Street, Fifth Floor Fax: +1-617-542-2652 *
|
|
||||||
* Boston, MA 02110-1301, USA gnu@gnu.org *
|
|
||||||
\********************************************************************/
|
|
||||||
/** @addtogroup Import_Export
|
|
||||||
@{ */
|
|
||||||
/**@internal
|
|
||||||
@file gncmod-csv-export.c
|
|
||||||
@brief module definition/initialization for the csv exporter
|
|
||||||
@author Copyright (c) 2012 Robert Fewell
|
|
||||||
*/
|
|
||||||
#include <config.h>
|
|
||||||
|
|
||||||
#include <gmodule.h>
|
|
||||||
|
|
||||||
#include "gnc-module.h"
|
|
||||||
#include "gnc-module-api.h"
|
|
||||||
#include "gnc-plugin-csv-export.h"
|
|
||||||
|
|
||||||
GNC_MODULE_API_DECL(libgncmod_csv_export)
|
|
||||||
|
|
||||||
/* version of the gnc module system interface we require */
|
|
||||||
int libgncmod_csv_export_gnc_module_system_interface = 0;
|
|
||||||
|
|
||||||
/* module versioning uses libtool semantics. */
|
|
||||||
int libgncmod_csv_export_gnc_module_current = 0;
|
|
||||||
int libgncmod_csv_export_gnc_module_revision = 0;
|
|
||||||
int libgncmod_csv_export_gnc_module_age = 0;
|
|
||||||
|
|
||||||
//static GNCModule bus_core;
|
|
||||||
//static GNCModule file;
|
|
||||||
|
|
||||||
char *
|
|
||||||
libgncmod_csv_export_gnc_module_path(void)
|
|
||||||
{
|
|
||||||
return g_strdup("gnucash/import-export/csv-export");
|
|
||||||
}
|
|
||||||
|
|
||||||
char *
|
|
||||||
libgncmod_csv_export_gnc_module_description(void)
|
|
||||||
{
|
|
||||||
return g_strdup("Gnome GUI and C code for CSV exporter.");
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
|
||||||
libgncmod_csv_export_gnc_module_init(int refcount)
|
|
||||||
{
|
|
||||||
/* Add menu items with C callbacks */
|
|
||||||
gnc_plugin_csv_export_create_plugin();
|
|
||||||
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
|
||||||
libgncmod_csv_export_gnc_module_end(int refcount)
|
|
||||||
{
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
/** @}*/
|
|
@ -7,7 +7,6 @@ set(csv_import_remote_SOURCES
|
|||||||
)
|
)
|
||||||
|
|
||||||
set(csv_import_SOURCES
|
set(csv_import_SOURCES
|
||||||
gncmod-csv-import.c
|
|
||||||
assistant-csv-account-import.c
|
assistant-csv-account-import.c
|
||||||
assistant-csv-price-import.cpp
|
assistant-csv-price-import.cpp
|
||||||
assistant-csv-trans-import.cpp
|
assistant-csv-trans-import.cpp
|
||||||
@ -58,12 +57,12 @@ set(csv_import_noinst_HEADERS
|
|||||||
gnc-tokenizer-fw.hpp
|
gnc-tokenizer-fw.hpp
|
||||||
)
|
)
|
||||||
|
|
||||||
add_library(gncmod-csv-import ${csv_import_noinst_HEADERS}
|
add_library(gnc-csv-import ${csv_import_noinst_HEADERS}
|
||||||
${csv_import_remote_HEADERS} ${csv_import_remote_SOURCES} ${csv_import_SOURCES}
|
${csv_import_remote_HEADERS} ${csv_import_remote_SOURCES} ${csv_import_SOURCES}
|
||||||
)
|
)
|
||||||
|
|
||||||
target_link_libraries(
|
target_link_libraries(
|
||||||
gncmod-csv-import
|
gnc-csv-import
|
||||||
${Boost_LIBRARIES}
|
${Boost_LIBRARIES}
|
||||||
${ICU4C_I18N_LDFLAGS}
|
${ICU4C_I18N_LDFLAGS}
|
||||||
gnc-generic-import
|
gnc-generic-import
|
||||||
@ -74,18 +73,21 @@ target_link_libraries(
|
|||||||
gnc-module)
|
gnc-module)
|
||||||
|
|
||||||
|
|
||||||
target_compile_definitions(gncmod-csv-import PRIVATE -DG_LOG_DOMAIN=\"gnc.import.csv\")
|
target_compile_definitions(gnc-csv-import PRIVATE -DG_LOG_DOMAIN=\"gnc.import.csv\")
|
||||||
|
|
||||||
target_include_directories(gncmod-csv-import PRIVATE
|
target_include_directories(gnc-csv-import
|
||||||
${ICU4C_I18N_INCLUDE_DIRS}
|
PRIVATE
|
||||||
${CMAKE_SOURCE_DIR}/borrowed/goffice
|
${ICU4C_I18N_INCLUDE_DIRS}
|
||||||
|
${CMAKE_SOURCE_DIR}/borrowed/goffice
|
||||||
|
PUBLIC
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
)
|
)
|
||||||
|
|
||||||
if (APPLE)
|
if (APPLE)
|
||||||
set_target_properties (gncmod-csv-import PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_FULL_LIBDIR}/gnucash")
|
set_target_properties (gnc-csv-import PROPERTIES INSTALL_NAME_DIR "${CMAKE_INSTALL_FULL_LIBDIR}/gnucash")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
install(TARGETS gncmod-csv-import
|
install(TARGETS gnc-csv-import
|
||||||
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
|
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
|
||||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
|
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}/gnucash
|
||||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||||
|
@ -1,73 +0,0 @@
|
|||||||
/********************************************************************\
|
|
||||||
* This program is free software; you can redistribute it and/or *
|
|
||||||
* modify it under the terms of the GNU General Public License as *
|
|
||||||
* published by the Free Software Foundation; either version 2 of *
|
|
||||||
* the License, or (at your option) any later version. *
|
|
||||||
* *
|
|
||||||
* This program is distributed in the hope that it will be useful, *
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
|
||||||
* GNU General Public License for more details. *
|
|
||||||
* *
|
|
||||||
* You should have received a copy of the GNU General Public License*
|
|
||||||
* along with this program; if not, contact: *
|
|
||||||
* *
|
|
||||||
* Free Software Foundation Voice: +1-617-542-5942 *
|
|
||||||
* 51 Franklin Street, Fifth Floor Fax: +1-617-542-2652 *
|
|
||||||
* Boston, MA 02110-1301, USA gnu@gnu.org *
|
|
||||||
\********************************************************************/
|
|
||||||
/** @addtogroup Import_Export
|
|
||||||
@{ */
|
|
||||||
/**@internal
|
|
||||||
@file gncmod-csv-import.c
|
|
||||||
@brief module definition/initialization for the csv importer
|
|
||||||
@author Copyright (c) 2012 Robert Fewell
|
|
||||||
*/
|
|
||||||
#include <config.h>
|
|
||||||
|
|
||||||
#include <gmodule.h>
|
|
||||||
|
|
||||||
#include "gnc-module.h"
|
|
||||||
#include "gnc-module-api.h"
|
|
||||||
#include "gnc-plugin-csv-import.h"
|
|
||||||
|
|
||||||
GNC_MODULE_API_DECL(libgncmod_csv_import)
|
|
||||||
|
|
||||||
/* version of the gnc module system interface we require */
|
|
||||||
int libgncmod_csv_import_gnc_module_system_interface = 0;
|
|
||||||
|
|
||||||
/* module versioning uses libtool semantics. */
|
|
||||||
int libgncmod_csv_import_gnc_module_current = 0;
|
|
||||||
int libgncmod_csv_import_gnc_module_revision = 0;
|
|
||||||
int libgncmod_csv_import_gnc_module_age = 0;
|
|
||||||
|
|
||||||
//static GNCModule bus_core;
|
|
||||||
//static GNCModule file;
|
|
||||||
|
|
||||||
char *
|
|
||||||
libgncmod_csv_import_gnc_module_path(void)
|
|
||||||
{
|
|
||||||
return g_strdup("gnucash/import-export/csv-import");
|
|
||||||
}
|
|
||||||
|
|
||||||
char *
|
|
||||||
libgncmod_csv_import_gnc_module_description(void)
|
|
||||||
{
|
|
||||||
return g_strdup("Gnome GUI and C code for CSV importer.");
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
|
||||||
libgncmod_csv_import_gnc_module_init(int refcount)
|
|
||||||
{
|
|
||||||
/* Add menu items with C callbacks */
|
|
||||||
gnc_plugin_csv_import_create_plugin();
|
|
||||||
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
|
||||||
libgncmod_csv_import_gnc_module_end(int refcount)
|
|
||||||
{
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
/** @}*/
|
|
@ -6,12 +6,12 @@ set(CSV_IMP_TEST_INCLUDE_DIRS
|
|||||||
${CMAKE_SOURCE_DIR}/common/test-core
|
${CMAKE_SOURCE_DIR}/common/test-core
|
||||||
${GLIB2_INCLUDE_DIRS}
|
${GLIB2_INCLUDE_DIRS}
|
||||||
)
|
)
|
||||||
set(CSV_IMP_TEST_LIBS gncmod-csv-import gnc-engine test-core)
|
set(CSV_IMP_TEST_LIBS gnc-csv-import gnc-engine test-core)
|
||||||
|
|
||||||
# This test does not run in Win32
|
# This test does not run in Win32
|
||||||
if (NOT WIN32)
|
if (NOT WIN32)
|
||||||
set(MODULEPATH ${CMAKE_SOURCE_DIR}/gnucash/import-export/csv-imp)
|
set(MODULEPATH ${CMAKE_SOURCE_DIR}/gnucash/import-export/csv-imp)
|
||||||
set(gtest_csv_imp_LIBS gncmod-csv-import ${GLIB2_LDFLAGS} gtest)
|
set(gtest_csv_imp_LIBS gnc-csv-import ${GLIB2_LDFLAGS} gtest)
|
||||||
set(gtest_csv_imp_INCLUDES
|
set(gtest_csv_imp_INCLUDES
|
||||||
${MODULEPATH}
|
${MODULEPATH}
|
||||||
${CSV_IMP_TEST_INCLUDE_DIRS})
|
${CSV_IMP_TEST_INCLUDE_DIRS})
|
||||||
|
@ -296,7 +296,6 @@ gnucash/import-export/bi-import/gnc-plugin-bi-import.c
|
|||||||
gnucash/import-export/csv-exp/assistant-csv-export.c
|
gnucash/import-export/csv-exp/assistant-csv-export.c
|
||||||
gnucash/import-export/csv-exp/csv-transactions-export.c
|
gnucash/import-export/csv-exp/csv-transactions-export.c
|
||||||
gnucash/import-export/csv-exp/csv-tree-export.c
|
gnucash/import-export/csv-exp/csv-tree-export.c
|
||||||
gnucash/import-export/csv-exp/gncmod-csv-export.c
|
|
||||||
gnucash/import-export/csv-exp/gnc-plugin-csv-export.c
|
gnucash/import-export/csv-exp/gnc-plugin-csv-export.c
|
||||||
gnucash/import-export/csv-imp/assistant-csv-account-import.c
|
gnucash/import-export/csv-imp/assistant-csv-account-import.c
|
||||||
gnucash/import-export/csv-imp/assistant-csv-price-import.cpp
|
gnucash/import-export/csv-imp/assistant-csv-price-import.cpp
|
||||||
@ -311,7 +310,6 @@ gnucash/import-export/csv-imp/gnc-imp-props-tx.cpp
|
|||||||
gnucash/import-export/csv-imp/gnc-imp-settings-csv.cpp
|
gnucash/import-export/csv-imp/gnc-imp-settings-csv.cpp
|
||||||
gnucash/import-export/csv-imp/gnc-imp-settings-csv-price.cpp
|
gnucash/import-export/csv-imp/gnc-imp-settings-csv-price.cpp
|
||||||
gnucash/import-export/csv-imp/gnc-imp-settings-csv-tx.cpp
|
gnucash/import-export/csv-imp/gnc-imp-settings-csv-tx.cpp
|
||||||
gnucash/import-export/csv-imp/gncmod-csv-import.c
|
|
||||||
gnucash/import-export/csv-imp/gnc-plugin-csv-import.c
|
gnucash/import-export/csv-imp/gnc-plugin-csv-import.c
|
||||||
gnucash/import-export/csv-imp/gnc-tokenizer.cpp
|
gnucash/import-export/csv-imp/gnc-tokenizer.cpp
|
||||||
gnucash/import-export/csv-imp/gnc-tokenizer-csv.cpp
|
gnucash/import-export/csv-imp/gnc-tokenizer-csv.cpp
|
||||||
|
Loading…
Reference in New Issue
Block a user