- add_custom_target(doc-full
- ${CMAKE_COMMAND} -DDOCTYPE=full -P RunDoxygen.cmake
- WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
- COMMENT "Generating full documentation with Doxygen" VERBATIM)
- add_custom_target(doc-lib
- ${CMAKE_COMMAND} -DDOCTYPE=lib -P RunDoxygen.cmake
- WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
- COMMENT "Generating library documentation with Doxygen" VERBATIM)
- add_custom_target(doc-user
- ${CMAKE_COMMAND} -DDOCTYPE=user -P RunDoxygen.cmake
- WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
- COMMENT "Generating public API documentation with Doxygen" VERBATIM)
- add_custom_target(doc-xml
- ${CMAKE_COMMAND} -DDOCTYPE=xml -P RunDoxygen.cmake
- WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
- COMMENT "Extracting Doxygen documentation to XML" VERBATIM)
+
+ function (add_doxygen_target TARGET TYPE COMMENT)
+ add_custom_target(${TARGET}
+ ${CMAKE_COMMAND} -DDOCTYPE=${TYPE} -P RunDoxygen.cmake
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ COMMENT "${COMMENT}" VERBATIM)
+ add_dependencies(${TARGET} doxygen-version)
+ endfunction()
+ add_doxygen_target(doc-full full "Generating full documentation with Doxygen")
+ add_doxygen_target(doc-lib lib "Generating library documentation with Doxygen")
+ add_doxygen_target(doc-user user "Generating public API documentation with Doxygen")
+ add_doxygen_target(doc-xml xml "Extracting Doxygen documentation to XML")