1e5dd7070Spatrick //===--- Tool.cpp - Compilation Tools -------------------------------------===//
2e5dd7070Spatrick //
3e5dd7070Spatrick // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4e5dd7070Spatrick // See https://llvm.org/LICENSE.txt for license information.
5e5dd7070Spatrick // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6e5dd7070Spatrick //
7e5dd7070Spatrick //===----------------------------------------------------------------------===//
8e5dd7070Spatrick
9e5dd7070Spatrick #include "clang/Driver/Tool.h"
10*a9ac8606Spatrick #include "clang/Driver/InputInfo.h"
11e5dd7070Spatrick
12e5dd7070Spatrick using namespace clang::driver;
13e5dd7070Spatrick
Tool(const char * _Name,const char * _ShortName,const ToolChain & TC)14ec727ea7Spatrick Tool::Tool(const char *_Name, const char *_ShortName, const ToolChain &TC)
15ec727ea7Spatrick : Name(_Name), ShortName(_ShortName), TheToolChain(TC) {}
16e5dd7070Spatrick
~Tool()17e5dd7070Spatrick Tool::~Tool() {
18e5dd7070Spatrick }
19e5dd7070Spatrick
ConstructJobMultipleOutputs(Compilation & C,const JobAction & JA,const InputInfoList & Outputs,const InputInfoList & Inputs,const llvm::opt::ArgList & TCArgs,const char * LinkingOutput) const20e5dd7070Spatrick void Tool::ConstructJobMultipleOutputs(Compilation &C, const JobAction &JA,
21e5dd7070Spatrick const InputInfoList &Outputs,
22e5dd7070Spatrick const InputInfoList &Inputs,
23e5dd7070Spatrick const llvm::opt::ArgList &TCArgs,
24e5dd7070Spatrick const char *LinkingOutput) const {
25e5dd7070Spatrick assert(Outputs.size() == 1 && "Expected only one output by default!");
26e5dd7070Spatrick ConstructJob(C, JA, Outputs.front(), Inputs, TCArgs, LinkingOutput);
27e5dd7070Spatrick }
28