summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSlávek Banko <[email protected]>2021-05-23 15:51:37 +0200
committerSlávek Banko <[email protected]>2021-05-24 02:07:45 +0200
commit83c3db4678ef2ae540e0ebd68c0ca4a951bd219a (patch)
treefd7660c9c87fc1fdf16026cf30991628d1b2f0b2
parent9f0628564db959dc3dbc3c8e9cd9efc99d8c3bfd (diff)
downloadtdebase-83c3db4678ef2ae540e0ebd68c0ca4a951bd219a.tar.gz
tdebase-83c3db4678ef2ae540e0ebd68c0ca4a951bd219a.zip
Use CMake rules instead of calling external shell scripts
generate_apidox and install_apidox from the cmake submodule folder. After generating apidox, links pointing to build directory are fixed. Signed-off-by: Slávek Banko <[email protected]>
-rw-r--r--CMakeLists.txt41
1 files changed, 35 insertions, 6 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c2fac134d..98c841fbb 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -50,13 +50,42 @@ tde_setup_paths( )
##### add apidox targets ############
-add_custom_target(apidox
- COMMAND "./generate_apidox" "${CMAKE_SOURCE_DIR}" "${CMAKE_BINARY_DIR}" "${HTML_INSTALL_DIR}" "/usr/share/qt3/doc/html"
- WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/cmake/")
+if( "${CMAKE_VERSION}" VERSION_LESS "3.1" )
+ set( CMAKE_ENV "env" )
+else()
+ set( CMAKE_ENV "${CMAKE_COMMAND};-E;env" )
+endif()
+
+add_custom_target( apidox
+ COMMAND ${CMAKE_ENV}
+ "TQTDOCDIR=/usr/share/tqt3/doc/html"
+ "DOXDATA=${HTML_INSTALL_DIR}/en/common"
+ ${CMAKE_SOURCE_DIR}/admin/doxygen.sh
+ --no-modulename
+ ${CMAKE_SOURCE_DIR}
+ COMMAND
+ find ${CMAKE_BINARY_DIR}/apidocs -name '*.html' |
+ xargs -r sed -i 's|${CMAKE_BINARY_DIR}/apidocs|${HTML_INSTALL_DIR}/en/${PROJECT_NAME}-apidocs|g'
+ COMMAND
+ find ${CMAKE_BINARY_DIR}/apidocs -name '*.tag' |
+ xargs -r sed -i 's|${CMAKE_SOURCE_DIR}/|${PROJECT_NAME}/|g'
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
+)
-add_custom_target(install-apidox
- COMMAND "./install_apidox" "${CMAKE_SOURCE_DIR}" "${CMAKE_BINARY_DIR}" "${HTML_INSTALL_DIR}" "${CMAKE_INSTALL_PREFIX}"
- WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/cmake/")
+add_custom_target( install-apidox
+ COMMAND ${CMAKE_COMMAND} -E echo Apidox installed in ${HTML_INSTALL_DIR}/en/${PROJECT_NAME}-apidocs
+)
+
+install( CODE "
+ if( EXISTS ${CMAKE_BINARY_DIR}/apidocs )
+ file(
+ INSTALL ${CMAKE_BINARY_DIR}/apidocs/
+ DESTINATION ${HTML_INSTALL_DIR}/en/${PROJECT_NAME}-apidocs
+ PATTERN doxygen_sqlite3.db EXCLUDE
+ PATTERN installdox-slow EXCLUDE
+ )
+ endif()"
+)
##### optional stuff ############################