3ada491d13c9f55c7b9312d221c235bf8d44831e
[platform/upstream/libzypp.git] / doc / autodoc / CMakeLists.txt
1 ### ##################################################
2 IF ( DOXYGEN )
3 ### ##################################################
4
5 FIND_PROGRAM( DOT dot )
6 IF ( NOT DOT )
7    MESSAGE( "dot not found: you should install graphviz." )
8    SET( HAVE_DOT NO )
9 ELSE ( NOT DOT )
10    SET( HAVE_DOT YES )
11 ENDIF ( NOT DOT )
12
13 SET( ZYPP_SOURCE_DIR     ${LIBZYPP_SOURCE_DIR}/zypp )
14 SET( ZYPP_DOCINCLUDE_DIR ${LIBZYPP_SOURCE_DIR}/doc/autoinclude )
15 SET( ZYPP_EXAMPLE_DIR    ${LIBZYPP_SOURCE_DIR}/examples )
16
17 SET( DOXYGEN_INPUT    ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile )
18 SET( DOXYGEN_OUTPUT   ${CMAKE_CURRENT_BINARY_DIR}/html/index.html )
19 FILE( MAKE_DIRECTORY  ${CMAKE_CURRENT_BINARY_DIR}/html )
20
21 ### ##################################################
22
23 CONFIGURE_FILE(
24    ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.cmake
25    ${DOXYGEN_INPUT}
26    @ONLY
27    )
28
29 ### ##################################################
30
31 ADD_CUSTOM_COMMAND (
32    OUTPUT  ${DOXYGEN_OUTPUT}
33    COMMAND ${CMAKE_COMMAND} -E echo_append "Building Documentation..."
34    COMMAND ${DOXYGEN} ${DOXYGEN_INPUT} || { echo '*** IGNORE FAILED DOXYGEN - DOC MIGHT BE INCOMPLETE!'\; true\; }
35    COMMAND ${CMAKE_COMMAND} -E echo "Done."
36    WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
37    DEPENDS ${DOXYGEN_INPUT}
38 )
39
40 ADD_CUSTOM_TARGET( doc ALL
41    DEPENDS ${DOXYGEN_OUTPUT}
42 )
43
44 ADD_CUSTOM_TARGET( doc_forced
45    COMMAND ${CMAKE_COMMAND} -E echo_append "Building Documentation..."
46    COMMAND ${DOXYGEN} ${DOXYGEN_INPUT} || { echo '*** IGNORE FAILED DOXYGEN - DOC MIGHT BE INCOMPLETE!'\; true\; }
47    COMMAND ${CMAKE_COMMAND} -E echo "Done."
48    WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
49    DEPENDS ${DOXYGEN_INPUT}
50 )
51
52 ### ##################################################
53
54 INSTALL( FILES
55    ${CMAKE_CURRENT_BINARY_DIR}/libzypp.doxytag
56    DESTINATION ${DOC_INSTALL_DIR}/libzypp/libzypp.doxytag
57 )
58
59 # We could use the thing below but it wont work with cmake older than 2.4.4
60 FILE(GLOB docfiles ${CMAKE_CURRENT_BINARY_DIR}/html/*)
61 INSTALL( FILES
62    ${docfiles}
63    DESTINATION ${DOC_INSTALL_DIR}/libzypp/html
64 )
65
66 #INSTALL( DIRECTORY
67 #   ${CMAKE_CURRENT_BINARY_DIR}/html
68 #   DESTINATION ${DOC_INSTALL_DIR}
69 #)
70 ### ##################################################
71 ENDIF ( DOXYGEN )
72 ### ##################################################
73