Salome HOME
Warnings correction for moc files generation
[modules/shaper.git] / src / PartSet / CMakeLists.txt
1 ## Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 INCLUDE(Common)
4 INCLUDE(UseQtExt)
5
6 # additional include directories
7 INCLUDE_DIRECTORIES(${QT_INCLUDES})
8
9 # additional preprocessor / compiler flags
10 ADD_DEFINITIONS(${QT_DEFINITIONS})
11
12 SET(PROJECT_HEADERS
13     PartSet.h
14     PartSet_Constants.h
15     PartSet_CustomPrs.h
16     PartSet_ExternalObjectsMgr.h
17     PartSet_Module.h
18     PartSet_MouseProcessor.h
19     PartSet_OperationPrs.h
20     PartSet_OverconstraintListener.h
21     PartSet_PreviewPlanes.h
22     PartSet_Tools.h
23     PartSet_WidgetSketchLabel.h
24     PartSet_Validators.h
25     PartSet_WidgetPoint2d.h
26     PartSet_WidgetEditor.h
27     PartSet_WidgetMultiSelector.h
28     PartSet_WidgetPoint2dDistance.h
29     PartSet_WidgetPoint2DFlyout.h
30     PartSet_WidgetShapeSelector.h
31     PartSet_WidgetFileSelector.h
32     PartSet_Filters.h
33     PartSet_FilterInfinite.h
34     PartSet_ResultSketchPrs.h
35     PartSet_SketcherMgr.h
36     PartSet_SketcherReetntrantMgr.h
37     PartSet_MenuMgr.h
38     PartSet_WidgetSketchCreator.h
39     PartSet_IconFactory.h
40     PartSet_WidgetChoice.h
41     PartSet_WidgetSubShapeSelector.h
42 )
43
44 SET(PROJECT_MOC_HEADERS
45     PartSet_MenuMgr.h
46     PartSet_Module.h
47     PartSet_SketcherMgr.h
48     PartSet_SketcherReetntrantMgr.h
49     PartSet_WidgetChoice.h
50     PartSet_WidgetEditor.h
51     PartSet_WidgetFileSelector.h
52     PartSet_WidgetMultiSelector.h
53     PartSet_WidgetPoint2d.h
54     PartSet_WidgetPoint2dDistance.h
55     PartSet_WidgetPoint2DFlyout.h
56     PartSet_WidgetShapeSelector.h
57     PartSet_WidgetSketchCreator.h
58     PartSet_WidgetSketchLabel.h
59     PartSet_WidgetSubShapeSelector.h
60 )
61
62 SET(PROJECT_SOURCES
63     PartSet_CustomPrs.cpp
64     PartSet_ExternalObjectsMgr.cpp
65     PartSet_Module.cpp
66     PartSet_OperationPrs.cpp
67     PartSet_OverconstraintListener.cpp
68     PartSet_PreviewPlanes.cpp
69     PartSet_Tools.cpp
70     PartSet_WidgetSketchLabel.cpp
71     PartSet_Validators.cpp
72     PartSet_WidgetEditor.cpp
73     PartSet_WidgetMultiSelector.cpp
74     PartSet_WidgetPoint2d.cpp
75     PartSet_WidgetPoint2dDistance.cpp
76     PartSet_WidgetPoint2DFlyout.cpp
77     PartSet_WidgetShapeSelector.cpp
78     PartSet_WidgetFileSelector.cpp
79     PartSet_Filters.cpp
80     PartSet_FilterInfinite.cpp
81     PartSet_ResultSketchPrs.cpp
82     PartSet_SketcherMgr.cpp
83     PartSet_SketcherReetntrantMgr.cpp
84     PartSet_MenuMgr.cpp
85     PartSet_WidgetSketchCreator.cpp
86     PartSet_IconFactory.cpp
87     PartSet_WidgetSubShapeSelector.cpp
88 )
89
90 SET(PROJECT_RESOURCES
91     PartSet_icons.qrc
92 )
93
94 #SET(TEXT_RESOURCES
95 #    PartSet_msg_fr.ts
96 #)
97
98 SET(PROJECT_LIBRARIES
99     ModuleBase
100     ModelGeomAlgo
101     Config
102     GeomAPI
103     GeomDataAPI
104     SketcherPrs
105     ${QT_LIBRARIES}
106     ${CAS_KERNEL}
107     ${CAS_SHAPE}
108 )
109
110 # sources / moc wrappings
111 QT_WRAP_MOC(PROJECT_AUTOMOC ${PROJECT_MOC_HEADERS})
112
113 # sources / rcc wrappings
114 QT_ADD_RESOURCES(PROJECT_COMPILED_RESOURCES ${PROJECT_RESOURCES})
115 #QT4_ADD_TRANSLATION(QM_RESOURCES ${TEXT_RESOURCES})
116 #QT4_CREATE_TRANSLATION(QM_RESOURCES
117 #                       ${PROJECT_SOURCES}
118 #                       ${TEXT_RESOURCES}
119 #                       OPTIONS -extensions cpp -no-recursive
120 #                       )
121
122 #SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES} ${QM_RESOURCES})
123 SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES})
124 #SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES} ${PROJECT_RESOURCES})
125 SOURCE_GROUP ("Resource Files" FILES ${PROJECT_RESOURCES})
126
127 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/XGUI
128                     ${PROJECT_SOURCE_DIR}/src/Config
129                     ${PROJECT_SOURCE_DIR}/src/Events
130                     ${PROJECT_SOURCE_DIR}/src/ModuleBase
131                     ${PROJECT_SOURCE_DIR}/src/ModelAPI
132                     ${PROJECT_SOURCE_DIR}/src/ModelGeomAlgo
133                     ${PROJECT_SOURCE_DIR}/src/GeomDataAPI
134                     ${PROJECT_SOURCE_DIR}/src/GeomAlgoAPI
135                     ${PROJECT_SOURCE_DIR}/src/SketchPlugin
136                     ${PROJECT_SOURCE_DIR}/src/ExchangePlugin
137                     ${PROJECT_SOURCE_DIR}/src/SketcherPrs
138                     ${PROJECT_SOURCE_DIR}/src/FeaturesPlugin
139                     ${PROJECT_SOURCE_DIR}/src/PartSetPlugin
140                     ${PROJECT_SOURCE_DIR}/src/GeomAPI
141                     ${CAS_INCLUDE_DIRS}
142                     ${SUIT_INCLUDE}
143 )
144
145 IF(${HAVE_SALOME})
146   INCLUDE_DIRECTORIES(${SALOME_KERNEL_INCLUDE})
147 ELSE(${HAVE_SALOME})
148   INCLUDE_DIRECTORIES(${APPELEMENTS_INCLUDE_DIR})
149 ENDIF(${HAVE_SALOME})
150
151
152 ADD_DEFINITIONS(-DPARTSET_EXPORTS ${CAS_DEFINITIONS})
153 ADD_LIBRARY(PartSet SHARED
154     ${PROJECT_SOURCES}
155     ${PROJECT_HEADERS}
156     ${PROJECT_COMPILED_RESOURCES}
157     ${PROJECT_AUTOMOC}
158 #    ${TEXT_RESOURCES}
159 #    ${QM_RESOURCES}
160 )
161
162 # The Qt5Widgets_LIBRARIES variable also includes QtGui and QtCore
163 TARGET_LINK_LIBRARIES(PartSet ${PROJECT_LIBRARIES} XGUI ModelAPI GeomAlgoAPI)
164
165 ADD_DEPENDENCIES(PartSet ModuleBase)
166
167 INSTALL(TARGETS PartSet DESTINATION ${SHAPER_INSTALL_BIN})
168 #INSTALL(FILES ${QM_RESOURCES} DESTINATION bin)