LLDB mainline
|
#include <HostInfoMacOSX.h>
Static Public Member Functions | |
static llvm::VersionTuple | GetOSVersion () |
static llvm::VersionTuple | GetMacCatalystVersion () |
static std::optional< std::string > | GetOSBuildString () |
static FileSpec | GetProgramFileSpec () |
static FileSpec | GetXcodeContentsDirectory () |
static FileSpec | GetXcodeDeveloperDirectory () |
static FileSpec | GetCurrentXcodeToolchainDirectory () |
static FileSpec | GetCurrentCommandLineToolsDirectory () |
static llvm::Expected< llvm::StringRef > | GetSDKRoot (SDKOptions options) |
Query xcrun to find an Xcode SDK directory. | |
static llvm::Expected< llvm::StringRef > | FindSDKTool (XcodeSDK sdk, llvm::StringRef tool) |
static SharedCacheImageInfo | GetSharedCacheImageInfo (llvm::StringRef image_name) |
Shared cache utilities. | |
Static Public Member Functions inherited from lldb_private::HostInfoPosix | |
static size_t | GetPageSize () |
static bool | GetHostname (std::string &s) |
static std::optional< std::string > | GetOSKernelDescription () |
static uint32_t | GetUserID () |
static uint32_t | GetGroupID () |
static uint32_t | GetEffectiveUserID () |
static uint32_t | GetEffectiveGroupID () |
static FileSpec | GetDefaultShell () |
static bool | GetEnvironmentVar (const std::string &var_name, std::string &var) |
static UserIDResolver & | GetUserIDResolver () |
static llvm::VersionTuple | GetOSVersion () |
static std::optional< std::string > | GetOSBuildString () |
static llvm::Expected< llvm::StringRef > | GetSDKRoot (SDKOptions options) |
The SDK is the directory where the system C headers, libraries, can be found. | |
Static Public Member Functions inherited from lldb_private::HostInfoBase | |
static void | Initialize (SharedLibraryDirectoryHelper *helper=nullptr) |
static void | Terminate () |
static llvm::Triple | GetTargetTriple () |
Gets the host target triple. | |
static const ArchSpec & | GetArchitecture (ArchitectureKind arch_kind=eArchKindDefault) |
static std::optional< ArchitectureKind > | ParseArchitectureKind (llvm::StringRef kind) |
static FileSpec | GetShlibDir () |
Returns the directory containing the lldb shared library. | |
static FileSpec | GetSupportExeDir () |
Returns the directory containing the support executables (debugserver, ...). | |
static FileSpec | GetHeaderDir () |
Returns the directory containing the lldb headers. | |
static FileSpec | GetSystemPluginDir () |
Returns the directory containing the system plugins. | |
static FileSpec | GetUserHomeDir () |
Returns the directory containing the users home (e.g. | |
static FileSpec | GetUserLLDBDir () |
Returns the directory containing the users lldb home (e.g. | |
static FileSpec | GetUserPluginDir () |
Returns the directory containing the user plugins. | |
static FileSpec | GetProcessTempDir () |
Returns the process temporary directory. | |
static FileSpec | GetGlobalTempDir () |
Returns the global temporary directory. | |
static ArchSpec | GetAugmentedArchSpec (llvm::StringRef triple) |
If the triple does not specify the vendor, os, and environment parts, we "augment" these using information from the host and return the resulting ArchSpec object. | |
static bool | ComputePathRelativeToLibrary (FileSpec &file_spec, llvm::StringRef dir) |
static FileSpec | GetXcodeContentsDirectory () |
static FileSpec | GetXcodeDeveloperDirectory () |
static FileSpec | GetCurrentXcodeToolchainDirectory () |
static FileSpec | GetCurrentCommandLineToolsDirectory () |
static llvm::Expected< llvm::StringRef > | GetSDKRoot (SDKOptions options) |
Return the directory containing something like a SDK (reused for Swift). | |
static llvm::Expected< llvm::StringRef > | FindSDKTool (XcodeSDK sdk, llvm::StringRef tool) |
Return the path to a specific tool in the specified Xcode SDK. | |
static SharedCacheImageInfo | GetSharedCacheImageInfo (llvm::StringRef image_name) |
Return information about module image_name if it is loaded in the current process's address space. | |
static llvm::StringRef | GetDistributionId () |
Returns the distribution id of the host. |
Friends | |
class | HostInfoBase |
Additional Inherited Members | |
Public Types inherited from lldb_private::HostInfoBase | |
enum | ArchitectureKind { eArchKindDefault , eArchKind32 , eArchKind64 } |
using | SharedLibraryDirectoryHelper = void(FileSpec &this_file) |
A helper function for determining the liblldb location. |
Definition at line 23 of file HostInfoMacOSX.h.
Definition at line 192 of file HostInfoMacOSX.mm.
References lldb_private::FileSpec::GetPath(), lldb_private::HostInfoBase::GetShlibDir(), and lldb_private::FileSpec::SetDirectory().
|
staticprotected |
Definition at line 234 of file HostInfoMacOSX.mm.
References lldb_private::ArchSpec::Clear(), CPU_SUBTYPE_X86_64_H, CPU_TYPE_ARM64, CPU_TYPE_ARM64_32, lldb_private::eArchTypeMachO, lldb_private::ArchSpec::GetTriple(), and lldb_private::ArchSpec::SetArchitecture().
Definition at line 133 of file HostInfoMacOSX.mm.
References lldb_private::FileSpec::CopyByAppendingPathComponent(), lldb_private::FileSpec::GetDirectory(), lldb_private::GetLog(), lldb_private::FileSpec::GetPath(), lldb_private::HostInfoBase::GetShlibDir(), lldb_private::Host, LLDB_LOG, ResolveAndVerifyCandidateSupportDir(), and lldb_private::FileSpec::SetDirectory().
Definition at line 209 of file HostInfoMacOSX.mm.
References lldb_private::FileSpec::GetPath(), lldb_private::HostInfoBase::GetShlibDir(), and lldb_private::FileSpec::SetDirectory().
Definition at line 227 of file HostInfoMacOSX.mm.
References lldb_private::FileSpec::AppendPathComponent(), lldb_private::FileSpec::GetPathAsConstString(), lldb_private::HostInfoBase::GetUserHomeDir(), and lldb_private::FileSpec::SetDirectory().
|
staticprotected |
Definition at line 396 of file HostInfoMacOSX.mm.
Referenced by GetCurrentCommandLineToolsDirectory(), and GetCurrentXcodeToolchainDirectory().
|
static |
Definition at line 617 of file HostInfoMacOSX.mm.
References find_cached_path(), lldb_private::XcodeSDK::GetCanonicalName(), lldb_private::XcodeSDK::GetString(), lldb_private::XcodeSDK::Parse(), and xcrun().
|
static |
Definition at line 417 of file HostInfoMacOSX.mm.
References FindComponentInPath().
|
static |
Definition at line 411 of file HostInfoMacOSX.mm.
References FindComponentInPath().
|
static |
Definition at line 96 of file HostInfoMacOSX.mm.
References ParseOSVersion().
|
static |
Definition at line 68 of file HostInfoMacOSX.mm.
References PATH_MAX.
|
static |
Definition at line 89 of file HostInfoMacOSX.mm.
References ParseOSVersion().
|
static |
Definition at line 104 of file HostInfoMacOSX.mm.
References PATH_MAX, and lldb_private::FileSpec::SetFile().
|
static |
Query xcrun to find an Xcode SDK directory.
Note, this is an expensive operation if the SDK we're querying does not exist in an Xcode installation path on the host.
Definition at line 603 of file HostInfoMacOSX.mm.
References find_cached_path(), lldb_private::XcodeSDK::GetString(), GetXcodeSDK(), and lldb_private::HostInfoBase::SDKOptions::XcodeSDKSelection.
|
static |
Shared cache utilities.
Definition at line 742 of file HostInfoMacOSX.mm.
|
static |
Definition at line 333 of file HostInfoMacOSX.mm.
References lldb_private::XcodeSDK::FindXcodeContentsDirectoryInPath(), lldb_private::XcodeSDK::GetAnyMacOS(), GetEnvDeveloperDir(), lldb_private::GetLog(), lldb_private::FileSpec::GetPath(), lldb_private::Host, lldb_private::FileSystem::Instance(), and LLDB_LOG_ERROR.
Referenced by GetXcodeDeveloperDirectory().
|
static |
Definition at line 383 of file HostInfoMacOSX.mm.
References GetXcodeContentsDirectory(), and lldb_private::FileSystem::Instance().
|
friend |
Definition at line 24 of file HostInfoMacOSX.h.
References HostInfoBase.
Referenced by HostInfoBase.