-
Notifications
You must be signed in to change notification settings - Fork 0
/
CMakeLists.txt
92 lines (74 loc) · 2.82 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# Author : Anthony Geay (EDF R&D)
CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8 FATAL_ERROR)
PROJECT(SalomeOpenTURNS C CXX)
CMAKE_POLICY(SET CMP0003 NEW)
SET(KERNEL_ROOT_DIR $ENV{KERNEL_ROOT_DIR} CACHE PATH "Path to the Salome KERNEL")
SET(GUI_ROOT_DIR $ENV{GUI_ROOT_DIR} CACHE PATH "Path to the Salome GUI")
SET(YACS_ROOT_DIR $ENV{YACS_ROOT_DIR} CACHE PATH "Path to the Salome YACS")
SET(OPENTURNS_HOME $ENV{OPENTURNS_HOME} CACHE PATH "Path to OpenTURNS tool")
SET(Persalys_DIR $ENV{OTGUI_ROOT_DIR} CACHE PATH "Path to Persalys")
SET(CONFIGURATION_ROOT_DIR $ENV{CONFIGURATION_ROOT_DIR} CACHE PATH "Path to the Salome CMake configuration files")
IF(EXISTS ${CONFIGURATION_ROOT_DIR})
LIST(APPEND CMAKE_MODULE_PATH "${CONFIGURATION_ROOT_DIR}/cmake")
INCLUDE(SalomeMacros)
ELSE()
MESSAGE(FATAL_ERROR "We absolutely need the Salome CMake configuration files, please define CONFIGURATION_ROOT_DIR !")
ENDIF()
LIST(APPEND CMAKE_MODULE_PATH "${KERNEL_ROOT_DIR}/salome_adm/cmake_files")
LIST(APPEND CMAKE_MODULE_PATH "${GUI_ROOT_DIR}/adm_local/cmake_files")
LIST(APPEND CMAKE_MODULE_PATH "${YACS_ROOT_DIR}/adm/cmake")
INCLUDE(SalomeSetupPlatform)
SET(BUILD_SHARED_LIBS TRUE)
FIND_PACKAGE(SalomePythonInterp REQUIRED)
FIND_PACKAGE(SalomePythonLibs REQUIRED)
FIND_PACKAGE(SalomeKERNEL)
FIND_PACKAGE(SalomeGUI)
FIND_PACKAGE(SalomeYACS)
FIND_PACKAGE(Persalys)
FIND_PACKAGE(SalomeQt5 REQUIRED)
SET(_moc_HEADERS
OTSalomeGui.hxx
OTViewer_ViewManager.hxx
)
QT5_WRAP_CPP(_moc_SOURCES ${_moc_HEADERS})
SET(OPENTURNS_SOURCES
OTSalomeGui.cxx
OTViewer_ViewManager.cxx
OTViewer_Viewer.cxx
OTPVServerManager.cxx
${_moc_SOURCES}
)
SET(_OPENTURNS_INCLUDE_DIRS
${GUI_INCLUDE_DIRS}
${YACS_INCLUDE_DIRS}
${PERSALYS_INCLUDE_DIRS}
)
IF(WIN32)
LIST(APPEND OPENTURNS_INCLUDE_DIRS "${OPENTURNS_HOME}/include")
ENDIF(WIN32)
INCLUDE_DIRECTORIES(${_OPENTURNS_INCLUDE_DIRS})
ADD_DEFINITIONS(
-DOTGUI_HAVE_YACS
${QT_DEFINITIONS}
${PYTHON_DEFINITIONS}
)
FIND_LIBRARY(PERSALYS_view persalysview ${PERSALYS_LIBRARY_DIRS})
SET(_link_LIBRARIES ${GUI_LightApp} ${PERSALYS_view})
IF(WIN32)
FIND_LIBRARY(PERSALYS_base persalysbase ${PERSALYS_LIBRARY_DIRS})
FIND_LIBRARY(PERSALYS_plotpv persalysplotpv ${PERSALYS_LIBRARY_DIRS})
FIND_LIBRARY(OPENTURNS_ot OT ${OPENTURNS_HOME}/lib)
FIND_LIBRARY(OPENTURNS_otmorris otmorris ${OPENTURNS_HOME}/lib)
LIST(APPEND _link_LIBRARIES ${PERSALYS_base} ${PERSALYS_plotpv} ${OPENTURNS_ot} ${OPENTURNS_otmorris})
ENDIF(WIN32)
ADD_LIBRARY(OPENTURNS ${OPENTURNS_SOURCES})
TARGET_LINK_LIBRARIES(OPENTURNS ${_link_LIBRARIES})
INSTALL(TARGETS OPENTURNS DESTINATION lib/salome)
SALOME_CONFIGURE_PREPARE(Qt5)
ADD_SUBDIRECTORY(resources)
ADD_SUBDIRECTORY(tools)
#IF(SALOME_BUILD_TESTS)
SET(SALOME_OT_INSTALL_TEST ${SALOME_INSTALL_SCRIPT_SCRIPTS}/test CACHE PATH
"Install path: SALOME Test files")
ADD_SUBDIRECTORY(test)
#ENDIF()