[OE-core] [meta-oe][PATCH] package.bbclass: provide debug sources in externalsrc -dbg packages
Vignesh Rajendran (RBEI/ECF3)
Vignesh.Rajendran at in.bosch.com
Wed May 16 12:11:15 UTC 2018
Hello OE-Core Members,
As I am new to the patch submission, anyone can explain how long this process will take for acceptance in master/next release?
After several days of waiting by watching OE-mailing thread for any reply for the patch, Now I had a feeling like the patch may have been missed.
>From the below reference, I am just giving a ping back to the community.
https://www.openembedded.org/wiki/How_to_submit_a_patch_to_OpenEmbedded
If your patch has not had any feedback after a few days it may have been missed or the appropriate reviewers may not currently be around; it is perfectly fine to reply to it yourself with a "ping" / reminder request for feedback. NOTE: patch review for feature / recipe upgrade patches will likely be delayed during a feature freeze because these types of patches aren't merged during this time - you may have to wait until after the freeze is lifted.
Any feedback/acceptance will be highly appreciated.
Mit freundlichen Grüßen / Best regards
Rajendran Vignesh
RBEI/ECF33
Tel. +91 422 67-65103
-----Original Message-----
From: Vignesh Rajendran (RBEI/ECF3)
Sent: Monday, May 07, 2018 11:21 AM
To: openembedded-core at lists.openembedded.org
Cc: Vignesh Rajendran (RBEI/ECF3) <Vignesh.Rajendran at in.bosch.com>
Subject: [meta-oe][PATCH] package.bbclass: provide debug sources in externalsrc -dbg packages
The recipes which are using externalsrc method doesn't contain the
debug sources in their -dbg packages.
Add a handling in copydebugsources function to copy the debugsources for
externalsrc -dbg packages.
Signed-off-by: Vignesh Rajendran <vignesh.rajendran at in.bosch.com<mailto:vignesh.rajendran at in.bosch.com>>
---
meta/classes/externalsrc.bbclass | 3 +++
meta/classes/package.bbclass | 14 +++++++++++---
2 files changed, 14 insertions(+), 3 deletions(-)
diff --git a/meta/classes/externalsrc.bbclass b/meta/classes/externalsrc.bbclass
index c9f5cf7..135670d 100644
--- a/meta/classes/externalsrc.bbclass
+++ b/meta/classes/externalsrc.bbclass
@@ -129,6 +129,9 @@ python () {
d.setVar('CONFIGURESTAMPFILE', configstamp)
d.setVar('STAMP', '${STAMPS_DIR}/work-shared/${PN}/${EXTENDPE}${PV}-${PR}')
d.setVar('STAMPCLEAN', '${STAMPS_DIR}/work-shared/${PN}/*-*')
+
+ # set DEBUG_PREFIX_MAP to external source path
+ d.appendVar("DEBUG_PREFIX_MAP", "-fdebug-prefix-map=${EXTERNALSRC}=/usr/src/debug/${PN}/${EXTENDPE}${PV}-${PR}")
}
python externalsrc_configure_prefunc() {
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass
index edeffa9..2c4472d 100644
--- a/meta/classes/package.bbclass
+++ b/meta/classes/package.bbclass
@@ -420,6 +420,7 @@ def copydebugsources(debugsrcdir, d):
workdir = d.getVar("WORKDIR")
workparentdir = os.path.dirname(os.path.dirname(workdir))
workbasedir = os.path.basename(os.path.dirname(workdir)) + "/" + os.path.basename(workdir)
+ externalsrc = d.getVar('EXTERNALSRC', True)
# If build path exists in sourcefile, it means toolchain did not use
# -fdebug-prefix-map to compile
@@ -444,10 +445,17 @@ def copydebugsources(debugsrcdir, d):
processdebugsrc += "fgrep -zw '%s' | "
# Remove prefix in the source paths
processdebugsrc += "sed 's#%s##g' | "
- processdebugsrc += "(cd '%s' ; cpio -pd0mlL --no-preserve-owner '%s%s' 2>/dev/null)"
+ # handle external sources to provide sources in -dbg packages
+ if externalsrc:
+ localsrc_prefix = "/usr/src/debug/"
+ processdebugsrc += "sed 's#%s/##g' | "
+ processdebugsrc += "(cd '%s' ; cpio -pd0mlL --no-preserve-owner '%s%s/%s' 2>/dev/null)"
+ cmd = processdebugsrc % (sourcefile, workbasedir, localsrc_prefix, workbasedir, externalsrc, dvar, debugsrcdir, workbasedir)
+ else:
+ processdebugsrc += "(cd '%s' ; cpio -pd0mlL --no-preserve-owner '%s%s' 2>/dev/null)"
+ cmd = processdebugsrc % (sourcefile, workbasedir, localsrc_prefix, workparentdir, dvar, debugsrcdir)
- cmd = processdebugsrc % (sourcefile, workbasedir, localsrc_prefix, workparentdir, dvar, debugsrcdir)
- (retval, output) = oe.utils.getstatusoutput(cmd)
+ (retval, output) = oe.utils.getstatusoutput(cmd)
# Can "fail" if internal headers/transient sources are attempted
#if retval:
# bb.fatal("debug source copy failed with exit code %s (cmd was %s)" % (retval, cmd))
--
2.7.4
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20180516/21a1c55a/attachment.html>
More information about the Openembedded-core
mailing list