12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- FIND_PACKAGE( Doxygen QUIET)
- IF( DOXYGEN_FOUND )
- IF( DOXYGEN_DOT_FOUND )
- # Compile a doxygen input filter for processing CMake scripts
- INCLUDE(ctkFunctionCMakeDoxygenFilterCompile)
- ctkFunctionCMakeDoxygenFilterCompile(NAMESPACE "CMake")
- # Automatically generate documentation at build time
- SET(all_arg)
- IF (DOCUMENTATION_TARGET_IN_ALL)
- SET(all_arg "ALL")
- ENDIF()
- #
- # User documentation
- #
- SET( CTK_USER_DOCUMENTATION "NO" )
- SET( CTK_ADDITIONAL_EXCLUDE_PATTERN "*_p.h\ *Private.*" )
- SET( CTK_DOCUMENTATION_HTML_TARZ TRUE)
- CONFIGURE_FILE( Doxyfile.txt.in
- ${CMAKE_CURRENT_BINARY_DIR}/UserDoxyfile.txt
- )
- CONFIGURE_FILE(
- ${CMAKE_CURRENT_SOURCE_DIR}/generate_doc.cmake.in
- ${CMAKE_CURRENT_BINARY_DIR}/generate_userdoc.cmake
- @ONLY
- )
- SET(userdoc_output "${CMAKE_CURRENT_BINARY_DIR}/doc/html/index.html")
- # Run doxygen as a custom command driven by a custom target.
- ADD_CUSTOM_COMMAND(
- OUTPUT ${userdoc_output}
- COMMAND ${CMAKE_COMMAND} -P "${CMAKE_CURRENT_BINARY_DIR}/generate_userdoc.cmake"
- DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/generate_userdoc.cmake"
- "${CMAKE_CURRENT_BINARY_DIR}/UserDoxyfile.txt"
- )
- ADD_CUSTOM_TARGET(doc ${all_arg} DEPENDS ${userdoc_output})
- SET_TARGET_PROPERTIES(doc PROPERTIES LABELS Documentation)
- #
- # Dev documentation
- #
- SET( CTK_USER_DOCUMENTATION "YES" )
- SET( CTK_ADDITIONAL_EXCLUDE_PATTERN "" )
- SET( CTK_ADDITIONAL_FILE_PATTERN "*.c \ *.cc \ *.cxx \ *.cpp \ *.c++ \ *.hxx \ *.hpp \ *.h++ \ *.txx \ *.C \ *.CC \ *.C++ \ *.moc" )
- CONFIGURE_FILE( Doxyfile.txt.in
- ${CMAKE_CURRENT_BINARY_DIR}/DevDoxyfile.txt
- )
- ADD_CUSTOM_TARGET( doc-dev
- ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/DevDoxyfile.txt
- DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/DevDoxyfile.txt
- )
- SET_TARGET_PROPERTIES(doc-dev PROPERTIES LABELS Documentation)
- ELSE( DOXYGEN_DOT_FOUND )
- MESSAGE( WARNING
- "Warning: Dot not found - Documentation will not be created"
- )
- ENDIF( DOXYGEN_DOT_FOUND )
- ENDIF( DOXYGEN_FOUND )
|