[Cutecash] Prepare cutecash for integration of the glibmm wrappers of the engine objects.

This would be an excellent test case for those wrappers...

git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@21485 57a11ea4-9604-0410-9ed3-97b8803252fd
This commit is contained in:
Christian Stimming
2011-10-24 07:59:30 +00:00
parent 5a2b27c233
commit e08bea1336
5 changed files with 67 additions and 0 deletions

View File

@@ -43,6 +43,7 @@ PKG_CHECK_MODULES (GCONF2 gconf-2.0>=2.22)
PKG_CHECK_MODULES (GOBJECT gobject-2.0>=2.20)
PKG_CHECK_MODULES (GMODULE gmodule-2.0>=2.20)
PKG_CHECK_MODULES (GTHREAD gthread-2.0>=2.20)
PKG_CHECK_MODULES (GLIBMM glibmm-2.4>=2.24)
IF (MSVC)
MESSAGE (STATUS "Hint: To create the import libraries for the gnome DLLs (e.g. gconf-2.lib), use the dlltool as follows: pexports bin/libgconf-2-4.dll > lib/libgconf-2.def ; dlltool -d lib/libgconf-2.def -D bin/libgconf-2-4.dll -l lib/gconf-2.lib")

View File

@@ -95,6 +95,7 @@ IF (WITH_SQL)
ADD_SUBDIRECTORY (backend/dbi)
ADD_SUBDIRECTORY (backend/sql)
ENDIF (WITH_SQL)
ADD_SUBDIRECTORY (optional/gtkmm)
ADD_SUBDIRECTORY (gnc)

View File

@@ -8,6 +8,7 @@ LINK_DIRECTORIES (${GLIB2_LIBRARY_DIRS}
${GTHREAD_LIBRARY_DIRS}
${GCONF2_LIBRARY_DIRS}
${GUILE_LIBRARY_DIRS}
${GLIBMM_LIBRARY_DIRS}
# ${GWENHYWFAR_LIBRARY_DIRS}
# ${AQBANKING_LIBRARY_DIRS}
)
@@ -86,6 +87,7 @@ QT4_WRAP_CPP (gnc_MOC_SOURCES ${gnc_QOBJECT_HEADERS})
QT4_WRAP_UI (gnc_FORMS_HEADERS ${gnc_FORMS})
INCLUDE_DIRECTORIES (${GLIB2_INCLUDE_DIRS})
INCLUDE_DIRECTORIES (${GLIBMM_INCLUDE_DIRS})
INCLUDE_DIRECTORIES (${LIBINTL_INCLUDE_PATH})
INCLUDE_DIRECTORIES (${REGEX_INCLUDE_PATH})
INCLUDE_DIRECTORIES (${GUILE_INCLUDE_DIRS})
@@ -95,6 +97,7 @@ INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/libqof/qof) # for qof.h
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/gnc-module) # for gnc-glib-utils.h
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/core-utils) # for gnc-glib-utils.h
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/engine) # for gnc-glib-utils.h
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/optional/gtkmm)
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/backend/xml)
INCLUDE_DIRECTORIES (${CMAKE_BINARY_DIR}/src/engine) # for swig-runtime.h
INCLUDE_DIRECTORIES (${CMAKE_CURRENT_BINARY_DIR}) # for ui_mainwindow.h
@@ -120,7 +123,10 @@ IF (WITH_AQBANKING)
TARGET_LINK_LIBRARIES (cutecash gnc-aqbanking)
# TARGET_LINK_LIBRARIES (cutecash ${AQBANKING_LIBRARIES} ${GWENHYWFAR_LIBRARIES})
ENDIF (WITH_AQBANKING)
#TARGET_LINK_LIBRARIES (cutecash libgncmod-gtkmm) # requires replacing the qt-based engine wrappers
TARGET_LINK_LIBRARIES (cutecash engine gnc-module core-utils qof)
TARGET_LINK_LIBRARIES (cutecash ${GLIBMM_LIBRARIES})
TARGET_LINK_LIBRARIES (cutecash ${GCONF2_LIBRARIES})
TARGET_LINK_LIBRARIES (cutecash ${GTHREAD_LIBRARIES} ${GOBJECT_LIBRARIES} ${GMODULE_LIBRARIES} ${GLIB2_LIBRARIES})
TARGET_LINK_LIBRARIES (cutecash ${GUILE_LIBRARIES})

View File

@@ -58,6 +58,11 @@ extern "C"
# include <locale.h>
#endif
// Glibmm includes
#include <glibmm.h>
#include "gncmm/wrap_init.hpp"
// Qt includes
#include <QApplication>
#include "mainwindow.hpp"
@@ -172,6 +177,10 @@ main(int argc, char ** argv)
gnc_module_system_init();
gnc_engine_init_static(argc, argv);
// Initialize glibmm
Glib::init();
//gnc::wrap_init(); // requires replacing the qt-based engine wrappers
// Call the statically-linked versions of the backend init
// functions
gnc_module_init_backend_xml();

View File

@@ -0,0 +1,50 @@
# CMakeLists.txt for src/optional/gtkmm
ADD_DEFINITIONS (-DG_LOG_DOMAIN=\"gnc.gtkmm\")
INCLUDE_DIRECTORIES (${GLIB2_INCLUDE_DIRS})
INCLUDE_DIRECTORIES (${GLIBMM_INCLUDE_DIRS})
INCLUDE_DIRECTORIES (${LIBINTL_INCLUDE_PATH})
INCLUDE_DIRECTORIES (${REGEX_INCLUDE_PATH})
INCLUDE_DIRECTORIES (${GUILE_INCLUDE_DIRS})
INCLUDE_DIRECTORIES (${CMAKE_BINARY_DIR}/src ) # for config.h
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src ) # for gnc-ui.h
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/libqof/qof) # for qof.h
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/gnc-module) # for gnc-glib-utils.h
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/core-utils) # for gnc-glib-utils.h
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/engine) # for gnc-glib-utils.h
INCLUDE_DIRECTORIES (${CMAKE_SOURCE_DIR}/src/backend/xml)
INCLUDE_DIRECTORIES (${CMAKE_BINARY_DIR}/src/engine) # for swig-runtime.h
SET (libgncmod_gtkmm_HEADERS
gncmm/Account.hpp
gncmm/Book.hpp
gncmm/Commodity.hpp
gncmm/GncInstance.hpp
gncmm/Numeric.hpp
gncmm/Split.hpp
gncmm/Transaction.hpp
gncmm/private/Account_p.hpp
gncmm/private/Book_p.hpp
gncmm/private/Commodity_p.hpp
gncmm/private/GncInstance_p.hpp
gncmm/private/Split_p.hpp
gncmm/private/Transaction_p.hpp
gncmm/wrap_init.hpp
)
SET (libgncmod_gtkmm_SOURCES
gncmm/Account.cpp
gncmm/Book.cpp
gncmm/Commodity.cpp
gncmm/GncInstance.cpp
gncmm/Numeric.cpp
gncmm/Split.cpp
gncmm/Transaction.cpp
gncmm/wrap_init.cpp
)
ADD_LIBRARY (libgncmod-gtkmm
${libgncmod_gtkmm_SOURCES}
${libgncmod_gtkmm_HEADERS}
)