#include "lldb/Host/linux/HostInfoLinux.h"
#include "lldb/Host/Config.h"
#include "lldb/Host/FileSystem.h"
#include "lldb/Utility/LLDBLog.h"
#include "lldb/Utility/Log.h"
#include "llvm/Support/Threading.h"
#include <climits>
#include <cstdio>
#include <cstring>
#include <sys/utsname.h>
#include <unistd.h>
#include <algorithm>
#include <mutex>
#include <optional>
usingnamespacelldb_private;
namespace {
struct HostInfoLinuxFields { … };
}
static HostInfoLinuxFields *g_fields = …;
void HostInfoLinux::Initialize(SharedLibraryDirectoryHelper *helper) { … }
void HostInfoLinux::Terminate() { … }
llvm::VersionTuple HostInfoLinux::GetOSVersion() { … }
std::optional<std::string> HostInfoLinux::GetOSBuildString() { … }
llvm::StringRef HostInfoLinux::GetDistributionId() { … }
FileSpec HostInfoLinux::GetProgramFileSpec() { … }
bool HostInfoLinux::ComputeSupportExeDirectory(FileSpec &file_spec) { … }
bool HostInfoLinux::ComputeSystemPluginsDirectory(FileSpec &file_spec) { … }
bool HostInfoLinux::ComputeUserPluginsDirectory(FileSpec &file_spec) { … }
void HostInfoLinux::ComputeHostArchitectureSupport(ArchSpec &arch_32,
ArchSpec &arch_64) { … }