]> SALOME platform Git repositories - modules/shaper.git/blob - src/XGUI/CMakeLists.txt
Salome HOME
Reusing SUIT libraries
[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_ViewBackground.h
20         XGUI_DocumentDataModel.h
21         XGUI_PartDataModel.h
22         XGUI_ObjectsBrowser.h
23         XGUI_OperationMgr.h
24     XGUI_DataTreeModel.h
25     XGUI_SelectionMgr.h
26     XGUI_SalomeConnector.h
27     XGUI_ActionsMgr.h
28     XGUI_ErrorDialog.h
29     XGUI_SalomeViewer.h
30     XGUI_ViewerProxy.h
31     XGUI_PropertyPanel.h
32     XGUI_ContextMenuMgr.h
33     XGUI_ModuleConnector.h
34         XGUI_Selection.h
35 )
36
37 SET(PROJECT_AUTOMOC 
38     ${CMAKE_CURRENT_BINARY_DIR}/XGUI_automoc.cpp
39 )
40
41 SET(PROJECT_SOURCES
42         XGUI_Command.cpp
43         XGUI_Displayer.cpp
44         XGUI_MainMenu.cpp
45         XGUI_MainWindow.cpp
46         XGUI_MenuGroupPanel.cpp
47         XGUI_Tools.cpp
48         XGUI_Workbench.cpp
49         XGUI_Workshop.cpp
50     XGUI_ViewWindow.cpp
51     XGUI_ViewPort.cpp
52     XGUI_Viewer.cpp
53         XGUI_RubberBand.cpp
54         XGUI_ViewBackground.cpp
55         XGUI_DocumentDataModel.cpp
56         XGUI_PartDataModel.cpp
57         XGUI_ObjectsBrowser.cpp
58         XGUI_OperationMgr.cpp
59     XGUI_SelectionMgr.cpp
60     XGUI_ActionsMgr.cpp
61     XGUI_ErrorDialog.cpp
62     XGUI_ViewerProxy.cpp
63     XGUI_PropertyPanel.cpp
64     XGUI_ContextMenuMgr.cpp
65     XGUI_ModuleConnector.cpp
66         XGUI_Selection.cpp
67 )
68
69 SET(PROJECT_RESOURCES 
70     XGUI_pictures.qrc
71 )
72
73 SET(TEXT_RESOURCES
74         XGUI_msg_fr.ts
75 )
76
77 SET(PROJECT_LIBRARIES
78     Events
79     Config
80         ${QT_LIBRARIES}
81         ${CAS_VIEWER}
82         ${CAS_KERNEL}
83         ${PyConsole}
84         ${PyInterp}
85         ModelAPI
86         ModuleBase
87 )
88
89 IF(WIN32) 
90     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} opengl32)
91 ELSE()
92     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} GL)
93 ENDIF()
94
95 QT4_ADD_RESOURCES(PROJECT_COMPILED_RESOURCES ${PROJECT_RESOURCES})
96 #QT5_ADD_TRANSLATION(QM_RESOURCES ${TEXT_RESOURCES})
97
98 QT4_CREATE_TRANSLATION(QM_RESOURCES 
99                                            ${PROJECT_SOURCES}
100                                            ${TEXT_RESOURCES}
101                                            OPTIONS -extensions cpp -no-recursive
102                                            )
103
104
105 SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES} ${QM_RESOURCES})
106 #SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES})
107 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES} ${PROJECT_RESOURCES})
108
109 ADD_DEFINITIONS( -DXGUI_EXPORTS ${CAS_DEFINITIONS} )
110
111 INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/src/Events
112                                          ${PROJECT_SOURCE_DIR}/src/Config
113                                          ${PROJECT_SOURCE_DIR}/src/ModelAPI
114                                          ${PROJECT_SOURCE_DIR}/src/GeomAPI
115                                          ${PROJECT_SOURCE_DIR}/src/ModuleBase
116                                          ${PROJECT_SOURCE_DIR}/src/PartSetPlugin
117                                          ${CAS_INCLUDE_DIRS}
118                                          ${SUIT_INCLUDE})
119
120 LINK_DIRECTORIES($ENV{PYTHON_LIB_DIR})
121
122 ADD_LIBRARY(XGUI SHARED 
123         ${PROJECT_SOURCES} 
124         ${PROJECT_HEADERS} 
125         ${PROJECT_COMPILED_RESOURCES} 
126         ${TEXT_RESOURCES}
127         ${QM_RESOURCES}
128 )
129
130 ADD_DEPENDENCIES(XGUI ModelAPI)
131
132 # The Qt5Widgets_LIBRARIES variable also includes QtGui and QtCore
133 TARGET_LINK_LIBRARIES(XGUI ${PROJECT_LIBRARIES})
134
135 INSTALL(TARGETS XGUI DESTINATION bin)
136 INSTALL(FILES ${QM_RESOURCES} DESTINATION bin)