From d111fd85b25466f7829ccee34493aa0e3b551308 Mon Sep 17 00:00:00 2001 From: Mingli Yu Date: Tue, 23 Apr 2019 19:13:19 -0700 Subject: [PATCH] CheckLib.pm: don't execute the binary Don't execute the binary in build env as the binary which is generated in cross compile env may fail when executed in build env. And it's enough to verify the libs via successully generate the binary which links the libs as below. $ /yocto/builds/upgrade1/tmp/work/core2-64-poky-linux/libdbd-mysql-perl/4.050-r0/recipe-sysroot-native/usr/bin/x86_64-poky-linux/x86_64-poky-linux-gcc \ -m64 -march=core2 -mtune=core2 -msse3 -mfpmath=sse -fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security \ -Werror=format-security --sysroot=/yocto/builds/upgrade1/tmp/work/core2-64-poky-linux/libdbd-mysql-perl/4.050-r0/recipe-sysroot \ -O2 -pipe -g -feliminate-unused-debug-types -fmacro-prefix-map=/yocto/builds/upgrade1/tmp/work/core2-64-poky-linux/perl/5.28.1-r1=/usr/src/debug/perl/5.28.1-r1 \ -fdebug-prefix-map=/yocto/builds/upgrade1/tmp/work/core2-64-poky-linux/perl/5.28.1-r1=/usr/src/debug/perl/5.28.1-r1 \ -fdebug-prefix-map=/yocto/builds/upgrade1/tmp/work/core2-64-poky-linux/libdbd-mysql-perl/4.050-r0/recipe-sysroot= -fdebug-prefix-map=/yocto/builds/upgrade1/tmp/work/core2-64-poky-linux/libdbd-mysql-perl/4.050-r0/recipe-sysroot-native= -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 assertlibEhx19yuY.c -L/yocto/builds/upgrade1/tmp/work/core2-64-poky-linux/libdbd-mysql-perl/4.050-r0/recipe-sysroot/usr/lib -lcrypto -fstack-protector-strong -o assertlibCOw_eujb Execute the binary in cross compile env as below and use the return status to determine the lib's checking status is not appropriate in cross compile env. $ /yocto/builds/upgrade1/tmp/work/core2-64-poky-linux/libdbd-mysql-perl/4.050-r0/git/assertlibCOw_eujb Upstream-Status: Inappropriate[oe specific] Signed-off-by: Mingli Yu --- lib/Devel/CheckLib.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/Devel/CheckLib.pm b/lib/Devel/CheckLib.pm index e45cfb4..d228bb5 100644 --- a/lib/Devel/CheckLib.pm +++ b/lib/Devel/CheckLib.pm @@ -424,7 +424,7 @@ sub assert_lib { my $absexefile = File::Spec->rel2abs($exefile); $absexefile = '"'.$absexefile.'"' if $absexefile =~ m/\s/; if (!$not_execute && system($absexefile) != 0) { - push @wrongresult, $lib; + print "Checking the lib $lib\n"; } else { if ($analyze_binary) { -- 2.17.1