blob: 818494662179070f4e47b8d820568ceb9dc26bf8 [file] [log] [blame]
Nick Lewycky6da90772010-12-31 17:31:54 +00001//===--- Tool.cpp - Compilation Tools -------------------------------------===//
Daniel Dunbar9e2136d2009-03-16 05:25:36 +00002//
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/Tool.h"
Samuel Antao3b7e38b2016-10-27 18:14:55 +000011#include "InputInfo.h"
Daniel Dunbar9e2136d2009-03-16 05:25:36 +000012
13using namespace clang::driver;
14
Reid Kleckner0290c9c2014-09-15 17:45:39 +000015Tool::Tool(const char *_Name, const char *_ShortName, const ToolChain &TC,
16 ResponseFileSupport _ResponseSupport,
17 llvm::sys::WindowsEncodingMethod _ResponseEncoding,
18 const char *_ResponseFlag)
19 : Name(_Name), ShortName(_ShortName), TheToolChain(TC),
20 ResponseSupport(_ResponseSupport), ResponseEncoding(_ResponseEncoding),
21 ResponseFlag(_ResponseFlag) {}
Daniel Dunbar04cb0292009-03-17 22:07:31 +000022
Angel Garcia Gomez637d1e62015-10-20 13:23:58 +000023Tool::~Tool() {
24}
Samuel Antao3b7e38b2016-10-27 18:14:55 +000025
Samuel Antao7108bf32016-11-03 15:41:50 +000026void Tool::ConstructJobMultipleOutputs(Compilation &C, const JobAction &JA,
27 const InputInfoList &Outputs,
28 const InputInfoList &Inputs,
29 const llvm::opt::ArgList &TCArgs,
30 const char *LinkingOutput) const {
Samuel Antao3b7e38b2016-10-27 18:14:55 +000031 assert(Outputs.size() == 1 && "Expected only one output by default!");
32 ConstructJob(C, JA, Outputs.front(), Inputs, TCArgs, LinkingOutput);
Samuel Antao7108bf32016-11-03 15:41:50 +000033}