commit: 6714f9b94f5354a170dbd4b7573ca5e951d13f7d Author: Jory Pratt <anarchy <AT> gentoo <DOT> org> AuthorDate: Tue Jun 11 21:07:59 2019 +0000 Commit: Jory Pratt <anarchy <AT> gentoo <DOT> org> CommitDate: Tue Jun 11 21:07:59 2019 +0000 URL: https://gitweb.gentoo.org/proj/musl.git/commit/?id=6714f9b9
sys-apps/iproute2: prevent redefinition of sysifo properly Package-Manager: Portage-2.3.67, Repoman-2.3.14 Signed-off-by: Jory Pratt <anarchy <AT> gentoo.org> sys-apps/iproute2/files/iproute2-5.1.0-musl.patch | 12 -------- .../files/iproute2-5.1.0-portability.patch | 33 ++++++++++++++++++++++ sys-apps/iproute2/iproute2-5.1.0.ebuild | 2 +- 3 files changed, 34 insertions(+), 13 deletions(-) diff --git a/sys-apps/iproute2/files/iproute2-5.1.0-musl.patch b/sys-apps/iproute2/files/iproute2-5.1.0-musl.patch deleted file mode 100644 index d53c76e..0000000 --- a/sys-apps/iproute2/files/iproute2-5.1.0-musl.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur iproute2-5.1.0.orig/devlink/devlink.c iproute2-5.1.0/devlink/devlink.c ---- iproute2-5.1.0.orig/devlink/devlink.c 2019-05-10 11:45:14.000000000 -0400 -+++ iproute2-5.1.0/devlink/devlink.c 2019-06-11 13:46:03.745336706 -0400 -@@ -22,7 +22,7 @@ - #include <linux/devlink.h> - #include <libmnl/libmnl.h> - #include <netinet/ether.h> --#include <sys/sysinfo.h> -+//#include <sys/sysinfo.h> - #include <sys/queue.h> - - #include "SNAPSHOT.h" diff --git a/sys-apps/iproute2/files/iproute2-5.1.0-portability.patch b/sys-apps/iproute2/files/iproute2-5.1.0-portability.patch new file mode 100644 index 0000000..3fdca40 --- /dev/null +++ b/sys-apps/iproute2/files/iproute2-5.1.0-portability.patch @@ -0,0 +1,33 @@ +From 202d79fcf4e184818bd074f8c06e94e700670898 Mon Sep 17 00:00:00 2001 +From: Jory Pratt <[email protected]> +Date: Tue, 11 Jun 2019 01:48:01 -0500 +Subject: [PATCH] including sysinfo.h from kernel.h makes no sense whatsoever, + but removing it breaks glibc's userspace header, which includes kernel.h + instead of sysinfo.h from their sys/sysinfo.h. this seems to be a historical + mistake. on musl, including any header that uses kernel.h directly or + indirectly plus sys/sysinfo.h will produce a compile error due to + redefinition of struct sysinfo. so for now, only include it on glibc in order + not to break their headers. + +Signed-off-by: Jory Pratt <[email protected]> +--- + include/uapi/linux/kernel.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/include/uapi/linux/kernel.h b/include/uapi/linux/kernel.h +index d99ffa1..f917115 100644 +--- a/include/uapi/linux/kernel.h ++++ b/include/uapi/linux/kernel.h +@@ -2,7 +2,9 @@ + #ifndef _LINUX_KERNEL_H + #define _LINUX_KERNEL_H + ++#ifdef __GLIBC__ + #include <linux/sysinfo.h> ++#endif + + /* + * 'kernel.h' contains some often-used function prototypes etc +-- +2.22.0 + diff --git a/sys-apps/iproute2/iproute2-5.1.0.ebuild b/sys-apps/iproute2/iproute2-5.1.0.ebuild index 6e75428..f2771e5 100644 --- a/sys-apps/iproute2/iproute2-5.1.0.ebuild +++ b/sys-apps/iproute2/iproute2-5.1.0.ebuild @@ -47,7 +47,7 @@ BDEPEND=" PATCHES=( "${FILESDIR}"/${PN}-3.1.0-mtu.patch #291907 "${FILESDIR}"/${PN}-4.20.0-configure-nomagic.patch # bug 643722 - "${FILESDIR}"/${PN}-5.1.0-musl.patch + "${FILESDIR}"/${PN}-5.1.0-portability.patch ) src_prepare() {
