Salome HOME
IMP: GUI: Japanese translations
[modules/gui.git] / src / LightApp / CMakeLists.txt
1 # Copyright (C) 2012-2013  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 INCLUDE(UseQt4Ext)
20
21 INCLUDE_DIRECTORIES(
22   ${CAS_INCLUDE_DIRS}
23   ${QT_INCLUDES}
24   ${HDF5_INCLUDE_DIRS}
25   ${PYTHON_INCLUDE_DIRS}
26   ${PTHREAD_INCLUDE_DIRS}
27   ${QWT_INCLUDE_DIR}
28   ${KERNEL_INCLUDE_DIRS}
29   ${PROJECT_BINARY_DIR}
30   ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT
31   ${CMAKE_CURRENT_SOURCE_DIR}/../STD
32   ${CMAKE_CURRENT_SOURCE_DIR}/../CAM
33   ${CMAKE_CURRENT_SOURCE_DIR}/../ObjBrowser
34   ${CMAKE_CURRENT_SOURCE_DIR}/../LogWindow
35   ${CMAKE_CURRENT_SOURCE_DIR}/../Prs
36   ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx
37   ${CMAKE_CURRENT_SOURCE_DIR}/../Event
38   ${CMAKE_CURRENT_SOURCE_DIR}/../Style
39   ${CMAKE_CURRENT_SOURCE_DIR}/../CASCatch
40 )
41
42 ADD_DEFINITIONS(${PYTHON_DEFINITIONS} ${HDF5_DEFINITIONS} ${CAS_DEFINITIONS} ${QT_DEFINITIONS})
43
44 IF(NOT WINDOWS)
45   ADD_DEFINITIONS("-Wno-deprecated")
46 ENDIF(NOT WINDOWS)
47
48 SET(COMMON_LIBS 
49   ${QT_LIBRARIES}
50   suit
51   std
52   CAM
53   LogWindow
54   ${CAS_KERNEL}
55   SalomePrs
56   ObjBrowser
57   SalomeStyle
58   Event
59   ${HDF5_LIBRARIES}
60   ${KERNEL_LDFLAGS}
61   ${KERNEL_SalomeHDFPersist}
62   ${KERNEL_SALOMELocalTrace}
63 )
64
65 SET(GUI_HEADERS   
66   LightApp_AboutDlg.h
67   LightApp_Application.h
68   LightApp_DataModel.h
69   LightApp_Dialog.h
70   LightApp_OBSelector.h
71   LightApp_Operation.h
72   LightApp_Module.h
73   LightApp_ModuleAction.h
74   LightApp_ModuleDlg.h
75   LightApp_NameDlg.h
76   LightApp_SelectionMgr.h
77   LightApp_ShowHideOp.h
78   LightApp_Study.h
79   LightApp_SwitchOp.h
80   LightApp_Preferences.h
81   LightApp_PreferencesDlg.h
82   LightApp_WgViewModel.h
83 )
84
85 SET(RCCS LightApp.qrc)
86
87 SET(LightApp_SOURCES
88   LightApp_AboutDlg.cxx
89   LightApp_Application.cxx
90   LightApp_DataModel.cxx
91   LightApp_DataObject.cxx
92   LightApp_DataOwner.cxx
93   LightApp_DataSubOwner.cxx
94   LightApp_Dialog.cxx
95   LightApp_Displayer.cxx
96   LightApp_Driver.cxx
97   LightApp_EventFilter.cxx
98   LightApp_HDFDriver.cxx
99   LightApp_Module.cxx
100   LightApp_ModuleAction.cxx
101   LightApp_ModuleDlg.cxx
102   LightApp_NameDlg.cxx
103   LightApp_OBSelector.cxx
104   LightApp_Operation.cxx
105   LightApp_Selection.cxx
106   LightApp_SelectionMgr.cxx
107   LightApp_ShowHideOp.cxx
108   LightApp_Study.cxx
109   LightApp_SwitchOp.cxx
110   LightApp_Preferences.cxx
111   LightApp_PreferencesDlg.cxx
112   LightApp_WgViewModel.cxx
113   LightApp_FullScreenHelper.cxx
114 )
115
116 SET(GUITS_SOURCES
117   resources/LightApp_images.ts
118   resources/LightApp_msg_en.ts
119   resources/LightApp_msg_fr.ts
120   resources/LightApp_msg_ja.ts
121 )
122
123 SET(COMMON_HEADERS_H 
124   LightApp.h
125   LightApp_AboutDlg.h
126   LightApp_Application.h
127   LightApp_DataModel.h
128   LightApp_DataObject.h
129   LightApp_DataOwner.h
130   LightApp_DataSubOwner.h
131   LightApp_Dialog.h
132   LightApp_Displayer.h
133   LightApp_Driver.h
134   LightApp_EventFilter.h
135   LightApp_HDFDriver.h
136   LightApp_Module.h
137   LightApp_ModuleAction.h
138   LightApp_ModuleDlg.h
139   LightApp_NameDlg.h
140   LightApp_OBSelector.h
141   LightApp_Operation.h
142   LightApp_Selection.h
143   LightApp_SelectionMgr.h
144   LightApp_ShowHideOp.h
145   LightApp_Study.h
146   LightApp_SwitchOp.h
147   LightApp_Preferences.h
148   LightApp_PreferencesDlg.h
149   LightApp_UpdateFlags.h
150   LightApp_WgViewModel.h
151   LightApp_FullScreenHelper.h
152 )
153
154 IF(SALOME_USE_PYCONSOLE)
155   INCLUDE_DIRECTORIES(
156   ${PYTHON_INCLUDE_DIRS}
157   ${CMAKE_CURRENT_SOURCE_DIR}/../PyConsole
158   ${CMAKE_CURRENT_SOURCE_DIR}/../PyInterp
159   ${CMAKE_CURRENT_SOURCE_DIR}/../SUITApp
160   )
161   SET(COMMON_HEADERS_H ${COMMON_HEADERS_H} LightApp_PyInterp.h)
162   SET(LightApp_SOURCES ${LightApp_SOURCES} LightApp_PyInterp.cxx)
163   SET(COMMON_LIBS ${COMMON_LIBS} PyInterp PyConsole SUITApp)
164 ELSE(SALOME_USE_PYCONSOLE)
165   ADD_DEFINITIONS("-DDISABLE_PYCONSOLE")
166 ENDIF(SALOME_USE_PYCONSOLE)
167
168 IF(SALOME_USE_VTKVIEWER)
169   INCLUDE_DIRECTORIES(
170   ${VTK_INCLUDE_DIRS}
171   ${CMAKE_CURRENT_SOURCE_DIR}/../VTKViewer
172   )
173   SET(COMMON_LIBS ${COMMON_LIBS} ${VTK_LIBRARIES} VTKViewer)
174   IF(SALOME_USE_SALOMEOBJECT)
175     SET(COMMON_HEADERS_H ${COMMON_HEADERS_H} LightApp_VTKSelector.h)
176     SET(LightApp_SOURCES ${LightApp_SOURCES} LightApp_VTKSelector.cxx)
177     SET(GUI_HEADERS ${GUI_HEADERS} LightApp_VTKSelector.h)
178     SET(COMMON_LIBS ${COMMON_LIBS} SVTK)
179   ENDIF(SALOME_USE_SALOMEOBJECT)
180 ELSE(SALOME_USE_VTKVIEWER)
181   ADD_DEFINITIONS("-DDISABLE_VTKVIEWER")
182 ENDIF(SALOME_USE_VTKVIEWER)
183
184 IF(SALOME_USE_OCCVIEWER)
185   INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../OCCViewer)
186   SET(COMMON_HEADERS_H ${COMMON_HEADERS_H} LightApp_OCCSelector.h)
187   SET(LightApp_SOURCES ${LightApp_SOURCES} LightApp_OCCSelector.cxx)
188   SET(COMMON_LIBS ${COMMON_LIBS} OCCViewer)
189   SET(GUI_HEADERS ${GUI_HEADERS} LightApp_OCCSelector.h)
190 ELSE(SALOME_USE_OCCVIEWER)
191   ADD_DEFINITIONS("-DDISABLE_OCCVIEWER")
192 ENDIF(SALOME_USE_OCCVIEWER)
193
194 IF(SALOME_USE_GLVIEWER)
195   INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../GLViewer)
196   SET(COMMON_HEADERS_H ${COMMON_HEADERS_H} LightApp_GLSelector.h)
197   SET(LightApp_SOURCES ${LightApp_SOURCES} LightApp_GLSelector.cxx)
198   SET(GUI_HEADERS ${GUI_HEADERS} LightApp_GLSelector.h)
199   SET(COMMON_LIBS ${COMMON_LIBS} GLViewer)
200 ELSE(SALOME_USE_GLVIEWER)
201   ADD_DEFINITIONS("-DDISABLE_GLVIEWER")
202 ENDIF(SALOME_USE_GLVIEWER)
203
204 IF(SALOME_USE_PLOT2DVIEWER)
205   INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../Plot2d)
206   ADD_DEFINITIONS(${QWT_DEFINITIONS})
207   SET(COMMON_HEADERS_H ${COMMON_HEADERS_H} LightApp_Plot2dSelector.h)
208   SET(LightApp_SOURCES ${LightApp_SOURCES} LightApp_Plot2dSelector.cxx)
209   SET(GUI_HEADERS ${GUI_HEADERS} LightApp_Plot2dSelector.h)
210   SET(COMMON_LIBS ${COMMON_LIBS} Plot2d)
211 ELSE(SALOME_USE_PLOT2DVIEWER)
212   ADD_DEFINITIONS("-DDISABLE_PLOT2DVIEWER")
213 ENDIF(SALOME_USE_PLOT2DVIEWER)
214
215 IF(SALOME_USE_SUPERVGRAPHVIEWER)
216   INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../SUPERVGraph)
217   SET(COMMON_LIBS ${COMMON_LIBS} SUPERVGraph)
218 ELSE(SALOME_USE_SUPERVGRAPHVIEWER)
219   ADD_DEFINITIONS("-DDISABLE_SUPERVGRAPHVIEWER")
220 ENDIF(SALOME_USE_SUPERVGRAPHVIEWER)
221
222 IF(SALOME_USE_QXGRAPHVIEWER)
223   INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../QxScene)
224   SET(COMMON_LIBS ${COMMON_LIBS} QxScene)
225 ELSE(SALOME_USE_QXGRAPHVIEWER)
226   ADD_DEFINITIONS("-DDISABLE_QXGRAPHVIEWER")
227 ENDIF(SALOME_USE_QXGRAPHVIEWER)
228
229 IF(SALOME_USE_SALOMEOBJECT)
230   INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../OBJECT)
231   SET(COMMON_LIBS ${COMMON_LIBS} SalomeObject)
232   IF(SALOME_USE_PLOT2DVIEWER)
233     INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../SPlot2d)
234     SET(COMMON_LIBS ${COMMON_LIBS} SPlot2d)
235   ENDIF(SALOME_USE_PLOT2DVIEWER)
236  
237   IF(SALOME_USE_OCCVIEWER)
238     INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../SOCC)
239     SET(COMMON_LIBS ${COMMON_LIBS} SOCC)
240   ENDIF(SALOME_USE_OCCVIEWER)
241
242   IF(SALOME_USE_VTKVIEWER)
243     INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/../SVTK)
244   ENDIF(SALOME_USE_VTKVIEWER)
245 ELSE(SALOME_USE_SALOMEOBJECT)
246   ADD_DEFINITIONS("-DDISABLE_SALOMEOBJECT")
247 ENDIF(SALOME_USE_SALOMEOBJECT)
248     
249 QT4_WRAP_CPP(GUI_HEADERS_MOC ${GUI_HEADERS})
250 QT4_ADD_RESOURCES(RCC_SRCS ${RCCS})
251 ADD_LIBRARY(LightApp ${LightApp_SOURCES} ${GUI_HEADERS_MOC} ${RCC_SRCS})
252 TARGET_LINK_LIBRARIES(LightApp ${COMMON_LIBS})
253 INSTALL(TARGETS LightApp EXPORT ${PROJECT_NAME}TargetGroup DESTINATION ${SALOME_INSTALL_LIBS})
254
255 INSTALL(FILES ${COMMON_HEADERS_H} DESTINATION ${SALOME_INSTALL_HEADERS})
256 QT4_INSTALL_TS_RESOURCES("${GUITS_SOURCES}" "${SALOME_GUI_INSTALL_RES_DATA}")
257
258 FILE(GLOB GUIPNG_DATA "${CMAKE_CURRENT_SOURCE_DIR}/resources/*.png")
259 SET(GUI_DATA ${GUIPNG_DATA} ${CMAKE_CURRENT_SOURCE_DIR}/resources/LightApp.ini ${CMAKE_CURRENT_SOURCE_DIR}/resources/LightApp.xml)
260 INSTALL(FILES ${GUI_DATA} DESTINATION ${SALOME_GUI_INSTALL_RES_DATA})