[OE-core] [CONSOLIDATED PULL 35/62] package.bbclass: quote pathname given to objdump

Saul Wold sgw at linux.intel.com
Tue Jan 17 08:32:20 UTC 2012


From: Enrico Scholz <enrico.scholz at sigma-chemnitz.de>

Packaging will fail with executable files containing spaces in their
names. Patch quotes the parameter passed to 'objdump'.

Signed-off-by: Enrico Scholz <enrico.scholz at sigma-chemnitz.de>
---
 meta/classes/package.bbclass |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass
index f8f0a12..1088470 100644
--- a/meta/classes/package.bbclass
+++ b/meta/classes/package.bbclass
@@ -1205,7 +1205,7 @@ SHLIBSDIR = "${STAGING_DIR_HOST}/shlibs"
 SHLIBSWORKDIR = "${WORKDIR}/shlibs"
 
 python package_do_shlibs() {
-	import re
+	import re, pipes
 
 	exclude_shlibs = d.getVar('EXCLUDE_FROM_SHLIBS', 0)
 	if exclude_shlibs:
@@ -1234,7 +1234,7 @@ python package_do_shlibs() {
 	lf = bb.utils.lockfile(bb.data.expand("${PACKAGELOCK}", d))
 
 	def linux_so(root, path, file):
-		cmd = d.getVar('OBJDUMP', True) + " -p " + os.path.join(root, file) + " 2>/dev/null"
+		cmd = d.getVar('OBJDUMP', True) + " -p " + pipes.quote(os.path.join(root, file)) + " 2>/dev/null"
 		cmd = "PATH=\"%s\" %s" % (d.getVar('PATH', True), cmd)
 		fd = os.popen(cmd)
 		lines = fd.readlines()
-- 
1.7.6.5





More information about the Openembedded-core mailing list