diff options
Diffstat (limited to 'meta/classes')
-rw-r--r-- | meta/classes/package.bbclass | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index 2460d0ac62..f6f93106ac 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass | |||
@@ -316,6 +316,12 @@ def copydebugsources(debugsrcdir, d): | |||
316 | #if retval: | 316 | #if retval: |
317 | # bb.fatal("debug source copy failed with exit code %s (cmd was %s)" % (retval, cmd)) | 317 | # bb.fatal("debug source copy failed with exit code %s (cmd was %s)" % (retval, cmd)) |
318 | 318 | ||
319 | # cpio seems to have a bug with -lL together and symbolic links are just copied, not dereferenced. | ||
320 | # Work around this by manually finding and copying any symbolic links that made it through. | ||
321 | cmd = "find %s%s -type l -print0 -delete | sed s#%s%s/##g | (cd '%s' ; cpio -pd0mL --no-preserve-owner '%s%s' 2>/dev/null)" % (dvar, debugsrcdir, dvar, debugsrcdir, workparentdir, dvar, debugsrcdir) | ||
322 | (retval, output) = oe.utils.getstatusoutput(cmd) | ||
323 | if retval: | ||
324 | bb.fatal("debugsrc symlink fixup failed with exit code %s (cmd was %s)" % (retval, cmd)) | ||
319 | 325 | ||
320 | # The copy by cpio may have resulted in some empty directories! Remove these | 326 | # The copy by cpio may have resulted in some empty directories! Remove these |
321 | cmd = "find %s%s -empty -type d -delete" % (dvar, debugsrcdir) | 327 | cmd = "find %s%s -empty -type d -delete" % (dvar, debugsrcdir) |