make/check_so_deps: Convert IGNORED_LIBS to assoc array

Also, move the check against IGNORED_LIBS to import_libs_deps_mk().

Signed-off-by: Michal Berger <michalx.berger@intel.com>
Change-Id: I190262f728118d65c35481e490ca094086760cfa
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/4631
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
This commit is contained in:
Michal Berger 2020-10-13 11:02:46 +02:00 committed by Tomasz Zawadzki
parent 5d88afca2a
commit d5f8983edd

View File

@ -179,6 +179,8 @@ function import_libs_deps_mk() {
fun_mk=${dep_mk//@('$('|')')/} fun_mk=${dep_mk//@('$('|')')/}
if [[ $fun_mk != "$dep_mk" ]]; then if [[ $fun_mk != "$dep_mk" ]]; then
eval "${fun_mk}() { echo \$$fun_mk ; }" eval "${fun_mk}() { echo \$$fun_mk ; }"
elif ((IGNORED_LIBS["$dep_mk"] == 1)); then
continue
fi fi
eval "$var_mk=\${$var_mk:+\$$var_mk }$dep_mk" eval "$var_mk=\${$var_mk:+\$$var_mk }$dep_mk"
done done
@ -194,14 +196,6 @@ function confirm_deps() {
lib_shortname=$(get_lib_shortname "$lib") lib_shortname=$(get_lib_shortname "$lib")
lib_make_deps=(${!lib_shortname}) lib_make_deps=(${!lib_shortname})
for ign_dep in "${IGNORED_LIBS[@]}"; do
for i in "${!lib_make_deps[@]}"; do
if [[ ${lib_make_deps[i]} == "$ign_dep" ]]; then
unset 'lib_make_deps[i]'
fi
done
done
symbols=$(readelf -s --wide $lib | grep -E "NOTYPE.*GLOBAL.*UND" | awk '{print $8}' | sort | uniq) symbols=$(readelf -s --wide $lib | grep -E "NOTYPE.*GLOBAL.*UND" | awk '{print $8}' | sort | uniq)
for symbol in $symbols; do for symbol in $symbols; do
for deplib in $DEP_LIBS; do for deplib in $DEP_LIBS; do
@ -267,12 +261,12 @@ echo "---------------------------------------------------------------------"
SPDK_LIBS=$(ls -1 $libdir/libspdk_*.so | grep -v libspdk_env_dpdk.so) SPDK_LIBS=$(ls -1 $libdir/libspdk_*.so | grep -v libspdk_env_dpdk.so)
DEP_LIBS=$(ls -1 $libdir/libspdk_*.so) DEP_LIBS=$(ls -1 $libdir/libspdk_*.so)
IGNORED_LIBS=() declare -A IGNORED_LIBS=()
if grep -q 'CONFIG_VHOST_INTERNAL_LIB?=n' $rootdir/mk/config.mk; then if grep -q 'CONFIG_VHOST_INTERNAL_LIB?=n' $rootdir/mk/config.mk; then
IGNORED_LIBS+=("rte_vhost") IGNORED_LIBS["rte_vhost"]=1
fi fi
if grep -q 'CONFIG_RDMA?=n' $rootdir/mk/config.mk; then if grep -q 'CONFIG_RDMA?=n' $rootdir/mk/config.mk; then
IGNORED_LIBS+=("rdma") IGNORED_LIBS["rdma"]=1
fi fi
( (