[dpdk-stable] [PATCH 5/7] Revert "Revert "Revert "build: always link whole DPDK static libraries"""

Christian Ehrhardt christian.ehrhardt at canonical.com
Mon Mar 22 12:21:33 CET 2021


This reverts commit a3bd9a34bf9988de641b6e78b825fafb69d2d13f.
This series changes linking behavior in 19.11.x and thereby should stay
out. It breaks - for example - a rebuild of OVS 2.13 or builds
of later OVS 2.13.x stable releases.
---
 app/test/meson.build | 2 +-
 drivers/meson.build  | 2 +-
 examples/meson.build | 6 +++---
 lib/meson.build      | 2 +-
 4 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/app/test/meson.build b/app/test/meson.build
index 24fb59f74f..860728bb07 100644
--- a/app/test/meson.build
+++ b/app/test/meson.build
@@ -391,7 +391,7 @@ test_dep_objs += cc.find_library('execinfo', required: false)
 
 link_libs = []
 if get_option('default_library') == 'static'
-	link_libs = dpdk_static_libraries + dpdk_drivers
+	link_libs = dpdk_drivers
 endif
 
 dpdk_test = executable('dpdk-test',
diff --git a/drivers/meson.build b/drivers/meson.build
index 696079680b..0400d84675 100644
--- a/drivers/meson.build
+++ b/drivers/meson.build
@@ -198,7 +198,7 @@ foreach class:dpdk_driver_classes
 			shared_dep = declare_dependency(link_with: shared_lib,
 					include_directories: includes,
 					dependencies: shared_deps)
-			static_dep = declare_dependency(
+			static_dep = declare_dependency(link_with: static_lib,
 					include_directories: includes,
 					dependencies: static_deps)
 
diff --git a/examples/meson.build b/examples/meson.build
index 9e081f3fb7..4dc292fbd1 100644
--- a/examples/meson.build
+++ b/examples/meson.build
@@ -1,9 +1,9 @@
 # SPDX-License-Identifier: BSD-3-Clause
 # Copyright(c) 2017-2019 Intel Corporation
 
-link_whole_libs = []
+driver_libs = []
 if get_option('default_library') == 'static'
-	link_whole_libs = dpdk_static_libraries + dpdk_drivers
+	driver_libs = dpdk_drivers
 endif
 
 execinfo = cc.find_library('execinfo', required: false)
@@ -97,7 +97,7 @@ foreach example: examples
 		endif
 		executable('dpdk-' + name, sources,
 			include_directories: includes,
-			link_whole: link_whole_libs,
+			link_whole: driver_libs,
 			link_args: ldflags,
 			c_args: cflags,
 			dependencies: dep_objs)
diff --git a/lib/meson.build b/lib/meson.build
index b60396428c..f8da4f3168 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -127,7 +127,7 @@ foreach l:libraries
 					dependencies: static_deps,
 					include_directories: includes,
 					install: true)
-			static_dep = declare_dependency(
+			static_dep = declare_dependency(link_with: static_lib,
 					include_directories: includes,
 					dependencies: static_deps)
 
-- 
2.30.0



More information about the stable mailing list