clang 20.0.0git
Functions
MinGW.cpp File Reference
#include "MinGW.h"
#include "CommonArgs.h"
#include "clang/Config/config.h"
#include "clang/Driver/Compilation.h"
#include "clang/Driver/Driver.h"
#include "clang/Driver/DriverDiagnostic.h"
#include "clang/Driver/InputInfo.h"
#include "clang/Driver/Options.h"
#include "clang/Driver/SanitizerArgs.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()

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

Definition at line 838 of file MinGW.cpp.

References D, and testTriple().

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

◆ findClangRelativeSysroot()

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

Definition at line 457 of file MinGW.cpp.

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

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

◆ findGcc()

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

Definition at line 437 of file MinGW.cpp.

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

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

◆ findGccVersion()

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

◆ getLiteralTriple()

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

Definition at line 403 of file MinGW.cpp.

References D, and clang::T.

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

◆ isCrossCompiling()

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

Definition at line 372 of file MinGW.cpp.

References clang::T.

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

◆ looksLikeMinGWSysroot()

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

Definition at line 477 of file MinGW.cpp.

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

◆ testTriple()

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

Definition at line 815 of file MinGW.cpp.

References D, findClangRelativeSysroot(), findGcc(), getLiteralTriple(), and looksLikeMinGWSysroot().

Referenced by adjustTriple().