Salome HOME
CMake: Update path and version variables for current build system
[modules/yacs.git] / doc / CMakeLists.txt
1 # Copyright (C) 2012-2013  CEA/DEN, EDF R&D, OPEN CASCADE
2 #
3 # This library is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU Lesser General Public
5 # License as published by the Free Software Foundation; either
6 # version 2.1 of the License.
7 #
8 # This library is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 # Lesser General Public License for more details.
12 #
13 # You should have received a copy of the GNU Lesser General Public
14 # License along with this library; if not, write to the Free Software
15 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 #
17 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 #
19
20 INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/SalomeMacros.cmake)
21
22 SET(RSTFILES
23   accesCorba.rst
24   accesLocal.rst
25   advancepy.rst
26   annexe_common.rst
27   batch.rst
28   calcium.rst
29   calciumyacs.rst
30   calciumapi.rst
31   calciummod.rst
32   calculator.rst
33   compInterne.rst
34   components.rst
35   console.rst
36   cppsalome.rst
37   dataflow.rst
38   etapes.rst
39   execpy.rst
40   execution.rst
41   execxml.rst
42   gui_components.rst
43   gui.rst
44   hxx2salome.rst
45   index.rst
46   integration.rst
47   using.rst
48   main_menu.rst
49   modification.rst
50   operations.rst
51   principes.rst
52   progdsc.rst
53   pysalome.rst
54   python.rst
55   rappels.rst
56   references.rst
57   representation.rst
58   salome.rst
59   schemapy.rst
60   schemaxml.rst
61   scratch.rst
62   toolbars.rst
63   optimizer.rst
64   yacsgen.rst
65   )
66
67 SET(SPHINXOPTS )
68 SET(SOURCEDIR ${CMAKE_CURRENT_SOURCE_DIR})
69 SET(PAPEROPT_a4 -D latex_paper_size=a4)
70 SET(ALLSPHINXOPTS -d doctrees ${PAPEROPT_a4} ${SPHINXOPTS} ${SOURCEDIR})
71
72 # install user's documentation
73
74 SALOME_CONFIGURE_FILE(conf.py.in conf.py)
75
76 ADD_CUSTOM_TARGET(htm 
77   COMMAND ${CMAKE_COMMAND} -E make_directory html 
78   COMMAND ${CMAKE_COMMAND} -E make_directory doctrees
79   COMMAND ${SPHINX_EXECUTABLE} -c ${CMAKE_BINARY_DIR}/doc -b html ${ALLSPHINXOPTS} html
80   DEPENDS ${RSTFILES}
81   WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
82   )
83 INSTALL(CODE "EXECUTE_PROCESS(COMMAND \"${CMAKE_COMMAND}\" --build ${PROJECT_BINARY_DIR} --target htm)")
84 INSTALL(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html/ 
85   DESTINATION ${SALOME_INSTALL_DOC}/gui/YACS 
86   USE_SOURCE_PERMISSIONS
87   PATTERN ".buildinfo" EXCLUDE
88   )
89   
90 SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES html)
91 SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES doctrees)
92
93 # install developer's documentation
94
95 SALOME_CONFIGURE_FILE(Doxyfile.in Doxyfile)
96 SALOME_CONFIGURE_FILE(sources/header.html.in sources/header.html)
97
98 ADD_CUSTOM_TARGET(dev_docs ${DOXYGEN_EXECUTABLE})
99
100 INSTALL(CODE "FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/YACS/htmldev)")
101 INSTALL(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/YACS/htmldev/ DESTINATION ${SALOME_INSTALL_DOC}/tui/YACS)
102 INSTALL(FILES images/head.png DESTINATION ${SALOME_INSTALL_DOC}/tui/YACS) 
103 INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/src/yacsloader/samples 
104         DESTINATION ${SALOME_INSTALL_DOC}/tui/YACS
105         PATTERN "CVS" EXCLUDE
106         )  
107 SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES YACS)