Salome HOME
bb225cb3a5db3032818e889570ca01a22445699e
[tools/configuration.git] / cmake / FindSalomeVTK.cmake
1 # Copyright (C) 2013-2020  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, or (at your option) any later version.
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 # Author: Adrien Bruneton
20 #
21
22 # VTK detection for Salome (see http://www.vtk.org/Wiki/VTK/Build_System_Migration)
23 #
24 #  !! Please read the generic detection procedure in SalomeMacros.cmake !!
25 #
26
27 # List the required components:
28 SET(SalomeVTK_COMPONENTS
29   RenderingLOD 
30   RenderingAnnotation 
31   FiltersParallel
32   IOExport
33   WrappingPythonCore  ## ParaView 4.0.1
34   IOXML
35   FiltersVerdict
36   RenderingLabel
37   InteractionWidgets
38   InfovisCore
39   InteractionStyle
40 )
41
42 #   Seting the following variable is equivalent to having passed the components
43 #   when calling the FIND_PACKAGE() command.
44 SET(SalomeVTK_FIND_COMPONENTS ${SalomeVTK_COMPONENTS})
45
46 # If no VTK root dir is specified, try the ParaView root dir:
47 SET(PARAVIEW_ROOT_DIR "$ENV{PARAVIEW_ROOT_DIR}" CACHE PATH "Path to the ParaView installation")
48 IF(EXISTS "${PARAVIEW_ROOT_DIR}" AND (NOT VTK_ROOT_DIR))
49   MESSAGE(STATUS "Looking for VTK in the ParaView installation (PARAVIEW_ROOT_DIR exists and VTK_ROOT_DIR is not defined) ...")
50   
51   # Extract VTK configuration directory from Paraview:
52   FILE(GLOB VTK_DIR "${PARAVIEW_ROOT_DIR}/lib/cmake/paraview-[1-9].[0-9]*/vtk")
53   IF(NOT VTK_DIR)
54     FILE(GLOB VTK_DIR "${PARAVIEW_ROOT_DIR}/lib64/cmake/paraview-[1-9].[0-9]*/vtk")
55   ENDIF()
56   MESSAGE(STATUS "Setting VTK_DIR to: ${VTK_DIR}") 
57 ENDIF()
58
59 SALOME_FIND_PACKAGE_AND_DETECT_CONFLICTS(VTK VTK_PREFIX_PATH 0)
60 MARK_AS_ADVANCED(VTK_DIR)
61
62 IF(VTK_FOUND)
63   MESSAGE(STATUS "VTK version is ${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}")
64 ENDIF()
65
66 IF(VTK_FOUND) 
67   SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH ${VTK_LIBRARIES})
68   SALOME_ACCUMULATE_ENVIRONMENT(PYTHONPATH ${VTK_LIBRARIES})
69   SALOME_ACCUMULATE_ENVIRONMENT(PV_PLUGIN_PATH ${VTK_LIBRARIES})
70 ENDIF()