annotate manuals/CMakeLists.txt @ 1096:10f0efd197c7

(issue111) Rework header to be simpler and left bound.
author Andre Heinecke <andre.heinecke@intevation.de>
date Mon, 15 Sep 2014 10:53:21 +0200
parents af27328bea9d
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
af27328bea9d (issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
16 set(ADMIN_MANUAL_IN "${CMAKE_CURRENT_SOURCE_DIR}/admin-manual")
af27328bea9d (issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
17 set(ADMIN_MANUAL_OUT "${CMAKE_CURRENT_BINARY_DIR}/admin-manual")
af27328bea9d (issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
18 set(HELP_MANUAL_IN "${CMAKE_CURRENT_SOURCE_DIR}/help-manual")
af27328bea9d (issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
19 set(HELP_MANUAL_OUT "${CMAKE_CURRENT_BINARY_DIR}/help-manual")
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")
af27328bea9d (issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
24 set(BINARY_BUILD_DIR_HELP "${CMAKE_CURRENT_BINARY_DIR}/_build-help")
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")
af27328bea9d (issue89) Add sphinx integration for the build system.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
diff changeset
28 set(SPHINX_CACHE_DIR_HELP "${CMAKE_CURRENT_BINARY_DIR}/_doctrees-help")
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")

http://wald.intevation.org/projects/trustbridge/