aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2013-05-09 14:55:04 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-05-09 16:05:02 +0100
commit2253e9f12734c6e6aa489942b5e4628eca1fa29d (patch)
treecdd9bc62026e1eff49569f025a95fcecde88c78b
parentb9a1b9ad55c0f9fec082ffa37e576d8fd664becd (diff)
downloadopenembedded-core-contrib-2253e9f12734c6e6aa489942b5e4628eca1fa29d.tar.gz
openembedded-core-contrib-2253e9f12734c6e6aa489942b5e4628eca1fa29d.tar.bz2
openembedded-core-contrib-2253e9f12734c6e6aa489942b5e4628eca1fa29d.zip
classes/lib: Fix getcmdstatus breakage
I mistakenly thought subprocess had getcmdstatus in python 2. It doesn't so lets add a wrapper and have this work in both worlds. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/kernel-yocto.bbclass4
-rw-r--r--meta/classes/package.bbclass4
-rw-r--r--meta/classes/sanity.bbclass5
-rw-r--r--meta/lib/oe/patch.py4
-rw-r--r--meta/lib/oe/utils.py10
-rw-r--r--meta/recipes-core/psplash/psplash_git.bb4
6 files changed, 20 insertions, 11 deletions
diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass
index c81e70e678c..d513ad2b63c 100644
--- a/meta/classes/kernel-yocto.bbclass
+++ b/meta/classes/kernel-yocto.bbclass
@@ -254,7 +254,7 @@ do_kernel_configme() {
}
python do_kernel_configcheck() {
- import re, string, sys, subprocess
+ import re, string, sys
bb.plain("NOTE: validating kernel config, see log.do_kernel_configcheck for details")
@@ -265,7 +265,7 @@ python do_kernel_configcheck() {
pathprefix = "export PATH=%s:%s; " % (d.getVar('PATH', True), "${S}/scripts/util/")
cmd = d.expand("cd ${S}; kconf_check -config- %s/meta-series ${S} ${B}" % kmeta)
- ret, result = subprocess.getstatusoutput("%s%s" % (pathprefix, cmd))
+ ret, result = oe.utils.getstatusoutput("%s%s" % (pathprefix, cmd))
config_check_visibility = d.getVar( "KCONF_AUDIT_LEVEL", True ) or 1
if config_check_visibility == 1:
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass
index 1dba185b3e3..7d0684c95c5 100644
--- a/meta/classes/package.bbclass
+++ b/meta/classes/package.bbclass
@@ -696,7 +696,7 @@ python fixup_perms () {
}
python split_and_strip_files () {
- import stat, errno, subprocess
+ import stat, errno
dvar = d.getVar('PKGD', True)
pn = d.getVar('PN', True)
@@ -732,7 +732,7 @@ python split_and_strip_files () {
# 16 - kernel module
def isELF(path):
type = 0
- ret, result = subprocess.getstatusoutput("file '%s'" % path)
+ ret, result = oe.utils.getstatusoutput("file '%s'" % path)
if ret:
bb.error("split_and_strip_files: 'file %s' failed" % path)
diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass
index 3836c0404d5..1fb4a6c6293 100644
--- a/meta/classes/sanity.bbclass
+++ b/meta/classes/sanity.bbclass
@@ -342,13 +342,12 @@ def check_gcc_march(sanity_data):
f = open("gcc_test.c", "w")
f.write("int main (){ __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4; return 0;}\n")
f.close()
- import subprocess
# Check if GCC could work without march
- status,result = subprocess.getstatusoutput("${BUILD_PREFIX}gcc gcc_test.c -o gcc_test")
+ status,result = oe.utils.getstatusoutput("${BUILD_PREFIX}gcc gcc_test.c -o gcc_test")
if status != 0:
# Check if GCC could work with march
- status,result = subprocess.getstatusoutput("${BUILD_PREFIX}gcc -march=native gcc_test.c -o gcc_test")
+ status,result = oe.utils.getstatusoutput("${BUILD_PREFIX}gcc -march=native gcc_test.c -o gcc_test")
if status == 0:
result = True
else:
diff --git a/meta/lib/oe/patch.py b/meta/lib/oe/patch.py
index 8de73a7037a..244f6c5cf27 100644
--- a/meta/lib/oe/patch.py
+++ b/meta/lib/oe/patch.py
@@ -17,7 +17,7 @@ class CmdError(bb.BBHandledException):
def runcmd(args, dir = None):
- import subprocess, pipes
+ import pipes
if dir:
olddir = os.path.abspath(os.curdir)
@@ -30,7 +30,7 @@ def runcmd(args, dir = None):
args = [ pipes.quote(str(arg)) for arg in args ]
cmd = " ".join(args)
# print("cmd: %s" % cmd)
- (exitstatus, output) = subprocess.getstatusoutput(cmd)
+ (exitstatus, output) = oe.utils.getstatusoutput(cmd)
if exitstatus != 0:
raise CmdError(exitstatus >> 8, output)
return output
diff --git a/meta/lib/oe/utils.py b/meta/lib/oe/utils.py
index ed9409613a3..ec8260d9bdc 100644
--- a/meta/lib/oe/utils.py
+++ b/meta/lib/oe/utils.py
@@ -1,3 +1,10 @@
+try:
+ # Python 2
+ import commands as cmdstatus
+except ImportError:
+ # Python 3
+ import subprocess as cmdstatus
+
def read_file(filename):
try:
f = file( filename, "r" )
@@ -123,3 +130,6 @@ def packages_filter_out_system(d):
if pkg not in blacklist and localepkg not in pkg:
pkgs.append(pkg)
return pkgs
+
+def getstatusoutput(cmd):
+ return cmdstatus.getstatusoutput(cmd)
diff --git a/meta/recipes-core/psplash/psplash_git.bb b/meta/recipes-core/psplash/psplash_git.bb
index 392fada689c..fdb5e778969 100644
--- a/meta/recipes-core/psplash/psplash_git.bb
+++ b/meta/recipes-core/psplash/psplash_git.bb
@@ -71,7 +71,7 @@ ALTERNATIVE_PRIORITY = "100"
ALTERNATIVE_LINK_NAME[psplash] = "${bindir}/psplash"
python do_compile () {
- import shutil, subprocess
+ import shutil
# Build a separate executable for each splash image
convertscript = "%s/make-image-header.sh" % d.getVar('S', True)
@@ -80,7 +80,7 @@ python do_compile () {
outputfiles = d.getVar('SPLASH_INSTALL', True).split()
for localfile, outputfile in zip(localfiles, outputfiles):
if localfile.endswith(".png"):
- outp = subprocess.getstatusoutput('%s %s POKY' % (convertscript, localfile))
+ outp = oe.utils.getstatusoutput('%s %s POKY' % (convertscript, localfile))
print(outp[1])
fbase = os.path.splitext(os.path.basename(localfile))[0]
shutil.copyfile("%s-img.h" % fbase, destfile)