[oe-commits] Paul Eggleton : classes/chrpath: improve chrpath failure handling
git at git.openembedded.org
git at git.openembedded.org
Fri Aug 17 14:30:08 UTC 2012
Module: openembedded-core.git
Branch: master
Commit: 99815eddd4e1eb5d939831704231537dd5a995ad
URL: http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=99815eddd4e1eb5d939831704231537dd5a995ad
Author: Paul Eggleton <paul.eggleton at linux.intel.com>
Date: Fri Aug 17 14:26:33 2012 +0100
classes/chrpath: improve chrpath failure handling
When chrpath fails, prefix the error message with the name of the recipe
that is being processed, and include the the output from chrpath, as
well as making the calling task actually fail.
Signed-off-by: Paul Eggleton <paul.eggleton at linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
meta/classes/chrpath.bbclass | 8 +++++---
1 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/meta/classes/chrpath.bbclass b/meta/classes/chrpath.bbclass
index ad61fe0..8922248 100644
--- a/meta/classes/chrpath.bbclass
+++ b/meta/classes/chrpath.bbclass
@@ -74,9 +74,11 @@ def process_dir (directory, d):
if len(new_rpaths):
args = ":".join(new_rpaths)
#bb.note("Setting rpath for %s to %s" %(fpath, args))
- ret = sub.call([cmd, '-r', args, fpath])
- if ret != 0:
- bb.error("chrpath command failed with exit code %d" % ret)
+ p = sub.Popen([cmd, '-r', args, fpath],stdout=sub.PIPE,stderr=sub.PIPE)
+ out, err = p.communicate()
+ if p.returncode != 0:
+ bb.error("%s: chrpath command failed with exit code %d:\n%s%s" % (d.getVar('PN', True), p.returncode, out, err))
+ raise bb.build.FuncFailed
if perms:
os.chmod(fpath, perms)
More information about the Openembedded-commits
mailing list