|
clang
3.8.0
|
This is a class to find a viable GCC installation for Clang to use. More...
#include <ToolChains.h>
Public Member Functions | |
| GCCInstallationDetector (const Driver &D) | |
| void | init (const llvm::Triple &TargetTriple, const llvm::opt::ArgList &Args, ArrayRef< std::string > ExtraTripleAliases=None) |
| Initialize a GCCInstallationDetector from the driver. More... | |
| bool | isValid () const |
| Check whether we detected a valid GCC install. More... | |
| const llvm::Triple & | getTriple () const |
| Get the GCC triple for the detected install. More... | |
| StringRef | getInstallPath () const |
| Get the detected GCC installation path. More... | |
| StringRef | getParentLibPath () const |
| Get the detected GCC parent lib path. More... | |
| const Multilib & | getMultilib () const |
| Get the detected Multilib. More... | |
| const MultilibSet & | getMultilibs () const |
| Get the whole MultilibSet. More... | |
| bool | getBiarchSibling (Multilib &M) const |
| Get the biarch sibling multilib (if it exists). More... | |
| const GCCVersion & | getVersion () const |
| Get the detected GCC version string. More... | |
| void | print (raw_ostream &OS) const |
| Print information about the detected GCC installation. More... | |
This is a class to find a viable GCC installation for Clang to use.
This class tries to find a GCC installation on the system, and report information about it. It starts from the host information provided to the Driver, and has logic for fuzzing that where appropriate.
Definition at line 78 of file ToolChains.h.
|
inlineexplicit |
Definition at line 103 of file ToolChains.h.
Get the biarch sibling multilib (if it exists).
Definition at line 1401 of file ToolChains.cpp.
Referenced by clang::driver::toolchains::Linux::Linux().
|
inline |
Get the detected GCC installation path.
Definition at line 114 of file ToolChains.h.
Referenced by clang::driver::toolchains::Linux::AddClangCXXStdlibIncludeArgs(), clang::driver::toolchains::Linux::AddClangSystemIncludeArgs(), clang::driver::toolchains::Linux::computeSysRoot(), clang::driver::toolchains::Linux::Linux(), clang::driver::toolchains::MyriadToolChain::MyriadToolChain(), and clang::driver::toolchains::Solaris::Solaris().
|
inline |
Get the detected Multilib.
Definition at line 120 of file ToolChains.h.
Referenced by clang::driver::toolchains::Linux::AddClangCXXStdlibIncludeArgs(), clang::driver::toolchains::MyriadToolChain::AddClangCXXStdlibIncludeArgs(), clang::driver::toolchains::Linux::AddClangSystemIncludeArgs(), clang::driver::toolchains::Linux::computeSysRoot(), and clang::driver::toolchains::Linux::Linux().
|
inline |
Get the whole MultilibSet.
Definition at line 123 of file ToolChains.h.
Referenced by clang::driver::toolchains::Linux::Linux().
|
inline |
Get the detected GCC parent lib path.
Definition at line 117 of file ToolChains.h.
Referenced by clang::driver::toolchains::Linux::AddClangCXXStdlibIncludeArgs(), clang::driver::toolchains::MyriadToolChain::AddClangCXXStdlibIncludeArgs(), clang::driver::toolchains::Linux::Linux(), and clang::driver::toolchains::MyriadToolChain::MyriadToolChain().
|
inline |
Get the GCC triple for the detected install.
Definition at line 111 of file ToolChains.h.
Referenced by clang::driver::toolchains::Solaris::AddClangCXXStdlibIncludeArgs(), clang::driver::toolchains::Linux::AddClangCXXStdlibIncludeArgs(), clang::driver::toolchains::MyriadToolChain::AddClangCXXStdlibIncludeArgs(), clang::driver::toolchains::Linux::AddClangSystemIncludeArgs(), clang::driver::toolchains::Linux::computeSysRoot(), and clang::driver::toolchains::Linux::Linux().
|
inline |
Get the detected GCC version string.
Definition at line 130 of file ToolChains.h.
Referenced by clang::driver::toolchains::Solaris::AddClangCXXStdlibIncludeArgs(), clang::driver::toolchains::Linux::AddClangCXXStdlibIncludeArgs(), clang::driver::toolchains::MyriadToolChain::AddClangCXXStdlibIncludeArgs(), and clang::driver::toolchains::Generic_ELF::addClangTargetOptions().
| void Generic_GCC::GCCInstallationDetector::init | ( | const llvm::Triple & | TargetTriple, |
| const llvm::opt::ArgList & | Args, | ||
| ArrayRef< std::string > | ExtraTripleAliases = None |
||
| ) |
Initialize a GCCInstallationDetector from the driver.
This performs all of the autodetection and sets up the various paths. Once constructed, a GCCInstallationDetector is essentially immutable.
FIXME: We shouldn't need an explicit TargetTriple parameter here, and should instead pull the target out of the driver. This is currently necessary because the driver doesn't store the final version of the target triple.
Definition at line 1321 of file ToolChains.cpp.
References getGCCToolchainDir(), and clang::driver::toolchains::Generic_GCC::GCCVersion::Parse().
Referenced by clang::driver::toolchains::Linux::Linux(), clang::driver::toolchains::MyriadToolChain::MyriadToolChain(), and clang::driver::toolchains::Solaris::Solaris().
|
inline |
Check whether we detected a valid GCC install.
Definition at line 108 of file ToolChains.h.
Referenced by clang::driver::toolchains::Solaris::AddClangCXXStdlibIncludeArgs(), clang::driver::toolchains::Linux::AddClangCXXStdlibIncludeArgs(), clang::driver::toolchains::Linux::AddClangSystemIncludeArgs(), clang::driver::toolchains::Linux::computeSysRoot(), clang::driver::toolchains::Linux::Linux(), clang::driver::toolchains::MyriadToolChain::MyriadToolChain(), and clang::driver::toolchains::Solaris::Solaris().
| void Generic_GCC::GCCInstallationDetector::print | ( | raw_ostream & | OS | ) | const |
Print information about the detected GCC installation.
Definition at line 1387 of file ToolChains.cpp.
References clang::driver::Multilib::isDefault(), and clang::driver::ToolChain::Multilibs.
Referenced by clang::driver::toolchains::Generic_GCC::printVerboseInfo().
1.8.6