Salome HOME
An attempt to use the feature kind instead of direct text. May be, later the dependen...
[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_Module.h
12         XGUI_Tools.h
13         XGUI_Workbench.h
14         XGUI_Workshop.h
15     XGUI_ViewWindow.h
16     XGUI_ViewPort.h
17     XGUI_Viewer.h
18         XGUI_RubberBand.h
19         XGUI_Constants.h
20         XGUI_ViewBackground.h
21         XGUI_DocumentDataModel.h
22         XGUI_PartDataModel.h
23         XGUI_ObjectsBrowser.h
24         XGUI_OperationMgr.h
25     XGUI_DataTreeModel.h
26     XGUI_SelectionMgr.h
27     XGUI_SalomeConnector.h
28     XGUI_ActionsMgr.h
29     XGUI_ErrorDialog.h
30     XGUI_SalomeViewer.h
31     XGUI_ViewerProxy.h
32     XGUI_ViewerPrs.h
33     XGUI_PropertyPanel.h
34     XGUI_ContextMenuMgr.h
35     XGUI_ModuleConnector.h
36 )
37
38 SET(PROJECT_AUTOMOC 
39     ${CMAKE_CURRENT_BINARY_DIR}/XGUI_automoc.cpp
40 )
41
42 SET(PROJECT_SOURCES
43         XGUI_Command.cpp
44         XGUI_Displayer.cpp
45         XGUI_MainMenu.cpp
46         XGUI_MainWindow.cpp
47         XGUI_MenuGroupPanel.cpp
48         XGUI_Tools.cpp
49         XGUI_Workbench.cpp
50         XGUI_Workshop.cpp
51     XGUI_ViewWindow.cpp
52     XGUI_ViewPort.cpp
53     XGUI_Viewer.cpp
54         XGUI_RubberBand.cpp
55         XGUI_ViewBackground.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_ViewerPrs.cpp
65     XGUI_PropertyPanel.cpp
66     XGUI_ContextMenuMgr.cpp
67     XGUI_ModuleConnector.cpp
68 )
69
70 SET(PROJECT_RESOURCES 
71     XGUI_pictures.qrc
72 )
73
74 SET(TEXT_RESOURCES
75         XGUI_msg_fr.ts
76 )
77
78 SET(PROJECT_LIBRARIES
79     Events
80     Config
81         ${QT_LIBRARIES}
82         ${CAS_VIEWER}
83         ${CAS_KERNEL}
84         PyConsole
85         PyInterp
86         PyEvent
87         ModelAPI
88         ModuleBase
89 )
90
91 IF(WIN32) 
92     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} opengl32)
93 ELSE()
94     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} GL)
95 ENDIF()
96
97 QT4_ADD_RESOURCES(PROJECT_COMPILED_RESOURCES ${PROJECT_RESOURCES})
98 #QT5_ADD_TRANSLATION(QM_RESOURCES ${TEXT_RESOURCES})
99
100 QT4_CREATE_TRANSLATION(QM_RESOURCES 
101                                            ${PROJECT_SOURCES}
102                                            ${TEXT_RESOURCES}
103                                            OPTIONS -extensions cpp -no-recursive
104                                            )
105
106
107 SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES} ${QM_RESOURCES})
108 #SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES})
109 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES} ${PROJECT_RESOURCES})
110
111 ADD_DEFINITIONS( -DXGUI_EXPORTS ${CAS_DEFINITIONS} )
112
113 INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/src/Events
114                                          ${PROJECT_SOURCE_DIR}/src/Config
115                                          ${PROJECT_SOURCE_DIR}/src/PyInterp
116                                          ${PROJECT_SOURCE_DIR}/src/PyConsole
117                                          ${PROJECT_SOURCE_DIR}/src/ModelAPI
118                                          ${PROJECT_SOURCE_DIR}/src/Model
119                                          ${PROJECT_SOURCE_DIR}/src/ModuleBase
120                                          ${PROJECT_SOURCE_DIR}/src/PartSetPlugin
121                                          ${CAS_INCLUDE_DIRS})
122
123 LINK_DIRECTORIES($ENV{PYTHON_LIB_DIR})
124
125 ADD_LIBRARY(XGUI SHARED 
126         ${PROJECT_SOURCES} 
127         ${PROJECT_HEADERS} 
128         ${PROJECT_COMPILED_RESOURCES} 
129         ${TEXT_RESOURCES}
130         ${QM_RESOURCES}
131 )
132
133 ADD_DEPENDENCIES(XGUI ModelAPI)
134
135 # The Qt5Widgets_LIBRARIES variable also includes QtGui and QtCore
136 TARGET_LINK_LIBRARIES(XGUI ${PROJECT_LIBRARIES})
137
138 INSTALL(TARGETS XGUI DESTINATION bin)
139 INSTALL(FILES ${QM_RESOURCES} DESTINATION bin)