diff options
| author | gingerBill <gingerBill@users.noreply.github.com> | 2022-03-14 11:02:59 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-03-14 11:02:59 +0000 |
| commit | a7adb2fb6e092e1f37791b1da633b01ff3ca489c (patch) | |
| tree | 6bff88f90b9b72dcc04ce1c02f86d981c2135fdd /src/bug_report.cpp | |
| parent | 410b85b5c7f768543e03c9fc6f47f8c2efcd602b (diff) | |
| parent | f907516cbd0078b69996929d02742d0c1a48c226 (diff) | |
Merge branch 'master' into freestanding_amd64
Diffstat (limited to 'src/bug_report.cpp')
| -rw-r--r-- | src/bug_report.cpp | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/src/bug_report.cpp b/src/bug_report.cpp index 4dd251f24..02a2b1ba2 100644 --- a/src/bug_report.cpp +++ b/src/bug_report.cpp @@ -17,6 +17,11 @@ #include <sys/sysctl.h>
#endif
+#if defined(GB_SYSTEM_OPENBSD)
+ #include <sys/sysctl.h>
+ #include <sys/utsname.h>
+#endif
+
/*
NOTE(Jeroen): This prints the Windows product edition only, to be called from `print_platform_details`.
*/
@@ -242,6 +247,14 @@ void report_ram_info() { if (sysctl(sysctls, 2, &ram_amount, &val_size, NULL, 0) != -1) {
gb_printf("%lld MiB\n", ram_amount / gb_megabytes(1));
}
+ #elif defined(GB_SYSTEM_OPENBSD)
+ uint64_t ram_amount;
+ size_t val_size = sizeof(ram_amount);
+
+ int sysctls[] = { CTL_HW, HW_PHYSMEM64 };
+ if (sysctl(sysctls, 2, &ram_amount, &val_size, NULL, 0) != -1) {
+ gb_printf("%lld MiB\n", ram_amount / gb_megabytes(1));
+ }
#else
gb_printf("Unknown.\n");
#endif
@@ -643,6 +656,14 @@ void print_bug_report_help() { } else {
gb_printf("macOS: Unknown\n");
}
+ #elif defined(GB_SYSTEM_OPENBSD)
+ struct utsname un;
+
+ if (uname(&un) != -1) {
+ gb_printf("%s %s %s %s\n", un.sysname, un.release, un.version, un.machine);
+ } else {
+ gb_printf("OpenBSD: Unknown\n");
+ }
#else
gb_printf("Unknown\n");
@@ -657,4 +678,4 @@ void print_bug_report_help() { And RAM info.
*/
report_ram_info();
-}
\ No newline at end of file +}
|