Salome HOME
737f21eecf1db1ffffe830c4d4440dd49b4668a8
[modules/kernel.git] / src / SALOMESDS / CMakeLists.txt
1 # Copyright (C) 2012-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 : Anthony GEAY (EDF R&D)
20
21 INCLUDE_DIRECTORIES(
22   ${OMNIORB_INCLUDE_DIR}
23   ${PTHREAD_INCLUDE_DIR}
24   ${PYTHON_INCLUDE_DIRS}
25   ${PROJECT_BINARY_DIR}/idl
26   ${PROJECT_BINARY_DIR}/salome_adm
27   ${CMAKE_CURRENT_SOURCE_DIR}/../Utils
28   ${CMAKE_CURRENT_SOURCE_DIR}/../NamingService
29   ${CMAKE_CURRENT_SOURCE_DIR}/../Launcher
30   ${CMAKE_CURRENT_SOURCE_DIR}/../Container
31   ${CMAKE_CURRENT_SOURCE_DIR}/../ResourcesManager
32 )
33
34 ADD_DEFINITIONS(${OMNIORB_DEFINITIONS} ${PYTHON_DEFINITIONS})
35
36 SET(COMMON_LIBS SalomeNS SalomeContainer SalomeIDLKernel ${OMNIORB_LIBRARIES} ${PYTHON_LIBRARIES})
37
38 SET(SalomeSDS_SOURCES
39   SALOMESDS_Exception.cxx
40   SALOMESDS_RefCountServ.cxx
41   SALOMESDS_BasicDataServer.cxx
42   SALOMESDS_DataScopeServer.cxx
43   SALOMESDS_RequestSwitcher.cxx
44   SALOMESDS_DataServerManager.cxx
45   SALOMESDS_PickelizedPyObjServer.cxx
46   SALOMESDS_PickelizedPyObjRdOnlyServer.cxx
47   SALOMESDS_PickelizedPyObjRdExtServer.cxx
48   SALOMESDS_PickelizedPyObjRdExtInitServer.cxx
49   SALOMESDS_PickelizedPyObjRdWrServer.cxx
50   SALOMESDS_Transaction.cxx
51   SALOMESDS_KeyWaiter.cxx
52   SALOMESDS_Sha1Keeper.cxx
53   )
54
55 ADD_LIBRARY(SalomeSDS ${SalomeSDS_SOURCES})
56 TARGET_LINK_LIBRARIES(SalomeSDS ${COMMON_LIBS} ${PTHREAD_LIBRARIES})
57 INSTALL(TARGETS SalomeSDS EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
58
59 ADD_EXECUTABLE(SALOME_DataScopeServer SALOME_DataScopeServer.cxx)
60 TARGET_LINK_LIBRARIES(SALOME_DataScopeServer SalomeSDS)
61 INSTALL(TARGETS SALOME_DataScopeServer DESTINATION ${SALOME_INSTALL_BINS})
62 INSTALL(FILES SalomeSDSClt.py SALOMEWrappedStdType.py DESTINATION ${SALOME_INSTALL_BINS})
63 FILE(GLOB COMMON_HEADERS_HXX "${CMAKE_CURRENT_SOURCE_DIR}/*.hxx")
64 INSTALL(FILES ${COMMON_HEADERS_HXX} DESTINATION ${SALOME_INSTALL_HEADERS})
65 # tests part
66 SET(LOCAL_TEST_DIR ${KERNEL_TEST_DIR}/SALOMESDS)
67 INSTALL(FILES TestSalomeSDS.py TestSalomeSDSHelper0.py DESTINATION ${LOCAL_TEST_DIR})
68 INSTALL(FILES CTestTestfileInstall.cmake DESTINATION ${LOCAL_TEST_DIR} RENAME CTestTestfile.cmake)