Salome HOME
Merge from V6_main (04/10/2012)
[modules/gui.git] / src / Session / CMakeLists.txt
1 # Copyright (C) 2012  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.
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
20 INCLUDE_DIRECTORIES(
21   ${QT_INCLUDE_DIRS}
22   ${LIBXML_INCLUDE_DIRS}
23   ${PYTHON_INCLUDE_DIRS}
24   ${HDF5_INCLUDE_DIRS}
25   ${BOOST_INCLUDE_DIRS}
26   ${CAS_INCLUDE_DIRS}
27   ${OMNIORB_INCLUDE_DIRS}
28   ${PTHREAD_INCLUDE_DIRS}
29   ${KERNEL_ROOT_DIR}/include/salome
30   ${CMAKE_BINARY_DIR}/idl
31   ${CMAKE_BINARY_DIR}
32   ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
33   ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
34   ${CMAKE_CURRENT_SOURCE_DIR}/../Event
35   ${CMAKE_CURRENT_SOURCE_DIR}/../Style
36   ${CMAKE_CURRENT_SOURCE_DIR}/../CASCatch
37 )
38
39 SET(COMMON_LIBS 
40   ${SalomeNS}
41   ${SalomeLifeCycleCORBA}
42   ${OpUtil}
43   ${SALOMELocalTrace}
44   ${SalomeCatalog}
45   ${SalomeDSClient}
46   ${CAS_KERNEL}
47   ${with_loggerTraceCollector}
48   ${SalomeIDLKernel}
49   ${SalomeContainer}
50   ${TOOLSDS}
51   ${SalomeLauncher}
52   ${Registry}
53   ${SALOMEBasics}
54   suit
55   Event
56   SalomeIDLGUI
57   SalomeStyle
58   ${QT_LIBS}
59 )
60 SET(COMMON_FLAGS "${QT_DEFINITIONS} ${LIBXML_DEFINITIONS} ${PYTHON_DEFINITIONS} ${HDF5_DEFINITIONS} ${BOOST_DEFINITIONS} ${CAS_DEFINITIONS} ${CORBA_DEFINITIONS} ${PLATFORM_DEFINITIONS}")
61
62 IF(ENABLE_TESTRECORDER)
63   SET(COMMON_FLAGS "${COMMON_FLAGS} -DENABLE_TESTRECORDER ${TESTRECORDER_DEFINITIONS}")
64   SET(COMMON_LIBS ${COMMON_LIBS} ${TESTRECORDER_LIBS})
65 ENDIF(ENABLE_TESTRECORDER)
66
67 SET(SalomeSession_SOURCES
68   Session_Session_i.cxx
69   Session_ServerThread.cxx
70   Session_ServerLauncher.cxx
71   Session_ServerCheck.cxx
72   SalomeApp_Engine_i.cxx
73 )
74 ADD_LIBRARY(SalomeSession SHARED ${SalomeSession_SOURCES})
75 SET_TARGET_PROPERTIES(SalomeSession PROPERTIES COMPILE_FLAGS "${COMMON_FLAGS}")
76 TARGET_LINK_LIBRARIES(SalomeSession ${COMMON_LIBS})
77 INSTALL(TARGETS SalomeSession DESTINATION ${GUI_salomelib_LIBS}) 
78
79 SET(SALOME_Session_Server_LIBS
80   ${COMMON_LIBS}
81   ${SalomeContainer}
82   ${SalomeResourcesManager}
83   ${TOOLSDS}
84   ${SalomeHDFPersist}
85   ${SalomeDSImpl}
86   ${SalomeGenericObj}
87   ${Registry}
88   ${SalomeNotification}
89   ${SALOMEBasics}
90   ${SalomeLauncher}
91   qtx
92   SalomeIDLGUI
93   SalomeSession
94   ${HDF5_LIBS}
95   ${PYTHON_LIBS}
96   ${OMNIORB_LIBS}
97 )
98 ADD_EXECUTABLE(SALOME_Session_Server SALOME_Session_Server.cxx)
99 SET_TARGET_PROPERTIES(SALOME_Session_Server PROPERTIES COMPILE_FLAGS "${COMMON_FLAGS}")
100 TARGET_LINK_LIBRARIES(SALOME_Session_Server ${SALOME_Session_Server_LIBS})
101 INSTALL(TARGETS SALOME_Session_Server DESTINATION ${GUI_salomebin_BINS})
102
103 SET(COMMON_HEADERS_H
104   Session_Session_i.hxx
105   SALOME_Session.hxx
106   Session_ServerLauncher.hxx
107   Session_ServerThread.hxx
108   Session_ServerCheck.hxx
109   SalomeApp_Engine_i.hxx
110 )
111 INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${GUI_salomeinclude_HEADERS})