# create docs find_program(CLDOC cldoc) if (CLDOC) get_property(include_dirs DIRECTORY PROPERTY INCLUDE_DIRECTORIES) get_directory_property(DEFS DIRECTORY ${ATOMIC_SOURCE_DIR} COMPILE_DEFINITIONS) FOREACH (infileName ${include_dirs}) LIST(APPEND DOC_INCLUDES "-I${infileName}") ENDFOREACH (infileName) FOREACH (DefName ${DEFS}) LIST(APPEND DOC_DEFINES "-D${DefName}") ENDFOREACH (DefName) string(REGEX MATCHALL "([^\ ]+)" CXX_LIST "${CMAKE_CXX_FLAGS}") string(REGEX MATCHALL "([^\ ]+)" C_LIST "${CMAKE_C_FLAGS}") get_filename_component(COMPNAME ${CMAKE_CURRENT_SOURCE_DIR} NAME) SET(TARGETNAME ${COMPNAME}Docs) MESSAGE(STATUS "Enabling documentation for: " ${COMPNAME}) SET(doc_args generate ${CXX_LIST} ${C_LIST} -std=c++11 -DATOMIC_DEV_BUILD=1 ${DOC_DEFINES} ${DOC_INCLUDES} -- --type html --language c++ --output ${ATOMIC_SOURCE_DIR}/Artifacts/Build/AtomicDocs) LIST(APPEND doc_args ${SOURCE_FILES}) add_custom_target(${TARGETNAME} COMMAND ${CLDOC} ${doc_args}) set_target_properties(${TARGETNAME} PROPERTIES EXCLUDE_FROM_ALL 1 EXCLUDE_FROM_DEFAULT_BUILD 1 ) endif ()