summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@intel.com>2016-12-15 19:09:16 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-01-11 17:21:46 +0000
commit6c5a52ca8f47388a841eab5e3a7703b38bff3ba7 (patch)
tree235d9315c7cbe1f4d2fd669d32277037b62c0af5
parent51e2f226bd215b421d208df254ef4184b9d38380 (diff)
downloadopenembedded-core-contrib-6c5a52ca8f47388a841eab5e3a7703b38bff3ba7.tar.gz
openembedded-core-contrib-6c5a52ca8f47388a841eab5e3a7703b38bff3ba7.tar.bz2
openembedded-core-contrib-6c5a52ca8f47388a841eab5e3a7703b38bff3ba7.zip
utils: Always use datastore's PATH for host_gcc_version
BUILD_CC may reference something like ccache and expect this to come from ccache-native, we at least have some selftests which assume this. Modify the code to use PATH when runnig BUILD_CC to ensure the tests continue to work as expected. (From OE-Core rev: f3e753372baac43d0921186340cf260df056de20) (From OE-Core rev: e7ec3228d9a2f40165b60f273205c17438b2c9bb) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Hand applied and used d.getVar(True) Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/lib/oe/utils.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/meta/lib/oe/utils.py b/meta/lib/oe/utils.py
index 2b095f1f0a..36cf74f296 100644
--- a/meta/lib/oe/utils.py
+++ b/meta/lib/oe/utils.py
@@ -231,12 +231,17 @@ def format_pkg_list(pkg_dict, ret_format=None):
return '\n'.join(output)
def host_gcc_version(d):
+ import re, subprocess
+
compiler = d.getVar("BUILD_CC", True)
- retval, output = getstatusoutput("%s --version" % compiler)
- if retval:
- bb.fatal("Error running %s --version: %s" % (compiler, output))
- import re
+ try:
+ env = os.environ.copy()
+ env["PATH"] = d.getVar("PATH", True)
+ output = subprocess.check_output("%s --version" % compiler, shell=True, env=env).decode("utf-8")
+ except subprocess.CalledProcessError as e:
+ bb.fatal("Error running %s --version: %s" % (compiler, e.output.decode("utf-8")))
+
match = re.match(".* (\d\.\d)\.\d.*", output.split('\n')[0])
if not match:
bb.fatal("Can't get compiler version from %s --version output" % compiler)