Salome HOME
Merge branch 'V9_4_BR'
[modules/shaper.git] / src / FeaturesPlugin / 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     FeaturesPlugin.h
25     FeaturesPlugin_Plugin.h
26     FeaturesPlugin_Extrusion.h
27     FeaturesPlugin_Recover.h
28     FeaturesPlugin_Revolution.h
29     FeaturesPlugin_Rotation.h
30     FeaturesPlugin_Translation.h
31     FeaturesPlugin_VersionedBoolean.h
32     FeaturesPlugin_Boolean.h
33     FeaturesPlugin_BooleanCut.h
34     FeaturesPlugin_BooleanFuse.h
35     FeaturesPlugin_BooleanCommon.h
36     FeaturesPlugin_BooleanSmash.h
37     FeaturesPlugin_BooleanFill.h
38     FeaturesPlugin_Intersection.h
39     FeaturesPlugin_Partition.h
40     FeaturesPlugin_Pipe.h
41     FeaturesPlugin_Placement.h
42     FeaturesPlugin_CompositeBoolean.h
43     FeaturesPlugin_CompositeSketch.h
44     FeaturesPlugin_ExtrusionBoolean.h
45     FeaturesPlugin_ExtrusionCut.h
46     FeaturesPlugin_ExtrusionFuse.h
47     FeaturesPlugin_RevolutionBoolean.h
48     FeaturesPlugin_RevolutionCut.h
49     FeaturesPlugin_RevolutionFuse.h
50     FeaturesPlugin_Union.h
51     FeaturesPlugin_ValidatorTransform.h
52     FeaturesPlugin_Validators.h
53     FeaturesPlugin_RemoveSubShapes.h
54     FeaturesPlugin_Tools.h
55     FeaturesPlugin_Symmetry.h
56     FeaturesPlugin_Scale.h
57     FeaturesPlugin_MultiTranslation.h
58     FeaturesPlugin_MultiRotation.h
59     FeaturesPlugin_Fillet.h
60     FeaturesPlugin_Measurement.h
61     FeaturesPlugin_FusionFaces.h
62     FeaturesPlugin_RemoveResults.h
63     FeaturesPlugin_Chamfer.h
64 )
65
66 SET(PROJECT_SOURCES
67     FeaturesPlugin_Plugin.cpp
68     FeaturesPlugin_Extrusion.cpp
69     FeaturesPlugin_Recover.cpp
70     FeaturesPlugin_Revolution.cpp
71     FeaturesPlugin_Rotation.cpp
72     FeaturesPlugin_Translation.cpp
73     FeaturesPlugin_VersionedBoolean.cpp
74     FeaturesPlugin_Boolean.cpp
75     FeaturesPlugin_BooleanCut.cpp
76     FeaturesPlugin_BooleanFuse.cpp
77     FeaturesPlugin_BooleanCommon.cpp
78     FeaturesPlugin_BooleanSmash.cpp
79     FeaturesPlugin_BooleanFill.cpp
80     FeaturesPlugin_Intersection.cpp
81     FeaturesPlugin_Partition.cpp
82     FeaturesPlugin_Pipe.cpp
83     FeaturesPlugin_Placement.cpp
84     FeaturesPlugin_CompositeBoolean.cpp
85     FeaturesPlugin_CompositeSketch.cpp
86     FeaturesPlugin_ExtrusionBoolean.cpp
87     FeaturesPlugin_ExtrusionCut.cpp
88     FeaturesPlugin_ExtrusionFuse.cpp
89     FeaturesPlugin_RevolutionBoolean.cpp
90     FeaturesPlugin_RevolutionCut.cpp
91     FeaturesPlugin_RevolutionFuse.cpp
92     FeaturesPlugin_Union.cpp
93     FeaturesPlugin_ValidatorTransform.cpp
94     FeaturesPlugin_Validators.cpp
95     FeaturesPlugin_RemoveSubShapes.cpp
96     FeaturesPlugin_Tools.cpp
97     FeaturesPlugin_Symmetry.cpp
98     FeaturesPlugin_Scale.cpp
99     FeaturesPlugin_MultiTranslation.cpp
100     FeaturesPlugin_MultiRotation.cpp
101     FeaturesPlugin_Fillet.cpp
102     FeaturesPlugin_Measurement.cpp
103     FeaturesPlugin_FusionFaces.cpp
104     FeaturesPlugin_RemoveResults.cpp
105     FeaturesPlugin_Chamfer.cpp
106 )
107
108 SET(XML_RESOURCES
109   plugin-Features.xml
110   extrusion_widget.xml
111   extrusioncut_widget.xml
112   extrusionfuse_widget.xml
113   revolution_widget.xml
114   revolutioncut_widget.xml
115   revolutionfuse_widget.xml
116   rotation_widget.xml
117   translation_widget.xml
118   boolean_widget.xml
119   boolean_fuse_widget.xml
120   boolean_common_widget.xml
121   boolean_split_widget.xml
122   boolean_smash_widget.xml
123   recover_widget.xml
124   partition_widget.xml
125   placement_widget.xml
126   intersection_widget.xml
127   pipe_widget.xml
128   remove_subshapes_widget.xml
129   union_widget.xml
130   symmetry_widget.xml
131   scale_widget.xml
132   multitranslation_widget.xml
133   multirotation_widget.xml
134   fillet_widget.xml
135   measurement_widget.xml
136   fusion_faces_widget.xml
137   chamfer_widget.xml
138 )
139
140 SET(TEXT_RESOURCES
141     FeaturesPlugin_msg_en.ts
142     FeaturesPlugin_msg_fr.ts
143     FeaturesPlugin_msg_ru.ts
144 )
145
146 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES})
147
148
149 INCLUDE_DIRECTORIES(
150   ../ModelAPI
151   ../GeomAPI
152   ../GeomAlgoAPI
153   ../GeomValidators
154   ../Events
155   ../Config
156   ${OpenCASCADE_INCLUDE_DIR}
157 )
158
159 SET(PROJECT_LIBRARIES
160     Events
161     ModelAPI
162     GeomAPI
163     GeomAlgoAPI
164     GeomValidators
165     Config
166     ${OpenCASCADE_Visualization_LIBRARIES}
167 )
168
169 ADD_DEFINITIONS(-DFEATURESPLUGIN_EXPORTS)
170 ADD_LIBRARY(FeaturesPlugin MODULE ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${XML_RESOURCES} ${TEXT_RESOURCES})
171 TARGET_LINK_LIBRARIES(FeaturesPlugin ${PROJECT_LIBRARIES})
172
173 INSTALL(TARGETS FeaturesPlugin DESTINATION ${SHAPER_INSTALL_PLUGIN_FILES})
174 INSTALL(FILES ${XML_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
175 INSTALL(DIRECTORY icons/ DESTINATION ${SHAPER_INSTALL_XML_RESOURCES}/icons/Features)
176 INSTALL(FILES ${TEXT_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
177
178 ADD_UNIT_TESTS(TestExtrusion.py
179                TestExtrusionOfCompound.py
180                TestExtrusionCut.py
181                TestExtrusionCut_BySize.py
182                TestExtrusionCut_ByPlanesAndOffsets.py
183                TestExtrusionCut_ByFaces.py
184                TestExtrusionCut_ThroughAll.py
185                TestExtrusionFuse.py
186                TestExtrusionFuse_BySize.py
187                TestExtrusionFuse_ByPlanesAndOffsets.py
188                TestExtrusionFuse_ThroughAll.py
189                TestExtrusion_ErrorMsg.py
190                TestExtrusion_ZeroOffsetError.py
191                TestExtrusion_ByFaces01.py
192                TestExtrusion_ByFaces02.py
193                TestExtrusion_ByFaces03.py
194                TestExtrusion_ByFaces04.py
195                TestExtrusion_ByFaces05.py
196                TestExtrusion_ByFaces06.py
197                TestExtrusion_ByFaces07.py
198                TestExtrusion_ByFaces08.py
199                TestExtrusion_ByFaces09.py
200                TestExtrusion_ByFaces10.py
201                TestExtrusion_ByFaces11.py
202                TestExtrusion_ByFaces12.py
203                TestExtrusion_ByFaces13.py
204                TestExtrusion_ByFaces14.py
205                TestExtrusion_ByFaces15.py
206                TestExtrusion_ByFaces16.py
207                TestExtrusion_ByFaces17.py
208                TestExtrusion_ByFaces18.py
209                TestExtrusion_ByFaces19.py
210                TestRevolution.py
211                TestRevolution_ByAngle.py
212                TestRevolutionOfPoint.py
213                TestRevolutionOfEdge.py
214                TestRevolutionOfCompound.py
215                TestRevolutionCut.py
216                TestRevolutionCut_ByAngle.py
217                TestRevolutionCut_ByPlanesAndOffsets.py
218                TestRevolutionCut_ThroughAll.py
219                TestRevolutionFuse.py
220                TestRevolutionFuse_ByAngle.py
221                TestRevolutionFuse_ByPlanesAndOffsets.py
222                TestRevolutionFuse_ThroughAll.py
223                TestCompositeFeaturesOnCompSolids.py
224                TestPartition.py
225                TestPartition_ErrorMsg.py
226                TestPlacement_Vertex_Vertex.py
227                TestPlacement_Edge_Vertex.py
228                TestPlacement_Edge_Edge.py
229                TestPlacement_Face_Vertex.py
230                TestPlacement_Face_Edge.py
231                TestPlacement_Face_Face.py
232                TestPlacement_Part_Part.py
233                TestPlacement_Complex.py
234                TestPlacement_ErrorMsg.py
235                TestPlacement_BodyShapesValidator.py
236                TestTranslation.py
237                TestTranslation_Part.py
238                TestRotation.py
239                TestRotation_ByAxis.py
240                TestRotation_ByPoints.py
241                TestRotation_ErrorMsg.py
242                TestMultiRotation_Part.py
243                TestMultiRotation_ErrorMsg.py
244                TestMultiTranslation_Part.py
245                TestMultiTranslation_ErrorMsg.py
246                TestSymmetry_Part.py
247                TestBoolean1.py
248                TestBoolean2.py
249                TestBoolean3.py
250                TestBooleanCompSolids.py
251                TestBooleanSmash.py
252                TestBooleanSplit.py
253                TestBooleanSplitWithPlane.py
254                TestBooleanSplit_ErrorMsg.py
255                TestMultiBoolean.py
256                TestSerialBoolean.py
257                TestBoolean_ErrorMsg.py
258                TestIntersection.py
259                TestIntersection_ErrorMsg.py
260                TestUnion.py
261                TestUnionFaces.py
262                TestUnion_ErrorMsg.py
263                TestRemoveSubShapes.py
264                TestRemoveSubShapes2.py
265                TestRemoveSubShapes3.py
266                TestRemoveSubShapes4.py
267                TestRemoveSubShapes5.py
268                TestRemoveSubShapes6.py
269                TestPipe.py
270                TestPipe_Edge.py
271                TestPipe_Wire.py
272                TestPipe_Compound.py
273                TestPipe_ErrorMsg.py
274                TestRecover.py
275                TestRecover_Compound.py
276                TestRecover_Compsolid1.py
277                TestRecover_Compsolid2.py
278                TestRecover1798.py
279                TestSplitEdgeVertex.py
280                TestSplitEdgeEdge.py
281                TestSplitEdgeEdgeIntersected.py
282                TestSplitEdgeWire.py
283                TestSplitEdgeFace.py
284                TestSplitEdgeShell.py
285                TestSplitEdgeSolid.py
286                TestSplitEdgeSolidIntersected.py
287                TestSplitWireVertex.py
288                TestSplitWireEdge.py
289                TestSplitWireWire.py
290                TestSplitWireFace.py
291                TestSplitWireShell.py
292                TestSplitWireSolid.py
293                TestSplitFaceVertex.py
294                TestSplitFaceEdge.py
295                TestSplitFaceEdgeInside.py
296                TestSplitFaceEdgePerpendicular.py
297                TestSplitFaceWire.py
298                TestSplitFaceFace.py
299                TestSplitFaceShell.py
300                TestSplitFaceSolid.py
301                TestSplitCompFaceSolid.py
302                TestSplitShellVertex.py
303                TestSplitShellEdge.py
304                TestSplitShellConstrPlane.py
305                TestSplitShellWire.py
306                TestSplitShellFace.py
307                TestSplitShellShell.py
308                TestSplitShellSolid.py
309                TestSplitSolid2ConstructionPlanes.py
310                TestSplitSolidEdge.py
311                TestSplitSolidFace.py
312                TestSplitSolidCompFace.py
313                TestSplitSolidShell.py
314                TestSplitSolidCompShell.py
315                TestSplitCompsolidPlane.py
316                TestPartition2Faces.py
317                TestPartition2Solids.py
318                TestPartition2Wires.py
319                TestPartitionBox4Planes.py
320                TestPartitionEdgeSolid.py
321                TestPartitionFace2Solid.py
322                TestPartitionFaceSolid.py
323                TestPartitionFaceWire.py
324                TestPartitionInclinedFaceSolid.py
325                TestPartitionWireFaceSolid.py
326                TestUnion4CurvedFaces.py
327                TestUnion4CurvedFaces_2.py
328                TestUnion4Faces.py
329                TestUnionOfUnion.py
330                TestMeasurementLength.py
331                TestMeasurementDistance.py
332                TestMeasurementRadius.py
333                TestMeasurementAngle.py
334                TestMeasurementAngle3Points.py
335                TestMeasurementPresentation.py
336                TestFusionFaces.py
337                TestFusionFaces2697.py 
338                Test1379.py
339                Test1922.py
340                Test1942.py
341                Test1915.py
342                Test2023.py
343                Test2046.py
344                Test2038.py
345                Test2172.py
346                Test2194.py
347                Test2197_1.py
348                Test2197_2.py
349                Test2197_3.py
350                Test2197_4.py
351                Test2215.py
352                Test2222.py
353                Test2233.py
354                Test2231.py
355                Test2240.py
356                Test2246.py
357                Test2248.py
358                Test2251.py
359                Test2255.py
360                Test2289.py
361                Test2304.py
362                Test2304_2.py
363                Test2375.py
364                Test2377.py
365                Test2394.py
366                Test2395.py
367                Test2419_1.py
368                Test2419_2.py
369                Test2419_3.py
370                Test2465.py
371                Test2495.py
372                Test2514.py
373                Test2520.py
374                TestBooleanCut_CompSolid_CompSolid.py
375                TestBooleanCut_CompSolidCompound_CompSolidCompound.py
376                TestBooleanCut_Edge_Edge.py
377                TestBooleanCut_Edge_Face.py
378                TestBooleanCut_EdgeCompound_EdgeCompound.py
379                TestBooleanCut_EdgeCompound_Solid.py
380                TestBooleanCut_Face_Face.py
381                TestBooleanCut_Face_Solid.py
382                TestBooleanCut_FaceCompound_FaceCompound.py
383                TestBooleanCut_Shell_Shell.py
384                TestBooleanCut_ShellCompound_ShellCompound.py
385                TestBooleanCut_Solid_Solid.py
386                TestBooleanCut_SolidCompound_SolidCompound.py
387                TestBooleanCut_Vertex_Vertex.py
388                TestBooleanCut_VertexCompound_Solid.py
389                TestBooleanCut_VertexCompound_VertexCompound.py
390                TestBooleanCut_Wire_Face.py
391                TestBooleanCut_Wire_Wire.py
392                TestBooleanCut_WireCompound_WireCompound.py
393                TestBooleanCut_Compound_Solid.py
394                TestBooleanCut_ErrorMsg.py
395                TestBooleanCut_SolidsHistory.py
396                TestBooleanSmash_Face_Face.py
397                TestBooleanSmash_SubSolid_Solid.py
398                TestBooleanSmash_CompSolid_Solid.py
399                TestBooleanSmash_ErrorMsg.py
400                TestBooleanSmash_SolidsHistory.py
401                TestBooleanFuse_SimpleMode.py
402                TestBooleanFuse_RemoveEdges.py
403                TestBooleanFuse_ErrorMsg.py
404                TestBooleanCommon_Vertex_Vertex.py
405                TestBooleanCommon_VertexCompound_VertexCompound.py
406                TestBooleanCommon_Edge_Edge.py
407                TestBooleanCommon_EdgeCompound_EdgeCompound.py
408                TestBooleanCommon_Wire_Wire.py
409                TestBooleanCommon_WireCompound_WireCompound.py
410                TestBooleanCommon_Face_Face.py
411                TestBooleanCommon_Face_Plane.py
412                TestBooleanCommon_FaceCompound_FaceCompound.py
413                TestBooleanCommon_Shell_Shell.py
414                TestBooleanCommon_ShellCompound_ShellCompound.py
415                TestBooleanCommon_Solid_Face.py
416                TestBooleanCommon_Solid_Shell.py
417                TestBooleanCommon_Solid_Solid.py
418                TestBooleanCommon_SolidCompound_Face.py
419                TestBooleanCommon_SolidCompound_Shell.py
420                TestBooleanCommon_SolidCompound_SolidCompound.py
421                TestBooleanCommon_SubCompound_Solid.py
422                TestBooleanCommon_SubSolid_Solid.py
423                TestBooleanCommon_CompSolid_Face.py
424                TestBooleanCommon_CompSolid_Shell.py
425                TestBooleanCommon_CompSolid_CompSolid.py
426                TestBooleanCommon_CompSolidCompound_Face.py
427                TestBooleanCommon_CompSolidCompound_Shell.py
428                TestBooleanCommon_CompSolidCompound_CompSolidCompound.py
429                TestBooleanCommon_ErrorMsg.py
430                TestBooleanCommon_SolidsHistory.py
431                Test2596.py
432                Test2592.py
433                Test2588.py
434                Test1467.py
435                TestPartitionSubCompsolidWithCompSolid1.py
436                TestPartitionSubCompsolidWithCompSolid2.py
437                TestPartitionSubCompsolidWithCompSolid3.py
438                TestPartitionSubCompsolidWithSolid1.py
439                TestPartitionSubCompsolidWithSolid2.py
440                TestPartitionSubCompsolidWithSolid3.py
441                TestPartitionSubCompsolidWithSolid4.py
442                TestPartitionSubCompsolidWithSolid5.py
443                TestPartitionSubCompsolidWithFace1.py
444                TestPartitionSubCompsolidWithFace2.py
445                TestPartitionSubCompsolidWithFace3.py
446                TestPartitionSubCompsolidWithFace4.py
447                TestPartitionSubCompsolidWithFace5.py
448                TestPartitionSubCompsolidWithPlane1.py
449                TestPartitionSubCompsolidWithPlane2.py
450                TestPartitionSubCompsolidWithPlane3.py
451                TestPartitionSubCompsolidWithPlane4.py
452                TestPartitionSubCompsolidWithPlane5.py
453                TestPartitionArgsUpdate.py
454                TestPartition_SolidsHistory.py
455                TestBooleanFuse_Vertex_Vertex.py
456                TestBooleanFuse_VertexCompound_VertexCompound.py
457                TestBooleanFuse_Edge_Edge.py
458                TestBooleanFuse_EdgeCompound_EdgeCompound.py
459                TestBooleanFuse_Wire_Wire.py
460                TestBooleanFuse_WireCompound_WireCompound.py
461                TestBooleanFuse_Face_Face.py
462                TestBooleanFuse_FaceCompound_FaceCompound.py
463                TestBooleanFuse_Shell_Shell.py
464                TestBooleanFuse_ShellCompound_ShellCompound.py
465                TestBooleanFuse_Solid_Solid.py
466                TestBooleanFuse_SolidCompound_SolidCompound.py
467                TestBooleanFuse_CompSolid_Face.py
468                TestBooleanFuse_CompSolid_CompSolid.py
469                TestBooleanFuse_CompSolidCompound_CompSolidCompound.py
470                TestBooleanFuse_SolidsHistory.py
471                TestFillet.py
472                TestFillet1.py
473                TestFillet_ErrorMsg.py
474                TestFillet_History.py
475                TestScale1.py
476                TestScale2.py
477                Test1816.py
478                Test1876.py
479                Test2225.py
480                Test2631.py
481                Test2636.py
482                Test2650.py
483                Test2681.py
484                Test2686.py
485                Test2689.py
486                Test2693.py
487                Test2698.py
488                Test2701.py
489                Test2724.py
490                Test2692.py
491                Test2617.py
492                Test2729.py
493                Test2738.py
494                Test2751.py
495                Test2826.py
496                Test2854.py
497                Test2878.py
498                Test2920.py
499                Test2971.py
500                Test3014.py
501                TestBooleanCommon_MultiLevelCompound_v0_1.py
502                TestBooleanCommon_MultiLevelCompound_v0_2.py
503                TestBooleanCommon_MultiLevelCompound_v20190506_1.py
504                TestBooleanCommon_MultiLevelCompound_v20190506_2.py
505                TestBooleanCut_MultiLevelCompound_v0_1.py
506                TestBooleanCut_MultiLevelCompound_v0_2.py
507                TestBooleanCut_MultiLevelCompound_v20190506_1.py
508                TestBooleanCut_MultiLevelCompound_v20190506_2.py
509                TestBooleanFuse_MultiLevelCompound_v0_1.py
510                TestBooleanFuse_MultiLevelCompound_v0_2.py
511                TestBooleanFuse_MultiLevelCompound_v0_3.py
512                TestBooleanFuse_MultiLevelCompound_v0_4.py
513                TestBooleanFuse_MultiLevelCompound_v20190506_1.py
514                TestBooleanFuse_MultiLevelCompound_v20190506_2.py
515                TestBooleanFuse_MultiLevelCompound_v20190506_3.py
516                TestBooleanFuse_MultiLevelCompound_v20190506_4.py
517                TestBooleanSmash_MultiLevelCompound_v0_1.py
518                TestBooleanSmash_MultiLevelCompound_v0_2.py
519                TestBooleanSmash_MultiLevelCompound_v20190506_1.py
520                TestBooleanSmash_MultiLevelCompound_v20190506_2.py
521                TestBooleanSplit_MultiLevelCompound_v0_1.py
522                TestBooleanSplit_MultiLevelCompound_v0_2.py
523                TestBooleanSplit_MultiLevelCompound_v20190506_1.py
524                TestBooleanSplit_MultiLevelCompound_v20190506_2.py
525                TestPartition_MultiLevelCompound_v0_1.py
526                TestPartition_MultiLevelCompound_v0_2.py
527                TestPartition_MultiLevelCompound_v0_3.py
528                TestPartition_MultiLevelCompound_v20190506_1.py
529                TestPartition_MultiLevelCompound_v20190506_2.py
530                TestPartition_MultiLevelCompound_v20190506_3.py
531                TestUnion_MultiLevelCompound_v0.py
532                TestUnion_MultiLevelCompound_v20190506.py
533                TestUnionFaces_v20190506.py
534                TestRemoveResultsBody.py
535                TestRemoveResultsConstruction.py
536                TestRemoveResultsPart.py
537                Test17000.py
538                Test17261.py
539                Test17281.py
540                TestChamfer.py
541                Test3033.py
542                Test3076.py
543                Test17909.py
544 )