diff options
author | Damjan Marion <damarion@cisco.com> | 2020-11-05 17:55:53 +0100 |
---|---|---|
committer | Florin Coras <florin.coras@gmail.com> | 2020-11-05 20:49:03 +0000 |
commit | 066cd812374460e5ca8be9a88f494fe3f5bf911e (patch) | |
tree | 1a1f5fba83b01099bc9755de20b76360ecbe6c50 /src/cmake/plugin.cmake | |
parent | a94e26db701417ec6955997aea6b93e8bd87c032 (diff) |
build: run garbage collection while linking plugins
Ask linker to remove symbols which are not referenced or exported.
Type: improvement
Change-Id: Iec01fda7ec5b14bab8f36d25c2652bd6fe619961
Signed-off-by: Damjan Marion <damarion@cisco.com>
Diffstat (limited to 'src/cmake/plugin.cmake')
-rw-r--r-- | src/cmake/plugin.cmake | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/cmake/plugin.cmake b/src/cmake/plugin.cmake index 516588c7b8b..2aae89510c1 100644 --- a/src/cmake/plugin.cmake +++ b/src/cmake/plugin.cmake @@ -46,6 +46,9 @@ macro(add_vpp_plugin name) add_library(${plugin_name} SHARED ${PLUGIN_SOURCES} ${api_includes}) set_target_properties(${plugin_name} PROPERTIES NO_SONAME 1) target_compile_options(${plugin_name} PRIVATE "-fvisibility=hidden") + target_compile_options (${plugin_name} PRIVATE "-ffunction-sections") + target_compile_options (${plugin_name} PRIVATE "-fdata-sections") + target_link_libraries (${plugin_name} "-Wl,--gc-sections") set(deps "") if(PLUGIN_API_FILES) list(APPEND deps ${plugin_name}_api_headers) |