]> SALOME platform Git repositories - modules/shaper.git/blob - src/PartSet/CMakeLists.txt
Salome HOME
Fix for crash with creation of sketcher point on origin
[modules/shaper.git] / src / PartSet / CMakeLists.txt
1 ## Copyright (C) 2014-2017  CEA/DEN, EDF R&D
2 ##
3 ## This library is free software; you can redistribute it and/or
4 ## modify it under the terms of the GNU Lesser General Public
5 ## License as published by the Free Software Foundation; either
6 ## version 2.1 of the License, or (at your option) any later version.
7 ##
8 ## This library is distributed in the hope that it will be useful,
9 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
10 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 ## Lesser General Public License for more details.
12 ##
13 ## You should have received a copy of the GNU Lesser General Public
14 ## License along with this library; if not, write to the Free Software
15 ## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16 ##
17 ## See http:##www.salome-platform.org/ or
18 ## email : webmaster.salome@opencascade.com<mailto:webmaster.salome@opencascade.com>
19 ##
20
21 INCLUDE(Common)
22 INCLUDE(UseQtExt)
23
24 # additional include directories
25 INCLUDE_DIRECTORIES(${QT_INCLUDES})
26
27 # additional preprocessor / compiler flags
28 ADD_DEFINITIONS(${QT_DEFINITIONS})
29
30 SET(PROJECT_HEADERS
31     PartSet.h
32     PartSet_Constants.h
33     PartSet_CustomPrs.h
34     PartSet_ExternalObjectsMgr.h
35     PartSet_FilterInfinite.h
36     PartSet_Filters.h
37     PartSet_IconFactory.h
38     PartSet_MenuMgr.h
39     PartSet_Module.h
40     PartSet_MouseProcessor.h
41     PartSet_OperationPrs.h
42     PartSet_OverconstraintListener.h
43     PartSet_PreviewPlanes.h
44     PartSet_PreviewSketchPlane.h
45     PartSet_ResultSketchPrs.h
46     PartSet_SketcherMgr.h
47     PartSet_SketcherReentrantMgr.h
48     PartSet_Tools.h
49     PartSet_Validators.h
50     PartSet_WidgetEditor.h
51     PartSet_WidgetFeaturePointSelector.h
52     PartSet_WidgetFileSelector.h
53     PartSet_WidgetMultiSelector.h
54     PartSet_WidgetPoint2d.h
55     PartSet_WidgetPoint2DFlyout.h
56     PartSet_WidgetShapeSelector.h
57     PartSet_WidgetSketchCreator.h
58     PartSet_WidgetSketchLabel.h
59     PartSet_CenterPrs.h
60     PartSet_ExternalPointsMgr.h
61         PartSet_DataModel.h
62         PartSet_TreeNodes.h
63 )
64
65 SET(PROJECT_MOC_HEADERS
66
67     PartSet_MenuMgr.h
68     PartSet_Module.h
69     PartSet_SketcherMgr.h
70     PartSet_SketcherReentrantMgr.h
71     PartSet_WidgetEditor.h
72     PartSet_WidgetFeaturePointSelector.h
73     PartSet_WidgetFileSelector.h
74     PartSet_WidgetMultiSelector.h
75     PartSet_WidgetPoint2d.h
76     PartSet_WidgetPoint2DFlyout.h
77     PartSet_WidgetShapeSelector.h
78     PartSet_WidgetSketchCreator.h
79     PartSet_WidgetSketchLabel.h
80     PartSet_ExternalPointsMgr.h
81 )
82
83 SET(PROJECT_SOURCES
84     PartSet_CustomPrs.cpp
85     PartSet_ExternalObjectsMgr.cpp
86     PartSet_FilterInfinite.cpp
87     PartSet_Filters.cpp
88     PartSet_IconFactory.cpp
89     PartSet_MenuMgr.cpp
90     PartSet_Module.cpp
91     PartSet_OperationPrs.cpp
92     PartSet_OverconstraintListener.cpp
93     PartSet_PreviewPlanes.cpp
94     PartSet_PreviewSketchPlane.cpp
95     PartSet_ResultSketchPrs.cpp
96     PartSet_SketcherMgr.cpp
97     PartSet_SketcherReentrantMgr.cpp
98     PartSet_Tools.cpp
99     PartSet_Validators.cpp
100     PartSet_WidgetEditor.cpp
101     PartSet_WidgetFeaturePointSelector.cpp
102     PartSet_WidgetFileSelector.cpp
103     PartSet_WidgetMultiSelector.cpp
104     PartSet_WidgetPoint2d.cpp
105     PartSet_WidgetPoint2DFlyout.cpp
106     PartSet_WidgetShapeSelector.cpp
107     PartSet_WidgetSketchCreator.cpp
108     PartSet_WidgetSketchLabel.cpp
109     PartSet_CenterPrs.cpp
110     PartSet_ExternalPointsMgr.cpp
111         PartSet_DataModel.cpp
112         PartSet_TreeNodes.cpp
113 )
114
115 SET(PROJECT_RESOURCES
116     PartSet_icons.qrc
117 )
118
119 #SET(TEXT_RESOURCES
120 #    PartSet_msg_fr.ts
121 #)
122
123 SET(PROJECT_LIBRARIES
124     ModuleBase
125     ModelGeomAlgo
126     Config
127     GeomAPI
128     GeomDataAPI
129     SketcherPrs
130     ${QT_LIBRARIES}
131     ${CAS_KERNEL}
132     ${CAS_SHAPE}
133 )
134
135 # sources / moc wrappings
136 QT_WRAP_MOC(PROJECT_AUTOMOC ${PROJECT_MOC_HEADERS})
137
138 # sources / rcc wrappings
139 QT_ADD_RESOURCES(PROJECT_COMPILED_RESOURCES ${PROJECT_RESOURCES})
140 #QT4_ADD_TRANSLATION(QM_RESOURCES ${TEXT_RESOURCES})
141 #QT4_CREATE_TRANSLATION(QM_RESOURCES
142 #                       ${PROJECT_SOURCES}
143 #                       ${TEXT_RESOURCES}
144 #                       OPTIONS -extensions cpp -no-recursive
145 #                       )
146
147 #SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES} ${QM_RESOURCES})
148 SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES})
149 #SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES} ${PROJECT_RESOURCES})
150 SOURCE_GROUP ("Resource Files" FILES ${PROJECT_RESOURCES})
151
152 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/XGUI
153                     ${PROJECT_SOURCE_DIR}/src/Config
154                     ${PROJECT_SOURCE_DIR}/src/Events
155                     ${PROJECT_SOURCE_DIR}/src/ModuleBase
156                     ${PROJECT_SOURCE_DIR}/src/ModelAPI
157                     ${PROJECT_SOURCE_DIR}/src/ModelGeomAlgo
158                     ${PROJECT_SOURCE_DIR}/src/GeomDataAPI
159                     ${PROJECT_SOURCE_DIR}/src/GeomAlgoAPI
160                     ${PROJECT_SOURCE_DIR}/src/SketchPlugin
161                     ${PROJECT_SOURCE_DIR}/src/ExchangePlugin
162                     ${PROJECT_SOURCE_DIR}/src/SketcherPrs
163                     ${PROJECT_SOURCE_DIR}/src/FeaturesPlugin
164                     ${PROJECT_SOURCE_DIR}/src/PartSetPlugin
165                     ${PROJECT_SOURCE_DIR}/src/GeomAPI
166                     ${PROJECT_SOURCE_DIR}/src/CollectionPlugin
167                     ${CAS_INCLUDE_DIRS}
168                     ${SUIT_INCLUDE}
169 )
170
171 IF(${HAVE_SALOME})
172   INCLUDE_DIRECTORIES(${SALOME_KERNEL_INCLUDE})
173 ELSE(${HAVE_SALOME})
174   INCLUDE_DIRECTORIES(${APPELEMENTS_INCLUDE_DIR})
175 ENDIF(${HAVE_SALOME})
176
177
178 ADD_DEFINITIONS(-DPARTSET_EXPORTS ${CAS_DEFINITIONS})
179 ADD_LIBRARY(PartSet SHARED
180     ${PROJECT_SOURCES}
181     ${PROJECT_HEADERS}
182     ${PROJECT_COMPILED_RESOURCES}
183     ${PROJECT_AUTOMOC}
184 #    ${TEXT_RESOURCES}
185 #    ${QM_RESOURCES}
186 )
187
188 # The Qt5Widgets_LIBRARIES variable also includes QtGui and QtCore
189 TARGET_LINK_LIBRARIES(PartSet ${PROJECT_LIBRARIES} XGUI ModelAPI GeomAlgoAPI)
190
191 ADD_DEPENDENCIES(PartSet ModuleBase)
192
193 INSTALL(TARGETS PartSet DESTINATION ${SHAPER_INSTALL_BIN})
194 #INSTALL(FILES ${QM_RESOURCES} DESTINATION bin)