Salome HOME
e88a18c53146f8ca0788893c1fc8ccbd4d6c647a
[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     FeaturesPlugin_Scale.h
34     FeaturesPlugin_MultiTranslation.h
35     FeaturesPlugin_MultiRotation.h
36 )
37
38 SET(PROJECT_SOURCES
39     FeaturesPlugin_Plugin.cpp
40     FeaturesPlugin_Extrusion.cpp
41     FeaturesPlugin_Recover.cpp
42     FeaturesPlugin_Revolution.cpp
43     FeaturesPlugin_Rotation.cpp
44     FeaturesPlugin_Translation.cpp
45     FeaturesPlugin_Boolean.cpp
46     FeaturesPlugin_Intersection.cpp
47     FeaturesPlugin_Partition.cpp
48     FeaturesPlugin_Pipe.cpp
49     FeaturesPlugin_Placement.cpp
50     FeaturesPlugin_CompositeBoolean.cpp
51     FeaturesPlugin_CompositeSketch.cpp
52     FeaturesPlugin_ExtrusionBoolean.cpp
53     FeaturesPlugin_ExtrusionCut.cpp
54     FeaturesPlugin_ExtrusionFuse.cpp
55     FeaturesPlugin_RevolutionBoolean.cpp
56     FeaturesPlugin_RevolutionCut.cpp
57     FeaturesPlugin_RevolutionFuse.cpp
58     FeaturesPlugin_Union.cpp
59     FeaturesPlugin_ValidatorTransform.cpp
60     FeaturesPlugin_Validators.cpp
61     FeaturesPlugin_RemoveSubShapes.cpp
62     FeaturesPlugin_Tools.cpp
63     FeaturesPlugin_Symmetry.cpp
64     FeaturesPlugin_Scale.cpp
65     FeaturesPlugin_MultiTranslation.cpp
66     FeaturesPlugin_MultiRotation.cpp
67 )
68
69 SET(XML_RESOURCES
70   plugin-Features.xml
71   extrusion_widget.xml
72   extrusioncut_widget.xml
73   extrusionfuse_widget.xml
74   revolution_widget.xml
75   revolutioncut_widget.xml
76   revolutionfuse_widget.xml
77   rotation_widget.xml
78   translation_widget.xml
79   boolean_widget.xml
80   recover_widget.xml
81   partition_widget.xml
82   placement_widget.xml
83   intersection_widget.xml
84   pipe_widget.xml
85   remove_subshapes_widget.xml
86   union_widget.xml
87   symmetry_widget.xml
88   scale_widget.xml
89   multitranslation_widget.xml
90   multirotation_widget.xml
91 )
92
93 SET(TEXT_RESOURCES
94     FeaturesPlugin_msg_en.ts
95     FeaturesPlugin_msg_ru.ts
96 )
97
98 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES})
99
100
101 INCLUDE_DIRECTORIES(
102   ../ModelAPI
103   ../GeomAPI
104   ../GeomAlgoAPI
105   ../GeomValidators
106   ../Events
107 )
108
109 SET(PROJECT_LIBRARIES
110     Events
111     ModelAPI
112     GeomAPI
113     GeomAlgoAPI
114     GeomValidators
115 )
116
117 ADD_DEFINITIONS(-DFEATURESPLUGIN_EXPORTS)
118 ADD_LIBRARY(FeaturesPlugin MODULE ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${XML_RESOURCES} ${TEXT_RESOURCES})
119 TARGET_LINK_LIBRARIES(FeaturesPlugin ${PROJECT_LIBRARIES})
120
121 INSTALL(TARGETS FeaturesPlugin DESTINATION ${SHAPER_INSTALL_PLUGIN_FILES})
122 INSTALL(FILES ${XML_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
123 INSTALL(DIRECTORY icons/ DESTINATION ${SHAPER_INSTALL_XML_RESOURCES}/icons/Features)
124 INSTALL(FILES ${TEXT_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
125
126 ADD_UNIT_TESTS(TestExtrusion.py
127                TestExtrusionCut.py
128                TestExtrusionFuse.py
129                TestRevolution.py
130                TestRevolutionCut.py
131                TestRevolutionFuse.py
132                TestCompositeFeaturesOnCompSolids.py
133                TestPartition.py
134                TestPlacement.py
135                TestTranslation.py
136                TestRotation.py
137                TestBoolean.py
138                TestBooleanCompSolids.py
139                TestBooleanSmash.py
140                TestBooleanFill.py
141                TestMultiBoolean.py
142                TestSerialBoolean.py
143                TestIntersection.py
144                TestUnion.py
145                TestRemoveSubShapes.py
146                TestPipe.py
147                TestRecover.py
148                TestRecover1798.py
149                Test1922.py
150                Test1942.py
151                Test1915.py
152                Test2023.py
153                Test2046.py
154                Test2038.py
155 )