FIND_PACKAGE(Doxygen) IF(DOXYGEN_EXECUTABLE AND UNIX) ADD_CUSTOM_COMMAND( OUTPUT ${DOCUMENTATION_OUTPUT_PATH}/${PROJECT_NAME} COMMAND mkdir -p ${DOCUMENTATION_OUTPUT_PATH}/${PROJECT_NAME} ) ADD_CUSTOM_COMMAND( OUTPUT ${DOCUMENTATION_OUTPUT_PATH}/${PROJECT_NAME}/Doxyfile COMMAND sed ${CMAKE_SOURCE_DIR}/Doxyfile -e 's!PROJECT_SOURCE_DIR!${PROJECT_SOURCE_DIR}!g' -e 's!DOCUMENTATION_OUTPUT_PATH!${DOCUMENTATION_OUTPUT_PATH}!g' -e 's!_PROJECT_NAME!${PROJECT_NAME}!g' -e 's!TAG_FILES!${TAG_FILES}!g' > Doxyfile DEPENDS ${CMAKE_SOURCE_DIR}/Doxyfile ${DOCUMENTATION_OUTPUT_PATH}/${PROJECT_NAME} WORKING_DIRECTORY ${DOCUMENTATION_OUTPUT_PATH}/${PROJECT_NAME} ) ADD_CUSTOM_COMMAND( OUTPUT ${DOCUMENTATION_OUTPUT_PATH}/${PROJECT_NAME}/index.html COMMAND ${DOXYGEN_EXECUTABLE} DEPENDS ${DOCUMENTATION_OUTPUT_PATH}/${PROJECT_NAME}/Doxyfile WORKING_DIRECTORY ${DOCUMENTATION_OUTPUT_PATH}/${PROJECT_NAME} ) ADD_CUSTOM_TARGET(doxygen ALL echo DEPENDS ${DOCUMENTATION_OUTPUT_PATH}/${PROJECT_NAME}/index.html ) INSTALL( DIRECTORY ${DOCUMENTATION_OUTPUT_PATH}/${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/share/doc/${CMAKE_PROJECT_NAME}-${SIGEN_VERSION}/${PROJECT_NAME} COMPONENT documentation ) ENDIF(DOXYGEN_EXECUTABLE AND UNIX)