blob: 9b6264aedef14b20ade0c45ec0ef9b8ad5ae7fee [file] [log] [blame]
Daniel Dunbar2ba38ba2009-03-16 05:25:36 +00001//===--- ToolChain.cpp - Collections of tools for one platform ----------*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10#include "clang/Driver/ToolChain.h"
11
12#include "clang/Driver/Action.h"
13#include "clang/Driver/Driver.h"
Daniel Dunbarfa0cda42009-03-17 21:21:26 +000014#include "clang/Driver/HostInfo.h"
Daniel Dunbar2ba38ba2009-03-16 05:25:36 +000015
16using namespace clang::driver;
17
Daniel Dunbarcb8ab232009-05-22 02:53:45 +000018ToolChain::ToolChain(const HostInfo &_Host, const llvm::Triple &_Triple)
19 : Host(_Host), Triple(_Triple) {
Daniel Dunbar2ba38ba2009-03-16 05:25:36 +000020}
21
22ToolChain::~ToolChain() {
23}
24
Daniel Dunbaree788e72009-12-21 18:54:17 +000025const Driver &ToolChain::getDriver() const {
26 return Host.getDriver();
27}
28
Daniel Dunbar5ed34f42009-09-09 22:33:00 +000029std::string ToolChain::GetFilePath(const Compilation &C,
30 const char *Name) const {
Daniel Dunbar21549232009-03-18 02:55:38 +000031 return Host.getDriver().GetFilePath(Name, *this);
Mike Stump1eb44332009-09-09 15:08:12 +000032
Daniel Dunbar2ba38ba2009-03-16 05:25:36 +000033}
34
Daniel Dunbar5ed34f42009-09-09 22:33:00 +000035std::string ToolChain::GetProgramPath(const Compilation &C,
36 const char *Name,
37 bool WantFile) const {
Mike Stump950bedd2009-03-27 00:40:20 +000038 return Host.getDriver().GetProgramPath(Name, *this, WantFile);
Daniel Dunbar2ba38ba2009-03-16 05:25:36 +000039}