FIND_PACKAGE(Doxygen) MACRO (CREATE_DOXYGEN outputdir inputdir name) ADD_CUSTOM_COMMAND( OUTPUT ${outputdir}/${name} COMMAND mkdir -p ${outputdir}/${name} COMMENT "Creating documentation directory for ${name}" ) ADD_CUSTOM_COMMAND( OUTPUT ${outputdir}/${name}/Doxyfile COMMAND sed ${CMAKE_SOURCE_DIR}/Doxyfile -e 's!PROJECT_SOURCE_DIR!${inputdir}!g' -e 's!DOCUMENTATION_OUTPUT_PATH!${outputdir}!g' -e 's!_PROJECT_NAME!${name}!g' -e 's!TAG_FILES!${ARGN}!g' > Doxyfile DEPENDS ${CMAKE_SOURCE_DIR}/Doxyfile ${outputdir}/${name} WORKING_DIRECTORY ${outputdir}/${name} COMMENT "Generating Doxyfile for ${name}" ) ADD_CUSTOM_COMMAND( OUTPUT ${outputdir}/${name}/index.html COMMAND ${DOXYGEN_EXECUTABLE} DEPENDS ${outputdir}/${name}/Doxyfile WORKING_DIRECTORY ${outputdir}/${name} COMMENT "Creating HTML documentation for ${name}" ) ADD_CUSTOM_TARGET(doxygen-${name} DEPENDS ${outputdir}/${name}/index.html ) # INSTALL( # DIRECTORY # ${outputdir}/${name} # DESTINATION # ${CMAKE_INSTALL_PREFIX}/share/doc/${CMAKE_PROJECT_NAME}-${SIGEN_VERSION}/${name} # COMPONENT # documentation # ) ENDMACRO (CREATE_DOXYGEN)