X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2Fsrc1%2Fdoxygen%2FCMakeLists.txt;fp=lib%2Fsrc1%2Fdoxygen%2FCMakeLists.txt;h=8d9314658ba6f78b7c85adaeaf203f30df3d4277;hb=f69198ff252050f64bffb1e0c3144fd2d67d796d;hp=0000000000000000000000000000000000000000;hpb=bfe428592699ed649b39cd94ddf55a4ffebc92c6;p=creaBruker.git diff --git a/lib/src1/doxygen/CMakeLists.txt b/lib/src1/doxygen/CMakeLists.txt new file mode 100644 index 0000000..8d93146 --- /dev/null +++ b/lib/src1/doxygen/CMakeLists.txt @@ -0,0 +1,120 @@ + + +MACRO(CREA_BUILD_DOXYGEN_DOC NAME INPUT DOC_RELATIVE_INSTALL_PATH PREDEFINED) + + #-------------------------------------------------------------------------- + SET(USE_DOXYGEN ON CACHE BOOL "" FORCE) + + # Name + SET(DOXYGEN_PROJECT_NAME "${NAME}") + + # Inputs + STRING(REGEX REPLACE ";" " " DOXYGEN_INPUT "${INPUT}") + + # Output dirs + SET(DOXYGEN_HTML_OUTPUT ".") + SET(DOXYGEN_OUTPUT ${PROJECT_BINARY_DIR}/${DOC_RELATIVE_INSTALL_PATH}) + IF(NOT IS_DIRECTORY ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}) + FILE(MAKE_DIRECTORY ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}) + ENDIF(NOT IS_DIRECTORY ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}) + + # Doc exclude + SET(DOXYGEN_EXCLUDE "CppSQLite3.h;CppSQLite3.cpp") + STRING(REGEX REPLACE ";" " " DOXYGEN_EXCLUDE "${DOXYGEN_EXCLUDE}") + + # Log file name + SET(DOXYGEN_LOGFILE "${CMAKE_CURRENT_BINARY_DIR}/doxygen.log") + + # Predefined symbols + STRING(REGEX REPLACE ";" " " DOXYGEN_DOC_PREDEFINED "${PREDEFINED}") + + #--------------------------------------------------------------------------- + # DOT verification + IF(DOT) + GET_FILENAME_COMPONENT(DOXYGEN_DOT_PATH ${DOT} PATH) + SET(DOXYGEN_HAVE_DOT "YES") + ELSE(DOT) + SET(DOXYGEN_DOT_PATH "") + SET(DOXYGEN_HAVE_DOT "NO") + ENDIF(DOT) + + #--------------------------------------------------------------------------- + # Create file and project + CONFIGURE_FILE( + ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.txt.in + ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile.txt + @ONLY IMMEDIATE + ) + + + ADD_CUSTOM_COMMAND( + OUTPUT ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}/index.html + COMMAND + ${DOXYGEN} + ARGS + ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile.txt + # DEPENDS bbtk bbi + ) + + ADD_CUSTOM_TARGET(doxygen_${NAME} ALL + DEPENDS ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}/index.html + ) + +# INSTALL( +# DIRECTORY +# ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT} +# DESTINATION +# ${BBTK_DOXYGEN_INSTALL_PATH}/${DOC_RELATIVE_INSTALL_PATH} +# ) + #-------------------------------------------------------------------------- + +ENDMACRO(CREA_BUILD_DOXYGEN_DOC) + + + + +FILE(GLOB PAGES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.htm") +#MESSAGE(STATUS "DOXYGEN HTML PAGES = ${PAGES}") +FOREACH(PAGE ${PAGES}) + CONFIGURE_FILE( + ${CMAKE_CURRENT_SOURCE_DIR}/${PAGE} + ${PROJECT_BINARY_DIR}/doxygen/${PAGE} + IMMEDIATE + ) +#MESSAGE(STATUS "COPYING ${PAGE} TO ${PROJECT_BINARY_DIR}/doxygen/${PAGE}") +ENDFOREACH(PAGE) + + +FILE(GLOB IMAGES_PAGE RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.png" "*.jpg") +FOREACH(IMAGE_PAGE ${IMAGES_PAGE}) + CONFIGURE_FILE( + ${CMAKE_CURRENT_SOURCE_DIR}/${IMAGE_PAGE} + ${PROJECT_BINARY_DIR}/doxygen/${IMAGE_PAGE} + COPYONLY + ) +ENDFOREACH(IMAGE_PAGE) + + + +CONFIGURE_FILE( + ${CMAKE_CURRENT_SOURCE_DIR}/DoxyMainPage.txt.in + ${CMAKE_CURRENT_BINARY_DIR}/DoxyMainPage.txt + @ONLY IMMEDIATE + ) + +SET(INPUT + ${CMAKE_CURRENT_BINARY_DIR}/DoxyMainPage.txt + ${PROJECT_SOURCE_DIR}/lib/src1 + + ) + +SET(DOXYGEN_DOC_PREDEFINED USE_WXWIDGETS) + +CREA_BUILD_DOXYGEN_DOC( + ${CMAKE_PROJECT_NAME}_lib + "${INPUT}" + "doxygen" + "${CREA_DEFINITIONS}" + ) + +#MESSAGE("DOX : ${CREA_DEFINITIONS}")