kernel.bbclass: replace os.system with subprocess.call
authorRobert Yang <liezhi.yang@windriver.com>
Tue, 17 Jul 2012 12:38:00 +0000 (12:38 +0000)
committerPatrick Ohly <patrick.ohly@intel.com>
Fri, 9 Jan 2015 16:21:44 +0000 (08:21 -0800)
Replace os.system with subprocess.call since the older function would
fail (more or less) silently if the executed program cannot be found

More info:
http://docs.python.org/library/subprocess.html#subprocess-replacements

[YOCTO #2454]

(From meta-openembedded rev: 778f8b62c597f0550c33db4ab00f44979e02daa1)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
meta-openembedded/meta-oe/classes/kernel.bbclass

index 248cd28..810d6de 100644 (file)
@@ -316,12 +316,12 @@ module_conf_rfcomm = "alias bt-proto-3 rfcomm"
 
 python populate_packages_prepend () {
        def extract_modinfo(file):
-               import tempfile, re
+               import tempfile, re, subprocess
                tempfile.tempdir = d.getVar("WORKDIR", True)
                tf = tempfile.mkstemp()
                tmpfile = tf[1]
                cmd = "PATH=\"%s\" %sobjcopy -j .modinfo -O binary %s %s" % (d.getVar("PATH", True), d.getVar("HOST_PREFIX", True) or "", file, tmpfile)
-               os.system(cmd)
+               subprocess.call(cmd, shell=True)
                f = open(tmpfile)
                l = f.read().split("\000")
                f.close()