aboutsummaryrefslogtreecommitdiff
path: root/tools/ccc/ccclib/HostInfo.py
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-01-11 22:06:22 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-01-11 22:06:22 +0000
commitbee1f0d43924aa1ce6a56a803236f57d5641cb3c (patch)
tree1238c9d2829cbbc48c656b9a21211500294483e3 /tools/ccc/ccclib/HostInfo.py
parente99f9260d1eec79299a0d43723feec0596a1daff (diff)
ccc: Give the Host an opportunity to switch ToolChains when binding
archs (as a driver driver). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62053 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/ccc/ccclib/HostInfo.py')
-rw-r--r--tools/ccc/ccclib/HostInfo.py14
1 files changed, 13 insertions, 1 deletions
diff --git a/tools/ccc/ccclib/HostInfo.py b/tools/ccc/ccclib/HostInfo.py
index 5f681495e1..926152c00f 100644
--- a/tools/ccc/ccclib/HostInfo.py
+++ b/tools/ccc/ccclib/HostInfo.py
@@ -14,6 +14,12 @@ class HostInfo(object):
def useDriverDriver(self):
abstract
+ def getToolChain(self):
+ abstract
+
+ def getToolChainForArch(self, arch):
+ raise RuntimeError,"getToolChainForArch() unsupported on this host."
+
# Darwin
class DarwinHostInfo(HostInfo):
@@ -21,7 +27,13 @@ class DarwinHostInfo(HostInfo):
return True
def getToolChain(self):
- return ToolChain.Darwin_ToolChain(self.driver)
+ return self.getToolChainForArch(self.getArchName())
+
+ def getToolChainForArch(self, arch):
+ if arch in ('i386', 'x86_64'):
+ return ToolChain.Darwin_ToolChain(self.driver)
+
+ return ToolChain.Generic_GCC_ToolChain(self.driver)
class DarwinPPCHostInfo(DarwinHostInfo):
def getArchName(self):