Salome HOME
Facilate action processing with ModuleBase_ActionInfo
[modules/shaper.git] / src / ModuleBase / CMakeLists.txt
1 ## Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 INCLUDE(Common)
4 SET(CMAKE_AUTOMOC ON)
5
6 SET(PROJECT_HEADERS
7         ModuleBase.h
8         ModuleBase_Filter.h
9         ModuleBase_FilterCustom.h
10         ModuleBase_FilterFace.h
11         ModuleBase_FilterFactory.h
12         ModuleBase_FilterLinearEdge.h
13         ModuleBase_FilterMulti.h
14         ModuleBase_FilterNoConsructionSubShapes.h
15         ModuleBase_FilterShapeType.h
16         ModuleBase_Tools.h
17         ModuleBase_IModule.h
18         ModuleBase_Operation.h
19         ModuleBase_OperationDescription.h       
20         ModuleBase_ModelWidget.h
21         ModuleBase_WidgetBoolValue.h
22         ModuleBase_WidgetDoubleValue.h
23         ModuleBase_WidgetEditor.h
24         ModuleBase_WidgetFactory.h
25         ModuleBase_WidgetSwitch.h
26         ModuleBase_WidgetShapeSelector.h
27         ModuleBase_IWorkshop.h
28         ModuleBase_Definitions.h
29         ModuleBase_SelectionValidator.h
30         ModuleBase_ISelection.h
31         ModuleBase_ViewerPrs.h
32         ModuleBase_WidgetChoice.h
33         ModuleBase_WidgetFileSelector.h
34         ModuleBase_DoubleSpinBox.h
35         ModuleBase_IPropertyPanel.h
36         ModuleBase_IViewer.h
37         ModuleBase_WidgetLineEdit.h
38         ModuleBase_WidgetMultiSelector.h
39         ModuleBase_ViewerFilters.h
40         ModuleBase_ResultPrs.h
41         ModuleBase_IViewWindow.h
42         ModuleBase_WidgetLabel.h
43         ModuleBase_IPrefMgr.h
44         ModuleBase_Preferences.h
45         ModuleBase_ActionInfo.h
46 )
47
48 SET(PROJECT_SOURCES
49         ModuleBase_Filter.cpp
50         ModuleBase_FilterCustom.cpp
51         ModuleBase_FilterFace.cpp
52         ModuleBase_FilterFactory.cpp
53         ModuleBase_FilterLinearEdge.cpp
54         ModuleBase_FilterMulti.cpp
55         ModuleBase_FilterNoConsructionSubShapes.cpp
56         ModuleBase_FilterShapeType.cpp
57         ModuleBase_Tools.cpp
58         ModuleBase_IModule.cpp
59         ModuleBase_IWorkshop.cpp
60         ModuleBase_Operation.cpp
61         ModuleBase_OperationDescription.cpp
62         ModuleBase_ModelWidget.cpp
63         ModuleBase_WidgetBoolValue.cpp
64         ModuleBase_WidgetDoubleValue.cpp
65         ModuleBase_WidgetEditor.cpp
66         ModuleBase_WidgetFactory.cpp
67         ModuleBase_WidgetSwitch.cpp
68         ModuleBase_WidgetShapeSelector.cpp
69         ModuleBase_WidgetChoice.cpp
70         ModuleBase_WidgetFileSelector.cpp
71         ModuleBase_DoubleSpinBox.cpp
72         ModuleBase_WidgetLineEdit.cpp
73         ModuleBase_WidgetMultiSelector.cpp
74         ModuleBase_ViewerFilters.cpp
75         ModuleBase_ResultPrs.cpp
76         ModuleBase_WidgetLabel.cpp
77         ModuleBase_Preferences.cpp
78         ModuleBase_ActionInfo.cpp
79 )
80
81 SET(PROJECT_LIBRARIES
82         Config
83         Events
84         ModelAPI
85         GeomAPI
86         GeomAlgoAPI
87         ${QT_LIBRARIES}
88         ${CAS_VIEWER}
89         ${CAS_KERNEL}
90         ${CAS_SHAPE}
91         ${suit}
92         ${qtx}
93 )
94
95 SET(PROJECT_AUTOMOC 
96     ${CMAKE_CURRENT_BINARY_DIR}/ModuleBase_automoc.cpp
97 )
98
99 #QT5_ADD_RESOURCES(PROJECT_COMPILED_RESOURCES ${PROJECT_RESOURCES})
100 #QT5_ADD_TRANSLATION(QM_RESOURCES ${TEXT_RESOURCES})
101
102 SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES} ${QM_RESOURCES})
103 #SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES} ${PROJECT_RESOURCES})
104
105 INCLUDE_DIRECTORIES(
106     ${CAS_INCLUDE_DIRS}
107     ${CMAKE_SOURCE_DIR}/src/Config
108     ${CMAKE_SOURCE_DIR}/src/Events
109     ${CMAKE_SOURCE_DIR}/src/Model
110     ${CMAKE_SOURCE_DIR}/src/ModelAPI
111     ${CMAKE_SOURCE_DIR}/src/GeomDataAPI
112     ${CMAKE_SOURCE_DIR}/src/GeomAPI
113     ${CMAKE_SOURCE_DIR}/src/GeomAlgoAPI
114     ${SUIT_INCLUDE}
115 )
116
117 ADD_DEFINITIONS(-DMODULEBASE_EXPORTS ${CAS_DEFINITIONS})
118 ADD_LIBRARY(ModuleBase SHARED ${PROJECT_SOURCES} ${PROJECT_HEADERS})
119 TARGET_LINK_LIBRARIES(ModuleBase GeomAPI ${PROJECT_LIBRARIES})
120
121 INSTALL(TARGETS ModuleBase DESTINATION bin)