]> git.proxmox.com Git - ceph.git/blame - ceph/src/seastar/doc/CMakeLists.txt
import quincy beta 17.1.0
[ceph.git] / ceph / src / seastar / doc / CMakeLists.txt
CommitLineData
11fdf7f2
TL
1find_program (Seastar_DOXYGEN_EXECUTABLE doxygen)
2
3configure_file (
4 ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.in
5 ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile
6 @ONLY)
7
8configure_file (
9 ${CMAKE_CURRENT_SOURCE_DIR}/DoxygenLayout.xml
10 ${CMAKE_CURRENT_BINARY_DIR}/DoxygenLayout.xml
11 COPYONLY)
12
13add_custom_target (doc_api
14 COMMAND ${Seastar_DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile)
15
16add_custom_command (
f67539c2 17 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/html/tutorial.html
11fdf7f2
TL
18 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/tutorial.md
19 COMMAND
20 ${CMAKE_CURRENT_SOURCE_DIR}/md2html
21 ${CMAKE_CURRENT_SOURCE_DIR}/tutorial.md
f67539c2 22 ${CMAKE_CURRENT_BINARY_DIR}/html/tutorial.html)
11fdf7f2
TL
23
24add_custom_target (doc_tutorial_html
f67539c2 25 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/html/tutorial.html)
11fdf7f2
TL
26
27add_custom_command (
f67539c2 28 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/html/split
11fdf7f2 29 DEPENDS
9f95a23c 30 # Necessary because file-level dependencies are not propagated for custom targets.
f67539c2 31 ${CMAKE_CURRENT_BINARY_DIR}/html/tutorial.html
11fdf7f2 32 doc_tutorial_html
f67539c2
TL
33 COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_CURRENT_BINARY_DIR}/html/split
34 COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/htmlsplit.py
35 --input ${CMAKE_CURRENT_BINARY_DIR}/html/tutorial.html
36 --output-dir ${CMAKE_CURRENT_BINARY_DIR}/html/split)
11fdf7f2
TL
37
38add_custom_target (doc_tutorial_html_split
f67539c2 39 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/html/split)
11fdf7f2
TL
40
41add_custom_command (
42 OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/tutorial.pdf
43 DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/tutorial.md
44 COMMAND
45 ${CMAKE_CURRENT_SOURCE_DIR}/md2pdf
46 ${CMAKE_CURRENT_SOURCE_DIR}/tutorial.md
47 ${CMAKE_CURRENT_BINARY_DIR}/tutorial.pdf)
48
49add_custom_target (doc_tutorial_pdf
50 DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/tutorial.pdf)
51
52# Logical target for all documentation.
53add_custom_target (docs
54 DEPENDS
55 doc_api
56 doc_tutorial_html
57 doc_tutorial_html_split
58 doc_tutorial_pdf)