Mercurial > trustbridge
annotate doc/help/CMakeLists.txt @ 1255:2a1aa9df8f11
(issue133) Improve API documentation
author | Andre Heinecke <andre.heinecke@intevation.de> |
---|---|
date | Thu, 25 Sep 2014 17:58:12 +0200 |
parents | 69f7d302cdb9 |
children |
rev | line source |
---|---|
933
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
1 # Copyright (C) 2014 by Bundesamt für Sicherheit in der Informationstechnik |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
2 # Software engineering by Intevation GmbH |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
3 # |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
4 # This file is Free Software under the GNU GPL (v>=2) |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
5 # and comes with ABSOLUTELY NO WARRANTY! |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
6 # See LICENSE.txt for details. |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
7 |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
8 if(NOT DEFINED SPHINX_THEME) |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
9 set(SPHINX_THEME better) |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
10 endif() |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
11 |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
12 if(NOT DEFINED SPHINX_THEME_DIR) |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
13 set(SPHINX_THEME_DIR "${CMAKE_CURRENT_SOURCE_DIR}/theme") |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
14 endif() |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
15 |
1185
69f7d302cdb9
Fix build with changed documentation paths
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1184
diff
changeset
|
16 set(ADMIN_MANUAL_IN "${CMAKE_CURRENT_SOURCE_DIR}/admin") |
69f7d302cdb9
Fix build with changed documentation paths
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1184
diff
changeset
|
17 set(ADMIN_MANUAL_OUT "${CMAKE_CURRENT_BINARY_DIR}/admin") |
69f7d302cdb9
Fix build with changed documentation paths
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1184
diff
changeset
|
18 set(HELP_MANUAL_IN "${CMAKE_CURRENT_SOURCE_DIR}/client") |
69f7d302cdb9
Fix build with changed documentation paths
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1184
diff
changeset
|
19 set(HELP_MANUAL_OUT "${CMAKE_CURRENT_BINARY_DIR}/client") |
933
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
20 |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
21 |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
22 # configured documentation tools and intermediate build results |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
23 set(BINARY_BUILD_DIR_ADMIN "${CMAKE_CURRENT_BINARY_DIR}/_build-admin") |
1185
69f7d302cdb9
Fix build with changed documentation paths
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1184
diff
changeset
|
24 set(BINARY_BUILD_DIR_HELP "${CMAKE_CURRENT_BINARY_DIR}/_build-client") |
933
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
25 |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
26 # Sphinx cache with pickled ReST documents |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
27 set(SPHINX_CACHE_DIR_ADMIN "${CMAKE_CURRENT_BINARY_DIR}/_doctrees-admin") |
1185
69f7d302cdb9
Fix build with changed documentation paths
Andre Heinecke <andre.heinecke@intevation.de>
parents:
1184
diff
changeset
|
28 set(SPHINX_CACHE_DIR_HELP "${CMAKE_CURRENT_BINARY_DIR}/_doctrees-client") |
933
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
29 |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
30 # HTML output directory |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
31 set(SPHINX_HTML_DIR_ADMIN "${ADMIN_MANUAL_OUT}/html") |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
32 set(SPHINX_HTML_DIR_HELP "${HELP_MANUAL_OUT}/html") |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
33 |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
34 configure_file( |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
35 "${ADMIN_MANUAL_IN}/conf.py.in" |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
36 "${BINARY_BUILD_DIR_ADMIN}/conf.py" |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
37 @ONLY) |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
38 |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
39 configure_file( |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
40 "${HELP_MANUAL_IN}/conf.py.in" |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
41 "${BINARY_BUILD_DIR_HELP}/conf.py" |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
42 @ONLY) |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
43 |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
44 add_custom_target(admin_manual ALL |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
45 ${SPHINX_EXECUTABLE} |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
46 -q -b html |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
47 -c "${BINARY_BUILD_DIR_ADMIN}" |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
48 -d "${SPHINX_CACHE_DIR_ADMIN}" |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
49 "${ADMIN_MANUAL_IN}" |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
50 "${SPHINX_HTML_DIR_ADMIN}" |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
51 COMMENT "Building HTML Admin documentation with Sphinx") |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
52 |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
53 add_custom_target(help_manual ALL |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
54 ${SPHINX_EXECUTABLE} |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
55 -q -b html |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
56 -c "${BINARY_BUILD_DIR_HELP}" |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
57 -d "${SPHINX_CACHE_DIR_HELP}" |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
58 "${HELP_MANUAL_IN}" |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
59 "${SPHINX_HTML_DIR_HELP}" |
af27328bea9d
(issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff
changeset
|
60 COMMENT "Building HTML Help with Sphinx") |