Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Since cmake 2.6, else() and endif() don't need to repeat the condition.
[simgrid.git] / buildtools / Cmake / GenerateDevGuide.cmake
1 #### Generate the html documentation
2
3 if(DOXYGEN_PATH)
4
5   set(DOC_PNGS
6     ${CMAKE_HOME_DIRECTORY}/doc/webcruft/simgrid_logo_2011.png
7     ${CMAKE_HOME_DIRECTORY}/doc/webcruft/simgrid_logo_2011_small.png
8     )
9
10   configure_file(${CMAKE_HOME_DIRECTORY}/doc/dev_guide/doxygen/DevGuideDoxyfile.in ${CMAKE_HOME_DIRECTORY}/doc/dev_guide/doxygen/DevGuideDoxyfile @ONLY)
11
12   ADD_CUSTOM_TARGET(dev_guide
13     COMMENT "Generating the SimGrid dev guide..."
14     DEPENDS ${DEV_GUIDE_SOURCES}
15     COMMAND ${CMAKE_COMMAND} -E remove_directory ${CMAKE_HOME_DIRECTORY}/doc/dev_guide/html
16     COMMAND ${CMAKE_COMMAND} -E make_directory   ${CMAKE_HOME_DIRECTORY}/doc/dev_guide/html
17     COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_HOME_DIRECTORY}/doc/simgrid.css ${CMAKE_HOME_DIRECTORY}/doc/dev_guide/html/
18     WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}/doc/dev_guide/
19     )
20     
21  foreach(file ${DOC_FIGS})
22     string(REPLACE ".fig" ".png" tmp_file ${file})
23     string(REPLACE "${CMAKE_HOME_DIRECTORY}/doc/shared/fig/" "${CMAKE_HOME_DIRECTORY}/doc/dev_guide/html/" tmp_file ${tmp_file})
24     ADD_CUSTOM_COMMAND(TARGET dev_guide
25       COMMAND ${FIG2DEV_PATH}/fig2dev -Lpng -S 4 ${file} ${tmp_file}
26       )
27   endforeach(file ${DOC_FIGS})
28
29   foreach(file ${DOC_PNGS})
30     ADD_CUSTOM_COMMAND(TARGET dev_guide
31       COMMAND ${CMAKE_COMMAND} -E copy ${file} ${CMAKE_HOME_DIRECTORY}/doc/dev_guide/html/
32       )
33   endforeach(file ${DOC_PNGS})
34     
35   ADD_CUSTOM_COMMAND(TARGET dev_guide
36     COMMAND ${CMAKE_COMMAND} -E echo "XX First Doxygen pass"
37     COMMAND ${DOXYGEN_PATH}/doxygen DevGuideDoxyfile
38     COMMAND ${CMAKE_HOME_DIRECTORY}/tools/doxygen/index_create.pl ../../shared/doxygen/simgriddevguide.tag index-API.doc
39
40     COMMAND ${CMAKE_COMMAND} -E echo "XX Second Doxygen pass"
41     COMMAND ${DOXYGEN_PATH}/doxygen DevGuideDoxyfile
42
43     COMMAND ${CMAKE_COMMAND} -E remove -f ${CMAKE_HOME_DIRECTORY}/doc/dev_guide/html/dir*
44
45     WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY}/doc/dev_guide/doxygen
46     )
47
48 else()
49
50   ADD_CUSTOM_TARGET(dev_guide
51     COMMENT "Generating the SimGrid documentation..."
52     )
53
54   ADD_CUSTOM_COMMAND(TARGET dev_guide
55     COMMAND ${CMAKE_COMMAND} -E echo "DOXYGEN_PATH     = ${DOXYGEN_PATH}"
56     COMMAND ${CMAKE_COMMAND} -E echo "IN ORDER TO GENERATE THE DOCUMENTATION YOU NEED ALL TOOLS !!!"
57     COMMAND ${CMAKE_COMMAND} -E echo "FAIL TO MAKE SIMGRID DOCUMENTATION see previous messages for details ..."
58     COMMAND false
59     )
60
61 endif()
62
63 ##############################################################################"