doc/CMakeLists.txt
author Alpar Juttner <alpar@cs.elte.hu>
Wed, 17 Oct 2018 18:56:32 +0200
changeset 1394 2e0c2c25d63e
parent 1221 1c978b5bcc65
permissions -rw-r--r--
Merge #1.3 related bugfix heads
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@1251
    10
SET(LEMON_DOC_LIBSTDC++_URL
alpar@1251
    11
  "http://gcc.gnu.org/onlinedocs/gcc-4.7.3/libstdc++/api"
alpar@1251
    12
  CACHE STRING "GCC libstdc++ doxygen doc url.")
alpar@1251
    13
alpar@1251
    14
alpar@225
    15
CONFIGURE_FILE(
ladanyi@596
    16
  ${PROJECT_SOURCE_DIR}/doc/Doxyfile.in
ladanyi@596
    17
  ${PROJECT_BINARY_DIR}/doc/Doxyfile
ladanyi@719
    18
  @ONLY
ladanyi@719
    19
)
alpar@225
    20
alpar@1037
    21
CONFIGURE_FILE(
alpar@1037
    22
  ${PROJECT_SOURCE_DIR}/doc/mainpage.dox.in
alpar@1037
    23
  ${PROJECT_BINARY_DIR}/doc/mainpage.dox
alpar@1037
    24
  @ONLY
alpar@1037
    25
)
alpar@1037
    26
alpar@1135
    27
# Copy doc from source (if exists)
alpar@1135
    28
IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/html AND 
alpar@1135
    29
    NOT EXISTS ${CMAKE_CURRENT_BINARY_DIR}/html/index.html)
alpar@1135
    30
  MESSAGE(STATUS "Copy doc from source tree")
alpar@1135
    31
  EXECUTE_PROCESS(
alpar@1135
    32
    COMMAND cmake -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR}/html ${CMAKE_CURRENT_BINARY_DIR}/html
alpar@1135
    33
    )
alpar@1135
    34
ENDIF()
alpar@1135
    35
alpar@791
    36
IF(DOXYGEN_EXECUTABLE AND PYTHONINTERP_FOUND AND GHOSTSCRIPT_EXECUTABLE)
ladanyi@497
    37
  FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html/)
ladanyi@719
    38
  SET(GHOSTSCRIPT_OPTIONS -dNOPAUSE -dBATCH -q -dEPSCrop -dTextAlphaBits=4 -dGraphicsAlphaBits=4 -sDEVICE=pngalpha)
ladanyi@719
    39
  ADD_CUSTOM_TARGET(html
ladanyi@719
    40
    COMMAND ${CMAKE_COMMAND} -E remove_directory gen-images
ladanyi@719
    41
    COMMAND ${CMAKE_COMMAND} -E make_directory gen-images
kpeter@1214
    42
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r20 -sOutputFile=gen-images/grid_graph.png ${CMAKE_CURRENT_SOURCE_DIR}/images/grid_graph.eps
kpeter@1218
    43
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/adaptors2.png ${CMAKE_CURRENT_SOURCE_DIR}/images/adaptors2.eps
kpeter@1214
    44
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/connected_components.png ${CMAKE_CURRENT_SOURCE_DIR}/images/connected_components.eps
kpeter@1214
    45
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/strongly_connected_components.png ${CMAKE_CURRENT_SOURCE_DIR}/images/strongly_connected_components.eps
kpeter@1214
    46
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/node_biconnected_components.png ${CMAKE_CURRENT_SOURCE_DIR}/images/node_biconnected_components.eps
kpeter@1214
    47
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/edge_biconnected_components.png ${CMAKE_CURRENT_SOURCE_DIR}/images/edge_biconnected_components.eps
kpeter@1214
    48
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r32 -sOutputFile=gen-images/bipartite_partitions.png ${CMAKE_CURRENT_SOURCE_DIR}/images/bipartite_partitions.eps
kpeter@1214
    49
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r24 -sOutputFile=gen-images/matching.png ${CMAKE_CURRENT_SOURCE_DIR}/images/matching.eps
kpeter@1214
    50
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r24 -sOutputFile=gen-images/bipartite_matching.png ${CMAKE_CURRENT_SOURCE_DIR}/images/bipartite_matching.eps
kpeter@1214
    51
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r40 -sOutputFile=gen-images/planar.png ${CMAKE_CURRENT_SOURCE_DIR}/images/planar.eps
kpeter@1214
    52
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r24 -sOutputFile=gen-images/tsp.png ${CMAKE_CURRENT_SOURCE_DIR}/images/tsp.eps
kpeter@1214
    53
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r8 -sOutputFile=gen-images/nodeshape_0.png ${CMAKE_CURRENT_SOURCE_DIR}/images/nodeshape_0.eps
kpeter@1214
    54
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r8 -sOutputFile=gen-images/nodeshape_1.png ${CMAKE_CURRENT_SOURCE_DIR}/images/nodeshape_1.eps
kpeter@1214
    55
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r8 -sOutputFile=gen-images/nodeshape_2.png ${CMAKE_CURRENT_SOURCE_DIR}/images/nodeshape_2.eps
kpeter@1214
    56
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r8 -sOutputFile=gen-images/nodeshape_3.png ${CMAKE_CURRENT_SOURCE_DIR}/images/nodeshape_3.eps
kpeter@1214
    57
    COMMAND ${GHOSTSCRIPT_EXECUTABLE} ${GHOSTSCRIPT_OPTIONS} -r8 -sOutputFile=gen-images/nodeshape_4.png ${CMAKE_CURRENT_SOURCE_DIR}/images/nodeshape_4.eps
ladanyi@719
    58
    COMMAND ${CMAKE_COMMAND} -E remove_directory html
ladanyi@719
    59
    COMMAND ${DOXYGEN_EXECUTABLE} Doxyfile
ladanyi@719
    60
    WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
ladanyi@719
    61
  )
ladanyi@719
    62
ladanyi@723
    63
  SET_TARGET_PROPERTIES(html PROPERTIES PROJECT_LABEL BUILD_DOC)
ladanyi@723
    64
alpar@225
    65
  IF(UNIX)
ladanyi@719
    66
    INSTALL(
ladanyi@719
    67
      DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html/
ladanyi@720
    68
      DESTINATION share/doc/lemon/html
ladanyi@719
    69
      COMPONENT html_documentation
ladanyi@719
    70
    )
alpar@225
    71
  ELSEIF(WIN32)
ladanyi@719
    72
    INSTALL(
ladanyi@719
    73
      DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html/
ladanyi@719
    74
      DESTINATION doc
ladanyi@719
    75
      COMPONENT html_documentation
ladanyi@719
    76
    )
ladanyi@726
    77
  ENDIF()
ladanyi@719
    78
ladanyi@726
    79
ENDIF()
alpar@1033
    80
alpar@1033
    81
IF(WGET_FOUND)
alpar@1033
    82
ADD_CUSTOM_TARGET(update-external-tags
alpar@1251
    83
  COMMAND ${WGET_EXECUTABLE} -N ${LEMON_DOC_LIBSTDC++_URL}/libstdc++.tag
alpar@1033
    84
  WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
alpar@1033
    85
  )
alpar@1033
    86
ENDIF()