vrrp: fix vrrp_garp_or_na_send()'s memory leak
[vpp.git] / src / plugins / CMakeLists.txt
1 # Copyright (c) 2018 Cisco and/or its affiliates.
2 # Licensed under the Apache License, Version 2.0 (the "License");
3 # you may not use this file except in compliance with the License.
4 # You may obtain a copy of the License at:
5 #
6 #     http://www.apache.org/licenses/LICENSE-2.0
7 #
8 # Unless required by applicable law or agreed to in writing, software
9 # distributed under the License is distributed on an "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 # See the License for the specific language governing permissions and
12 # limitations under the License.
13
14 include_directories (
15   ${CMAKE_CURRENT_SOURCE_DIR}
16   ${CMAKE_CURRENT_BINARY_DIR}
17 )
18
19 ##############################################################################
20 # find and add all plugin subdirs
21 ##############################################################################
22 FILE(GLOB files RELATIVE
23   ${CMAKE_CURRENT_SOURCE_DIR}
24   ${CMAKE_CURRENT_SOURCE_DIR}/*/CMakeLists.txt
25 )
26
27 set(VPP_EXCLUDED_PLUGINS
28   ""
29   CACHE
30   STRING "Comma-separated list of core plugins excluded from packaging and tests"
31 )
32
33 # create the list of the plugins that we need to exclude from packaging
34 SET(excluded_plugins "")
35 STRING(REGEX REPLACE "[,]+" ";" exc_plugins "${VPP_EXCLUDED_PLUGINS}")
36 foreach (e ${exc_plugins})
37   message(WARNING "Excluding plugin due to VPP_EXCLUDED_PLUGINS: '${e}'")
38   list(APPEND excluded_plugins ${e})
39 endforeach()
40
41 foreach (f ${files})
42   get_filename_component(dir ${f} DIRECTORY)
43
44   # if a plugin is in the list of excluded plugin, do not add that subdirectory
45   LIST(FIND excluded_plugins "${dir}" exc_index)
46   if(${exc_index} EQUAL "-1")
47     add_subdirectory(${dir})
48   endif()
49 endforeach()