blob: a7f6550205327a620224e04233e26f0fadfee196 [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 Dunbarfa0cda42009-03-17 21:21:26 +000018ToolChain::ToolChain(const HostInfo &_Host, const char *_Arch,
Daniel Dunbar2ba38ba2009-03-16 05:25:36 +000019 const char *_Platform, const char *_OS)
Daniel Dunbarfa0cda42009-03-17 21:21:26 +000020 : Host(_Host), Arch(_Arch), Platform(_Platform), OS(_OS) {
Daniel Dunbar2ba38ba2009-03-16 05:25:36 +000021}
22
23ToolChain::~ToolChain() {
24}
25
26llvm::sys::Path ToolChain::GetFilePath(const Compilation &C,
27 const char *Name) const {
Daniel Dunbar21549232009-03-18 02:55:38 +000028 return Host.getDriver().GetFilePath(Name, *this);
Daniel Dunbar2ba38ba2009-03-16 05:25:36 +000029
30}
31
32llvm::sys::Path ToolChain::GetProgramPath(const Compilation &C,
Mike Stump950bedd2009-03-27 00:40:20 +000033 const char *Name,
34 bool WantFile) const {
35 return Host.getDriver().GetProgramPath(Name, *this, WantFile);
Daniel Dunbar2ba38ba2009-03-16 05:25:36 +000036}