diff options
Diffstat (limited to 'meta/classes/package.bbclass')
| -rw-r--r-- | meta/classes/package.bbclass | 29 |
1 files changed, 14 insertions, 15 deletions
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index 8e6029a0a3..5c2d1c6553 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass | |||
| @@ -236,7 +236,7 @@ def splitdebuginfo(file, debugfile, debugsrcdir, sourcefile, d): | |||
| 236 | # | 236 | # |
| 237 | # sourcefile is also generated containing a list of debugsources | 237 | # sourcefile is also generated containing a list of debugsources |
| 238 | 238 | ||
| 239 | import stat, subprocess | 239 | import stat |
| 240 | 240 | ||
| 241 | dvar = d.getVar('PKGD', True) | 241 | dvar = d.getVar('PKGD', True) |
| 242 | objcopy = d.getVar("OBJCOPY", True) | 242 | objcopy = d.getVar("OBJCOPY", True) |
| @@ -257,22 +257,22 @@ def splitdebuginfo(file, debugfile, debugsrcdir, sourcefile, d): | |||
| 257 | # We need to extract the debug src information here... | 257 | # We need to extract the debug src information here... |
| 258 | if debugsrcdir: | 258 | if debugsrcdir: |
| 259 | cmd = "'%s' -b '%s' -d '%s' -i -l '%s' '%s'" % (debugedit, workparentdir, debugsrcdir, sourcefile, file) | 259 | cmd = "'%s' -b '%s' -d '%s' -i -l '%s' '%s'" % (debugedit, workparentdir, debugsrcdir, sourcefile, file) |
| 260 | retval = subprocess.call(cmd, shell=True) | 260 | (retval, output) = oe.utils.getstatusoutput(cmd) |
| 261 | if retval: | 261 | if retval: |
| 262 | bb.fatal("debugedit failed with exit code %s (cmd was %s)" % (retval, cmd)) | 262 | bb.fatal("debugedit failed with exit code %s (cmd was %s)%s" % (retval, cmd, ":\n%s" % output if output else "")) |
| 263 | 263 | ||
| 264 | bb.utils.mkdirhier(os.path.dirname(debugfile)) | 264 | bb.utils.mkdirhier(os.path.dirname(debugfile)) |
| 265 | 265 | ||
| 266 | cmd = "'%s' --only-keep-debug '%s' '%s'" % (objcopy, file, debugfile) | 266 | cmd = "'%s' --only-keep-debug '%s' '%s'" % (objcopy, file, debugfile) |
| 267 | retval = subprocess.call(cmd, shell=True) | 267 | (retval, output) = oe.utils.getstatusoutput(cmd) |
| 268 | if retval: | 268 | if retval: |
| 269 | bb.fatal("objcopy failed with exit code %s (cmd was %s)" % (retval, cmd)) | 269 | bb.fatal("objcopy failed with exit code %s (cmd was %s)%s" % (retval, cmd, ":\n%s" % output if output else "")) |
| 270 | 270 | ||
| 271 | # Set the debuglink to have the view of the file path on the target | 271 | # Set the debuglink to have the view of the file path on the target |
| 272 | cmd = "'%s' --add-gnu-debuglink='%s' '%s'" % (objcopy, debugfile, file) | 272 | cmd = "'%s' --add-gnu-debuglink='%s' '%s'" % (objcopy, debugfile, file) |
| 273 | retval = subprocess.call(cmd, shell=True) | 273 | (retval, output) = oe.utils.getstatusoutput(cmd) |
| 274 | if retval: | 274 | if retval: |
| 275 | bb.fatal("objcopy failed with exit code %s (cmd was %s)" % (retval, cmd)) | 275 | bb.fatal("objcopy failed with exit code %s (cmd was %s)%s" % (retval, cmd, ":\n%s" % output if output else "")) |
| 276 | 276 | ||
| 277 | if newmode: | 277 | if newmode: |
| 278 | os.chmod(file, origmode) | 278 | os.chmod(file, origmode) |
| @@ -283,7 +283,7 @@ def copydebugsources(debugsrcdir, d): | |||
| 283 | # The debug src information written out to sourcefile is further procecessed | 283 | # The debug src information written out to sourcefile is further procecessed |
| 284 | # and copied to the destination here. | 284 | # and copied to the destination here. |
| 285 | 285 | ||
| 286 | import stat, subprocess | 286 | import stat |
| 287 | 287 | ||
| 288 | sourcefile = d.expand("${WORKDIR}/debugsources.list") | 288 | sourcefile = d.expand("${WORKDIR}/debugsources.list") |
| 289 | if debugsrcdir and os.path.isfile(sourcefile): | 289 | if debugsrcdir and os.path.isfile(sourcefile): |
| @@ -311,7 +311,7 @@ def copydebugsources(debugsrcdir, d): | |||
| 311 | processdebugsrc += "(cd '%s' ; cpio -pd0mlL --no-preserve-owner '%s%s' 2>/dev/null)" | 311 | processdebugsrc += "(cd '%s' ; cpio -pd0mlL --no-preserve-owner '%s%s' 2>/dev/null)" |
| 312 | 312 | ||
| 313 | cmd = processdebugsrc % (sourcefile, workbasedir, workparentdir, dvar, debugsrcdir) | 313 | cmd = processdebugsrc % (sourcefile, workbasedir, workparentdir, dvar, debugsrcdir) |
| 314 | retval = subprocess.call(cmd, shell=True) | 314 | (retval, output) = oe.utils.getstatusoutput(cmd) |
| 315 | # Can "fail" if internal headers/transient sources are attempted | 315 | # Can "fail" if internal headers/transient sources are attempted |
| 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)) |
| @@ -319,9 +319,9 @@ def copydebugsources(debugsrcdir, d): | |||
| 319 | 319 | ||
| 320 | # The copy by cpio may have resulted in some empty directories! Remove these | 320 | # The copy by cpio may have resulted in some empty directories! Remove these |
| 321 | cmd = "find %s%s -empty -type d -delete" % (dvar, debugsrcdir) | 321 | cmd = "find %s%s -empty -type d -delete" % (dvar, debugsrcdir) |
| 322 | retval = subprocess.call(cmd, shell=True) | 322 | (retval, output) = oe.utils.getstatusoutput(cmd) |
| 323 | if retval: | 323 | if retval: |
| 324 | bb.fatal("empty directory removal failed with exit code %s (cmd was %s)" % (retval, cmd)) | 324 | bb.fatal("empty directory removal failed with exit code %s (cmd was %s)%s" % (retval, cmd, ":\n%s" % output if output else "")) |
| 325 | 325 | ||
| 326 | # Also remove debugsrcdir if its empty | 326 | # Also remove debugsrcdir if its empty |
| 327 | for p in nosuchdir[::-1]: | 327 | for p in nosuchdir[::-1]: |
| @@ -446,7 +446,6 @@ python package_do_split_locales() { | |||
| 446 | } | 446 | } |
| 447 | 447 | ||
| 448 | python perform_packagecopy () { | 448 | python perform_packagecopy () { |
| 449 | import subprocess | ||
| 450 | dest = d.getVar('D', True) | 449 | dest = d.getVar('D', True) |
| 451 | dvar = d.getVar('PKGD', True) | 450 | dvar = d.getVar('PKGD', True) |
| 452 | 451 | ||
| @@ -454,9 +453,9 @@ python perform_packagecopy () { | |||
| 454 | # files to operate on | 453 | # files to operate on |
| 455 | # Preserve sparse files and hard links | 454 | # Preserve sparse files and hard links |
| 456 | cmd = 'tar -cf - -C %s -ps . | tar -xf - -C %s' % (dest, dvar) | 455 | cmd = 'tar -cf - -C %s -ps . | tar -xf - -C %s' % (dest, dvar) |
| 457 | retval = subprocess.call(cmd, shell=True) | 456 | (retval, output) = oe.utils.getstatusoutput(cmd) |
| 458 | if retval: | 457 | if retval: |
| 459 | bb.fatal("file copy failed with exit code %s (cmd was %s)" % (retval, cmd)) | 458 | bb.fatal("file copy failed with exit code %s (cmd was %s)%s" % (retval, cmd, ":\n%s" % output if output else "")) |
| 460 | 459 | ||
| 461 | # replace RPATHs for the nativesdk binaries, to make them relocatable | 460 | # replace RPATHs for the nativesdk binaries, to make them relocatable |
| 462 | if bb.data.inherits_class('nativesdk', d) or bb.data.inherits_class('cross-canadian', d): | 461 | if bb.data.inherits_class('nativesdk', d) or bb.data.inherits_class('cross-canadian', d): |
| @@ -916,7 +915,7 @@ python split_and_strip_files () { | |||
| 916 | } | 915 | } |
| 917 | 916 | ||
| 918 | python populate_packages () { | 917 | python populate_packages () { |
| 919 | import glob, re, subprocess | 918 | import glob, re |
| 920 | 919 | ||
| 921 | workdir = d.getVar('WORKDIR', True) | 920 | workdir = d.getVar('WORKDIR', True) |
| 922 | outdir = d.getVar('DEPLOY_DIR', True) | 921 | outdir = d.getVar('DEPLOY_DIR', True) |
