build: add libbsd to pkg-config file if enabled
If libbsd is enabled in DPDK, the strlcpy and strlcat functions in rte_string_fns.h redirect to the varients in libbsd, only using the fallbacks if it is not enabled. Therefore, if libbsd is enabled, it needs to be called out as a DPDK dependency in the pkgconfig file. To ensure that we don't have undefined variables on non-Linux platforms, we can remove the linux condition around the libbsd check - no harm comes in looking for it on other OS, since it's an optional dependency. Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Luca Boccassi <bluca@debian.org>
This commit is contained in:
parent
e09848337c
commit
12784d9b6e
@ -132,12 +132,10 @@ if numa_dep.found() and cc.has_header('numaif.h')
|
||||
dpdk_extra_ldflags += '-lnuma'
|
||||
endif
|
||||
|
||||
# check for strlcpy
|
||||
if is_linux
|
||||
libbsd = dependency('libbsd', required: false)
|
||||
if libbsd.found()
|
||||
# check for libbsd
|
||||
libbsd = dependency('libbsd', required: false)
|
||||
if libbsd.found()
|
||||
dpdk_conf.set('RTE_USE_LIBBSD', 1)
|
||||
endif
|
||||
endif
|
||||
|
||||
# add -include rte_config to cflags
|
||||
|
@ -70,6 +70,8 @@ pkg.generate(name: meson.project_name(),
|
||||
libraries: dpdk_libraries,
|
||||
libraries_private: dpdk_drivers + dpdk_static_libraries +
|
||||
['-Wl,-Bdynamic'] + dpdk_extra_ldflags,
|
||||
requires: libbsd, # apps using rte_string_fns.h may need this if enabled
|
||||
# if libbsd is not enabled, then this is blank
|
||||
description: '''The Data Plane Development Kit (DPDK).
|
||||
Note that CFLAGS might contain an -march flag higher than typical baseline.
|
||||
This is required for a number of static inline functions in the public headers.''',
|
||||
|
Loading…
Reference in New Issue
Block a user