Salome HOME
Porting to SALOME_8.2.0
[modules/shaper.git] / src / ModuleBase / CMakeLists.txt
1 ## Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 INCLUDE(Common)
4 INCLUDE(UseQtExt)
5
6 # --- options ---
7
8 # additional include directories
9 INCLUDE_DIRECTORIES(${QT_INCLUDES})
10
11 # additional preprocessor / compiler flags
12 ADD_DEFINITIONS(${QT_DEFINITIONS})
13
14 SET(PROJECT_HEADERS
15   ModuleBase.h
16   ModuleBase_ActionInfo.h
17   ModuleBase_Definitions.h
18   ModuleBase_DoubleSpinBox.h
19   ModuleBase_Events.h
20   ModuleBase_Filter.h
21   ModuleBase_FilterFactory.h
22   ModuleBase_FilterValidated.h
23   ModuleBase_IErrorMgr.h
24   ModuleBase_IModule.h
25   ModuleBase_IntSpinBox.h
26   ModuleBase_IPrefMgr.h
27   ModuleBase_IPropertyPanel.h
28   ModuleBase_ISelection.h
29   ModuleBase_IViewWindow.h
30   ModuleBase_IViewer.h
31   ModuleBase_IWidgetCreator.h
32   ModuleBase_IWorkshop.h
33   ModuleBase_LabelValue.h
34   ModuleBase_ModelWidget.h
35   ModuleBase_Operation.h
36   ModuleBase_OperationAction.h
37   ModuleBase_OperationDescription.h
38   ModuleBase_OperationFeature.h
39   ModuleBase_PageBase.h
40   ModuleBase_PageGroupBox.h
41   ModuleBase_PageWidget.h
42   ModuleBase_PagedContainer.h
43   ModuleBase_ParamIntSpinBox.h
44   ModuleBase_ParamSpinBox.h
45   ModuleBase_Preferences.h
46   ModuleBase_ResultPrs.h
47   ModuleBase_SelectionValidator.h
48   ModuleBase_ToolBox.h
49   ModuleBase_Tools.h
50   ModuleBase_ViewerFilters.h
51   ModuleBase_ViewerPrs.h
52   ModuleBase_WidgetAction.h
53   ModuleBase_WidgetBoolValue.h
54   ModuleBase_WidgetChoice.h
55   ModuleBase_WidgetConcealedObjects.h
56   ModuleBase_WidgetCreatorFactory.h
57   ModuleBase_WidgetDoubleValue.h
58   ModuleBase_WidgetEditor.h
59   ModuleBase_WidgetExprEditor.h
60   ModuleBase_WidgetFactory.h
61   ModuleBase_WidgetFeatureSelector.h
62   ModuleBase_WidgetFileSelector.h
63   ModuleBase_WidgetIntValue.h
64   ModuleBase_WidgetLabel.h
65   ModuleBase_WidgetLabelValue.h
66   ModuleBase_WidgetLineEdit.h
67   ModuleBase_WidgetMultiSelector.h
68   ModuleBase_WidgetOptionalBox.h
69   ModuleBase_WidgetSelector.h
70   ModuleBase_WidgetSelectorStore.h
71   ModuleBase_WidgetShapeSelector.h
72   ModuleBase_WidgetSwitch.h
73   ModuleBase_WidgetToolbox.h
74   ModuleBase_WidgetValidated.h
75   ModuleBase_WidgetValidator.h
76   ModuleBase_IconFactory.h
77   ModuleBase_Dialog.h
78   ModuleBase_ModelDialogWidget.h
79 )
80
81 SET(PROJECT_SOURCES
82   ModuleBase_ActionInfo.cpp
83   ModuleBase_DoubleSpinBox.cpp
84   ModuleBase_Filter.cpp
85   ModuleBase_FilterFactory.cpp
86   ModuleBase_FilterValidated.cpp
87   ModuleBase_IErrorMgr.cpp
88   ModuleBase_IModule.cpp
89   ModuleBase_IntSpinBox.cpp
90   ModuleBase_IPrefMgr.cpp
91   ModuleBase_IPropertyPanel.cpp
92   ModuleBase_ISelection.cpp
93   ModuleBase_IViewWindow.cpp
94   ModuleBase_IViewer.cpp
95   ModuleBase_IWidgetCreator.cpp
96   ModuleBase_IWorkshop.cpp
97   ModuleBase_LabelValue.cpp
98   ModuleBase_ModelWidget.cpp
99   ModuleBase_Operation.cpp
100   ModuleBase_OperationAction.cpp
101   ModuleBase_OperationDescription.cpp
102   ModuleBase_OperationFeature.cpp
103   ModuleBase_PageBase.cpp
104   ModuleBase_PageGroupBox.cpp
105   ModuleBase_PageWidget.cpp
106   ModuleBase_PagedContainer.cpp
107   ModuleBase_ParamIntSpinBox.cpp
108   ModuleBase_ParamSpinBox.cpp
109   ModuleBase_Preferences.cpp
110   ModuleBase_ResultPrs.cpp
111   ModuleBase_ToolBox.cpp
112   ModuleBase_Tools.cpp
113   ModuleBase_ViewerFilters.cpp
114   ModuleBase_ViewerPrs.cpp
115   ModuleBase_WidgetAction.cpp
116   ModuleBase_WidgetBoolValue.cpp
117   ModuleBase_WidgetChoice.cpp
118   ModuleBase_WidgetConcealedObjects.cpp
119   ModuleBase_WidgetCreatorFactory.cpp
120   ModuleBase_WidgetDoubleValue.cpp
121   ModuleBase_WidgetEditor.cpp
122   ModuleBase_WidgetExprEditor.cpp
123   ModuleBase_WidgetFactory.cpp
124   ModuleBase_WidgetFeatureSelector.cpp
125   ModuleBase_WidgetFileSelector.cpp
126   ModuleBase_WidgetIntValue.cpp
127   ModuleBase_WidgetLabel.cpp
128   ModuleBase_WidgetLabelValue.cpp
129   ModuleBase_WidgetLineEdit.cpp
130   ModuleBase_WidgetMultiSelector.cpp
131   ModuleBase_WidgetOptionalBox.cpp
132   ModuleBase_WidgetSelector.cpp
133   ModuleBase_WidgetSelectorStore.cpp
134   ModuleBase_WidgetShapeSelector.cpp
135   ModuleBase_WidgetSwitch.cpp
136   ModuleBase_WidgetToolbox.cpp
137   ModuleBase_WidgetValidated.cpp
138   ModuleBase_WidgetValidator.cpp
139   ModuleBase_IconFactory.cpp
140   ModuleBase_SelectionValidator.cpp
141   ModuleBase_Dialog.cpp
142 )
143
144 SET(PROJECT_LIBRARIES
145         ${QT_LIBRARIES}
146         Config
147         Events
148         ModelAPI
149         ModelGeomAlgo
150         GeomAPI
151         GeomDataAPI
152         GeomAlgoAPI
153         ${QT_LIBRARIES}
154         ${CAS_VIEWER}
155         ${CAS_KERNEL}
156         ${CAS_SHAPE}
157         ${suit}
158         ${qtx}
159         ${ViewerData}
160 )
161
162 # sources / moc wrappings
163 QT_WRAP_MOC(PROJECT_AUTOMOC ${PROJECT_HEADERS})
164
165 #QT5_ADD_TRANSLATION(QM_RESOURCES ${TEXT_RESOURCES})
166
167 SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES} ${QM_RESOURCES})
168 #SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES} ${PROJECT_RESOURCES})
169
170 INCLUDE_DIRECTORIES(
171     ${CAS_INCLUDE_DIRS}
172     ${PROJECT_SOURCE_DIR}/src/Config
173     ${PROJECT_SOURCE_DIR}/src/Events
174     ${PROJECT_SOURCE_DIR}/src/ModelAPI
175     ${PROJECT_SOURCE_DIR}/src/ModelGeomAlgo
176     ${PROJECT_SOURCE_DIR}/src/GeomDataAPI
177     ${PROJECT_SOURCE_DIR}/src/GeomAPI
178     ${PROJECT_SOURCE_DIR}/src/GeomAlgoAPI
179     ${SUIT_INCLUDE}
180 )
181
182 ADD_DEFINITIONS(-DMODULEBASE_EXPORTS ${CAS_DEFINITIONS})
183 ADD_LIBRARY(ModuleBase SHARED ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${PROJECT_AUTOMOC})
184 TARGET_LINK_LIBRARIES(ModuleBase GeomAPI ${PROJECT_LIBRARIES})
185
186 INSTALL(TARGETS ModuleBase DESTINATION ${SHAPER_INSTALL_BIN})