mirror of
git://git.openembedded.org/meta-openembedded
synced 2026-09-30 20:12:14 +00:00
libdev-checklib-perl: add new recipe
It provides the perl module (Devel::CheckLib) which may needed by other package which uses it to check libs. Signed-off-by: Mingli Yu <mingli.yu@windriver.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
parent
7392f986b6
commit
a57a63f0c9
@ -0,0 +1,46 @@
|
|||||||
|
From d111fd85b25466f7829ccee34493aa0e3b551308 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Mingli Yu <mingli.yu@windriver.com>
|
||||||
|
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 <mingli.yu@windriver.com>
|
||||||
|
---
|
||||||
|
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
|
||||||
|
|
||||||
21
meta-oe/recipes-devtools/perl/libdev-checklib-perl_1.13.bb
Normal file
21
meta-oe/recipes-devtools/perl/libdev-checklib-perl_1.13.bb
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
SUMMARY = "A Perl module that checks whether a particular C library and its headers are available"
|
||||||
|
DESCRIPTION = "This module provides a way of checking whether a particular library \
|
||||||
|
and its headers are available, by attempting to compile a simple program and \
|
||||||
|
link against it."
|
||||||
|
HOMEPAGE = "https://metacpan.org/pod/Devel::CheckLib"
|
||||||
|
SECTION = "libs"
|
||||||
|
LICENSE = "Artistic-1.0 | GPL-1.0+"
|
||||||
|
|
||||||
|
LIC_FILES_CHKSUM = "file://README;md5=7911cdbb572d25c5f2e2ea17f669efc2"
|
||||||
|
|
||||||
|
SRC_URI = "https://cpan.metacpan.org/modules/by-module/Devel/Devel-CheckLib-${PV}.tar.gz \
|
||||||
|
file://0001-CheckLib.pm-don-t-execute-the-binary.patch \
|
||||||
|
"
|
||||||
|
SRC_URI[md5sum] = "930216c5abc0f016df8a7539d48c891a"
|
||||||
|
SRC_URI[sha256sum] = "24adfd908705dfac4bb320711763f37126b75cf54b3566c2c27c7cdef9c429a8"
|
||||||
|
|
||||||
|
S = "${WORKDIR}/Devel-CheckLib-${PV}"
|
||||||
|
|
||||||
|
inherit cpan
|
||||||
|
|
||||||
|
BBCLASSEXTEND="native"
|
||||||
Loading…
x
Reference in New Issue
Block a user