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