summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2023-02-15 05:30:52 +0000
committerSam James <sam@gentoo.org>2023-02-15 05:30:52 +0000
commitdebd0a8b5082f5189da33070cda7ad33db9be85c (patch)
tree9d8956c05e3b9d32b7c8cdb11bbec1a8ab014b1d /sys-apps
parentapp-emulation/virtualbox-extpack-oracle: Stabilize 7.0.6 amd64, #893606 (diff)
downloadgentoo-debd0a8b5082f5189da33070cda7ad33db9be85c.tar.gz
gentoo-debd0a8b5082f5189da33070cda7ad33db9be85c.tar.bz2
gentoo-debd0a8b5082f5189da33070cda7ad33db9be85c.zip
sys-apps/ethtool: fix build w/ musl
Closes: https://bugs.gentoo.org/889402 Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'sys-apps')
-rw-r--r--sys-apps/ethtool/ethtool-6.1.ebuild6
-rw-r--r--sys-apps/ethtool/files/ethtool-6.1-musl.patch64
2 files changed, 69 insertions, 1 deletions
diff --git a/sys-apps/ethtool/ethtool-6.1.ebuild b/sys-apps/ethtool/ethtool-6.1.ebuild
index 8d122a733c09..d0b52cc1fe47 100644
--- a/sys-apps/ethtool/ethtool-6.1.ebuild
+++ b/sys-apps/ethtool/ethtool-6.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -16,6 +16,10 @@ RDEPEND="netlink? ( net-libs/libmnl )"
DEPEND="${RDEPEND}"
BDEPEND="app-arch/xz-utils"
+PATCHES=(
+ "${FILESDIR}"/${P}-musl.patch
+)
+
src_configure() {
econf $(use_enable netlink)
}
diff --git a/sys-apps/ethtool/files/ethtool-6.1-musl.patch b/sys-apps/ethtool/files/ethtool-6.1-musl.patch
new file mode 100644
index 000000000000..ed441a4511da
--- /dev/null
+++ b/sys-apps/ethtool/files/ethtool-6.1-musl.patch
@@ -0,0 +1,64 @@
+https://bugs.gentoo.org/889402
+https://git.kernel.org/pub/scm/network/ethtool/ethtool.git/commit/?id=41be533331fc3c6b711dbe532405782d3b8be5d1
+
+From 41be533331fc3c6b711dbe532405782d3b8be5d1 Mon Sep 17 00:00:00 2001
+From: Florian Fainelli <f.fainelli@gmail.com>
+Date: Sat, 14 Jan 2023 08:34:11 -0800
+Subject: marvell.c: Fix build with musl-libc
+
+After commit 1fa60003a8b8 ("misc: header includes cleanup") we stopped
+including net/if.h which resolved the proper defines to pull in
+sys/types.h and provide a definition for u_int32_t. With musl-libc we
+would need to define _GNU_SOURCE to ensure that sys/types.h does provide a
+definition for u_int32_t.
+
+Rather, just replace u_uint{16,32}_t with the more standard
+uint{16,32}_t types from stdint.h
+
+Fixes: 1fa60003a8b8 ("misc: header includes cleanup")
+Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
+--- a/marvell.c
++++ b/marvell.c
+@@ -31,23 +31,23 @@ static void dump_timer(const char *name, const void *p)
+ static void dump_queue(const char *name, const void *a, int rx)
+ {
+ struct desc {
+- u_int32_t ctl;
+- u_int32_t next;
+- u_int32_t data_lo;
+- u_int32_t data_hi;
+- u_int32_t status;
+- u_int32_t timestamp;
+- u_int16_t csum2;
+- u_int16_t csum1;
+- u_int16_t csum2_start;
+- u_int16_t csum1_start;
+- u_int32_t addr_lo;
+- u_int32_t addr_hi;
+- u_int32_t count_lo;
+- u_int32_t count_hi;
+- u_int32_t byte_count;
+- u_int32_t csr;
+- u_int32_t flag;
++ uint32_t ctl;
++ uint32_t next;
++ uint32_t data_lo;
++ uint32_t data_hi;
++ uint32_t status;
++ uint32_t timestamp;
++ uint16_t csum2;
++ uint16_t csum1;
++ uint16_t csum2_start;
++ uint16_t csum1_start;
++ uint32_t addr_lo;
++ uint32_t addr_hi;
++ uint32_t count_lo;
++ uint32_t count_hi;
++ uint32_t byte_count;
++ uint32_t csr;
++ uint32_t flag;
+ };
+ const struct desc *d = a;
+
+--
+cgit