[poky] [PATCH 03/12] package.bbclass: Change the debug directory to avoid conflicts
Saul Wold
sgw at linux.intel.com
Thu Mar 10 18:20:11 PST 2011
From: Mark Hatle <mark.hatle at windriver.com>
The debug directory before was below ${WORKDIR}. Unfortunately if
something was based on a git tree, it meant that "git" was the
directory name being preserved for usr/src/debug usage. The patch
moves to using "${WORKDIR}/.." as the base, to ensure that the
WORKDIR naming is used in usr/src/debug.
Signed-off-by: Mark Hatle <mark.hatle at windriver.com>
---
meta/classes/package.bbclass | 10 ++++++++--
1 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass
index 137de09..a7a5894 100644
--- a/meta/classes/package.bbclass
+++ b/meta/classes/package.bbclass
@@ -180,6 +180,7 @@ def splitfile(file, debugfile, debugsrcdir, d):
objcopy = bb.data.getVar("OBJCOPY", d, True)
debugedit = bb.data.expand("${STAGING_LIBDIR_NATIVE}/rpm/bin/debugedit", d)
workdir = bb.data.expand("${WORKDIR}", d)
+ workparentdir = os.path.dirname(workdir)
sourcefile = bb.data.expand("${WORKDIR}/debugsources.list", d)
# We ignore kernel modules, we don't generate debug info files.
@@ -194,7 +195,7 @@ def splitfile(file, debugfile, debugsrcdir, d):
# We need to extract the debug src information here...
if debugsrcdir:
- os.system("%s'%s' -b '%s' -d '%s' -i -l '%s' '%s'" % (pathprefix, debugedit, workdir, debugsrcdir, sourcefile, file))
+ os.system("%s'%s' -b '%s' -d '%s' -i -l '%s' '%s'" % (pathprefix, debugedit, workparentdir, debugsrcdir, sourcefile, file))
bb.mkdirhier(os.path.dirname(debugfile))
@@ -222,15 +223,20 @@ def splitfile2(debugsrcdir, d):
objcopy = bb.data.getVar("OBJCOPY", d, True)
debugedit = bb.data.expand("${STAGING_LIBDIR_NATIVE}/rpm/bin/debugedit", d)
workdir = bb.data.expand("${WORKDIR}", d)
+ workparentdir = os.path.dirname(workdir)
+ workbasedir = os.path.basename(workdir)
sourcefile = bb.data.expand("${WORKDIR}/debugsources.list", d)
if debugsrcdir:
bb.mkdirhier("%s%s" % (dvar, debugsrcdir))
processdebugsrc = "LC_ALL=C ; sort -z -u '%s' | egrep -v -z '(<internal>|<built-in>)$' | "
+ # We need to ignore files that are not actually ours
+ # we do this by only paying attention to items from this package
+ processdebugsrc += "egrep -z '%s' | "
processdebugsrc += "(cd '%s' ; cpio -pd0mL '%s%s' 2>/dev/null)"
- os.system(processdebugsrc % (sourcefile, workdir, dvar, debugsrcdir))
+ os.system(processdebugsrc % (sourcefile, workbasedir, workparentdir, dvar, debugsrcdir))
# The copy by cpio may have resulted in some empty directories! Remove these
for root, dirs, files in os.walk("%s%s" % (dvar, debugsrcdir)):
--
1.7.1.1
More information about the poky
mailing list