build: fix dependency on execinfo for BSD meson builds

The binaries and apps in DPDK all need to be linked against the
execinfo library on FreeBSD so add this as a dependency in cases
where it is found. It's available by default on BSD, but not
at all on Linux

Fixes: 16ade738fd ("app/testpmd: build with meson")
Fixes: 89f0711f9d ("examples: build some samples with meson")
Fixes: b5dc795a8a ("test: build app with meson as dpdk-test")
Fixes: 2ff67267b0 ("app/eventdev: build with meson")

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
This commit is contained in:
Bruce Richardson 2018-02-01 14:20:08 +00:00
parent 2f90543f23
commit 9065b1fac6
4 changed files with 5 additions and 1 deletions

View File

@ -13,6 +13,7 @@ sources = files('evt_main.c',
'test_perf_queue.c')
dep_objs = [get_variable(get_option('default_library') + '_rte_eventdev')]
dep_objs += cc.find_library('execinfo', required: false) # BSD only
link_libs = []
if get_option('default_library') == 'static'

View File

@ -37,6 +37,7 @@ dep_objs = []
foreach d:deps
dep_objs += get_variable(get_option('default_library') + '_rte_' + d)
endforeach
dep_objs += cc.find_library('execinfo', required: false) # for BSD only
link_libs = []
if get_option('default_library') == 'static'

View File

@ -6,12 +6,13 @@ if get_option('default_library') == 'static'
driver_libs = dpdk_drivers
endif
execinfo = cc.find_library('execinfo', required: false)
foreach example: get_option('examples').split(',')
name = example
sources = []
allow_experimental_apis = false
cflags = machine_args
ext_deps = []
ext_deps = [execinfo]
includes = [include_directories(example)]
deps = ['eal', 'mempool', 'net', 'mbuf', 'ethdev', 'cmdline']
subdir(example)

View File

@ -234,6 +234,7 @@ foreach d:test_deps
def_lib = get_option('default_library')
test_dep_objs += get_variable(def_lib + '_rte_' + d)
endforeach
test_dep_objs += cc.find_library('execinfo', required: false)
link_libs = []
if get_option('default_library') == 'static'