]> SALOME platform Git repositories - modules/yacs.git/blob - salome_adm/cmake_files/FindSPHINX.cmake
Salome HOME
Merge from V6_main_20120808 08Aug12
[modules/yacs.git] / salome_adm / cmake_files / FindSPHINX.cmake
1 # Copyright (C) 2007-2012  CEA/DEN, EDF R&D, OPEN CASCADE
2 #
3 # Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5 #
6 # This library is free software; you can redistribute it and/or
7 # modify it under the terms of the GNU Lesser General Public
8 # License as published by the Free Software Foundation; either
9 # version 2.1 of the License.
10 #
11 # This library is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 # Lesser General Public License for more details.
15 #
16 # You should have received a copy of the GNU Lesser General Public
17 # License along with this library; if not, write to the Free Software
18 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
19 #
20 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 #
22
23 # ------
24 MESSAGE(STATUS "Check for sphinx ...")
25 # ------
26
27 IF(SPHINX_IS_MANDATORY STREQUAL 0)
28   SET(SPHINX_IS_MANDATORY 0)
29   SET(SPHINX_IS_OPTIONAL 1)
30 ENDIF(SPHINX_IS_MANDATORY STREQUAL 0)
31 IF(SPHINX_IS_OPTIONAL STREQUAL 0)
32   SET(SPHINX_IS_MANDATORY 1)
33   SET(SPHINX_IS_OPTIONAL 0)
34 ENDIF(SPHINX_IS_OPTIONAL STREQUAL 0)
35 IF(NOT SPHINX_IS_MANDATORY AND NOT SPHINX_IS_OPTIONAL)
36   SET(SPHINX_IS_MANDATORY 0)
37   SET(SPHINX_IS_OPTIONAL 1)
38 ENDIF(NOT SPHINX_IS_MANDATORY AND NOT SPHINX_IS_OPTIONAL)
39
40 # ------
41
42 SET(SPHINX_STATUS 1)
43 IF(WITHOUT_SPHINX OR WITH_SPHINX STREQUAL 0)
44   SET(SPHINX_STATUS 0)
45   MESSAGE(STATUS "sphinx disabled from command line.")
46 ENDIF(WITHOUT_SPHINX OR WITH_SPHINX STREQUAL 0)
47
48 # ------
49
50 IF(SPHINX_STATUS)
51   IF(WITH_SPHINX)
52     SET(SPHINX_ROOT_USER ${WITH_SPHINX})
53   ENDIF(WITH_SPHINX)
54   IF(NOT SPHINX_ROOT_USER)
55     SET(SPHINX_ROOT_USER $ENV{SPHINX_ROOT})
56   ENDIF(NOT SPHINX_ROOT_USER)
57   IF(NOT SPHINX_ROOT_USER)
58     SET(SPHINX_ROOT_USER $ENV{SPHINXHOME})
59   ENDIF(NOT SPHINX_ROOT_USER)
60 ENDIF(SPHINX_STATUS)
61
62 # ------
63
64 IF(SPHINX_STATUS)
65   SET(SPHINX_EXECUTABLE_TO_FIND sphinx-build)
66   IF(SPHINX_ROOT_USER)
67     SET(BINDIR)
68     IF(WINDOWS)
69   SET(BINDIR ${SPHINX_ROOT_USER}/Scripts)
70     ELSE(WINDOWS)
71   SET(BINDIR ${SPHINX_ROOT_USER}/bin)
72     ENDIF(WINDOWS)
73     FIND_PROGRAM(SPHINX_EXECUTABLE ${SPHINX_EXECUTABLE_TO_FIND} PATHS ${BINDIR} NO_DEFAULT_PATH)
74   ELSE(SPHINX_ROOT_USER)
75     FIND_PROGRAM(SPHINX_EXECUTABLE ${SPHINX_EXECUTABLE_TO_FIND})
76   ENDIF(SPHINX_ROOT_USER)
77   IF(SPHINX_EXECUTABLE)
78     MESSAGE(STATUS "${SPHINX_EXECUTABLE_TO_FIND} found: ${SPHINX_EXECUTABLE}")
79   ELSE(SPHINX_EXECUTABLE)
80     MESSAGE(STATUS "${SPHINX_EXECUTABLE_TO_FIND} not found, try to use WITH_SPHINX option or SPHINX_ROOT (or SPHINXHOME) environment variable")
81     SET(SPHINX_STATUS 0)
82   ENDIF(SPHINX_EXECUTABLE)
83 ENDIF(SPHINX_STATUS)
84
85 # ----
86
87 IF(SPHINX_STATUS)
88   SET(SPHINX_IS_OK 1)
89 ELSE(SPHINX_STATUS)
90   SET(SPHINX_IS_OK 0)
91   IF(SPHINX_IS_MANDATORY)
92     MESSAGE(FATAL_ERROR "sphinx not found ... mandatory ... abort")
93   ELSE(SPHINX_IS_MANDATORY)
94     MESSAGE(STATUS "sphinx not found ... optional ... disabled")
95   ENDIF(SPHINX_IS_MANDATORY)
96 ENDIF(SPHINX_STATUS)
97
98 # ----