[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-0002.html>


More information about the Openembedded-core mailing list