Salome HOME
refs #30 - Sketch base GUI: create, draw lines
[modules/shaper.git] / src / XGUI / CMakeLists.txt
1 INCLUDE(FindCAS)
2
3 SET(CMAKE_AUTOMOC ON)
4
5 SET(PROJECT_HEADERS
6         XGUI.h
7         XGUI_Command.h
8         XGUI_Displayer.h
9         XGUI_MainMenu.h
10         XGUI_MainWindow.h
11         XGUI_MenuGroupPanel.h
12         XGUI_Module.h
13         XGUI_Tools.h
14         XGUI_Workbench.h
15         XGUI_Workshop.h
16     XGUI_ViewWindow.h
17     XGUI_ViewPort.h
18     XGUI_Viewer.h
19         XGUI_RubberBand.h
20         XGUI_Constants.h
21         XGUI_ViewBackground.h
22         XGUI_DocumentDataModel.h
23         XGUI_PartDataModel.h
24         XGUI_ObjectsBrowser.h
25         XGUI_OperationMgr.h
26     XGUI_DataTreeModel.h
27     XGUI_SelectionMgr.h
28     XGUI_SalomeConnector.h
29     XGUI_ActionsMgr.h
30     XGUI_ErrorDialog.h
31     XGUI_SalomeViewer.h
32     XGUI_ViewerProxy.h
33 )
34
35 SET(PROJECT_AUTOMOC 
36     ${CMAKE_CURRENT_BINARY_DIR}/XGUI_automoc.cpp
37 )
38
39 SET(PROJECT_SOURCES
40         XGUI_Command.cpp
41         XGUI_Displayer.cpp
42         XGUI_MainMenu.cpp
43         XGUI_MainWindow.cpp
44         XGUI_MenuGroupPanel.cpp
45         XGUI_Tools.cpp
46         XGUI_Workbench.cpp
47         XGUI_Workshop.cpp
48     XGUI_ViewWindow.cpp
49     XGUI_ViewPort.cpp
50     XGUI_Viewer.cpp
51         XGUI_RubberBand.cpp
52         XGUI_ViewBackground.cpp
53         XGUI_DocumentDataModel.cpp
54         XGUI_PartDataModel.cpp
55         XGUI_ObjectsBrowser.cpp
56         XGUI_OperationMgr.cpp
57     XGUI_SelectionMgr.cpp
58     XGUI_ActionsMgr.cpp
59     XGUI_ErrorDialog.cpp
60     XGUI_ViewerProxy.cpp
61 )
62
63 SET(PROJECT_RESOURCES 
64     XGUI_pictures.qrc
65 )
66
67 #SET(TEXT_RESOURCES
68 #       XGUI_msg_en.ts
69 #)
70
71 SET(PROJECT_LIBRARIES
72     Events
73     Config
74         ${QT_LIBRARIES}
75         ${CAS_VIEWER}
76         ${CAS_KERNEL}
77         PyConsole
78         PyInterp
79         PyEvent
80         ModelAPI
81         ModuleBase
82 )
83
84 IF(WIN32) 
85     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} opengl32)
86 ELSE()
87     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} GL)
88 ENDIF()
89
90 QT4_ADD_RESOURCES(PROJECT_COMPILED_RESOURCES ${PROJECT_RESOURCES})
91 #QT5_ADD_TRANSLATION(QM_RESOURCES ${TEXT_RESOURCES})
92
93 #SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES} ${QM_RESOURCES})
94 SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES})
95 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES} ${PROJECT_RESOURCES})
96
97 ADD_DEFINITIONS( -DXGUI_EXPORTS ${CAS_DEFINITIONS} )
98
99 INCLUDE_DIRECTORIES (${PROJECT_SOURCE_DIR}/src/Events
100                                          ${PROJECT_SOURCE_DIR}/src/Config
101                                          ${PROJECT_SOURCE_DIR}/src/PyInterp
102                                          ${PROJECT_SOURCE_DIR}/src/PyConsole
103                                          ${PROJECT_SOURCE_DIR}/src/ModelAPI
104                                          ${PROJECT_SOURCE_DIR}/src/Model
105                                          ${PROJECT_SOURCE_DIR}/src/ModuleBase
106                                          ${CAS_INCLUDE_DIRS})
107
108 LINK_DIRECTORIES($ENV{PYTHON_LIB_DIR})
109
110 ADD_LIBRARY(XGUI SHARED 
111         ${PROJECT_SOURCES} 
112         ${PROJECT_HEADERS} 
113         ${PROJECT_COMPILED_RESOURCES} 
114 )
115
116 ADD_DEPENDENCIES(XGUI ModelAPI)
117
118 # The Qt5Widgets_LIBRARIES variable also includes QtGui and QtCore
119 TARGET_LINK_LIBRARIES(XGUI ${PROJECT_LIBRARIES})
120
121 INSTALL(TARGETS XGUI DESTINATION bin)
122 #INSTALL(FILES ${QM_RESOURCES} DESTINATION bin)