3 MACRO(CREA_BUILD_DOXYGEN_DOC NAME INPUT DOC_RELATIVE_INSTALL_PATH PREDEFINED)
5 #--------------------------------------------------------------------------
6 SET(USE_DOXYGEN ON CACHE BOOL "" FORCE)
9 SET(DOXYGEN_PROJECT_NAME "${NAME}")
12 STRING(REGEX REPLACE ";" " " DOXYGEN_INPUT "${INPUT}")
15 SET(DOXYGEN_HTML_OUTPUT ".")
16 SET(DOXYGEN_OUTPUT ${PROJECT_BINARY_DIR}/${DOC_RELATIVE_INSTALL_PATH})
17 IF(NOT IS_DIRECTORY ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT})
18 FILE(MAKE_DIRECTORY ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT})
19 ENDIF(NOT IS_DIRECTORY ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT})
22 # SET(DOXYGEN_EXCLUDE "CppSQLite3.h;CppSQLite3.cpp")
23 # STRING(REGEX REPLACE ";" " " DOXYGEN_EXCLUDE "${DOXYGEN_EXCLUDE}")
26 SET(DOXYGEN_LOGFILE "${CMAKE_CURRENT_BINARY_DIR}/doxygen.log")
29 STRING(REGEX REPLACE ";" " " DOXYGEN_DOC_PREDEFINED "${PREDEFINED}")
31 #---------------------------------------------------------------------------
34 GET_FILENAME_COMPONENT(DOXYGEN_DOT_PATH ${DOT} PATH)
35 SET(DOXYGEN_HAVE_DOT "YES")
37 SET(DOXYGEN_DOT_PATH "")
38 SET(DOXYGEN_HAVE_DOT "NO")
41 #---------------------------------------------------------------------------
42 # Create file and project
44 ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.txt.in
45 ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile.txt
51 OUTPUT ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}/index.html
55 ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile.txt
59 IF ( ${${PROJECT_NAME}_DOC} STREQUAL ON)
60 CREA_CPDIR ( ${CMAKE_CURRENT_SOURCE_DIR}/bouml/GeneralArchitecture/ ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}/GeneralArchitecture_Diagrams/ )
61 #CREA_CPDIR ( ${CMAKE_CURRENT_SOURCE_DIR}/bouml/wxVtkViewer/wxVtkViewer_classDiagram1_HTML/ ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}/wxVtkViewer_classDiagram1_HTML/ )
62 #CREA_CPDIR ( ${CMAKE_CURRENT_SOURCE_DIR}/bouml/wxVtkViewer/wxVtkViewer_classDiagram2_HTML/ ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}/wxVtkViewer_classDiagram2_HTML/ )
63 #CREA_CPDIR ( ${CMAKE_CURRENT_SOURCE_DIR}/bouml/manualContour/manualContour_MVC_HTML/ ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}/manualContour_MVC_HTML/ )
64 #CREA_CPDIR ( ${CMAKE_CURRENT_SOURCE_DIR}/bouml/manualContour/manualContour_Model_HTML/ ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}/manualContour_Model_HTML/ )
65 #CREA_CPDIR ( ${CMAKE_CURRENT_SOURCE_DIR}/bouml/manualContour/manualContour_View_HTML/ ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}/manualContour_View_HTML/ )
66 #CREA_CPDIR ( ${CMAKE_CURRENT_SOURCE_DIR}/bouml/manualContour/manualContour_Controler_HTML/ ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}/manualContour_Controler_HTML/ )
67 #CREA_CPDIR ( ${CMAKE_CURRENT_SOURCE_DIR}/bouml/manualContour/manualContour_SeqCreateContour_HTML/ ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}/manualContour_SeqCreateContour_HTML/ )
68 #CREA_CPDIR ( ${CMAKE_CURRENT_SOURCE_DIR}/bouml/CutModule/CutModuleDiagrams_HTML/ ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}/CutModuleDiagrams_HTML/ )
69 #CREA_CPDIR ( ${CMAKE_CURRENT_SOURCE_DIR}/bouml/GeneralArchitecture/GeneralArchitecture_HTML/ ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}/GeneralArchitecture_HTML/ )
71 ADD_CUSTOM_TARGET(doxygen_${NAME} ALL
72 DEPENDS ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}/index.html
77 # ${DOXYGEN_OUTPUT}/${DOXYGEN_HTML_OUTPUT}
79 # ${BBTK_DOXYGEN_INSTALL_PATH}/${DOC_RELATIVE_INSTALL_PATH}
82 ENDIF ( ${${PROJECT_NAME}_DOC} STREQUAL ON)
84 #--------------------------------------------------------------------------
86 ENDMACRO(CREA_BUILD_DOXYGEN_DOC)
91 FILE(GLOB PAGES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.htm" )
92 #MESSAGE(STATUS "DOXYGEN HTML PAGES = ${PAGES}")
93 FOREACH(PAGE ${PAGES})
95 ${CMAKE_CURRENT_SOURCE_DIR}/${PAGE}
96 ${PROJECT_BINARY_DIR}/doxygen/${PAGE}
99 #MESSAGE(STATUS "COPYING ${PAGE} TO ${PROJECT_BINARY_DIR}/doxygen/${PAGE}")
103 FILE(GLOB IMAGES_PAGE RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.png" "*.jpg")
104 FOREACH(IMAGE_PAGE ${IMAGES_PAGE})
106 ${CMAKE_CURRENT_SOURCE_DIR}/${IMAGE_PAGE}
107 ${PROJECT_BINARY_DIR}/doxygen/${IMAGE_PAGE}
110 ENDFOREACH(IMAGE_PAGE)
115 ${CMAKE_CURRENT_SOURCE_DIR}/DoxyMainPage.txt.in
116 ${CMAKE_CURRENT_BINARY_DIR}/DoxyMainPage.txt
121 ${CMAKE_CURRENT_BINARY_DIR}/DoxyMainPage.txt
122 ${PROJECT_SOURCE_DIR}/lib/Interface_Icons_NDimensions
123 ${PROJECT_SOURCE_DIR}/lib/Interface_ManagerContour_NDimensions
124 ${PROJECT_SOURCE_DIR}/lib/kernel_ManagerContour_NDimensions
127 SET(DOXYGEN_DOC_PREDEFINED USE_WXWIDGETS)
129 CREA_BUILD_DOXYGEN_DOC(
130 ${CMAKE_PROJECT_NAME}_lib
133 "${CREA_DEFINITIONS}"
136 #MESSAGE("DOX : ${CREA_DEFINITIONS}")