From a1e9c4b8807e2c5a7948b4630855f8e51c1ecd93 Mon Sep 17 00:00:00 2001 From: Didier Raboud Date: Mon, 17 Dec 2012 18:38:36 +0100 Subject: [PATCH] Allow building and installation of documentation Run `make doc` for the building. Then `make install` will install the generated documentation. - Move Doxyfile to Doxyfile.in, put CMAKE_CURRENT_SOURCE_DIR into it. --- CMakeLists.txt | 13 +++++++++++++ Doxyfile => Doxyfile.in | 4 ++-- 2 files changed, 15 insertions(+), 2 deletions(-) rename Doxyfile => Doxyfile.in (99%) diff --git a/CMakeLists.txt b/CMakeLists.txt index b60ac938..d12d5092 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -167,3 +167,16 @@ set(COLOBOT_LIB_DIR ${CMAKE_INSTALL_PREFIX}/lib/colobot CACHE PATH "Colobot libr add_subdirectory(src bin) install(DIRECTORY ../data DESTINATION ${COLOBOT_DATA_DIR}) + +# Build and install documentation +set(COLOBOT_DOC_DIR ${CMAKE_INSTALL_PREFIX}/share/doc/colobot CACHE PATH "Colobot documentation directory") + +find_package(Doxygen) +if(DOXYGEN_FOUND AND DOXYGEN_DOT_FOUND) + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile @ONLY) + add_custom_target(doc + ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + COMMENT "Generating API documentation with Doxygen" VERBATIM ) + install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/doc/ DESTINATION ${COLOBOT_DOC_DIR} OPTIONAL) +endif(DOXYGEN_FOUND AND DOXYGEN_DOT_FOUND) diff --git a/Doxyfile b/Doxyfile.in similarity index 99% rename from Doxyfile rename to Doxyfile.in index 8c5fffe4..028e5de7 100644 --- a/Doxyfile +++ b/Doxyfile.in @@ -665,8 +665,8 @@ WARN_LOGFILE = # directories like "/usr/src/myproject". Separate the files or directories # with spaces. -INPUT = "src" \ - "src/CBot" +INPUT = "@CMAKE_CURRENT_SOURCE_DIR@/src" \ + "@CMAKE_CURRENT_SOURCE_DIR@/src/CBot" # This tag can be used to specify the character encoding of the source files # that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is