From: Alexander Kanavin <a...@linutronix.de> Signed-off-by: Alexander Kanavin <a...@linutronix.de> --- ...nk.h-add-missing-include-for-htobe64.patch | 2 +- ...-ip-rearrange-and-prune-header-files.patch | 90 +++++++++++++++++++ ...02-bridge-mst-fix-a-musl-build-issue.patch | 76 ---------------- ...e-mst-fix-a-further-musl-build-issue.patch | 59 ------------ ...{iproute2_6.11.0.bb => iproute2_6.12.0.bb} | 8 +- 5 files changed, 93 insertions(+), 142 deletions(-) create mode 100644 meta/recipes-connectivity/iproute2/iproute2/0001-ip-rearrange-and-prune-header-files.patch delete mode 100644 meta/recipes-connectivity/iproute2/iproute2/0002-bridge-mst-fix-a-musl-build-issue.patch delete mode 100644 meta/recipes-connectivity/iproute2/iproute2/0003-bridge-mst-fix-a-further-musl-build-issue.patch rename meta/recipes-connectivity/iproute2/{iproute2_6.11.0.bb => iproute2_6.12.0.bb} (92%)
diff --git a/meta/recipes-connectivity/iproute2/iproute2/0001-include-libnetlink.h-add-missing-include-for-htobe64.patch b/meta/recipes-connectivity/iproute2/iproute2/0001-include-libnetlink.h-add-missing-include-for-htobe64.patch index 555d63b2403..03af400ecd2 100644 --- a/meta/recipes-connectivity/iproute2/iproute2/0001-include-libnetlink.h-add-missing-include-for-htobe64.patch +++ b/meta/recipes-connectivity/iproute2/iproute2/0001-include-libnetlink.h-add-missing-include-for-htobe64.patch @@ -1,4 +1,4 @@ -From f3c574b27000fd887cee84ab47adf23f767cbea1 Mon Sep 17 00:00:00 2001 +From 4dc0613e229f6b4a57beb00dde14ef319a2dcad8 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin <a...@linutronix.de> Date: Sat, 24 Aug 2024 15:32:25 +0200 Subject: [PATCH] include/libnetlink.h: add missing include for htobe64 diff --git a/meta/recipes-connectivity/iproute2/iproute2/0001-ip-rearrange-and-prune-header-files.patch b/meta/recipes-connectivity/iproute2/iproute2/0001-ip-rearrange-and-prune-header-files.patch new file mode 100644 index 00000000000..2f779106142 --- /dev/null +++ b/meta/recipes-connectivity/iproute2/iproute2/0001-ip-rearrange-and-prune-header-files.patch @@ -0,0 +1,90 @@ +From 714291a63246cb3e6b86eb2a78fa84216d768a4b Mon Sep 17 00:00:00 2001 +From: Stephen Hemminger <step...@networkplumber.org> +Date: Tue, 10 Dec 2024 13:38:08 -0800 +Subject: [PATCH] ip: rearrange and prune header files + +The recent report of issues with missing limits.h impacting musl +suggested looking at what files are and are not included in ip code. + +The standard practice is to put standard headers first, then system, +then local headers. Used iwyu to get suggestions about missing +and extraneous headers. + +Upstream-Status: Backport [https://git.kernel.org/pub/scm/network/iproute2/iproute2.git/commit/?id=7e23da91fca6e5dedeb32a7d308cf20982e897c3] +Signed-off-by: Stephen Hemminger <step...@networkplumber.org> +Signed-off-by: Alexander Kanavin <a...@linutronix.de> +--- + ip/iplink.c | 13 +++++-------- + ip/ipnetns.c | 19 +++++++++---------- + 2 files changed, 14 insertions(+), 18 deletions(-) + +diff --git a/ip/iplink.c b/ip/iplink.c +index e650a5c2..8df367ed 100644 +--- a/ip/iplink.c ++++ b/ip/iplink.c +@@ -11,17 +11,14 @@ + #include <fcntl.h> + #include <dlfcn.h> + #include <errno.h> ++#include <string.h> ++#include <strings.h> ++#include <limits.h> ++ + #include <sys/socket.h> ++#include <arpa/inet.h> + #include <linux/if.h> +-#include <linux/if_packet.h> + #include <linux/if_ether.h> +-#include <linux/sockios.h> +-#include <netinet/in.h> +-#include <arpa/inet.h> +-#include <string.h> +-#include <sys/ioctl.h> +-#include <stdbool.h> +-#include <linux/mpls.h> + + #include "rt_names.h" + #include "utils.h" +diff --git a/ip/ipnetns.c b/ip/ipnetns.c +index 5c943400..a20cd8bc 100644 +--- a/ip/ipnetns.c ++++ b/ip/ipnetns.c +@@ -1,21 +1,21 @@ + /* SPDX-License-Identifier: GPL-2.0 */ + #define _ATFILE_SOURCE +-#include <sys/file.h> +-#include <sys/types.h> +-#include <sys/stat.h> +-#include <sys/wait.h> +-#include <sys/inotify.h> +-#include <sys/mount.h> +-#include <sys/syscall.h> ++ + #include <stdio.h> ++#include <stdint.h> + #include <string.h> +-#include <sched.h> + #include <fcntl.h> + #include <dirent.h> + #include <errno.h> + #include <unistd.h> + #include <ctype.h> +-#include <linux/limits.h> ++#include <limits.h> ++ ++#include <sys/file.h> ++#include <sys/types.h> ++#include <sys/stat.h> ++#include <sys/inotify.h> ++#include <sys/mount.h> + + #include <linux/net_namespace.h> + +@@ -23,7 +23,6 @@ + #include "list.h" + #include "ip_common.h" + #include "namespace.h" +-#include "json_print.h" + + static int usage(void) + { diff --git a/meta/recipes-connectivity/iproute2/iproute2/0002-bridge-mst-fix-a-musl-build-issue.patch b/meta/recipes-connectivity/iproute2/iproute2/0002-bridge-mst-fix-a-musl-build-issue.patch deleted file mode 100644 index 3e266b9298d..00000000000 --- a/meta/recipes-connectivity/iproute2/iproute2/0002-bridge-mst-fix-a-musl-build-issue.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 6a77abab92516e65f07f8657fc4e384c4541ce0e Mon Sep 17 00:00:00 2001 -From: Dario Binacchi <dario.binac...@amarulasolutions.com> -Date: Sun, 22 Sep 2024 16:50:10 +0200 -Subject: [PATCH] bridge: mst: fix a musl build issue - -This patch fixes a compilation error raised by the bump to version 6.11.0 -in Buildroot using musl as the C library for the cross-compilation -toolchain. - -After setting the CFLGAS - -ifeq ($(BR2_TOOLCHAIN_USES_MUSL),y) -IPROUTE2_CFLAGS += -D__UAPI_DEF_IN6_ADDR=0 -D__UAPI_DEF_SOCKADDR_IN6=0 \ - -D__UAPI_DEF_IPV6_MREQ=0 -endif - -to fix the following errors: - -In file included from ../../../host/mips64-buildroot-linux-musl/sysroot/usr/include/arpa/inet.h:9, - from ../include/libnetlink.h:14, - from mst.c:10: -../../../host/mips64-buildroot-linux-musl/sysroot/usr/include/netinet/in.h:23:8: error: redefinition of 'struct in6_addr' - 23 | struct in6_addr { - | ^~~~~~~~ -In file included from ../include/uapi/linux/if_bridge.h:19, - from mst.c:7: -../include/uapi/linux/in6.h:33:8: note: originally defined here - 33 | struct in6_addr { - | ^~~~~~~~ -../../../host/mips64-buildroot-linux-musl/sysroot/usr/include/netinet/in.h:34:8: error: redefinition of 'struct sockaddr_in6' - 34 | struct sockaddr_in6 { - | ^~~~~~~~~~~~ -../include/uapi/linux/in6.h:50:8: note: originally defined here - 50 | struct sockaddr_in6 { - | ^~~~~~~~~~~~ -../../../host/mips64-buildroot-linux-musl/sysroot/usr/include/netinet/in.h:42:8: error: redefinition of 'struct ipv6_mreq' - 42 | struct ipv6_mreq { - | ^~~~~~~~~ -../include/uapi/linux/in6.h:60:8: note: originally defined here - 60 | struct ipv6_mreq { - -I got this further errors - -../include/uapi/linux/in6.h:72:25: error: field 'flr_dst' has incomplete type - 72 | struct in6_addr flr_dst; - | ^~~~~~~ -../include/uapi/linux/if_bridge.h:711:41: error: field 'ip6' has incomplete type - 711 | struct in6_addr ip6; - | ^~~ - -fixed by including the netinet/in.h header. - -Upstream-Status: Backport -[https://kernel.googlesource.com/pub/scm/network/iproute2/iproute2/+/6a77abab92516e65f07f8657fc4e384c4541ce0e] - -Signed-off-by: Dario Binacchi <dario.binac...@amarulasolutions.com> -Signed-off-by: Stephen Hemminger <step...@networkplumber.org> ---- - bridge/mst.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/bridge/mst.c b/bridge/mst.c -index 873ca536..c8f7e660 100644 ---- a/bridge/mst.c -+++ b/bridge/mst.c -@@ -4,6 +4,7 @@ - */ - - #include <stdio.h> -+#include <netinet/in.h> - #include <linux/if_bridge.h> - #include <net/if.h> - --- -2.39.5 (Apple Git-154) - diff --git a/meta/recipes-connectivity/iproute2/iproute2/0003-bridge-mst-fix-a-further-musl-build-issue.patch b/meta/recipes-connectivity/iproute2/iproute2/0003-bridge-mst-fix-a-further-musl-build-issue.patch deleted file mode 100644 index 6a30f6dcf84..00000000000 --- a/meta/recipes-connectivity/iproute2/iproute2/0003-bridge-mst-fix-a-further-musl-build-issue.patch +++ /dev/null @@ -1,59 +0,0 @@ -From 043ef90e2fa94397eb5c85330889ca4146a6d58a Mon Sep 17 00:00:00 2001 -From: Dario Binacchi <dario.binac...@amarulasolutions.com> -Date: Sun, 22 Sep 2024 16:50:11 +0200 -Subject: [PATCH] bridge: mst: fix a further musl build issue - -This patch fixes the following build errors: - -In file included from mst.c:11: -../include/json_print.h:80:30: warning: 'struct timeval' declared inside parameter list will not be visible outside of this definition or declaration - 80 | _PRINT_FUNC(tv, const struct timeval *) - | ^~~~~~~ -../include/json_print.h:50:37: note: in definition of macro '_PRINT_FUNC' - 50 | type value); \ - | ^~~~ -../include/json_print.h:80:30: warning: 'struct timeval' declared inside parameter list will not be visible outside of this definition or declaration - 80 | _PRINT_FUNC(tv, const struct timeval *) - | ^~~~~~~ -../include/json_print.h:55:45: note: in definition of macro '_PRINT_FUNC' - 55 | type value) \ - | ^~~~ -../include/json_print.h: In function 'print_tv': -../include/json_print.h:58:48: error: passing argument 5 of 'print_color_tv' from incompatible pointer type [-Wincompatible-pointer-types] - 58 | value); \ - | ^~~~~ - | | - | const struct timeval * -../include/json_print.h:80:1: note: in expansion of macro '_PRINT_FUNC' - 80 | _PRINT_FUNC(tv, const struct timeval *) - | ^~~~~~~~~~~ -../include/json_print.h:50:42: note: expected 'const struct timeval *' but argument is of type 'const struct timeval *' - 50 | type value); \ - | ^ -../include/json_print.h:80:1: note: in expansion of macro '_PRINT_FUNC' - 80 | _PRINT_FUNC(tv, const struct timeval *) - -Upstream-Status: Backport -[https://kernel.googlesource.com/pub/scm/network/iproute2/iproute2/+/043ef90e2fa94397eb5c85330889ca4146a6d58a] - -Signed-off-by: Dario Binacchi <dario.binac...@amarulasolutions.com> -Signed-off-by: Stephen Hemminger <step...@networkplumber.org> ---- - bridge/mst.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/bridge/mst.c b/bridge/mst.c -index c8f7e660..fccb7fd6 100644 ---- a/bridge/mst.c -+++ b/bridge/mst.c -@@ -4,6 +4,7 @@ - */ - - #include <stdio.h> -+#include <sys/time.h> - #include <netinet/in.h> - #include <linux/if_bridge.h> - #include <net/if.h> --- -2.39.5 (Apple Git-154) - diff --git a/meta/recipes-connectivity/iproute2/iproute2_6.11.0.bb b/meta/recipes-connectivity/iproute2/iproute2_6.12.0.bb similarity index 92% rename from meta/recipes-connectivity/iproute2/iproute2_6.11.0.bb rename to meta/recipes-connectivity/iproute2/iproute2_6.12.0.bb index 652484a94d1..741d54799d5 100644 --- a/meta/recipes-connectivity/iproute2/iproute2_6.11.0.bb +++ b/meta/recipes-connectivity/iproute2/iproute2_6.12.0.bb @@ -13,14 +13,10 @@ DEPENDS = "flex-native bison-native iptables libcap" SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BP}.tar.xz \ file://0001-include-libnetlink.h-add-missing-include-for-htobe64.patch \ + file://0001-ip-rearrange-and-prune-header-files.patch \ " -SRC_URI:append:libc-musl = "\ - file://0002-bridge-mst-fix-a-musl-build-issue.patch \ - file://0003-bridge-mst-fix-a-further-musl-build-issue.patch \ - " - -SRC_URI[sha256sum] = "1f795398a04aeaacd06a8f6ace2cfd913c33fa5953ca99daae83bb5c534611c3" +SRC_URI[sha256sum] = "bbd141ef7b5d0127cc2152843ba61f274dc32814fa3e0f13e7d07a080bef53d9" inherit update-alternatives bash-completion pkgconfig -- 2.39.5
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#209336): https://lists.openembedded.org/g/openembedded-core/message/209336 Mute This Topic: https://lists.openembedded.org/mt/110404195/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-