diff options
| author | Daniel Dunbar <daniel@zuster.org> | 2009-01-12 04:21:12 +0000 |
|---|---|---|
| committer | Daniel Dunbar <daniel@zuster.org> | 2009-01-12 04:21:12 +0000 |
| commit | e84d6ed8f8683c1363c19bc7fed7b9df1c8ba197 (patch) | |
| tree | cab3a32ec7e85576527f3cc3c0d7f037cafc0f6c /clang/tools/ccc/ccclib/HostInfo.py | |
| parent | 0258874607612b711cd4b73b9831dd5ddcf7cecb (diff) | |
| download | bcm5719-llvm-e84d6ed8f8683c1363c19bc7fed7b9df1c8ba197.tar.gz bcm5719-llvm-e84d6ed8f8683c1363c19bc7fed7b9df1c8ba197.zip | |
ccc: Generalize Darwin/Link tool based on Darwin version.
llvm-svn: 62078
Diffstat (limited to 'clang/tools/ccc/ccclib/HostInfo.py')
| -rw-r--r-- | clang/tools/ccc/ccclib/HostInfo.py | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/clang/tools/ccc/ccclib/HostInfo.py b/clang/tools/ccc/ccclib/HostInfo.py index a12d57295c2..12fdfef404a 100644 --- a/clang/tools/ccc/ccclib/HostInfo.py +++ b/clang/tools/ccc/ccclib/HostInfo.py @@ -23,6 +23,17 @@ class HostInfo(object): # Darwin class DarwinHostInfo(HostInfo): + def __init__(self, driver): + super(DarwinHostInfo, self).__init__(driver) + + # FIXME: Find right regex for this. + import re + m = re.match(r'([0-9]+)\.([0-9]+)\.([0-9]+)', driver.getHostReleaseName()) + if not m: + raise RuntimeError,"Unable to determine Darwin version." + self.darwinVersion = tuple(map(int, m.groups())) + self.gccVersion = (4,2,1) + def useDriverDriver(self): return True @@ -31,7 +42,9 @@ class DarwinHostInfo(HostInfo): def getToolChainForArch(self, arch): if arch in ('i386', 'x86_64'): - return ToolChain.Darwin10_X86_ToolChain(self.driver) + return ToolChain.Darwin_X86_ToolChain(self.driver, + self.darwinVersion, + self.gccVersion) return ToolChain.Generic_GCC_ToolChain(self.driver) |

