Salome HOME
52370987810f73b50d0919ded27688215e053b38
[modules/shaper.git] / src / SketchPlugin / CMakeLists.txt
1 # Copyright (C) 2014-2019  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 email : webmaster.salome@opencascade.com
18 #
19
20 INCLUDE(Common)
21 INCLUDE(UnitTest)
22
23 SET(PROJECT_HEADERS
24     SketchPlugin.h
25     SketchPlugin_Arc.h
26     SketchPlugin_Circle.h
27     SketchPlugin_Constraint.h
28     SketchPlugin_ConstraintAngle.h
29     SketchPlugin_ConstraintBase.h
30     SketchPlugin_ConstraintCoincidence.h
31     SketchPlugin_ConstraintCoincidenceInternal.h
32     SketchPlugin_ConstraintCollinear.h
33     SketchPlugin_ConstraintDistance.h
34     SketchPlugin_ConstraintDistanceAlongDir.h
35     SketchPlugin_ConstraintDistanceHorizontal.h
36     SketchPlugin_ConstraintDistanceVertical.h
37     SketchPlugin_ConstraintEqual.h
38     SketchPlugin_Fillet.h
39     SketchPlugin_ConstraintHorizontal.h
40     SketchPlugin_ConstraintLength.h
41     SketchPlugin_ConstraintMiddle.h
42     SketchPlugin_ConstraintMirror.h
43     SketchPlugin_ConstraintParallel.h
44     SketchPlugin_ConstraintPerpendicular.h
45     SketchPlugin_ConstraintRadius.h
46     SketchPlugin_ConstraintRigid.h
47     SketchPlugin_ConstraintTangent.h
48     SketchPlugin_ConstraintVertical.h
49     SketchPlugin_Ellipse.h
50     SketchPlugin_ExternalValidator.h
51     SketchPlugin_Feature.h
52     SketchPlugin_IntersectionPoint.h
53     SketchPlugin_Line.h
54     SketchPlugin_MacroArc.h
55     SketchPlugin_MacroArcReentrantMessage.h
56     SketchPlugin_MacroCircle.h
57     SketchPlugin_MacroEllipse.h
58     SketchPlugin_MultiRotation.h
59     SketchPlugin_MultiTranslation.h
60     SketchPlugin_Plugin.h
61     SketchPlugin_Point.h
62     SketchPlugin_Projection.h
63     SketchPlugin_Sketch.h
64     SketchPlugin_SketchEntity.h
65     SketchPlugin_Split.h
66     SketchPlugin_Tools.h
67     SketchPlugin_Trim.h
68     SketchPlugin_Validators.h
69     SketchPlugin_SketchDrawer.h
70 )
71
72 SET(PROJECT_SOURCES
73     SketchPlugin_Arc.cpp
74     SketchPlugin_Circle.cpp
75     SketchPlugin_Constraint.cpp
76     SketchPlugin_ConstraintAngle.cpp
77     SketchPlugin_ConstraintCoincidence.cpp
78     SketchPlugin_ConstraintCoincidenceInternal.cpp
79     SketchPlugin_ConstraintCollinear.cpp
80     SketchPlugin_ConstraintDistance.cpp
81     SketchPlugin_ConstraintDistanceAlongDir.cpp
82     SketchPlugin_ConstraintDistanceHorizontal.cpp
83     SketchPlugin_ConstraintDistanceVertical.cpp
84     SketchPlugin_ConstraintEqual.cpp
85     SketchPlugin_Fillet.cpp
86     SketchPlugin_ConstraintHorizontal.cpp
87     SketchPlugin_ConstraintLength.cpp
88     SketchPlugin_ConstraintMiddle.cpp
89     SketchPlugin_ConstraintMirror.cpp
90     SketchPlugin_ConstraintParallel.cpp
91     SketchPlugin_ConstraintPerpendicular.cpp
92     SketchPlugin_ConstraintRadius.cpp
93     SketchPlugin_ConstraintRigid.cpp
94     SketchPlugin_ConstraintTangent.cpp
95     SketchPlugin_ConstraintVertical.cpp
96     SketchPlugin_Ellipse.cpp
97     SketchPlugin_ExternalValidator.cpp
98     SketchPlugin_Feature.cpp
99     SketchPlugin_IntersectionPoint.cpp
100     SketchPlugin_Line.cpp
101     SketchPlugin_MacroArc.cpp
102     SketchPlugin_MacroCircle.cpp
103     SketchPlugin_MacroEllipse.cpp
104     SketchPlugin_MultiRotation.cpp
105     SketchPlugin_MultiTranslation.cpp
106     SketchPlugin_Plugin.cpp
107     SketchPlugin_Point.cpp
108     SketchPlugin_Projection.cpp
109     SketchPlugin_Sketch.cpp
110     SketchPlugin_SketchEntity.cpp
111     SketchPlugin_Split.cpp
112     SketchPlugin_Tools.cpp
113     SketchPlugin_Trim.cpp
114     SketchPlugin_Validators.cpp
115     SketchPlugin_SketchDrawer.cpp
116 )
117
118 SET(PROJECT_LIBRARIES
119     Config
120     GeomAPI
121     GeomAlgoAPI
122     ModelAPI
123     ModelGeomAlgo
124     SketcherPrs
125     GeomDataAPI
126 )
127
128 SET(XML_RESOURCES
129   plugin-Sketch.xml
130   plugin-SketchDrawer.xml
131 )
132
133 SET(TEXT_RESOURCES
134         SketchPlugin_msg_en.ts
135         SketchPlugin_msg_fr.ts
136 )
137
138 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES})
139
140 ADD_DEFINITIONS(-DSKETCHPLUGIN_EXPORTS)
141 ADD_LIBRARY(SketchPlugin MODULE ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${XML_RESOURCES} ${TEXT_RESOURCES})
142 TARGET_LINK_LIBRARIES(SketchPlugin ${PROJECT_LIBRARIES})
143
144 INCLUDE_DIRECTORIES(
145   ../Config
146   ../Events
147   ../ModelAPI
148   ../ModelGeomAlgo
149   ../GeomAPI
150   ../GeomAlgoAPI
151   ../GeomDataAPI
152   ../SketcherPrs
153 )
154
155 INSTALL(TARGETS SketchPlugin DESTINATION ${SHAPER_INSTALL_PLUGIN_FILES})
156 INSTALL(FILES ${XML_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
157 INSTALL(DIRECTORY icons/ DESTINATION ${SHAPER_INSTALL_XML_RESOURCES}/icons/Sketch)
158 INSTALL(FILES ${TEXT_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
159
160 ADD_UNIT_TESTS(
161   Test1061.py
162   Test1577.py
163   Test1578.py
164   Test1673.py
165   Test1779.py
166   Test1924.py
167   Test1963.py
168   Test1966.py
169   Test1967.py
170   Test2034_1.py
171   Test2034_2.py
172   Test2034_3.py
173   Test2062.py
174   Test2095.py
175   Test2115.py
176   Test2119.py
177   Test2134.py
178   Test2157.py
179   Test2157_2.py
180   Test2224.py
181   Test2229.py
182   Test2239.py
183   Test2273.py
184   Test2280.py
185   Test2287.py
186   Test2341.py
187   Test2376.py
188   Test2390.py
189   Test2393.py
190   Test2425.py
191   Test2427.py
192   Test2440.py
193   Test2481.py
194   Test2654.py
195   Test2711.py
196   Test2741.py
197   Test2810.py
198   Test2824.py
199   Test2860.py
200   Test2894.py
201   TestArcBehavior.py
202   TestChangeSketchPlane1.py
203   TestChangeSketchPlane2.py
204   TestChangeSketchPlane3.py
205   TestConstraintAngle.py
206   TestConstraintCoincidence.py
207   TestConstraintCollinear.py
208   TestConstraintDistance.py
209   TestConstraintDistanceBehavior.py
210   TestConstraintDistanceHorizontal.py
211   TestConstraintDistanceVertical.py
212   TestConstraintEqual.py
213   TestConstraintFixed.py
214   TestConstraintHorizontal.py
215   TestConstraintHorizontalValidator.py
216   TestConstraintLength.py
217   TestConstraintMiddlePoint.py
218   TestConstraintMiddlePointOnArc.py
219   TestConstraintParallel.py
220   TestConstraintPerpendicular.py
221   TestConstraintPerpendicularArcLine.py
222   TestConstraintRadius.py
223   TestConstraintRadiusFailure.py
224   TestConstraintTangent.py
225   TestConstraintVertical.py
226   TestCreateArcByCenterStartEnd.py
227   TestCreateArcByTangentEdge.py
228   TestCreateArcByThreePoints.py
229   TestCreateArcByTransversalLine.py
230   TestCreateArcChangeType.py
231   TestCreateCircleByCenterAndPassed.py
232   TestCreateCircleByThreePoints.py
233   TestCreateCircleChangeType.py
234   TestCreateEllipseByCenterSemiaxisAndPassed.py
235   TestCreateEllipseByMajorAxisAndPassed.py
236   TestCreateEllipseByExternal.py
237   TestDegeneratedGeometry.py
238   TestDistanceDump.py
239   TestDistanceSignedVsUnsigned01.py
240   TestDistanceSignedVsUnsigned02.py
241   TestDistanceSignedVsUnsigned03.py
242   TestDistanceSignedVsUnsigned04.py
243   TestDistanceSignedVsUnsigned05.py
244   TestEdgesOrder.py
245   TestFillet.py
246   TestFilletAfterFolder.py
247   TestFilletInteracting.py
248   TestHighload.py
249   TestIntersectionChangeEdge.py
250   TestIntersectionWithCircle.py
251   TestIntersectionWithLine.py
252   TestIntersectionWithSpline.py
253   TestMirror.py
254   TestMultiRotation.py
255   TestMultiRotation01.py
256   TestMultiRotation02.py
257   TestMultiRotation03.py
258   TestMultiRotation04.py
259   TestMultiRotation05.py
260   TestMultiRotationWithParameter.py
261   TestMultiTranslation.py
262   TestPresentation.py
263   TestProjection.py
264   TestProjectionIntoResult.py
265   TestProjectionUpdate.py
266   TestRectangle.py
267   TestRemoveEllipse.py
268   TestRemoveSketch.py
269   TestSignedDistancePointLine.py
270   TestSignedDistancePointPoint.py
271   TestSketchDrawer.py
272   TestSketchPointLine.py
273   TestSnowflake.py
274   TestSplit.py
275   TestSplitLine.py
276   TestSplitPreview.py
277   TestTrimArc01.py
278   TestTrimArc02.py
279   TestTrimArc03.py
280   TestTrimArc04.py
281   TestTrimArc05.py
282   TestTrimArc06.py
283   TestTrimArc07.py
284   TestTrimArc08.py
285   TestTrimCircle01.py
286   TestTrimCircle02.py
287   TestTrimCircle03.py
288   TestTrimCircle04.py
289   TestTrimCircle05.py
290   TestTrimCircleAndArc01.py
291   TestTrimLine01.py
292   TestTrimLine02.py
293   TestTrimLine03.py
294   TestTrimPreview.py
295   TestUpdateSketch.py
296 )
297
298 if(${SKETCHER_CHANGE_RADIUS_WHEN_MOVE})
299   ADD_UNIT_TESTS(
300     TestMoveArc.py
301     TestMoveCircle.py
302     TestMoveEllipse.py
303     TestMoveLine.py
304     TestMovementComplex.py
305     TestMovePoint.py
306   )
307 endif()