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