[Angstrom-devel] Dmitry Eremin-Solenikov : external-toolchain-angstrom: fix parsing if TOOLCHAIN_PREFIX isn't defined
Angstrom Git Repos
ang-git at xora.vm.bytemark.co.uk
Fri Oct 7 12:23:26 CEST 2011
Module: meta-angstrom
Branch: master
Commit: 7c710830c259dc36964d5f724ebad4d322cf08fc
Author: Dmitry Eremin-Solenikov <dbaryshkov at gmail.com>
Date: Mon Oct 3 21:10:30 2011 +0400
external-toolchain-angstrom: fix parsing if TOOLCHAIN_PREFIX isn't defined
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov at gmail.com>
Signed-off-by: Koen Kooi <koen at dominion.thruhere.net>
---
.../meta/external-toolchain-angstrom.bb | 38 ++++++++++++++------
1 files changed, 27 insertions(+), 11 deletions(-)
diff --git a/recipes-devtools/meta/external-toolchain-angstrom.bb b/recipes-devtools/meta/external-toolchain-angstrom.bb
index e730455..cb7f2c3 100644
--- a/recipes-devtools/meta/external-toolchain-angstrom.bb
+++ b/recipes-devtools/meta/external-toolchain-angstrom.bb
@@ -138,33 +138,46 @@ DESCRIPTION_gdbserver = "gdb - GNU debugger"
def ang_get_main_version(d):
import os,bb
- if os.path.exists(bb.data.getVar('TOOLCHAIN_PATH', d, 1)+'/version'):
- f = open(bb.data.getVar('TOOLCHAIN_PATH', d, 1)+'/version', 'r')
+ tp = bb.data.getVar('TOOLCHAIN_PATH', d, 1)
+ if tp == None:
+ return ""
+ if os.path.exists(tp+'/version'):
+ f = open(tp +'/version', 'r')
l = f.readlines();
f.close();
for s in l:
if s.find('Version') > 0:
ver = s.split()[2]
return ver
- return None
+ return ""
+ return ""
def ang_get_gcc_version(d):
import subprocess,os,bb
- if os.path.exists(bb.data.getVar('TOOLCHAIN_PATH', d, 1)+'/bin/'+bb.data.getVar('TARGET_PREFIX', d, 1)+'gcc'):
- return subprocess.Popen([bb.data.getVar('TOOLCHAIN_PATH', d, 1)+'/bin/'+bb.data.getVar('TARGET_PREFIX', d, 1)+'gcc', '-v'], stderr=subprocess.PIPE).communicate()[1].splitlines()[-1].split()[2]
+ tp = bb.data.getVar('TOOLCHAIN_PATH', d, 1)
+ if tp == None:
+ return ""
+ if os.path.exists(tp+'/bin/'+bb.data.getVar('TARGET_PREFIX', d, 1)+'gcc'):
+ return subprocess.Popen([tp+'/bin/'+bb.data.getVar('TARGET_PREFIX', d, 1)+'gcc', '-v'], stderr=subprocess.PIPE).communicate()[1].splitlines()[-1].split()[2]
def ang_get_libc_version(d):
import os,bb
- if os.path.exists(bb.data.getVar('TOOLCHAIN_SYSPATH', d, 1)+'/lib/'):
- for file in os.listdir(bb.data.getVar('TOOLCHAIN_SYSPATH', d, 1)+'/lib/'):
+ tsp = bb.data.getVar('TOOLCHAIN_SYSPATH', d, 1)
+ if tsp == None:
+ return ""
+ if os.path.exists(tsp+'/lib/'):
+ for file in os.listdir(tsp+'/lib/'):
if file.find('libc-') == 0:
return file[5:-3]
return None
def ang_get_kernel_version(d):
import os,bb
- if os.path.exists(bb.data.getVar('TOOLCHAIN_SYSPATH', d, 1)+'/usr/include/linux/'):
- f = open(bb.data.getVar('TOOLCHAIN_SYSPATH', d, 1)+'/usr/include/linux/version.h', 'r')
+ tsp = bb.data.getVar('TOOLCHAIN_SYSPATH', d, 1)
+ if tsp == None:
+ return ""
+ if os.path.exists(tsp+'/usr/include/linux/'):
+ f = open(tsp+'/usr/include/linux/version.h', 'r')
l = f.readlines();
f.close();
for s in l:
@@ -179,8 +192,11 @@ def ang_get_kernel_version(d):
def ang_get_gdb_version(d):
import subprocess,os,bb
- if os.path.exists(bb.data.getVar('TOOLCHAIN_PATH', d, 1)+'/bin/'+bb.data.getVar('TARGET_PREFIX', d, 1)+'gdb'):
- return subprocess.Popen([bb.data.getVar('TOOLCHAIN_PATH', d, 1)+'/bin/'+bb.data.getVar('TARGET_PREFIX', d, 1)+'gdb', '-v'],stdout=subprocess.PIPE).communicate()[0].splitlines()[0].split()[-1]
+ tp = bb.data.getVar('TOOLCHAIN_PATH', d, 1)
+ if tp == None:
+ return ""
+ if os.path.exists(tp+'/bin/'+bb.data.getVar('TARGET_PREFIX', d, 1)+'gdb'):
+ return subprocess.Popen([tp+'/bin/'+bb.data.getVar('TARGET_PREFIX', d, 1)+'gdb', '-v'],stdout=subprocess.PIPE).communicate()[0].splitlines()[0].split()[-1]
ANG_VER_MAIN := "${@ang_get_main_version(d)}"
ANG_VER_GCC := "${@ang_get_gcc_version(d)}"
More information about the Angstrom-distro-devel
mailing list