]> Creatis software - creaBruker.git/blob - cmake/UserBuildLatexDoc.cmake
Added CMake configuration to enable CDash tests.
[creaBruker.git] / cmake / UserBuildLatexDoc.cmake
1 # ---------------------------------------------------------------------
2 #
3 # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image 
4 #                        pour la Santé)
5 # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
6 # Previous Authors : Laurent Guigues, Jean-Pierre Roux
7 # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
8 #
9 #  This software is governed by the CeCILL-B license under French law and 
10 #  abiding by the rules of distribution of free software. You can  use, 
11 #  modify and/ or redistribute the software under the terms of the CeCILL-B 
12 #  license as circulated by CEA, CNRS and INRIA at the following URL 
13 #  http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html 
14 #  or in the file LICENSE.txt.
15 #
16 #  As a counterpart to the access to the source code and  rights to copy,
17 #  modify and redistribute granted by the license, users are provided only
18 #  with a limited warranty  and the software's author,  the holder of the
19 #  economic rights,  and the successive licensors  have only  limited
20 #  liability. 
21 #
22 #  The fact that you are presently reading this means that you have had
23 #  knowledge of the CeCILL-B license and that you accept its terms.
24 # ------------------------------------------------------------------------
25
26
27 MACRO(USER_BUILD_LATEX_DOC TEX_FILE OUTPUT_REL_PATH)
28   # Need LaTeX
29   SET(USE_LATEX ON CACHE BOOL "" FORCE)
30   # Construct absolute build path
31   SET(BUILD_PATH ${${PROJECT_NAME}_DOC_BUILD_PATH}/${OUTPUT_REL_PATH})
32   #MESSAGE(STATUS "Tex file : ${TEX_FILE}")
33   #---------------------------------------------------------------------------
34   CONFIGURE_FILE(
35     ${CMAKE_CURRENT_SOURCE_DIR}/${TEX_FILE}.tex
36     ${BUILD_PATH}/${TEX_FILE}.tex
37     COPYONLY
38     )
39   CONFIGURE_FILE(
40     ${CMAKE_CURRENT_SOURCE_DIR}/../config.tex
41     ${BUILD_PATH}/config.tex
42     @ONLY
43     )
44   CONFIGURE_FILE(
45     ${CMAKE_CURRENT_SOURCE_DIR}/../config.tex
46     ${CMAKE_CURRENT_BINARY_DIR}/config.tex
47     @ONLY
48     )
49   #---------------------------------------------------------------------------
50  FILE(TO_NATIVE_PATH ${BUILD_PATH} THE_BUILD_PATH)
51
52   # Have to run latex twice to get references, toc, etc.
53  #message("ADD_CUSTOM_COMMAND(OUTPUT ${BUILD_PATH}/${TEX_FILE}.aux   MACRO(USER_BUILD_LATEX_DOC")
54       
55 ADD_CUSTOM_COMMAND(
56     OUTPUT ${BUILD_PATH}/${TEX_FILE}.aux 
57     COMMAND 
58     # latex
59     cd ${THE_BUILD_PATH} && ${LATEX_COMPILER}
60     ARGS
61     -interaction=batchmode ${BUILD_PATH}/${TEX_FILE} -output-directory=${BUILD_PATH}/
62     
63     DEPENDS 
64     ${CMAKE_CURRENT_SOURCE_DIR}/${TEX_FILE}.tex
65     ${CMAKE_CURRENT_SOURCE_DIR}/../config.tex
66     )
67
68 #message("LATEX_COMPILER = ${LATEX_COMPILER}")
69 ADD_CUSTOM_COMMAND(
70     OUTPUT ${BUILD_PATH}/${TEX_FILE}.pdf
71     COMMAND 
72     # latex
73     cd ${THE_BUILD_PATH} && ${LATEX_COMPILER}
74     ARGS
75     -interaction=batchmode ${BUILD_PATH}/${TEX_FILE} -output-directory=${BUILD_PATH}/
76   
77     DEPENDS ${BUILD_PATH}/${TEX_FILE}.aux 
78     )
79   
80   # pdf target
81   ADD_CUSTOM_TARGET(${TEX_FILE}.pdf ALL
82     DEPENDS ${BUILD_PATH}/${TEX_FILE}.pdf)
83
84   # Install
85   INSTALL( 
86     FILES ${BUILD_PATH}/${TEX_FILE}.pdf
87     DESTINATION ${${PROJECT_NAME}_DOC_INSTALL_PATH}/${OUTPUT_REL_PATH}
88     )
89
90 ENDMACRO(USER_BUILD_LATEX_DOC)