blob: 8c49aa5e5f143473e26621fc7c02fc5ce146a332 [file] [log] [blame]
Michael Gottesman5b83d0c2013-08-24 07:25:21 +00001
Michael Gottesman5b83d0c2013-08-24 07:25:21 +00002if (DOXYGEN_FOUND)
3if (LLVM_ENABLE_DOXYGEN)
4 set(abs_top_srcdir ${LLVM_MAIN_SRC_DIR})
5 set(abs_top_builddir ${LLVM_BINARY_DIR})
6
7 if (HAVE_DOT)
8 set(DOT ${LLVM_PATH_DOT})
9 endif()
Michael Gottesman1800b662013-08-28 20:28:35 +000010
Michael Gottesman4cff0932013-08-28 21:55:26 +000011 if (LLVM_DOXYGEN_EXTERNAL_SEARCH)
12 set(enable_searchengine "YES")
13 set(searchengine_url "${LLVM_DOXYGEN_SEARCHENGINE_URL}")
14 set(enable_server_based_search "YES")
15 set(enable_external_search "YES")
16 set(extra_search_mappings "${LLVM_DOXYGEN_SEARCH_MAPPINGS}")
Michael Gottesman1800b662013-08-28 20:28:35 +000017 else()
Michael Gottesman4cff0932013-08-28 21:55:26 +000018 set(enable_searchengine "NO")
19 set(searchengine_url "")
20 set(enable_server_based_search "NO")
21 set(enable_external_search "NO")
22 set(extra_search_mappings "")
Michael Gottesman1800b662013-08-28 20:28:35 +000023 endif()
Michael Gottesman5b83d0c2013-08-24 07:25:21 +000024
25 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/doxygen.cfg.in
26 ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg @ONLY)
Michael Gottesman4cff0932013-08-28 21:55:26 +000027
Michael Gottesman5b83d0c2013-08-24 07:25:21 +000028 set(abs_top_srcdir)
29 set(abs_top_builddir)
30 set(DOT)
Michael Gottesman4cff0932013-08-28 21:55:26 +000031 set(enable_searchengine)
32 set(searchengine_url)
33 set(enable_server_based_search)
34 set(enable_external_search)
35 set(extra_search_mappings)
Michael Gottesman5b83d0c2013-08-24 07:25:21 +000036
Michael Gottesmanb7cb6352013-08-28 20:28:32 +000037 add_custom_target(doxygen-llvm
Michael Gottesman5b83d0c2013-08-24 07:25:21 +000038 COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/doxygen.cfg
39 WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
Michael Gottesmanb7cb6352013-08-28 20:28:32 +000040 COMMENT "Generating llvm doxygen documentation." VERBATIM)
41
42 if (LLVM_BUILD_DOCS)
43 add_dependencies(doxygen doxygen-llvm)
44 endif()
Michael Gottesman5b83d0c2013-08-24 07:25:21 +000045
46 if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
47 install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/doxygen/html
48 DESTINATION docs/html)
49 endif()
50endif()
51endif()