Driver.h revision 360784
1//===- lld/Common/Driver.h - Linker Driver Emulator -----------------------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef LLD_COMMON_DRIVER_H
10#define LLD_COMMON_DRIVER_H
11
12#include "llvm/ADT/ArrayRef.h"
13#include "llvm/Support/raw_ostream.h"
14
15namespace lld {
16namespace coff {
17bool link(llvm::ArrayRef<const char *> args, bool canExitEarly,
18          llvm::raw_ostream &stdoutOS, llvm::raw_ostream &stderrOS);
19}
20
21namespace mingw {
22bool link(llvm::ArrayRef<const char *> args, bool canExitEarly,
23          llvm::raw_ostream &stdoutOS, llvm::raw_ostream &stderrOS);
24}
25
26namespace elf {
27bool link(llvm::ArrayRef<const char *> args, bool canExitEarly,
28          llvm::raw_ostream &stdoutOS, llvm::raw_ostream &stderrOS);
29}
30
31namespace mach_o {
32bool link(llvm::ArrayRef<const char *> args, bool canExitEarly,
33          llvm::raw_ostream &stdoutOS, llvm::raw_ostream &stderrOS);
34}
35
36namespace wasm {
37bool link(llvm::ArrayRef<const char *> args, bool canExitEarly,
38          llvm::raw_ostream &stdoutOS, llvm::raw_ostream &stderrOS);
39}
40}
41
42#endif
43