]> SALOME platform Git repositories - modules/shaper.git/blob - src/XGUI/CMakeLists.txt
Salome HOME
Merge remote-tracking branch 'origin/BR_WIRE_RESULTS'
[modules/shaper.git] / src / XGUI / CMakeLists.txt
1
2 SET(CMAKE_AUTOMOC ON)
3
4 SET(PROJECT_HEADERS
5         XGUI.h
6         XGUI_Command.h
7         XGUI_Displayer.h
8         XGUI_MainMenu.h
9         XGUI_MainWindow.h
10         XGUI_MenuGroupPanel.h
11         XGUI_Tools.h
12         XGUI_Workbench.h
13         XGUI_Workshop.h
14     XGUI_ViewWindow.h
15     XGUI_ViewPort.h
16     XGUI_Viewer.h
17         XGUI_RubberBand.h
18         XGUI_Constants.h
19         XGUI_DocumentDataModel.h
20         XGUI_PartDataModel.h
21         XGUI_ObjectsBrowser.h
22         XGUI_OperationMgr.h
23     XGUI_DataTreeModel.h
24     XGUI_SelectionMgr.h
25     XGUI_SalomeConnector.h
26     XGUI_ActionsMgr.h
27     XGUI_ErrorDialog.h
28     XGUI_ViewerProxy.h
29     XGUI_PropertyPanel.h
30     XGUI_ContextMenuMgr.h
31     XGUI_ModuleConnector.h
32         XGUI_Selection.h
33         XGUI_Preferences.h
34         XGUI_IPrefMgr.h
35         XGUI_QtEvents.h
36         XGUI_ViewerFilters.h
37 )
38
39 SET(PROJECT_AUTOMOC 
40     ${CMAKE_CURRENT_BINARY_DIR}/XGUI_automoc.cpp
41 )
42
43 SET(PROJECT_SOURCES
44         XGUI_Command.cpp
45         XGUI_Displayer.cpp
46         XGUI_MainMenu.cpp
47         XGUI_MainWindow.cpp
48         XGUI_MenuGroupPanel.cpp
49         XGUI_Tools.cpp
50         XGUI_Workbench.cpp
51         XGUI_Workshop.cpp
52     XGUI_ViewWindow.cpp
53     XGUI_ViewPort.cpp
54     XGUI_Viewer.cpp
55         XGUI_RubberBand.cpp
56         XGUI_DocumentDataModel.cpp
57         XGUI_PartDataModel.cpp
58         XGUI_ObjectsBrowser.cpp
59         XGUI_OperationMgr.cpp
60     XGUI_SelectionMgr.cpp
61     XGUI_ActionsMgr.cpp
62     XGUI_ErrorDialog.cpp
63     XGUI_ViewerProxy.cpp
64     XGUI_PropertyPanel.cpp
65     XGUI_ContextMenuMgr.cpp
66     XGUI_ModuleConnector.cpp
67         XGUI_Selection.cpp
68         XGUI_Preferences.cpp
69         XGUI_QtEvents.cpp
70         XGUI_ViewerFilters.cpp
71 )
72
73 SET(PROJECT_RESOURCES 
74     XGUI_pictures.qrc
75 )
76
77 SET(PREFERENCES_XML
78         NewGeom.xml
79 )
80
81 SET(TEXT_RESOURCES
82         XGUI_msg_fr.ts
83 )
84
85 SET(PROJECT_LIBRARIES
86     Events
87     Config
88         ModelAPI
89         ModuleBase
90         ${QT_LIBRARIES}
91         ${CAS_VIEWER}
92         ${CAS_KERNEL}
93         ${CAS_SHAPE}
94         ${PYTHON_LIBRARIES}
95         ${PyConsole}
96         ${PyInterp}
97         ${suit}
98         ${qtx}
99 )
100
101 IF(WIN32) 
102     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} opengl32)
103 ELSE()
104     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} GL)
105 ENDIF()
106
107 QT4_ADD_RESOURCES(PROJECT_COMPILED_RESOURCES ${PROJECT_RESOURCES})
108 #QT5_ADD_TRANSLATION(QM_RESOURCES ${TEXT_RESOURCES})
109
110 QT4_CREATE_TRANSLATION(QM_RESOURCES 
111                                            ${PROJECT_SOURCES}
112                                            ${TEXT_RESOURCES}
113                                            OPTIONS -extensions cpp -no-recursive
114                                            )
115
116
117 SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES} ${QM_RESOURCES})
118 #SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES})
119 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES} ${PROJECT_RESOURCES} ${PREFERENCES_XML})
120
121 ADD_DEFINITIONS( -DXGUI_EXPORTS ${CAS_DEFINITIONS} )
122
123 INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/src/Events
124                                          ${PROJECT_SOURCE_DIR}/src/Config
125                                          ${PROJECT_SOURCE_DIR}/src/ModelAPI
126                                          ${PROJECT_SOURCE_DIR}/src/GeomAPI
127                                          ${PROJECT_SOURCE_DIR}/src/ModuleBase
128                                          ${PROJECT_SOURCE_DIR}/src/PartSetPlugin
129                                          ${CAS_INCLUDE_DIRS}
130                                          ${SUIT_INCLUDE})
131
132 LINK_DIRECTORIES($ENV{PYTHON_LIB_DIR})
133
134 ADD_LIBRARY(XGUI SHARED 
135         ${PROJECT_SOURCES} 
136         ${PROJECT_HEADERS} 
137         ${PROJECT_COMPILED_RESOURCES} 
138         ${TEXT_RESOURCES}
139         ${QM_RESOURCES}
140         ${PREFERENCES_XML}
141 )
142
143 ADD_DEPENDENCIES(XGUI ModelAPI)
144
145 # The Qt5Widgets_LIBRARIES variable also includes QtGui and QtCore
146 TARGET_LINK_LIBRARIES(XGUI ${PROJECT_LIBRARIES})
147
148 INSTALL(TARGETS XGUI DESTINATION bin)
149 INSTALL(FILES ${QM_RESOURCES} DESTINATION bin)
150 INSTALL(FILES ${PREFERENCES_XML} DESTINATION resources)