Mon Nov 28 04:26:08 2022 UTC ()
optionally use /dev/smbios on all netbsd platforms, if machdep.smbios
exists and is non-zero.
this makes dmidecode by default work on x86 with INSECURE.
bump pkg version.
(mrg)
diff -r1.38 -r1.39 pkgsrc/sysutils/dmidecode/Makefile
diff -r1.34 -r1.35 pkgsrc/sysutils/dmidecode/distinfo
diff -r0 -r1.1 pkgsrc/sysutils/dmidecode/patches/patch-biosdecode.c
diff -r0 -r1.1 pkgsrc/sysutils/dmidecode/patches/patch-dmiopt.c
diff -r0 -r1.1 pkgsrc/sysutils/dmidecode/patches/patch-ownership.c
diff -r0 -r1.1 pkgsrc/sysutils/dmidecode/patches/patch-util.c
diff -r0 -r1.1 pkgsrc/sysutils/dmidecode/patches/patch-vpdopt.c
diff -r1.1 -r1.2 pkgsrc/sysutils/dmidecode/patches/patch-config.h
--- pkgsrc/sysutils/dmidecode/Makefile 2022/10/11 09:12:18 1.38
+++ pkgsrc/sysutils/dmidecode/Makefile 2022/11/28 04:26:08 1.39
| @@ -1,19 +1,20 @@ | | | @@ -1,19 +1,20 @@ |
1 | # $NetBSD: Makefile,v 1.38 2022/10/11 09:12:18 msaitoh Exp $ | | 1 | # $NetBSD: Makefile,v 1.39 2022/11/28 04:26:08 mrg Exp $ |
2 | # | | 2 | # |
3 | | | 3 | |
4 | DISTNAME= dmidecode-3.4 | | 4 | DISTNAME= dmidecode-3.4 |
5 | EXTRACT_SUFX= .tar.xz | | 5 | EXTRACT_SUFX= .tar.xz |
6 | CATEGORIES= sysutils | | 6 | CATEGORIES= sysutils |
7 | MASTER_SITES= https://download.savannah.gnu.org/releases/dmidecode/ | | 7 | MASTER_SITES= https://download.savannah.gnu.org/releases/dmidecode/ |
| | | 8 | PKGREVISION= 1 |
8 | | | 9 | |
9 | MAINTAINER= msaitoh@NetBSD.org | | 10 | MAINTAINER= msaitoh@NetBSD.org |
10 | HOMEPAGE= https://www.nongnu.org/dmidecode/ | | 11 | HOMEPAGE= https://www.nongnu.org/dmidecode/ |
11 | COMMENT= Print out DMI (SMBIOS) table in human-readable format | | 12 | COMMENT= Print out DMI (SMBIOS) table in human-readable format |
12 | LICENSE= gnu-gpl-v2 | | 13 | LICENSE= gnu-gpl-v2 |
13 | | | 14 | |
14 | MAKE_FLAGS+= CFLAGS=${CFLAGS:Q} | | 15 | MAKE_FLAGS+= CFLAGS=${CFLAGS:Q} |
15 | MAKE_FLAGS+= LDFLAGS=${LDFLAGS:Q} | | 16 | MAKE_FLAGS+= LDFLAGS=${LDFLAGS:Q} |
16 | | | 17 | |
17 | ONLY_FOR_PLATFORM= *-*-i386 *-*-x86_64 *-*-aarch64* | | 18 | ONLY_FOR_PLATFORM= *-*-i386 *-*-x86_64 *-*-aarch64* |
18 | | | 19 | |
19 | .include "../../mk/bsd.pkg.mk" | | 20 | .include "../../mk/bsd.pkg.mk" |
--- pkgsrc/sysutils/dmidecode/distinfo 2022/10/11 09:12:18 1.34
+++ pkgsrc/sysutils/dmidecode/distinfo 2022/11/28 04:26:08 1.35
| @@ -1,8 +1,13 @@ | | | @@ -1,8 +1,13 @@ |
1 | $NetBSD: distinfo,v 1.34 2022/10/11 09:12:18 msaitoh Exp $ | | 1 | $NetBSD: distinfo,v 1.35 2022/11/28 04:26:08 mrg Exp $ |
2 | | | 2 | |
3 | BLAKE2s (dmidecode-3.4.tar.xz) = 4c77dc57ab99615165128047f803e6bf0844e7f97396a6754da4780d39a620c3 | | 3 | BLAKE2s (dmidecode-3.4.tar.xz) = 4c77dc57ab99615165128047f803e6bf0844e7f97396a6754da4780d39a620c3 |
4 | SHA512 (dmidecode-3.4.tar.xz) = 62990b6159e5a7c8688d37e44957e7948391d2c6afeabaa4514ba9dad2d08b020297676e2dbbfcb6471efc6fb6f3682750422931a953f78f358bb3dd3745e95b | | 4 | SHA512 (dmidecode-3.4.tar.xz) = 62990b6159e5a7c8688d37e44957e7948391d2c6afeabaa4514ba9dad2d08b020297676e2dbbfcb6471efc6fb6f3682750422931a953f78f358bb3dd3745e95b |
5 | Size (dmidecode-3.4.tar.xz) = 61420 bytes | | 5 | Size (dmidecode-3.4.tar.xz) = 61420 bytes |
6 | SHA1 (patch-aa) = 4ffeddeb647d07d8d712bab9983c1530e59e6f37 | | 6 | SHA1 (patch-aa) = 4ffeddeb647d07d8d712bab9983c1530e59e6f37 |
7 | SHA1 (patch-config.h) = 6ca6459a79ca207ec8b59f0532b2c1db841dc05c | | 7 | SHA1 (patch-biosdecode.c) = 76366037a20d7bed2f90771343fbe777ac1e1059 |
| | | 8 | SHA1 (patch-config.h) = d06c1d45b60e0c687a39b76b4beb007ffa1b4ee4 |
8 | SHA1 (patch-dmidecode.c) = fe63079df824753a2aca9b9d0371523a36bb08ce | | 9 | SHA1 (patch-dmidecode.c) = fe63079df824753a2aca9b9d0371523a36bb08ce |
| | | 10 | SHA1 (patch-dmiopt.c) = dd4b990fdf9b5b417459a0a2ddb2e97589605377 |
| | | 11 | SHA1 (patch-ownership.c) = 4417df76809b187be5c2c3ef691cba2285278df2 |
| | | 12 | SHA1 (patch-util.c) = d87f60f232e3facbd9aa8fae2e2a2be6bfe4ade5 |
| | | 13 | SHA1 (patch-vpdopt.c) = 1237207adb8db7aae294153f1bdc27a4e7941737 |
$NetBSD: patch-biosdecode.c,v 1.1 2022/11/28 04:26:08 mrg Exp $
* Use /dev/smbios instead of /dev/mem on NetBSD if available.
--- biosdecode.c.orig 2022-06-27 08:06:32.000000000 -0700
+++ biosdecode.c 2022-11-27 14:28:45.654835935 -0800
@@ -645,12 +645,12 @@
static const char *help =
"Usage: biosdecode [OPTIONS]\n"
"Options are:\n"
- " -d, --dev-mem FILE Read memory from device FILE (default: " DEFAULT_MEM_DEV ")\n"
+ " -d, --dev-mem FILE Read memory from device FILE (default: %s)\n"
" --pir full Decode the details of the PCI IRQ routing table\n"
" -h, --help Display this help text and exit\n"
" -V, --version Display the version and exit\n";
- printf("%s", help);
+ printf(help, DEFAULT_MEM_DEV);
}
int main(int argc, char * const argv[])
$NetBSD: patch-dmiopt.c,v 1.1 2022/11/28 04:26:08 mrg Exp $
* Use /dev/smbios instead of /dev/mem on NetBSD if available.
--- dmiopt.c.orig 2022-06-27 08:06:32.000000000 -0700
+++ dmiopt.c 2022-11-27 14:28:45.656425673 -0800
@@ -368,7 +368,7 @@
static const char *help =
"Usage: dmidecode [OPTIONS]\n"
"Options are:\n"
- " -d, --dev-mem FILE Read memory from device FILE (default: " DEFAULT_MEM_DEV ")\n"
+ " -d, --dev-mem FILE Read memory from device FILE (default: %s)\n"
" -h, --help Display this help text and exit\n"
" -q, --quiet Less verbose output\n"
" -s, --string KEYWORD Only display the value of the given DMI string\n"
@@ -381,5 +381,5 @@
" --oem-string N Only display the value of the given OEM string\n"
" -V, --version Display the version and exit\n";
- printf("%s", help);
+ printf(help, DEFAULT_MEM_DEV);
}
$NetBSD: patch-ownership.c,v 1.1 2022/11/28 04:26:08 mrg Exp $
* Use /dev/smbios instead of /dev/mem on NetBSD if available.
--- ownership.c.orig 2022-06-27 08:06:32.000000000 -0700
+++ ownership.c 2022-11-27 14:28:45.655641133 -0800
@@ -146,11 +146,11 @@
static const char *help =
"Usage: ownership [OPTIONS]\n"
"Options are:\n"
- " -d, --dev-mem FILE Read memory from device FILE (default: " DEFAULT_MEM_DEV ")\n"
+ " -d, --dev-mem FILE Read memory from device FILE (default: %s)\n"
" -h, --help Display this help text and exit\n"
" -V, --version Display the version and exit\n";
- printf("%s", help);
+ printf(help, DEFAULT_MEM_DEV);
}
int main(int argc, char * const argv[])
$NetBSD: patch-util.c,v 1.1 2022/11/28 04:26:08 mrg Exp $
* Use /dev/smbios instead of /dev/mem on NetBSD if available.
--- util.c.orig 2022-06-27 08:06:32.000000000 -0700
+++ util.c 2022-11-27 14:28:45.657997798 -0800
@@ -36,6 +36,9 @@
#define MAP_FAILED ((void *) -1)
#endif /* !MAP_FAILED */
#endif /* USE MMAP */
+#ifdef __NetBSD__
+#include <sys/sysctl.h>
+#endif
#include <stdio.h>
#include <stdlib.h>
@@ -314,3 +317,28 @@
return res;
}
+
+#ifdef USE_DEFAULT_MEM_DEV_FUNC
+const char *
+default_mem_dev(void)
+{
+#ifdef __NetBSD__
+ uint64_t addr;
+ size_t addrlen = sizeof addr;
+ int ret;
+
+ /*
+ * If machdep.smbios exists and has a non-zero value, /dev/smbios
+ * should work. Otherwise fallback to /dev/mem.
+ */
+ ret = sysctlbyname("machdep.smbios", &addr, &addrlen, NULL, 0);
+ if (ret == 0 && addr != 0) {
+ return "/dev/smbios";
+ } else {
+ return "/dev/mem";
+ }
+#else
+# error "not implemented."
+#endif
+}
+#endif
$NetBSD: patch-vpdopt.c,v 1.1 2022/11/28 04:26:08 mrg Exp $
* Use /dev/smbios instead of /dev/mem on NetBSD if available.
--- vpdopt.c.orig 2022-06-27 08:06:32.000000000 -0700
+++ vpdopt.c 2022-11-27 14:28:45.657210082 -0800
@@ -147,11 +147,11 @@
static const char *help =
"Usage: vpddecode [OPTIONS]\n"
"Options are:\n"
- " -d, --dev-mem FILE Read memory from device FILE (default: " DEFAULT_MEM_DEV ")\n"
+ " -d, --dev-mem FILE Read memory from device FILE (default: %s)\n"
" -h, --help Display this help text and exit\n"
" -s, --string KEYWORD Only display the value of the given VPD string\n"
" -u, --dump Do not decode the VPD records\n"
" -V, --version Display the version and exit\n";
- printf("%s", help);
+ printf(help, DEFAULT_MEM_DEV);
}
--- pkgsrc/sysutils/dmidecode/patches/patch-config.h 2021/07/24 13:23:52 1.1
+++ pkgsrc/sysutils/dmidecode/patches/patch-config.h 2022/11/28 04:26:08 1.2
| @@ -1,15 +1,27 @@ | | | @@ -1,15 +1,27 @@ |
1 | $NetBSD: patch-config.h,v 1.1 2021/07/24 13:23:52 jmcneill Exp $ | | 1 | $NetBSD: patch-config.h,v 1.2 2022/11/28 04:26:08 mrg Exp $ |
2 | | | 2 | |
3 | * Use /dev/smbios instead of /dev/mem on NetBSD aarch64 | | 3 | * Use /dev/smbios instead of /dev/mem on NetBSD if available. |
4 | | | 4 | |
5 | --- config.h.orig 2020-10-14 12:51:11.000000000 +0000 | | 5 | --- config.h.orig 2022-06-27 08:06:32.000000000 -0700 |
6 | +++ config.h | | 6 | +++ config.h 2022-11-27 14:30:20.312604489 -0800 |
7 | @@ -8,6 +8,8 @@ | | 7 | @@ -8,6 +8,8 @@ |
8 | /* Default memory device file */ | | 8 | /* Default memory device file */ |
9 | #if defined(__BEOS__) || defined(__HAIKU__) | | 9 | #if defined(__BEOS__) || defined(__HAIKU__) |
10 | #define DEFAULT_MEM_DEV "/dev/misc/mem" | | 10 | #define DEFAULT_MEM_DEV "/dev/misc/mem" |
11 | +#elif defined(__NetBSD__) && defined(__aarch64__) | | 11 | +#elif defined(__NetBSD__) |
12 | +#define DEFAULT_MEM_DEV "/dev/smbios" | | 12 | +#define USE_DEFAULT_MEM_DEV_FUNC 1 |
13 | #else | | 13 | #else |
14 | #ifdef __sun | | 14 | #ifdef __sun |
15 | #define DEFAULT_MEM_DEV "/dev/xsvc" | | 15 | #define DEFAULT_MEM_DEV "/dev/xsvc" |
| | | 16 | @@ -16,6 +18,11 @@ |
| | | 17 | #endif |
| | | 18 | #endif |
| | | 19 | |
| | | 20 | +#ifdef USE_DEFAULT_MEM_DEV_FUNC |
| | | 21 | +const char *default_mem_dev(void); |
| | | 22 | +#define DEFAULT_MEM_DEV default_mem_dev() |
| | | 23 | +#endif |
| | | 24 | + |
| | | 25 | /* Use mmap or not */ |
| | | 26 | #ifndef __BEOS__ |
| | | 27 | #define USE_MMAP |