Salome HOME
Issue #1660: Ability to change the deflection coefficient
[modules/shaper.git] / src / XGUI / CMakeLists.txt
1 ## Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3
4 SET(CMAKE_AUTOMOC ON)
5
6 SET(PROJECT_HEADERS
7         XGUI.h
8         XGUI_ActionsMgr.h
9         XGUI_ColorDialog.h
10         XGUI_ContextMenuMgr.h
11         XGUI_CustomPrs.h
12         XGUI_DataModel.h
13         XGUI_DeflectionDialog.h
14         XGUI_Displayer.h
15         XGUI_ErrorDialog.h
16         XGUI_ErrorMgr.h
17         XGUI_HistoryMenu.h
18         XGUI_MenuGroup.h
19         XGUI_MenuMgr.h
20         XGUI_MenuWorkbench.h
21         XGUI_ModuleConnector.h
22         XGUI_ObjectsBrowser.h
23         XGUI_OperationMgr.h
24         XGUI_PropertyPanel.h
25         XGUI_QtEvents.h
26         XGUI_SalomeConnector.h
27         XGUI_Selection.h
28         XGUI_SelectionMgr.h
29         XGUI_Tools.h
30         XGUI_ViewerProxy.h
31         XGUI_Workshop.h
32         XGUI_WorkshopListener.h
33 )
34
35 SET(PROJECT_AUTOMOC
36     ${CMAKE_CURRENT_BINARY_DIR}/XGUI_automoc.cpp
37 )
38
39 SET(PROJECT_SOURCES
40         XGUI_ActionsMgr.cpp
41         XGUI_ColorDialog.cpp
42         XGUI_ContextMenuMgr.cpp
43         XGUI_CustomPrs.cpp
44         XGUI_DataModel.cpp
45         XGUI_DeflectionDialog.cpp
46         XGUI_Displayer.cpp
47         XGUI_ErrorDialog.cpp
48         XGUI_ErrorMgr.cpp
49         XGUI_HistoryMenu.cpp
50         XGUI_MenuGroup.cpp
51         XGUI_MenuMgr.cpp
52         XGUI_MenuWorkbench.cpp
53         XGUI_ModuleConnector.cpp
54         XGUI_ObjectsBrowser.cpp
55         XGUI_OperationMgr.cpp
56         XGUI_PropertyPanel.cpp
57         XGUI_QtEvents.cpp
58         XGUI_SalomeConnector.cpp
59         XGUI_Selection.cpp
60         XGUI_SelectionMgr.cpp
61         XGUI_Tools.cpp
62         XGUI_ViewerProxy.cpp
63         XGUI_Workshop.cpp
64         XGUI_WorkshopListener.cpp
65 )
66
67 SET(PROJECT_RESOURCES
68     XGUI_pictures.qrc
69 )
70
71 SET(PREFERENCES_XML
72         SHAPER.xml
73 )
74
75 SET(TEXT_RESOURCES
76         XGUI_msg_fr.ts
77 )
78
79 SET(PROJECT_LIBRARIES
80     Events
81     Config
82         ModelAPI
83         ModuleBase
84         ${QT_LIBRARIES}
85         ${CAS_VIEWER}
86         ${CAS_KERNEL}
87         ${CAS_SHAPE}
88         ${PYTHON_LIBRARIES}
89         ${PyConsole}
90         ${PyInterp}
91         ${suit}
92         ${qtx}
93 )
94
95 IF(NOT ${HAVE_SALOME})
96     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} AppElements)
97 ENDIF(NOT ${HAVE_SALOME})
98
99
100 IF(WIN32)
101     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} opengl32)
102 ELSE()
103     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} GL)
104 ENDIF()
105
106 QT4_ADD_RESOURCES(PROJECT_COMPILED_RESOURCES ${PROJECT_RESOURCES})
107 #QT5_ADD_TRANSLATION(QM_RESOURCES ${TEXT_RESOURCES})
108
109 # QT4_CREATE_TRANSLATION(QM_RESOURCES
110 #                                          ${PROJECT_SOURCES}
111 #                                          ${TEXT_RESOURCES}
112 #                                          OPTIONS -extensions cpp -no-recursive
113 #                                          )
114
115
116 SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES} ${QM_RESOURCES})
117 #SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES})
118 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES} ${PROJECT_RESOURCES} ${PREFERENCES_XML})
119
120 ADD_DEFINITIONS( -DXGUI_EXPORTS ${CAS_DEFINITIONS} )
121
122 SET(PROJECT_INCLUDES
123     ${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/GeomAlgoAPI
129     ${CAS_INCLUDE_DIRS}
130     ${SUIT_INCLUDE})
131
132 IF(NOT ${HAVE_SALOME})
133     SET(PROJECT_INCLUDES ${PROJECT_INCLUDES} ${APPELEMENTS_INCLUDE_DIR})
134 ENDIF(NOT ${HAVE_SALOME})
135
136 INCLUDE_DIRECTORIES(${PROJECT_INCLUDES})
137
138 LINK_DIRECTORIES($ENV{PYTHON_LIB_DIR})
139
140 ADD_LIBRARY(XGUI SHARED
141         ${PROJECT_SOURCES}
142         ${PROJECT_HEADERS}
143         ${PROJECT_COMPILED_RESOURCES}
144         ${TEXT_RESOURCES}
145         ${QM_RESOURCES}
146         ${PREFERENCES_XML}
147 )
148
149 ADD_DEPENDENCIES(XGUI ModelAPI)
150
151 # The Qt5Widgets_LIBRARIES variable also includes QtGui and QtCore
152 TARGET_LINK_LIBRARIES(XGUI ${PROJECT_LIBRARIES})
153
154 INSTALL(TARGETS XGUI DESTINATION ${SHAPER_INSTALL_BIN})
155 INSTALL(FILES ${QM_RESOURCES} DESTINATION ${SHAPER_INSTALL_QM_RESOURCES})
156 INSTALL(FILES ${PREFERENCES_XML} DESTINATION ${SHAPER_INSTALL_RESOURCES})
157 INSTALL(DIRECTORY icons/ DESTINATION ${SHAPER_INSTALL_RESOURCES})