summaryrefslogtreecommitdiffstats
path: root/clang/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
commitadf3e5bdbc1b6dcf5dc1e9dd0d7b440d13008aec (patch)
treee0f26e063a440b3a4b4b20fcece4aabc469668b0 /clang/tools/ccc/ccclib/HostInfo.py
parent10d5adf031bc160dc55eff03dca89319b91b6b8c (diff)
downloadbcm5719-llvm-adf3e5bdbc1b6dcf5dc1e9dd0d7b440d13008aec.tar.gz
bcm5719-llvm-adf3e5bdbc1b6dcf5dc1e9dd0d7b440d13008aec.zip
ccc: Give the Host an opportunity to switch ToolChains when binding
archs (as a driver driver). llvm-svn: 62053
Diffstat (limited to 'clang/tools/ccc/ccclib/HostInfo.py')
-rw-r--r--clang/tools/ccc/ccclib/HostInfo.py14
1 files changed, 13 insertions, 1 deletions
diff --git a/clang/tools/ccc/ccclib/HostInfo.py b/clang/tools/ccc/ccclib/HostInfo.py
index 5f681495e13..926152c00f9 100644
--- a/clang/tools/ccc/ccclib/HostInfo.py
+++ b/clang/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):
OpenPOWER on IntegriCloud