MCPcopy Create free account
hub / github.com/FreesmTeam/FreesmLauncher / getKernelInfo

Method getKernelInfo

libraries/systeminfo/src/sys_apple.cpp:9–38  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

7#include <QStringList>
8
9Sys::KernelInfo Sys::getKernelInfo()
10{
11 Sys::KernelInfo out;
12 struct utsname buf;
13 uname(&buf);
14 out.kernelType = KernelType::Darwin;
15 out.kernelName = buf.sysname;
16 QString release = out.kernelVersion = buf.release;
17
18 // TODO: figure out how to detect cursed-ness (macOS emulated on linux via mad hacks and so on)
19 out.isCursed = false;
20
21 out.kernelMajor = 0;
22 out.kernelMinor = 0;
23 out.kernelPatch = 0;
24 auto sections = release.split('-');
25 if (sections.size() >= 1) {
26 auto versionParts = sections[0].split('.');
27 if (versionParts.size() >= 3) {
28 out.kernelMajor = versionParts[0].toInt();
29 out.kernelMinor = versionParts[1].toInt();
30 out.kernelPatch = versionParts[2].toInt();
31 } else {
32 qWarning() << "Not enough version numbers in " << sections[0] << " found " << versionParts.size();
33 }
34 } else {
35 qWarning() << "Not enough '-' sections in " << release << " found " << sections.size();
36 }
37 return out;
38}
39
40#include <sys/sysctl.h>
41

Callers

nothing calls this directly

Calls 1

sizeMethod · 0.45

Tested by

no test coverage detected