From d6b36b1babb4d3e8d41278111e71c71fde9af39e Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Sun, 2 Dec 2018 12:52:00 +0100 Subject: meta/classes: adjust perl-related classes to the new recipes This mostly means tweaking the paths to match upstream defaults. get_perl_arch() functions are taken from the patch by Jens Rehsack: http://lists.openembedded.org/pipermail/openembedded-core/2018-November/276546.html Signed-off-by: Alexander Kanavin --- meta/classes/perl-version.bbclass | 46 +++++++++++++++++++++++++++++++++++++-- 1 file changed, 44 insertions(+), 2 deletions(-) (limited to 'meta/classes/perl-version.bbclass') diff --git a/meta/classes/perl-version.bbclass b/meta/classes/perl-version.bbclass index bafd96518a..84b67b8180 100644 --- a/meta/classes/perl-version.bbclass +++ b/meta/classes/perl-version.bbclass @@ -1,4 +1,4 @@ -PERL_OWN_DIR = "${@["", "/perl-native"][(bb.data.inherits_class('native', d))]}" +PERL_OWN_DIR = "" # Determine the staged version of perl from the perl configuration file # Assign vardepvalue, because otherwise signature is changed before and after @@ -6,7 +6,7 @@ PERL_OWN_DIR = "${@["", "/perl-native"][(bb.data.inherits_class('native', d))]}" get_perl_version[vardepvalue] = "${PERL_OWN_DIR}" def get_perl_version(d): import re - cfg = d.expand('${STAGING_LIBDIR}${PERL_OWN_DIR}/perl/config.sh') + cfg = d.expand('${STAGING_LIBDIR}${PERL_OWN_DIR}/perl5/config.sh') try: f = open(cfg, 'r') except IOError: @@ -22,3 +22,45 @@ def get_perl_version(d): PERLVERSION := "${@get_perl_version(d)}" PERLVERSION[vardepvalue] = "" + + +# Determine the staged arch of perl from the perl configuration file +# Assign vardepvalue, because otherwise signature is changed before and after +# perl is built (from None to real version in config.sh). +def get_perl_arch(d): + import re + cfg = d.expand('${STAGING_LIBDIR}${PERL_OWN_DIR}/perl5/config.sh') + try: + f = open(cfg, 'r') + except IOError: + return None + l = f.readlines(); + f.close(); + r = re.compile("^archname='([^']*)'") + for s in l: + m = r.match(s) + if m: + return m.group(1) + return None + +PERLARCH := "${@get_perl_arch(d)}" +PERLARCH[vardepvalue] = "" + +# Determine the staged arch of perl-native from the perl configuration file +# Assign vardepvalue, because otherwise signature is changed before and after +# perl is built (from None to real version in config.sh). +def get_perl_hostarch(d): + import re + cfg = d.expand('${STAGING_LIBDIR_NATIVE}/perl5/config.sh') + try: + f = open(cfg, 'r') + except IOError: + return None + l = f.readlines(); + f.close(); + r = re.compile("^archname='([^']*)'") + for s in l: + m = r.match(s) + if m: + return m.group(1) + return None -- cgit 1.2.3-korg