# Enable operator IN_LIST to avoid problems with CMake version 3.12 if(POLICY CMP0057) cmake_policy(SET CMP0057 NEW) endif() find_package(Doxygen) # Add a target to generate API documentation with Doxygen if(DOXYGEN_FOUND) if(${CMAKE_VERSION} VERSION_LESS "3.9.0") # Use old commands if CMake does not support the command doxygen_add_docs set(CMAKE_DOXYGEN_OUTPUT_DIR "${CMAKE_CURRENT_BINARY_DIR}/doc") string(REGEX REPLACE ";" " " CMAKE_DOXYGEN_INPUT_LIST "${PROJECT_SOURCE_DIR}/src") configure_file("${CMAKE_CURRENT_SOURCE_DIR}/resources/doxygen/Doxyfile.in" "${CMAKE_CURRENT_BINARY_DIR}/Doxyfile" @ONLY) add_custom_target(doc ${DOXYGEN_EXECUTABLE} "${CMAKE_CURRENT_BINARY_DIR}/Doxyfile" DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/Doxyfile" COMMENT "Generating API documentation with Doxygen" VERBATIM) else() # We use the doxygen command of CMake instead of using the separate config file set(DOXYGEN_PROJECT_NAME "Storm") set(DOXYGEN_PROJECT_BRIEF "A Modern Probabilistic Model Checker") set(DOXYGEN_BRIEF_MEMBER_DESC YES) set(DOXYGEN_REPEAT_BRIEF YES) set(DOXYGEN_JAVADOC_AUTOBRIEF YES) set(DOXYGEN_QT_AUTOBRIEF YES) set(DOXYGEN_EXTRACT_ALL YES) set(DOXYGEN_EXTRACT_STATIC YES) set(DOXYGEN_SOURCE_BROWSER YES) set(DOXYGEN_GENERATE_TREEVIEW YES) set(DOXYGEN_CASE_SENSE_NAMES NO) set(DOXYGEN_HTML_TIMESTAMP YES) set(DOXYGEN_CREATE_SUBDIRS YES) set(DOXYGEN_OUTPUT_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/doc") doxygen_add_docs( doc "${PROJECT_SOURCE_DIR}/src" COMMENT "Generating API documentation with Doxygen" ) endif() endif(DOXYGEN_FOUND)