mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
core-utils - move wrapper code to bindings/guile
Note core-utils.i is used by both the guile and the python bindings so it is moved up to the common bindings directory, while guile specific changes are in bindings/guile.
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
add_subdirectory(guile)
|
||||
add_subdirectory(python)
|
||||
|
||||
set_local_dist(bindings_DIST_local CMakeLists.txt )
|
||||
set_local_dist(bindings_DIST_local CMakeLists.txt core-utils.i)
|
||||
set(bindings_DIST ${bindings_DIST_local} ${guile_DIST} ${python_bindings_DIST} PARENT_SCOPE)
|
||||
|
||||
@@ -1,5 +1,11 @@
|
||||
add_subdirectory(test)
|
||||
|
||||
# Command to generate the swig-core-utils-guile.c wrapper file
|
||||
gnc_add_swig_guile_command (swig-core-utils-guile-c
|
||||
SWIG_CORE_UTILS_GUILE_C swig-core-utils-guile.c
|
||||
${CMAKE_SOURCE_DIR}/bindings/core-utils.i ${CMAKE_SOURCE_DIR}/libgnucash/core-utils
|
||||
)
|
||||
|
||||
set(guile_HEADERS
|
||||
gnc-guile-utils.h)
|
||||
|
||||
@@ -7,19 +13,28 @@ set(guile_SOURCES
|
||||
gnc-guile-bindings.c
|
||||
gnc-guile-utils.c)
|
||||
|
||||
add_library(gnucash-guile SHARED
|
||||
${guile_SOURCES}
|
||||
${guile_HEADERS}
|
||||
${SWIG_CORE_UTILS_GUILE_C})
|
||||
|
||||
add_library(gnucash-guile SHARED ${guile_SOURCES} ${guile_HEADERS})
|
||||
add_dependencies(gnucash-guile
|
||||
swig-runtime-h)
|
||||
|
||||
target_include_directories(gnucash-guile
|
||||
PRIVATE
|
||||
${CMAKE_SOURCE_DIR}/common
|
||||
${CMAKE_BINARY_DIR}/common
|
||||
${CMAKE_SOURCE_DIR}/libgnucash/core-utils
|
||||
${CMAKE_BINARY_DIR}/libgnucash/core-utils # For gnc-version-info.h
|
||||
${GLIB2_INCLUDE_DIRS}
|
||||
${GUILE_INCLUDE_DIRS}
|
||||
${GTK_MAC_INCLUDE_DIRS}
|
||||
PUBLIC
|
||||
${CMAKE_CURRENT_SOURCE_DIR})
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
${GUILE_INCLUDE_DIRS})
|
||||
|
||||
target_link_libraries(gnucash-guile
|
||||
gnc-core-utils
|
||||
${GUILE_LDFLAGS}
|
||||
${GLIB2_LDFLAGS}
|
||||
${GOBJECT_LDFLAGS}
|
||||
@@ -31,6 +46,8 @@ install(TARGETS gnucash-guile
|
||||
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
||||
)
|
||||
|
||||
# Scheme
|
||||
|
||||
set(GUILE_DEPENDS scm-core-utils scm-gnc-module gncmod-engine)
|
||||
|
||||
gnc_add_scheme_targets(scm-scm
|
||||
@@ -47,10 +64,25 @@ gnc_add_scheme_targets(price-quotes
|
||||
"scm-scm;scm-app-utils"
|
||||
FALSE)
|
||||
|
||||
set (core_utils_SCHEME core-utils.scm)
|
||||
|
||||
set_local_dist(guile_DIST_local CMakeLists.txt utilities.scm price-quotes.scm
|
||||
${guile_SOURCES} ${guile_HEADERS}
|
||||
set(GUILE_OUTPUT_DIR gnucash)
|
||||
set(GUILE_DEPENDS gnc-core-utils gnucash-guile)
|
||||
|
||||
gnc_add_scheme_targets(scm-core-utils
|
||||
"${core_utils_SCHEME}"
|
||||
${GUILE_OUTPUT_DIR}
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
|
||||
set_local_dist(guile_DIST_local
|
||||
CMakeLists.txt
|
||||
core-utils.scm
|
||||
utilities.scm
|
||||
price-quotes.scm
|
||||
${guile_SOURCES}
|
||||
${guile_HEADERS})
|
||||
set(guile_DIST ${guile_DIST_local} ${test_guile_DIST} PARENT_SCOPE)
|
||||
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
;; Guile 2 needs to find the symbols from the extension at compile time already
|
||||
(eval-when
|
||||
(compile load eval expand)
|
||||
(load-extension "libgnc-core-utils" "scm_init_sw_core_utils_module"))
|
||||
(load-extension "libgnucash-guile" "gnc_guile_bindings_init"))
|
||||
|
||||
(use-modules (sw_core_utils))
|
||||
|
||||
@@ -32,12 +32,17 @@ void gnc_guile_bindings_init(void);
|
||||
|
||||
static int is_initialized = 0;
|
||||
|
||||
extern SCM
|
||||
scm_init_sw_core_utils_module (void);
|
||||
|
||||
void
|
||||
gnc_guile_bindings_init(void)
|
||||
{
|
||||
if (!is_initialized)
|
||||
{
|
||||
/* Do what's necessary to initialize the bindings */
|
||||
scm_init_sw_core_utils_module();
|
||||
|
||||
is_initialized = 1;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,17 +2,11 @@
|
||||
|
||||
add_subdirectory(test)
|
||||
|
||||
# Command to generate the swig-core-utils-guile.c wrapper file
|
||||
gnc_add_swig_guile_command (swig-core-utils-guile-c
|
||||
SWIG_CORE_UTILS_GUILE_C swig-core-utils-guile.c
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/core-utils.i ""
|
||||
)
|
||||
|
||||
# Command to generate the swig-core-utils-python.c wrapper file
|
||||
gnc_add_swig_python_command (swig-core-utils-python
|
||||
SWIG_CORE_UTILS_PYTHON_C SWIG_CORE_UTILS_PYTHON_PY
|
||||
swig-core-utils-python.c sw_core_utils.py
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/core-utils.i ""
|
||||
${CMAKE_SOURCE_DIR}/bindings/core-utils.i ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
)
|
||||
|
||||
set (core_utils_SOURCES
|
||||
@@ -93,25 +87,24 @@ set(core_utils_noinst_HEADERS
|
||||
)
|
||||
|
||||
set(core_utils_ALL_SOURCES ${core_utils_SOURCES} ${core_utils_noinst_HEADERS})
|
||||
set(core_utils_ALL_LIBRARIES ${Boost_LIBRARIES} ${GUILE_LDFLAGS} ${GLIB2_LDFLAGS} ${GOBJECT_LDFLAGS} ${GTK_MAC_LDFLAGS})
|
||||
set(core_utils_ALL_LIBRARIES ${Boost_LIBRARIES} ${GLIB2_LDFLAGS} ${GOBJECT_LDFLAGS} ${GTK_MAC_LDFLAGS})
|
||||
set(core_utils_ALL_INCLUDES
|
||||
${CMAKE_SOURCE_DIR}/common
|
||||
${CMAKE_BINARY_DIR}/common
|
||||
${CMAKE_CURRENT_BINARY_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
${GLIB2_INCLUDE_DIRS}
|
||||
${GUILE_INCLUDE_DIRS}
|
||||
${GTK_MAC_INCLUDE_DIRS})
|
||||
|
||||
set_local_dist(core_utils_DIST_local ${core_utils_ALL_SOURCES} CMakeLists.txt core-utils.i core-utils.scm gncla-dir.h.in)
|
||||
set_local_dist(core_utils_DIST_local ${core_utils_ALL_SOURCES} CMakeLists.txt gncla-dir.h.in)
|
||||
set(core_utils_DIST ${core_utils_DIST_local} ${test_core_utils_DIST} PARENT_SCOPE)
|
||||
|
||||
if (MAC_INTEGRATION)
|
||||
list(APPEND core_utils_ALL_LIBRARIES ${OSX_EXTRA_LIBRARIES})
|
||||
endif()
|
||||
|
||||
add_library(gnc-core-utils ${core_utils_ALL_SOURCES} ${SWIG_CORE_UTILS_GUILE_C})
|
||||
add_dependencies(gnc-core-utils gnc-vcs-info swig-runtime-h)
|
||||
add_library(gnc-core-utils ${core_utils_ALL_SOURCES})
|
||||
add_dependencies(gnc-core-utils gnc-vcs-info)
|
||||
|
||||
target_link_libraries(gnc-core-utils ${core_utils_ALL_LIBRARIES})
|
||||
|
||||
@@ -170,17 +163,3 @@ endif()
|
||||
|
||||
# No headers to install
|
||||
|
||||
# Scheme
|
||||
|
||||
set (core_utils_SCHEME core-utils.scm)
|
||||
|
||||
set(GUILE_OUTPUT_DIR gnucash)
|
||||
set(GUILE_DEPENDS gnc-core-utils)
|
||||
|
||||
gnc_add_scheme_targets(scm-core-utils
|
||||
"${core_utils_SCHEME}"
|
||||
${GUILE_OUTPUT_DIR}
|
||||
"${GUILE_DEPENDS}"
|
||||
FALSE
|
||||
)
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
# This is a list of files which contain translatable strings.
|
||||
# This file was autogenerated by cmake.
|
||||
bindings/guile/core-utils.scm
|
||||
bindings/guile/gnc-guile-bindings.c
|
||||
bindings/guile/gnc-guile-utils.c
|
||||
bindings/guile/price-quotes.scm
|
||||
@@ -603,7 +604,6 @@ libgnucash/backend/xml/sixtp-stack.cpp
|
||||
libgnucash/backend/xml/sixtp-to-dom-parser.cpp
|
||||
libgnucash/backend/xml/sixtp-utils.cpp
|
||||
libgnucash/core-utils/binreloc.c
|
||||
libgnucash/core-utils/core-utils.scm
|
||||
libgnucash/core-utils/gnc-environment.c
|
||||
libgnucash/core-utils/gnc-filepath-utils.cpp
|
||||
libgnucash/core-utils/gnc-gkeyfile-utils.c
|
||||
|
||||
Reference in New Issue
Block a user