LLDB mainline
Static Public Member Functions | Static Protected Member Functions | Friends | List of all members
lldb_private::HostInfoLinux Class Reference

#include <HostInfoLinux.h>

Inheritance diagram for lldb_private::HostInfoLinux:
Inheritance graph
[legend]

Static Public Member Functions

static void Initialize (SharedLibraryDirectoryHelper *helper=nullptr)
 
static void Terminate ()
 
static llvm::VersionTuple GetOSVersion ()
 
static std::optional< std::string > GetOSBuildString ()
 
static llvm::StringRef GetDistributionId ()
 
static FileSpec GetProgramFileSpec ()
 
- 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 UserIDResolverGetUserIDResolver ()
 
- 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 ArchSpecGetArchitecture (ArchitectureKind arch_kind=eArchKindDefault)
 
static std::optional< ArchitectureKindParseArchitectureKind (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 GetUserPluginDir ()
 Returns the directory containing the user plugins.
 
static FileSpec GetProcessTempDir ()
 Returns the proces 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 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.
 

Static Protected Member Functions

static bool ComputeSupportExeDirectory (FileSpec &file_spec)
 
static bool ComputeSystemPluginsDirectory (FileSpec &file_spec)
 
static bool ComputeUserPluginsDirectory (FileSpec &file_spec)
 
static void ComputeHostArchitectureSupport (ArchSpec &arch_32, ArchSpec &arch_64)
 
- Static Protected Member Functions inherited from lldb_private::HostInfoPosix
static bool ComputeSupportExeDirectory (FileSpec &file_spec)
 
static bool ComputeHeaderDirectory (FileSpec &file_spec)
 
- Static Protected Member Functions inherited from lldb_private::HostInfoBase
static bool ComputeSharedLibraryDirectory (FileSpec &file_spec)
 
static bool ComputeSupportExeDirectory (FileSpec &file_spec)
 
static bool ComputeProcessTempFileDirectory (FileSpec &file_spec)
 
static bool ComputeGlobalTempFileDirectory (FileSpec &file_spec)
 
static bool ComputeTempFileBaseDirectory (FileSpec &file_spec)
 
static bool ComputeHeaderDirectory (FileSpec &file_spec)
 
static bool ComputeSystemPluginsDirectory (FileSpec &file_spec)
 
static bool ComputeUserPluginsDirectory (FileSpec &file_spec)
 
static void ComputeHostArchitectureSupport (ArchSpec &arch_32, ArchSpec &arch_64)
 

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.
 

Detailed Description

Definition at line 22 of file HostInfoLinux.h.

Member Function Documentation

◆ ComputeHostArchitectureSupport()

void HostInfoLinux::ComputeHostArchitectureSupport ( ArchSpec arch_32,
ArchSpec arch_64 
)
staticprotected

◆ ComputeSupportExeDirectory()

bool HostInfoLinux::ComputeSupportExeDirectory ( FileSpec file_spec)
staticprotected

◆ ComputeSystemPluginsDirectory()

bool HostInfoLinux::ComputeSystemPluginsDirectory ( FileSpec file_spec)
staticprotected

◆ ComputeUserPluginsDirectory()

bool HostInfoLinux::ComputeUserPluginsDirectory ( FileSpec file_spec)
staticprotected

Definition at line 185 of file HostInfoLinux.cpp.

References lldb_private::FileSpec::SetDirectory().

◆ GetDistributionId()

llvm::StringRef HostInfoLinux::GetDistributionId ( )
static

Definition at line 80 of file HostInfoLinux.cpp.

References g_fields, and LLDB_LOGF.

◆ GetOSBuildString()

std::optional< std::string > HostInfoLinux::GetOSBuildString ( )
static

Definition at line 70 of file HostInfoLinux.cpp.

◆ GetOSVersion()

llvm::VersionTuple HostInfoLinux::GetOSVersion ( )
static

Definition at line 53 of file HostInfoLinux.cpp.

References g_fields.

◆ GetProgramFileSpec()

FileSpec HostInfoLinux::GetProgramFileSpec ( )
static

Definition at line 155 of file HostInfoLinux.cpp.

References PATH_MAX, and lldb_private::FileSpec::SetFile().

Referenced by ComputeSupportExeDirectory().

◆ Initialize()

void HostInfoLinux::Initialize ( SharedLibraryDirectoryHelper helper = nullptr)
static

Definition at line 40 of file HostInfoLinux.cpp.

References g_fields, and lldb_private::HostInfoBase::Initialize().

◆ Terminate()

void HostInfoLinux::Terminate ( )
static

Definition at line 46 of file HostInfoLinux.cpp.

References g_fields, and lldb_private::HostInfoBase::Terminate().

Friends And Related Function Documentation

◆ HostInfoBase

friend class HostInfoBase
friend

Definition at line 23 of file HostInfoLinux.h.


The documentation for this class was generated from the following files: