Immediate expansion of perl_get_libdirs() is too early for BBCLASSEXTEND. This results in a packaging QA error when building a cpan recipe as nativesdk. The split debug files do not get picked up by the dbg package because it looks in the wrong libdir. The is_target() function remains because it is used elsewhere. (From OE-Core rev: b32420effcc0435353adc63023d2e4276dd1e0c6) Signed-off-by: Tyler Hall <tylerwhall@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
53 lines
1.9 KiB
Text
53 lines
1.9 KiB
Text
#
|
|
# cpan-base providers various perl related information needed for building
|
|
# cpan modules
|
|
#
|
|
FILES_${PN} += "${libdir}/perl ${datadir}/perl"
|
|
|
|
DEPENDS += "${@["perl", "perl-native"][(bb.data.inherits_class('native', d))]}"
|
|
RDEPENDS_${PN} += "${@["perl", ""][(bb.data.inherits_class('native', d))]}"
|
|
|
|
PERL_OWN_DIR = "${@["", "/perl-native"][(bb.data.inherits_class('native', d))]}"
|
|
|
|
# Determine the staged version 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).
|
|
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')
|
|
try:
|
|
f = open(cfg, 'r')
|
|
except IOError:
|
|
return None
|
|
l = f.readlines();
|
|
f.close();
|
|
r = re.compile("^version='(\d*\.\d*\.\d*)'")
|
|
for s in l:
|
|
m = r.match(s)
|
|
if m:
|
|
return m.group(1)
|
|
return None
|
|
|
|
def is_target(d):
|
|
if not bb.data.inherits_class('native', d):
|
|
return "yes"
|
|
return "no"
|
|
|
|
PERLLIBDIRS = "${libdir}/perl"
|
|
PERLLIBDIRS_class-native = "${libdir}/perl-native"
|
|
PERLVERSION := "${@get_perl_version(d)}"
|
|
PERLVERSION[vardepvalue] = ""
|
|
|
|
FILES_${PN}-dbg += "${PERLLIBDIRS}/auto/*/.debug \
|
|
${PERLLIBDIRS}/auto/*/*/.debug \
|
|
${PERLLIBDIRS}/auto/*/*/*/.debug \
|
|
${PERLLIBDIRS}/auto/*/*/*/*/.debug \
|
|
${PERLLIBDIRS}/auto/*/*/*/*/*/.debug \
|
|
${PERLLIBDIRS}/vendor_perl/${PERLVERSION}/auto/*/.debug \
|
|
${PERLLIBDIRS}/vendor_perl/${PERLVERSION}/auto/*/*/.debug \
|
|
${PERLLIBDIRS}/vendor_perl/${PERLVERSION}/auto/*/*/*/.debug \
|
|
${PERLLIBDIRS}/vendor_perl/${PERLVERSION}/auto/*/*/*/*/.debug \
|
|
${PERLLIBDIRS}/vendor_perl/${PERLVERSION}/auto/*/*/*/*/*/.debug \
|
|
"
|