Salome HOME
73a93059ebbc9b5e9c812a4ee90ea3e3a81182e2
[tools/configuration.git] / cmake / FindSalomeVTK.cmake
1 # Copyright (C) 2013-2023  CEA, EDF, 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   CommonSystem
41 )
42
43 #   Seting the following variable is equivalent to having passed the components
44 #   when calling the FIND_PACKAGE() command.
45 SET(SalomeVTK_FIND_COMPONENTS ${SalomeVTK_COMPONENTS})
46
47 # If no VTK root dir is specified, try the ParaView root dir:
48 SET(PARAVIEW_ROOT_DIR "$ENV{PARAVIEW_ROOT_DIR}" CACHE PATH "Path to the ParaView installation")
49 IF(EXISTS "${PARAVIEW_ROOT_DIR}" AND (NOT VTK_ROOT_DIR))
50   MESSAGE(STATUS "Looking for VTK in the ParaView installation (PARAVIEW_ROOT_DIR exists and VTK_ROOT_DIR is not defined) ...")
51   
52   # Extract VTK configuration directory from Paraview:
53   FILE(GLOB VTK_DIR "${PARAVIEW_ROOT_DIR}/lib/cmake/paraview-[1-9].[0-9]*/vtk")
54   IF(NOT VTK_DIR)
55     FILE(GLOB VTK_DIR "${PARAVIEW_ROOT_DIR}/lib64/cmake/paraview-[1-9].[0-9]*/vtk")
56   ENDIF()
57   MESSAGE(STATUS "Setting VTK_DIR to: ${VTK_DIR}") 
58 ENDIF()
59
60 SALOME_FIND_PACKAGE_AND_DETECT_CONFLICTS(VTK VTK_PREFIX_PATH 0)
61 MARK_AS_ADVANCED(VTK_DIR)
62
63 IF(VTK_FOUND)
64   MESSAGE(STATUS "VTK version is ${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}")
65 ENDIF()
66
67 IF(VTK_FOUND) 
68   SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH ${VTK_LIBRARIES})
69   SALOME_ACCUMULATE_ENVIRONMENT(PYTHONPATH ${VTK_LIBRARIES})
70   SALOME_ACCUMULATE_ENVIRONMENT(PV_PLUGIN_PATH ${VTK_LIBRARIES})
71 ENDIF()