Salome HOME
787ce8770eb96afd14451f1f7c864d7849b6b5b4
[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   TestArcBehavior.py
198   TestConstraintAngle.py
199   TestConstraintCoincidence.py
200   TestConstraintCollinear.py
201   TestConstraintDistance.py
202   TestConstraintDistanceBehavior.py
203   TestConstraintDistanceHorizontal.py
204   TestConstraintDistanceVertical.py
205   TestConstraintEqual.py
206   TestConstraintFixed.py
207   TestConstraintHorizontal.py
208   TestConstraintHorizontalValidator.py
209   TestConstraintLength.py
210   TestConstraintMiddlePoint.py
211   TestConstraintParallel.py
212   TestConstraintPerpendicular.py
213   TestConstraintRadius.py
214   TestConstraintRadiusFailure.py
215   TestConstraintTangent.py
216   TestConstraintVertical.py
217   TestCreateArcByCenterStartEnd.py
218   TestCreateArcByTangentEdge.py
219   TestCreateArcByThreePoints.py
220   TestCreateArcChangeType.py
221   TestCreateCircleByCenterAndPassed.py
222   TestCreateCircleByThreePoints.py
223   TestCreateCircleChangeType.py
224   TestDegeneratedGeometry.py
225   TestDistanceDump.py
226   TestDistanceSignedVsUnsigned01.py
227   TestDistanceSignedVsUnsigned02.py
228   TestDistanceSignedVsUnsigned03.py
229   TestDistanceSignedVsUnsigned04.py
230   TestDistanceSignedVsUnsigned05.py
231   TestEdgesOrder.py
232   TestFillet.py
233   TestFilletAfterFolder.py
234   TestFilletInteracting.py
235   TestHighload.py
236   TestIntersectionChangeEdge.py
237   TestIntersectionWithCircle.py
238   TestIntersectionWithLine.py
239   TestIntersectionWithSpline.py
240   TestMirror.py
241   TestMultiRotation.py
242   TestMultiRotation01.py
243   TestMultiRotation02.py
244   TestMultiRotation03.py
245   TestMultiRotation04.py
246   TestMultiRotation05.py
247   TestMultiRotationWithParameter.py
248   TestMultiTranslation.py
249   TestPresentation.py
250   TestProjection.py
251   TestProjectionIntoResult.py
252   TestProjectionUpdate.py
253   TestRectangle.py
254   TestRemoveSketch.py
255   TestSignedDistancePointLine.py
256   TestSignedDistancePointPoint.py
257   TestSketchDrawer.py
258   TestSketchPointLine.py
259   TestSnowflake.py
260   TestSplit.py
261   TestSplitLine.py
262   TestSplitPreview.py
263   TestTrimArc01.py
264   TestTrimArc02.py
265   TestTrimArc03.py
266   TestTrimArc04.py
267   TestTrimArc05.py
268   TestTrimArc06.py
269   TestTrimArc07.py
270   TestTrimArc08.py
271   TestTrimCircle01.py
272   TestTrimCircle02.py
273   TestTrimCircle03.py
274   TestTrimCircle04.py
275   TestTrimCircle05.py
276   TestTrimCircleAndArc01.py
277   TestTrimLine01.py
278   TestTrimLine02.py
279   TestTrimLine03.py
280   TestTrimPreview.py
281   TestUpdateSketch.py
282 )
283
284 if(${SKETCHER_CHANGE_RADIUS_WHEN_MOVE})
285   ADD_UNIT_TESTS(
286     TestMoveArc.py
287     TestMoveCircle.py
288     TestMoveLine.py
289     TestMovementComplex.py
290     TestMovePoint.py
291   )
292 endif()