lib: check experimental symbols with meson
Call check-experimental-syms.sh script as part of the meson build to ensure that all functions are correctly tagged. Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Luca Boccassi <bluca@debian.org>
This commit is contained in:
parent
7b3a6d7e35
commit
ff962da373
@ -5,6 +5,8 @@ subdir('pmdinfogen')
|
|||||||
|
|
||||||
pmdinfo = find_program('gen-pmdinfo-cfile.sh')
|
pmdinfo = find_program('gen-pmdinfo-cfile.sh')
|
||||||
|
|
||||||
|
check_experimental_syms = find_program('check-experimental-syms.sh')
|
||||||
|
|
||||||
# set up map-to-def script using python, either built-in or external
|
# set up map-to-def script using python, either built-in or external
|
||||||
python3 = import('python').find_installation(required: false)
|
python3 = import('python').find_installation(required: false)
|
||||||
if python3.found()
|
if python3.found()
|
||||||
|
@ -143,11 +143,21 @@ foreach l:libraries
|
|||||||
command: [map_to_def_cmd, '@INPUT@', '@OUTPUT@'],
|
command: [map_to_def_cmd, '@INPUT@', '@OUTPUT@'],
|
||||||
input: version_map,
|
input: version_map,
|
||||||
output: 'rte_@0@_exports.def'.format(name))
|
output: 'rte_@0@_exports.def'.format(name))
|
||||||
|
lk_deps = [version_map, def_file]
|
||||||
if is_windows
|
if is_windows
|
||||||
lk_args = ['-Wl,/def:' + def_file.full_path(),
|
lk_args = ['-Wl,/def:' + def_file.full_path(),
|
||||||
'-Wl,/implib:lib\\' + implib]
|
'-Wl,/implib:lib\\' + implib]
|
||||||
else
|
else
|
||||||
lk_args = ['-Wl,--version-script=' + version_map]
|
lk_args = ['-Wl,--version-script=' + version_map]
|
||||||
|
# on unix systems check the output of the
|
||||||
|
# experimental syms script, using it as a
|
||||||
|
# dependency of the .so build
|
||||||
|
lk_deps += custom_target(name + '.exp_chk',
|
||||||
|
command: [check_experimental_syms,
|
||||||
|
version_map, '@INPUT@'],
|
||||||
|
capture: true,
|
||||||
|
input: static_lib,
|
||||||
|
output: name + '.exp_chk')
|
||||||
endif
|
endif
|
||||||
|
|
||||||
shared_lib = shared_library(libname,
|
shared_lib = shared_library(libname,
|
||||||
@ -157,7 +167,7 @@ foreach l:libraries
|
|||||||
dependencies: shared_deps,
|
dependencies: shared_deps,
|
||||||
include_directories: includes,
|
include_directories: includes,
|
||||||
link_args: lk_args,
|
link_args: lk_args,
|
||||||
link_depends: [version_map, def_file],
|
link_depends: lk_deps,
|
||||||
version: lib_version,
|
version: lib_version,
|
||||||
soversion: so_version,
|
soversion: so_version,
|
||||||
install: true)
|
install: true)
|
||||||
|
Loading…
Reference in New Issue
Block a user