annotate docs/CMakeLists.txt @ 0:8991989c4708

Initial import
author David Demelier <markand@malikania.fr>
date Tue, 22 Mar 2016 18:26:05 +0100
parents
children c12262a01559
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
1 #
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 # CMakeLists.txt -- CMake build system for malikania
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
3 #
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
4 # Copyright (c) 2013-2016 Malikania Authors
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 #
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
6 # Permission to use, copy, modify, and/or distribute this software for any
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 # purpose with or without fee is hereby granted, provided that the above
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 # copyright notice and this permission notice appear in all copies.
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 #
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
17 #
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
18
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
19 project(docs)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
20
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
21 add_custom_target(
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
22 docs
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
23 ALL
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
24 COMMENT "Generating documentation"
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
25 )
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
26
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
27 #
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
28 # Doxygen generation.
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
29 # -------------------------------------------------------------------
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
30 #
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
31
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
32 find_package(Doxygen)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
33
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
34 if (DOXYGEN_FOUND)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
35 if (WITH_DOCS_DOXYGEN)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
36 setg(WITH_DOCS_DOXYGEN_MSG "Yes")
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
37 else ()
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
38 setg(WITH_DOCS_DOXYGEN_MSG "No (disabled by user)")
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
39 endif ()
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
40 else ()
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
41 setg(WITH_DOCS_DOXYGEN_MSG "No (doxygen not found)")
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
42 setg(WITH_DOCS_DOXYGEN Off)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
43 endif ()
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
44
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
45 if (WITH_DOCS_DOXYGEN)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
46 add_subdirectory(doxygen)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
47 endif ()
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
48
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
49 #
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
50 # UML generation with plantuml.
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
51 # -------------------------------------------------------------------
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
52 #
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
53
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
54 find_package(Java COMPONENTS Runtime)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
55
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
56 if (Java_JAVA_EXECUTABLE AND DOXYGEN_DOT_EXECUTABLE)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
57 if (WITH_DOCS_UML)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
58 setg(WITH_DOCS_UML_MSG "Yes")
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
59 else ()
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
60 setg(WITH_DOCS_UML_MSG "No (disabled by user)")
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
61 endif ()
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
62 elseif (NOT Java_JAVA_EXECUTABLE)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
63 setg(WITH_DOCS_UML_MSG "No (Java not found)")
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
64 setg(WITH_DOCS_UML Off)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
65 elseif (NOT DOXYGEN_DOT_EXECUTABLE)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
66 setg(WITH_DOCS_UML_MSG "No (dot not found)")
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
67 setg(WITH_DOCS_UML Off)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
68 endif ()
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
69
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
70 if (WITH_DOCS_UML)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
71 add_subdirectory(UML)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
72 endif ()
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
73
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
74 #
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
75 # Books, specifications, docs generation.
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
76 # -------------------------------------------------------------------
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
77 #
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
78
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
79 find_package(Pandoc)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
80 find_package(LATEX)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
81
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
82 if (Pandoc_FOUND AND (PDFLATEX_COMPILER OR LATEX_COMPILER OR BIBTEX_COMPILER OR MAKEINDEX_COMPILER))
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
83 if (WITH_DOCS_BOOKS)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
84 setg(WITH_DOCS_BOOKS_MSG "Yes")
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
85 else ()
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
86 setg(WITH_DOCS_BOOKS_MSG "No (disabled by user)")
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
87 endif ()
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
88 elseif (NOT Pandoc_FOUND)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
89 setg(WITH_DOCS_BOOKS_MSG "No (pandoc not found)")
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
90 setg(WITH_DOCS_BOOKS Off)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
91 elseif (NOT PDFLATEX_COMPILER)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
92 setg(WITH_DOCS_BOOKS_MSG "No (pdflatex not found)")
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
93 setg(WITH_DOCS_BOOKS Off)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
94 endif ()
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
95
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
96 if (WITH_DOCS_BOOKS)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
97 add_subdirectory(books)
8991989c4708 Initial import
David Demelier <markand@malikania.fr>
parents:
diff changeset
98 endif ()