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