From: Bruce Richardson Date: Tue, 8 Oct 2019 14:36:27 +0000 (+0100) Subject: lib: check experimental symbols with meson X-Git-Url: http://git.droids-corp.org/?p=dpdk.git;a=commitdiff_plain;h=ff962da373ae3f28c677210dce0c46963717881f 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 Acked-by: Luca Boccassi --- diff --git a/buildtools/meson.build b/buildtools/meson.build index 32c79c1308..8d0b9e0cd0 100644 --- a/buildtools/meson.build +++ b/buildtools/meson.build @@ -5,6 +5,8 @@ subdir('pmdinfogen') 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 python3 = import('python').find_installation(required: false) if python3.found() diff --git a/lib/meson.build b/lib/meson.build index b2ec9c09a9..bc8eb1d218 100644 --- a/lib/meson.build +++ b/lib/meson.build @@ -143,11 +143,21 @@ foreach l:libraries command: [map_to_def_cmd, '@INPUT@', '@OUTPUT@'], input: version_map, output: 'rte_@0@_exports.def'.format(name)) + lk_deps = [version_map, def_file] if is_windows lk_args = ['-Wl,/def:' + def_file.full_path(), '-Wl,/implib:lib\\' + implib] else 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 shared_lib = shared_library(libname, @@ -157,7 +167,7 @@ foreach l:libraries dependencies: shared_deps, include_directories: includes, link_args: lk_args, - link_depends: [version_map, def_file], + link_depends: lk_deps, version: lib_version, soversion: so_version, install: true)