diff options
author | Slávek Banko <slavek.banko@axis.cz> | 2020-06-16 15:05:00 +0200 |
---|---|---|
committer | Slávek Banko <slavek.banko@axis.cz> | 2020-06-17 17:23:25 +0200 |
commit | 90aed94879cdd2fcb1824a114387b8c8aa651f19 (patch) | |
tree | 31e19b0c03c80df10526b3cde42f15cfcbbf633e | |
parent | 52d5b0c2378b07b40554d15fecaa65d1228cfa9a (diff) | |
download | tdelibs-90aed94879cdd2fcb1824a114387b8c8aa651f19.tar.gz tdelibs-90aed94879cdd2fcb1824a114387b8c8aa651f19.zip |
Prepare the complete ksgmltools2 in the binary directory
instead of updating in the source.
The configuration file mechanism is used to update items in
general.entities instead of loading the file and replacing
it with regular expressions.
This relates to bug 3135.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
(cherry picked from commit a94bf7ad14415944b4ed7f6bdded31101c716600)
-rw-r--r-- | doc/tdespell/CMakeLists.txt | 2 | ||||
-rw-r--r-- | kdoctools/CMakeLists.txt | 35 | ||||
-rw-r--r-- | kdoctools/ConfigureChecks.cmake | 26 | ||||
-rw-r--r-- | kdoctools/customization/entities/general.entities | 3 |
4 files changed, 29 insertions, 37 deletions
diff --git a/doc/tdespell/CMakeLists.txt b/doc/tdespell/CMakeLists.txt index 72836d572..e750cdfc7 100644 --- a/doc/tdespell/CMakeLists.txt +++ b/doc/tdespell/CMakeLists.txt @@ -9,4 +9,4 @@ # ################################################# -tde_create_handbook( SRCDIR ${CMAKE_SOURCE_DIR}/kdoctools DESTINATION tdespell ) +tde_create_handbook( SRCDIR ${CMAKE_BINARY_DIR}/ksgmltools2 DESTINATION tdespell ) diff --git a/kdoctools/CMakeLists.txt b/kdoctools/CMakeLists.txt index 8657e277e..e12cf7895 100644 --- a/kdoctools/CMakeLists.txt +++ b/kdoctools/CMakeLists.txt @@ -37,19 +37,28 @@ install( PROGRAMS move_tdeio_help_cache.sh DESTINATION ${KCONF_UPDATE_INSTALL_DI install( FILES tdeio_help.upd DESTINATION ${KCONF_UPDATE_INSTALL_DIR} ) install( FILES help.protocol ghelp.protocol DESTINATION ${SERVICES_INSTALL_DIR} ) -# FIXME why automake version is so complicated? -# install-data-local: -# @(for subdir in customization docbook; do \ -# for dir in `( cd $(srcdir)/$$subdir && find . -type d ! -name CVS | grep -v '\.svn' )`; do \ -# $(mkinstalldirs) $(DESTDIR)$(kde_datadir)/ksgmltools2/$$subdir/$$dir ;\ -# for file in `(cd $(srcdir)/$$subdir && ls -1 $$dir/*)`; do \ -# if test -f $(srcdir)/$$subdir/$$file; then \ -# $(INSTALL_DATA) $(srcdir)/$$subdir/$$file $(DESTDIR)$(kde_datadir)/ksgmltools2/$$subdir/$$file; fi ;\ -# done ;\ -# done ;\ -# done ) -install( DIRECTORY customization docbook DESTINATION ${DATA_INSTALL_DIR}/ksgmltools2 PATTERN ".svn" EXCLUDE ) -install( FILES man-template.docbook template.docbook DESTINATION ${DATA_INSTALL_DIR}/ksgmltools2 ) +file( + COPY + customization docbook + man-template.docbook template.docbook + DESTINATION + ${CMAKE_BINARY_DIR}/ksgmltools2 + PATTERN ".svn" EXCLUDE + REGEX "customization/entities/general.entities$" EXCLUDE +) +configure_file( + customization/entities/general.entities + ${CMAKE_BINARY_DIR}/ksgmltools2/customization/entities/general.entities + @ONLY +) + +install( + DIRECTORY + ${CMAKE_BINARY_DIR}/ksgmltools2/ + DESTINATION + ${DATA_INSTALL_DIR}/ksgmltools2 +) + ##### kbzipfilter_dummy ############################## diff --git a/kdoctools/ConfigureChecks.cmake b/kdoctools/ConfigureChecks.cmake index c98843e23..876f91037 100644 --- a/kdoctools/ConfigureChecks.cmake +++ b/kdoctools/ConfigureChecks.cmake @@ -14,9 +14,11 @@ if( NOT TDE_RELEASE_ENTITIES ) set( ENTITIES_FILE "${CMAKE_CURRENT_SOURCE_DIR}/customization/entities/general.entities" ) if( NOT EXISTS ${TDEVERSION_FILE} ) + file( RELATIVE_PATH TDEVERSION_FILE ${CMAKE_SOURCE_DIR} ${TDEVERSION_FILE} ) tde_message_fatal( "${TDEVERSION_FILE} not found! Check your sources." ) endif( ) if( NOT EXISTS ${ENTITIES_FILE} ) + file( RELATIVE_PATH ENTITIES_FILE ${CMAKE_SOURCE_DIR} ${ENTITIES_FILE} ) tde_message_fatal( "${ENTITIES_FILE} not found! Check your sources." ) endif( ) @@ -65,34 +67,12 @@ if( NOT TDE_RELEASE_ENTITIES ) TDE_RELEASE_DATE "${TDE_RELEASE_DATE}" ) # update entities + file( RELATIVE_PATH ENTITIES_FILE ${CMAKE_SOURCE_DIR} ${ENTITIES_FILE} ) message( STATUS "Updating ${ENTITIES_FILE} TDE Release Version: ${TDE_VERSION_STRING} TDE Release Date: ${TDE_RELEASE_DATE} TDE Release Copyright: ${TDE_RELEASE_COPYRIGHT}" ) - file( READ ${ENTITIES_FILE} ENTITIES_DATA ) - if( "${ENTITIES_DATA}" MATCHES "ENTITY tde-release-version" ) - string( REGEX REPLACE "(ENTITY tde-release-version) \"[^\"]*\"" - "\\1 \"${TDE_VERSION_STRING}\"" ENTITIES_DATA "${ENTITIES_DATA}" ) - else( ) - set( ENTITIES_DATA - "${ENTITIES_DATA}<!ENTITY tde-release-version \"${TDE_VERSION_STRING}\">\n" ) - endif( ) - if( "${ENTITIES_DATA}" MATCHES "ENTITY tde-release-date" ) - string( REGEX REPLACE "(ENTITY tde-release-date) \"[^\"]*\"" - "\\1 \"${TDE_RELEASE_DATE}\"" ENTITIES_DATA "${ENTITIES_DATA}" ) - else( ) - set( ENTITIES_DATA - "${ENTITIES_DATA}<!ENTITY tde-release-date \"${TDE_RELEASE_DATE}\">\n" ) - endif( ) - if( "${ENTITIES_DATA}" MATCHES "ENTITY tde-copyright-date" ) - string( REGEX REPLACE "(ENTITY tde-copyright-date) \"[^\"]*\"" - "\\1 \"${TDE_RELEASE_COPYRIGHT}\"" ENTITIES_DATA "${ENTITIES_DATA}" ) - else( ) - set( ENTITIES_DATA - "${ENTITIES_DATA}<!ENTITY tde-copyright-date \"${TDE_RELEASE_COPYRIGHT}\">\n" ) - endif( ) - file( WRITE ${ENTITIES_FILE} "${ENTITIES_DATA}" ) set( TDE_RELEASE_ENTITIES 1 CACHE INTERNAL "" ) endif( ) diff --git a/kdoctools/customization/entities/general.entities b/kdoctools/customization/entities/general.entities index cfb5f6a7a..478033d90 100644 --- a/kdoctools/customization/entities/general.entities +++ b/kdoctools/customization/entities/general.entities @@ -425,3 +425,6 @@ <!ENTITY tde-team "The &tde; Team"> +<!ENTITY tde-release-version "@TDE_VERSION_STRING@"> +<!ENTITY tde-release-date "@TDE_RELEASE_DATE@"> +<!ENTITY tde-copyright-date "@TDE_RELEASE_COPYRIGHT@"> |