]> code.ossystems Code Review - openembedded-core.git/commitdiff
classes/chrpath: improve chrpath failure handling
authorPaul Eggleton <paul.eggleton@linux.intel.com>
Fri, 17 Aug 2012 13:26:33 +0000 (14:26 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 17 Aug 2012 14:25:01 +0000 (15:25 +0100)
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@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/chrpath.bbclass

index ad61fe09eabc1209b6c2b6b46d1194cc0762ee23..89222484b8feccf30c07623875af6cf072b704e8 100644 (file)
@@ -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)