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 <slavek.banko@axis.cz>
pull/135/head
Slávek Banko 4 years ago
parent 35d3a3c504
commit da3e395af5
No known key found for this signature in database
GPG Key ID: 608F5293A04BE668

@ -52,13 +52,41 @@ list( APPEND TDECORE_LIBRARY_DIRS ${TQT_LIBRARY_DIRS} )
##### add apidox targets ############
add_custom_target(apidox
COMMAND "./generate_apidox" "${CMAKE_SOURCE_DIR}" "${CMAKE_BINARY_DIR}" "${HTML_INSTALL_DIR}" "/usr/share/tqt3/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"
${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()"
)
##### user requested OPTIONs ####################

Loading…
Cancel
Save