commit: debd0a8b5082f5189da33070cda7ad33db9be85c Author: Sam James <sam <AT> gentoo <DOT> org> AuthorDate: Wed Feb 15 05:30:52 2023 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Wed Feb 15 05:30:52 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=debd0a8b
sys-apps/ethtool: fix build w/ musl Closes: https://bugs.gentoo.org/889402 Signed-off-by: Sam James <sam <AT> gentoo.org> sys-apps/ethtool/ethtool-6.1.ebuild | 6 ++- sys-apps/ethtool/files/ethtool-6.1-musl.patch | 64 +++++++++++++++++++++++++++ 2 files changed, 69 insertions(+), 1 deletion(-) 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 <[email protected]> +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 <[email protected]> +--- 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
