mirror of
https://github.com/Gnucash/gnucash.git
synced 2025-02-25 18:55:30 -06:00
Improve handling of generated distributable files
- the two dist_add_... macros now both take a list of file names as argument so more files can be added at once to the dist tarball. - dist_add_generated now creates the right target by itself. There's no need to pass one any more - make the swig generated *.py module files explicit output files - change a couple of custom_targets into custom_commands. The only reason they were defined as targets was to ensure they got built before the dist tarball. This is now properly handled by the dist_add_... macros. - correctly handle dependency on swig-runtime.h (using OBJECT_DEPENDS was not the way to do it according to that property's help page)
This commit is contained in:
@@ -38,19 +38,18 @@ IF (BUILDING_FROM_VCS)
|
||||
)
|
||||
|
||||
SET (SWIG_GNUCASH_CORE_C ${CMAKE_CURRENT_BINARY_DIR}/gnucash_core.c)
|
||||
SET (SWIG_GNUCASH_CORE_C_PY ${CMAKE_CURRENT_BINARY_DIR}/gnucash_core_c.py)
|
||||
SET (SWIG_GNUCASH_CORE_PY ${CMAKE_CURRENT_BINARY_DIR}/gnucash_core_c.py)
|
||||
|
||||
GNC_ADD_SWIG_PYTHON_COMMAND (swig-gnucash-core ${SWIG_GNUCASH_CORE_C}
|
||||
${SWIG_GNUCASH_CORE_PY}
|
||||
${SWIG_FILES}
|
||||
${CMAKE_SOURCE_DIR}/common/base-typemaps.i
|
||||
${CMAKE_SOURCE_DIR}/libgnucash/engine/engine-common.i
|
||||
${GNUCASH_CORE_C_INCLUDES}
|
||||
)
|
||||
add_custom_target(swig-gnucash-core-c-py DEPENDS swig-gnucash-core)
|
||||
dist_add_generated(swig-gnucash-core-c-py gnucash_core_c.py)
|
||||
ELSE()
|
||||
SET (SWIG_GNUCASH_CORE_C gnucash_core.c)
|
||||
SET (SWIG_GNUCASH_CORE_C_PY ${CMAKE_CURRENT_SOURCE_DIR}/gnucash_core_c.py)
|
||||
SET (SWIG_GNUCASH_CORE_PY ${CMAKE_CURRENT_SOURCE_DIR}/gnucash_core_c.py)
|
||||
ENDIF()
|
||||
|
||||
IF(WITH_PYTHON)
|
||||
@@ -87,14 +86,14 @@ IF(WITH_PYTHON)
|
||||
LIBRARY DESTINATION ${PYTHON_SYSCONFIG_OUTPUT}/gnucash
|
||||
ARCHIVE DESTINATION ${PYTHON_SYSCONFIG_OUTPUT}/gnucash
|
||||
)
|
||||
INSTALL(FILES ${PYEXEC_FILES} ${SWIG_GNUCASH_CORE_C_PY}
|
||||
INSTALL(FILES ${PYEXEC_FILES} ${SWIG_GNUCASH_CORE_PY}
|
||||
DESTINATION ${PYTHON_SYSCONFIG_OUTPUT}/gnucash
|
||||
)
|
||||
|
||||
FILE(COPY ${PYEXEC_FILES} DESTINATION ${PYTHON_SYSCONFIG_BUILD}/gnucash)
|
||||
|
||||
ADD_CUSTOM_TARGET(gnucash-core-c-py ALL
|
||||
COMMAND ${CMAKE_COMMAND} -E copy ${SWIG_GNUCASH_CORE_C_PY} ${PYTHON_SYSCONFIG_BUILD}/gnucash
|
||||
COMMAND ${CMAKE_COMMAND} -E copy ${SWIG_GNUCASH_CORE_PY} ${PYTHON_SYSCONFIG_BUILD}/gnucash
|
||||
DEPENDS ${SWIG_GNUCASH_CORE_C})
|
||||
|
||||
ADD_CUSTOM_TARGET(gnucash-core-c-build ALL
|
||||
|
||||
Reference in New Issue
Block a user