doc/CMakeLists.txt
author Alpar Juttner <alpar@cs.elte.hu>
Fri, 15 Mar 2013 17:19:17 +0100
changeset 1216 dbaf21739390
parent 1209 0b0327c9b3ef
child 1218 d9d1cb759951
permissions -rw-r--r--
Merge #411
alpar@225
     1
SET(PACKAGE_NAME ${PROJECT_NAME})
alpar@225
     2
SET(PACKAGE_VERSION ${PROJECT_VERSION})
ladanyi@596
     3
SET(abs_top_srcdir ${PROJECT_SOURCE_DIR})
ladanyi@596
     4
SET(abs_top_builddir ${PROJECT_BINARY_DIR})
alpar@225
     5
alpar@1033
     6
SET(LEMON_DOC_SOURCE_BROWSER "NO" CACHE STRING "Include source into the doc (YES/NO).")
alpar@1208
     7
SET(LEMON_DOC_USE_MATHJAX "NO" CACHE STRING "Use MathJax to display math formulae (YES/NO).")
alpar@1208
     8
SET(LEMON_DOC_MATHJAX_RELPATH "http://www.mathjax.org/mathjax" CACHE STRING "MathJax library location.")
alpar@1033
     9
alpar@225
    10
CONFIGURE_FILE(
ladanyi@596
    11
  ${PROJECT_SOURCE_DIR}/doc/Doxyfile.in
ladanyi@596
    12
  ${PROJECT_BINARY_DIR}/doc/Doxyfile
ladanyi@719
    13
  @ONLY
ladanyi@719
    14
)
alpar@225
    15
alpar@1037
    16
CONFIGURE_FILE(
alpar@1037
    17
  ${PROJECT_SOURCE_DIR}/doc/mainpage.dox.in
alpar@1037
    18
  ${PROJECT_BINARY_DIR}/doc/mainpage.dox
alpar@1037
    19
  @ONLY
alpar@1037
    20
)
alpar@1037
    21
alpar@1135
    22
# Copy doc from source (if exists)
alpar@1135
    23
IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/html AND 
alpar@1135
    24
    NOT EXISTS ${CMAKE_CURRENT_BINARY_DIR}/html/index.html)
alpar@1135
    25
  MESSAGE(STATUS "Copy doc from source tree")
alpar@1135
    26
  EXECUTE_PROCESS(
alpar@1135
    27
    COMMAND cmake -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR}/html ${CMAKE_CURRENT_BINARY_DIR}/html
alpar@1135
    28
    )
alpar@1135
    29
ENDIF()
alpar@1135
    30
alpar@791
    31
IF(DOXYGEN_EXECUTABLE AND PYTHONINTERP_FOUND AND GHOSTSCRIPT_EXECUTABLE)
ladanyi@497
    32
  FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html/)
ladanyi@719
    33
  SET(GHOSTSCRIPT_OPTIONS -dNOPAUSE -dBATCH -q -dEPSCrop -dTextAlphaBits=4 -dGraphicsAlphaBits=4 -sDEVICE=pngalpha)
ladanyi@719
    34
  ADD_CUSTOM_TARGET(html
ladanyi@719
    35
    COMMAND ${CMAKE_COMMAND} -E remove_directory gen-images
ladanyi@719
    36
    COMMAND ${CMAKE_COMMAND} -E make_directory gen-images
kpeter@1214
    37
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r20 -sOutputFile=gen-images/grid_graph.png ${CMAKE_CURRENT_SOURCE_DIR}/images/grid_graph.eps
kpeter@1214
    38
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/connected_components.png ${CMAKE_CURRENT_SOURCE_DIR}/images/connected_components.eps
kpeter@1214
    39
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/strongly_connected_components.png ${CMAKE_CURRENT_SOURCE_DIR}/images/strongly_connected_components.eps
kpeter@1214
    40
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/node_biconnected_components.png ${CMAKE_CURRENT_SOURCE_DIR}/images/node_biconnected_components.eps
kpeter@1214
    41
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/edge_biconnected_components.png ${CMAKE_CURRENT_SOURCE_DIR}/images/edge_biconnected_components.eps
kpeter@1214
    42
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/bipartite_partitions.png ${CMAKE_CURRENT_SOURCE_DIR}/images/bipartite_partitions.eps
kpeter@1214
    43
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r24 -sOutputFile=gen-images/matching.png ${CMAKE_CURRENT_SOURCE_DIR}/images/matching.eps
kpeter@1214
    44
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r24 -sOutputFile=gen-images/bipartite_matching.png ${CMAKE_CURRENT_SOURCE_DIR}/images/bipartite_matching.eps
kpeter@1214
    45
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r40 -sOutputFile=gen-images/planar.png ${CMAKE_CURRENT_SOURCE_DIR}/images/planar.eps
kpeter@1214
    46
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r24 -sOutputFile=gen-images/tsp.png ${CMAKE_CURRENT_SOURCE_DIR}/images/tsp.eps
kpeter@1214
    47
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r8 -sOutputFile=gen-images/nodeshape_0.png ${CMAKE_CURRENT_SOURCE_DIR}/images/nodeshape_0.eps
kpeter@1214
    48
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r8 -sOutputFile=gen-images/nodeshape_1.png ${CMAKE_CURRENT_SOURCE_DIR}/images/nodeshape_1.eps
kpeter@1214
    49
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r8 -sOutputFile=gen-images/nodeshape_2.png ${CMAKE_CURRENT_SOURCE_DIR}/images/nodeshape_2.eps
kpeter@1214
    50
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r8 -sOutputFile=gen-images/nodeshape_3.png ${CMAKE_CURRENT_SOURCE_DIR}/images/nodeshape_3.eps
kpeter@1214
    51
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r8 -sOutputFile=gen-images/nodeshape_4.png ${CMAKE_CURRENT_SOURCE_DIR}/images/nodeshape_4.eps
ladanyi@719
    52
    COMMAND ${CMAKE_COMMAND} -E remove_directory html
alpar@791
    53
    COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/scripts/bib2dox.py ${CMAKE_CURRENT_SOURCE_DIR}/references.bib >references.dox
ladanyi@719
    54
    COMMAND ${DOXYGEN_EXECUTABLE} Doxyfile
ladanyi@719
    55
    WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
ladanyi@719
    56
  )
ladanyi@719
    57
ladanyi@723
    58
  SET_TARGET_PROPERTIES(html PROPERTIES PROJECT_LABEL BUILD_DOC)
ladanyi@723
    59
alpar@225
    60
  IF(UNIX)
ladanyi@719
    61
    INSTALL(
ladanyi@719
    62
      DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html/
ladanyi@720
    63
      DESTINATION share/doc/lemon/html
ladanyi@719
    64
      COMPONENT html_documentation
ladanyi@719
    65
    )
alpar@225
    66
  ELSEIF(WIN32)
ladanyi@719
    67
    INSTALL(
ladanyi@719
    68
      DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html/
ladanyi@719
    69
      DESTINATION doc
ladanyi@719
    70
      COMPONENT html_documentation
ladanyi@719
    71
    )
ladanyi@726
    72
  ENDIF()
ladanyi@719
    73
ladanyi@726
    74
ENDIF()
alpar@1033
    75
alpar@1033
    76
IF(WGET_FOUND)
alpar@1033
    77
ADD_CUSTOM_TARGET(update-external-tags
alpar@1207
    78
  COMMAND ${WGET_EXECUTABLE} -N http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/libstdc++.tag
alpar@1033
    79
  WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
alpar@1033
    80
  )
alpar@1033
    81
ENDIF()