Salome HOME
Implement filter "F9: External Faces"
[modules/shaper.git] / src / FiltersPlugin / 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     FiltersPlugin.h
25     FiltersPlugin_Plugin.h
26     FiltersPlugin_Selection.h
27     FiltersPlugin_HorizontalFace.h
28     FiltersPlugin_VerticalFace.h
29     FiltersPlugin_BelongsTo.h
30     FiltersPlugin_OnPlane.h
31     FiltersPlugin_OnLine.h
32     FiltersPlugin_OnGeometry.h
33     FiltersPlugin_OnPlaneSide.h
34     FiltersPlugin_OppositeToEdge.h
35     FiltersPlugin_RelativeToSolid.h
36     FiltersPlugin_ExternalFaces.h
37 )
38
39 SET(PROJECT_SOURCES
40     FiltersPlugin_Plugin.cpp
41     FiltersPlugin_Selection.cpp
42     FiltersPlugin_HorizontalFace.cpp
43     FiltersPlugin_VerticalFace.cpp
44     FiltersPlugin_BelongsTo.cpp
45     FiltersPlugin_OnPlane.cpp
46     FiltersPlugin_OnLine.cpp
47     FiltersPlugin_OnGeometry.cpp
48     FiltersPlugin_OnPlaneSide.cpp
49     FiltersPlugin_OppositeToEdge.cpp
50     FiltersPlugin_RelativeToSolid.cpp
51     FiltersPlugin_ExternalFaces.cpp
52 )
53
54 SET(PROJECT_LIBRARIES
55     ModelAPI
56     Events
57     Config
58     GeomAPI
59     GeomAlgoAPI
60 )
61
62 SET(XML_RESOURCES
63   plugin-Filters.xml
64 )
65
66 ADD_DEFINITIONS(-DFILTERS_EXPORTS ${OpenCASCADE_DEFINITIONS})
67 ADD_LIBRARY(Filters SHARED ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${XML_RESOURCES})
68 TARGET_LINK_LIBRARIES(Filters ${PROJECT_LIBRARIES})
69
70 INCLUDE_DIRECTORIES(
71   ${OpenCASCADE_INCLUDE_DIR}
72   ${PROJECT_SOURCE_DIR}/src/ModelAPI
73   ${PROJECT_SOURCE_DIR}/src/Config
74   ${PROJECT_SOURCE_DIR}/src/Events
75   ${PROJECT_SOURCE_DIR}/src/GeomAPI
76   ${PROJECT_SOURCE_DIR}/src/GeomAlgoAPI
77   ${PROJECT_SOURCE_DIR}/src/GeomDataAPI
78 )
79
80 INSTALL(TARGETS Filters DESTINATION ${SHAPER_INSTALL_PLUGIN_FILES})
81 INSTALL(FILES ${XML_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})
82
83 ADD_UNIT_TESTS(
84   TestFilters.py
85   TestFilter_BelongsTo.py
86   TestFilter_OnPlane.py
87   TestFilter_OnLine.py
88   TestFilter_OnGeometry_Edge.py
89   TestFilter_OnGeometry_Face.py
90   TestFilter_OnPlaneSide_Face.py
91   TestFilter_OnPlaneSide_Plane.py
92   TestFilter_OppositeToEdge.py
93   TestFilter_RelativeToSolid_In.py
94   TestFilter_RelativeToSolid_Out.py
95   TestFilter_RelativeToSolid_On.py
96   TestFilter_RelativeToSolid_NotOn.py
97   TestFilter_RelativeToSolid_InAndOn.py
98   TestFilter_RelativeToSolid_OutAndOn.py
99   TestFilter_ExternalFaces.py
100   TestFilter_HorizontalFaces.py
101   TestFilter_VerticalFaces.py
102 )