From: Simon Glass Date: Tue, 2 Dec 2014 00:33:58 +0000 (-0700) Subject: buildman: Try to avoid hard-coded string parsing X-Git-Tag: v2015.04-rc1~85^2~9 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=b53241230ddc4f007179b6b0659e0eb240f25400;p=oweals%2Fu-boot.git buildman: Try to avoid hard-coded string parsing The assumption that the compiler name will always end in gcc is incorrect for clang and apparently on BSD. Signed-off-by: Simon Glass --- diff --git a/tools/buildman/toolchain.py b/tools/buildman/toolchain.py index 27dc31889b..e2a851ebd6 100644 --- a/tools/buildman/toolchain.py +++ b/tools/buildman/toolchain.py @@ -30,7 +30,14 @@ class Toolchain: """ self.gcc = fname self.path = os.path.dirname(fname) - self.cross = os.path.basename(fname)[:-3] + + # Find the CROSS_COMPILE prefix to use for U-Boot. For example, + # 'arm-linux-gnueabihf-gcc' turns into 'arm-linux-gnueabihf-'. + basename = os.path.basename(fname) + pos = basename.rfind('-') + self.cross = basename[:pos + 1] if pos != -1 else '' + + # The architecture is the first part of the name pos = self.cross.find('-') self.arch = self.cross[:pos] if pos != -1 else 'sandbox'