clang  10.0.0svn
Haiku.h
Go to the documentation of this file.
1 //===--- Haiku.h - Haiku ToolChain Implementations --------------*- C++ -*-===//
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 LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_HAIKU_H
10 #define LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_HAIKU_H
11 
12 #include "Gnu.h"
13 #include "clang/Driver/Driver.h"
14 #include "clang/Driver/ToolChain.h"
15 
16 namespace clang {
17 namespace driver {
18 namespace toolchains {
19 
20 class LLVM_LIBRARY_VISIBILITY Haiku : public Generic_ELF {
21 public:
22  Haiku(const Driver &D, const llvm::Triple &Triple,
23  const llvm::opt::ArgList &Args);
24 
25  bool isPIEDefault() const override {
26  return getTriple().getArch() == llvm::Triple::x86_64;
27  }
28 
29  void addLibCxxIncludePaths(
30  const llvm::opt::ArgList &DriverArgs,
31  llvm::opt::ArgStringList &CC1Args) const override;
32  void addLibStdCxxIncludePaths(
33  const llvm::opt::ArgList &DriverArgs,
34  llvm::opt::ArgStringList &CC1Args) const override;
35 };
36 
37 } // end namespace toolchains
38 } // end namespace driver
39 } // end namespace clang
40 
41 #endif // LLVM_CLANG_LIB_DRIVER_TOOLCHAINS_HAIKU_H
Driver - Encapsulate logic for constructing compilation processes from a set of gcc-driver-like comma...
Definition: Driver.h:59
Dataflow Directional Tag Classes.
bool isPIEDefault() const override
Test whether this toolchain defaults to PIE.
Definition: Haiku.h:25