clang 22.0.0git
MinGW.cpp File Reference
#include "MinGW.h"
#include "clang/Config/config.h"
#include "clang/Driver/CommonArgs.h"
#include "clang/Driver/Compilation.h"
#include "clang/Driver/Driver.h"
#include "clang/Driver/InputInfo.h"
#include "clang/Driver/Options.h"
#include "clang/Driver/SanitizerArgs.h"
#include "llvm/Config/llvm-config.h"
#include "llvm/Option/ArgList.h"
#include "llvm/Support/FileSystem.h"
#include "llvm/Support/Path.h"
#include "llvm/Support/VirtualFileSystem.h"
#include <system_error>

Go to the source code of this file.

Functions

static bool isCrossCompiling (const llvm::Triple &T, bool RequireArchMatch)
static bool findGccVersion (StringRef LibDir, std::string &GccLibDir, std::string &Ver, toolchains::Generic_GCC::GCCVersion &Version)
static llvm::Triple getLiteralTriple (const Driver &D, const llvm::Triple &T)
static llvm::ErrorOr< std::string > findGcc (const llvm::Triple &LiteralTriple, const llvm::Triple &T)
static llvm::ErrorOr< std::string > findClangRelativeSysroot (const Driver &D, const llvm::Triple &LiteralTriple, const llvm::Triple &T, std::string &SubdirName)
static bool looksLikeMinGWSysroot (const std::string &Directory)
static bool testTriple (const Driver &D, const llvm::Triple &Triple, const ArgList &Args)
static llvm::Triple adjustTriple (const Driver &D, const llvm::Triple &Triple, const ArgList &Args)

Function Documentation

◆ adjustTriple()

llvm::Triple adjustTriple ( const Driver & D,
const llvm::Triple & Triple,
const ArgList & Args )
static

Definition at line 852 of file MinGW.cpp.

References testTriple().

Referenced by clang::driver::toolchains::MinGW::fixTripleArch().

◆ findClangRelativeSysroot()

llvm::ErrorOr< std::string > findClangRelativeSysroot ( const Driver & D,
const llvm::Triple & LiteralTriple,
const llvm::Triple & T,
std::string & SubdirName )
static

◆ findGcc()

llvm::ErrorOr< std::string > findGcc ( const llvm::Triple & LiteralTriple,
const llvm::Triple & T )
static

Definition at line 451 of file MinGW.cpp.

References clang::make_error_code(), and clang::T.

Referenced by clang::driver::toolchains::MinGW::MinGW(), and testTriple().

◆ findGccVersion()

bool findGccVersion ( StringRef LibDir,
std::string & GccLibDir,
std::string & Ver,
toolchains::Generic_GCC::GCCVersion & Version )
static

◆ getLiteralTriple()

llvm::Triple getLiteralTriple ( const Driver & D,
const llvm::Triple & T )
static

◆ isCrossCompiling()

bool isCrossCompiling ( const llvm::Triple & T,
bool RequireArchMatch )
static

Definition at line 386 of file MinGW.cpp.

References clang::T.

◆ looksLikeMinGWSysroot()

bool looksLikeMinGWSysroot ( const std::string & Directory)
static

Definition at line 491 of file MinGW.cpp.

Referenced by clang::driver::toolchains::MinGW::MinGW(), and testTriple().

◆ testTriple()

bool testTriple ( const Driver & D,
const llvm::Triple & Triple,
const ArgList & Args )
static