COIN-OR::LEMON - Graph Library

source: lemon/doc/CMakeLists.txt

Last change on this file was 1251:218171dc022d, checked in by Alpar Juttner <alpar@…>, 6 years ago

Doxygen config improvements (#459)

  • remove an erroneous line from DoxygenLayout?.xml
  • libstdc++ doxygen tagfile version is configurable
  • use fixed gcc doc version (4.7.3) instead of the latest one
File size: 4.7 KB
Line 
1SET(PACKAGE_NAME ${PROJECT_NAME})
2SET(PACKAGE_VERSION ${PROJECT_VERSION})
3SET(abs_top_srcdir ${PROJECT_SOURCE_DIR})
4SET(abs_top_builddir ${PROJECT_BINARY_DIR})
5
6SET(LEMON_DOC_SOURCE_BROWSER "NO" CACHE STRING "Include source into the doc (YES/NO).")
7SET(LEMON_DOC_USE_MATHJAX "NO" CACHE STRING "Use MathJax to display math formulae (YES/NO).")
8SET(LEMON_DOC_MATHJAX_RELPATH "http://www.mathjax.org/mathjax" CACHE STRING "MathJax library location.")
9
10SET(LEMON_DOC_LIBSTDC++_URL
11  "http://gcc.gnu.org/onlinedocs/gcc-4.7.3/libstdc++/api"
12  CACHE STRING "GCC libstdc++ doxygen doc url.")
13
14
15CONFIGURE_FILE(
16  ${PROJECT_SOURCE_DIR}/doc/Doxyfile.in
17  ${PROJECT_BINARY_DIR}/doc/Doxyfile
18  @ONLY
19)
20
21CONFIGURE_FILE(
22  ${PROJECT_SOURCE_DIR}/doc/mainpage.dox.in
23  ${PROJECT_BINARY_DIR}/doc/mainpage.dox
24  @ONLY
25)
26
27# Copy doc from source (if exists)
28IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/html AND
29    NOT EXISTS ${CMAKE_CURRENT_BINARY_DIR}/html/index.html)
30  MESSAGE(STATUS "Copy doc from source tree")
31  EXECUTE_PROCESS(
32    COMMAND cmake -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR}/html ${CMAKE_CURRENT_BINARY_DIR}/html
33    )
34ENDIF()
35
36IF(DOXYGEN_EXECUTABLE AND PYTHONINTERP_FOUND AND GHOSTSCRIPT_EXECUTABLE)
37  FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html/)
38  SET(GHOSTSCRIPT_OPTIONS -dNOPAUSE -dBATCH -q -dEPSCrop -dTextAlphaBits=4 -dGraphicsAlphaBits=4 -sDEVICE=pngalpha)
39  ADD_CUSTOM_TARGET(html
40    COMMAND ${CMAKE_COMMAND} -E remove_directory gen-images
41    COMMAND ${CMAKE_COMMAND} -E make_directory gen-images
42    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r20 -sOutputFile=gen-images/grid_graph.png ${CMAKE_CURRENT_SOURCE_DIR}/images/grid_graph.eps
43    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/adaptors2.png ${CMAKE_CURRENT_SOURCE_DIR}/images/adaptors2.eps
44    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/connected_components.png ${CMAKE_CURRENT_SOURCE_DIR}/images/connected_components.eps
45    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/strongly_connected_components.png ${CMAKE_CURRENT_SOURCE_DIR}/images/strongly_connected_components.eps
46    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/node_biconnected_components.png ${CMAKE_CURRENT_SOURCE_DIR}/images/node_biconnected_components.eps
47    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/edge_biconnected_components.png ${CMAKE_CURRENT_SOURCE_DIR}/images/edge_biconnected_components.eps
48    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/bipartite_partitions.png ${CMAKE_CURRENT_SOURCE_DIR}/images/bipartite_partitions.eps
49    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r24 -sOutputFile=gen-images/matching.png ${CMAKE_CURRENT_SOURCE_DIR}/images/matching.eps
50    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r24 -sOutputFile=gen-images/bipartite_matching.png ${CMAKE_CURRENT_SOURCE_DIR}/images/bipartite_matching.eps
51    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r40 -sOutputFile=gen-images/planar.png ${CMAKE_CURRENT_SOURCE_DIR}/images/planar.eps
52    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r24 -sOutputFile=gen-images/tsp.png ${CMAKE_CURRENT_SOURCE_DIR}/images/tsp.eps
53    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r8 -sOutputFile=gen-images/nodeshape_0.png ${CMAKE_CURRENT_SOURCE_DIR}/images/nodeshape_0.eps
54    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r8 -sOutputFile=gen-images/nodeshape_1.png ${CMAKE_CURRENT_SOURCE_DIR}/images/nodeshape_1.eps
55    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r8 -sOutputFile=gen-images/nodeshape_2.png ${CMAKE_CURRENT_SOURCE_DIR}/images/nodeshape_2.eps
56    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r8 -sOutputFile=gen-images/nodeshape_3.png ${CMAKE_CURRENT_SOURCE_DIR}/images/nodeshape_3.eps
57    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r8 -sOutputFile=gen-images/nodeshape_4.png ${CMAKE_CURRENT_SOURCE_DIR}/images/nodeshape_4.eps
58    COMMAND ${CMAKE_COMMAND} -E remove_directory html
59    COMMAND ${DOXYGEN_EXECUTABLE} Doxyfile
60    WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
61  )
62
63  SET_TARGET_PROPERTIES(html PROPERTIES PROJECT_LABEL BUILD_DOC)
64
65  IF(UNIX)
66    INSTALL(
67      DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html/
68      DESTINATION share/doc/lemon/html
69      COMPONENT html_documentation
70    )
71  ELSEIF(WIN32)
72    INSTALL(
73      DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html/
74      DESTINATION doc
75      COMPONENT html_documentation
76    )
77  ENDIF()
78
79ENDIF()
80
81IF(WGET_FOUND)
82ADD_CUSTOM_TARGET(update-external-tags
83  COMMAND ${WGET_EXECUTABLE} -N ${LEMON_DOC_LIBSTDC++_URL}/libstdc++.tag
84  WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
85  )
86ENDIF()
Note: See TracBrowser for help on using the repository browser.