Salome HOME
Adding the "Symmetry" feature.
[modules/shaper.git] / src / FeaturesPlugin / CMakeLists.txt
1 ## Copyright (C) 2014-20xx CEA/DEN, EDF R&D -->
2
3 INCLUDE(Common)
4 INCLUDE(UnitTest)
5
6 SET(PROJECT_HEADERS
7     FeaturesPlugin.h
8     FeaturesPlugin_Plugin.h
9     FeaturesPlugin_Extrusion.h
10     FeaturesPlugin_Recover.h
11     FeaturesPlugin_Revolution.h
12     FeaturesPlugin_Rotation.h
13     FeaturesPlugin_Translation.h
14     FeaturesPlugin_Boolean.h
15     FeaturesPlugin_Intersection.h
16     FeaturesPlugin_Partition.h
17     FeaturesPlugin_Pipe.h
18     FeaturesPlugin_Placement.h
19     FeaturesPlugin_CompositeBoolean.h
20     FeaturesPlugin_CompositeSketch.h
21     FeaturesPlugin_ExtrusionBoolean.h
22     FeaturesPlugin_ExtrusionCut.h
23     FeaturesPlugin_ExtrusionFuse.h
24     FeaturesPlugin_RevolutionBoolean.h
25     FeaturesPlugin_RevolutionCut.h
26     FeaturesPlugin_RevolutionFuse.h
27     FeaturesPlugin_Union.h
28     FeaturesPlugin_ValidatorTransform.h
29     FeaturesPlugin_Validators.h
30     FeaturesPlugin_RemoveSubShapes.h
31     FeaturesPlugin_Tools.h
32     FeaturesPlugin_Symmetry.h
33 )
34
35 SET(PROJECT_SOURCES
36     FeaturesPlugin_Plugin.cpp
37     FeaturesPlugin_Extrusion.cpp
38     FeaturesPlugin_Recover.cpp
39     FeaturesPlugin_Revolution.cpp
40     FeaturesPlugin_Rotation.cpp
41     FeaturesPlugin_Translation.cpp
42     FeaturesPlugin_Boolean.cpp
43     FeaturesPlugin_Intersection.cpp
44     FeaturesPlugin_Partition.cpp
45     FeaturesPlugin_Pipe.cpp
46     FeaturesPlugin_Placement.cpp
47     FeaturesPlugin_CompositeBoolean.cpp
48     FeaturesPlugin_CompositeSketch.cpp
49     FeaturesPlugin_ExtrusionBoolean.cpp
50     FeaturesPlugin_ExtrusionCut.cpp
51     FeaturesPlugin_ExtrusionFuse.cpp
52     FeaturesPlugin_RevolutionBoolean.cpp
53     FeaturesPlugin_RevolutionCut.cpp
54     FeaturesPlugin_RevolutionFuse.cpp
55     FeaturesPlugin_Union.cpp
56     FeaturesPlugin_ValidatorTransform.cpp
57     FeaturesPlugin_Validators.cpp
58     FeaturesPlugin_RemoveSubShapes.cpp
59     FeaturesPlugin_Tools.cpp
60     FeaturesPlugin_Symmetry.cpp
61 )
62
63 SET(XML_RESOURCES
64   plugin-Features.xml
65   extrusion_widget.xml
66   extrusioncut_widget.xml
67   extrusionfuse_widget.xml
68   revolution_widget.xml
69   revolutioncut_widget.xml
70   revolutionfuse_widget.xml
71   rotation_widget.xml
72   translation_widget.xml
73   boolean_widget.xml
74   recover_widget.xml
75   partition_widget.xml
76   placement_widget.xml
77   intersection_widget.xml
78   pipe_widget.xml
79   remove_subshapes_widget.xml
80   union_widget.xml
81   symmetry_widget.xml
82 )
83
84 SET(TEXT_RESOURCES
85     FeaturesPlugin_msg_en.ts
86 )
87
88 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES})
89
90
91 INCLUDE_DIRECTORIES(
92   ../ModelAPI
93   ../GeomAPI
94   ../GeomAlgoAPI
95   ../GeomValidators
96   ../Events
97 )
98
99 SET(PROJECT_LIBRARIES
100     Events
101     ModelAPI
102     GeomAPI
103     GeomAlgoAPI
104     GeomValidators
105 )
106
107 ADD_DEFINITIONS(-DFEATURESPLUGIN_EXPORTS)
108 ADD_LIBRARY(FeaturesPlugin MODULE ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${XML_RESOURCES} ${TEXT_RESOURCES})
109 TARGET_LINK_LIBRARIES(FeaturesPlugin ${PROJECT_LIBRARIES})
110
111 INSTALL(TARGETS FeaturesPlugin DESTINATION ${SHAPER_INSTALL_PLUGIN_FILES})
112 INSTALL(FILES ${XML_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
113 INSTALL(DIRECTORY icons/ DESTINATION ${SHAPER_INSTALL_XML_RESOURCES}/icons/Features)
114 INSTALL(FILES ${TEXT_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
115
116 ADD_UNIT_TESTS(TestExtrusion.py
117                TestExtrusionCut.py
118                TestExtrusionFuse.py
119                TestRevolution.py
120                TestRevolutionCut.py
121                TestRevolutionFuse.py
122                TestCompositeFeaturesOnCompSolids.py
123                TestPartition.py
124                TestPlacement.py
125                TestTranslation.py
126                TestRotation.py
127                TestBoolean.py
128                TestBooleanCompSolids.py
129                TestBooleanSmash.py
130                TestBooleanFill.py
131                TestMultiBoolean.py
132                TestSerialBoolean.py
133                TestIntersection.py
134                TestUnion.py
135                TestRemoveSubShapes.py
136                TestPipe.py
137                TestRecover.py
138                TestRecover1798.py
139 )