diff options
Diffstat (limited to 'meta-networking/recipes-connectivity/networkmanager/networkmanager/musl')
4 files changed, 44 insertions, 181 deletions
diff --git a/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl-systemd-specific.patch b/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl-systemd-specific.patch index 7807fc77c6..692f1ffa4f 100644 --- a/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl-systemd-specific.patch +++ b/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0001-Fix-build-with-musl-systemd-specific.patch @@ -1,12 +1,11 @@ -From 9597122867c22e949ef3b69c779e0facebce6eb5 Mon Sep 17 00:00:00 2001 +From 44884c7e7655b889f41cb02ffc8ab72a29b52ebf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com> Date: Tue, 2 Apr 2019 01:34:35 +0200 -Subject: [PATCH] Fix build with musl - systemd specific +Subject: [PATCH 1/2] Fix build with musl - systemd specific MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit -From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @@ -17,18 +16,18 @@ for musl. Upstream-Status: Pending Signed-off-by: Andreas Müller <schnitzeltony@gmail.com> - +Signed-off-by: Vinicius Aquino <voa.aquino@gmail.com> --- shared/systemd/src/basic/in-addr-util.c | 1 + shared/systemd/src/basic/process-util.c | 9 +++++++++ shared/systemd/src/basic/socket-util.h | 6 ++++++ - shared/systemd/src/basic/sort-util.h | 27 ++++--------------------- + shared/systemd/src/basic/sort-util.h | 13 ++++--------- shared/systemd/src/basic/stdio-util.h | 2 ++ shared/systemd/src/basic/string-util.h | 5 +++++ - 6 files changed, 27 insertions(+), 23 deletions(-) + 6 files changed, 27 insertions(+), 9 deletions(-) diff --git a/shared/systemd/src/basic/in-addr-util.c b/shared/systemd/src/basic/in-addr-util.c -index 1ea3e7f..1204393 100644 +index c315dcbb8..5b7e04eb7 100644 --- a/shared/systemd/src/basic/in-addr-util.c +++ b/shared/systemd/src/basic/in-addr-util.c @@ -15,6 +15,7 @@ @@ -40,7 +39,7 @@ index 1ea3e7f..1204393 100644 #include "string-util.h" #include "strxcpyx.h" diff --git a/shared/systemd/src/basic/process-util.c b/shared/systemd/src/basic/process-util.c -index 03ca04e..be8bca8 100644 +index 0e25b0200..ea2c0fbb4 100644 --- a/shared/systemd/src/basic/process-util.c +++ b/shared/systemd/src/basic/process-util.c @@ -17,6 +17,9 @@ @@ -80,7 +79,7 @@ index 03ca04e..be8bca8 100644 cached_pid = CACHED_PID_UNSET; return new_pid; diff --git a/shared/systemd/src/basic/socket-util.h b/shared/systemd/src/basic/socket-util.h -index 1ece911..290e94c 100644 +index 1de069476..f6834fbd2 100644 --- a/shared/systemd/src/basic/socket-util.h +++ b/shared/systemd/src/basic/socket-util.h @@ -14,6 +14,12 @@ @@ -94,10 +93,10 @@ index 1ece911..290e94c 100644 +#endif + #include "macro.h" + #include "missing_network.h" #include "missing_socket.h" - #include "sparse-endian.h" diff --git a/shared/systemd/src/basic/sort-util.h b/shared/systemd/src/basic/sort-util.h -index a8dc3bb..ff0aa88 100644 +index a8984fc16..5fb90f8c5 100644 --- a/shared/systemd/src/basic/sort-util.h +++ b/shared/systemd/src/basic/sort-util.h @@ -5,15 +5,10 @@ @@ -120,40 +119,22 @@ index a8dc3bb..ff0aa88 100644 /** * Normal bsearch requires base to be nonnull. Here were require -@@ -54,17 +49,3 @@ static inline void _qsort_safe(void *base, size_t nmemb, size_t size, __compar_f - int (*_func_)(const typeof(p[0])*, const typeof(p[0])*) = func; \ - _qsort_safe((p), (n), sizeof((p)[0]), (__compar_fn_t) _func_); \ - }) -- --static inline void qsort_r_safe(void *base, size_t nmemb, size_t size, __compar_d_fn_t compar, void *userdata) { -- if (nmemb <= 1) -- return; -- -- assert(base); -- qsort_r(base, nmemb, size, compar, userdata); --} -- --#define typesafe_qsort_r(p, n, func, userdata) \ -- ({ \ -- int (*_func_)(const typeof(p[0])*, const typeof(p[0])*, typeof(userdata)) = func; \ -- qsort_r_safe((p), (n), sizeof((p)[0]), (__compar_d_fn_t) _func_, userdata); \ -- }) diff --git a/shared/systemd/src/basic/stdio-util.h b/shared/systemd/src/basic/stdio-util.h -index c3b9448..e80a938 100644 +index d45d3c1a6..fee1a57ca 100644 --- a/shared/systemd/src/basic/stdio-util.h +++ b/shared/systemd/src/basic/stdio-util.h -@@ -1,7 +1,9 @@ - /* SPDX-License-Identifier: LGPL-2.1+ */ +@@ -2,7 +2,9 @@ #pragma once + #if 0 /* NM_IGNORED */ +#if defined(__GLIBC__) #include <printf.h> +#endif + #endif /* NM_IGNORED */ #include <stdarg.h> #include <stdio.h> - #include <sys/types.h> diff --git a/shared/systemd/src/basic/string-util.h b/shared/systemd/src/basic/string-util.h -index cefbda3..71e4dec 100644 +index 593cf04ae..541c393f6 100644 --- a/shared/systemd/src/basic/string-util.h +++ b/shared/systemd/src/basic/string-util.h @@ -26,6 +26,11 @@ @@ -168,3 +149,6 @@ index cefbda3..71e4dec 100644 int strcmp_ptr(const char *a, const char *b) _pure_; int strcasecmp_ptr(const char *a, const char *b) _pure_; +-- +2.20.1 + diff --git a/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl-systemd-specific.patch b/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl-systemd-specific.patch new file mode 100644 index 0000000000..d83efd39e4 --- /dev/null +++ b/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl-systemd-specific.patch @@ -0,0 +1,26 @@ +From 7d9a11a17da425d106791ada7100d7a6559e6065 Mon Sep 17 00:00:00 2001 +From: Adrian Freihofer <adrian.freihofer@siemens.com> +Date: Sat, 7 Mar 2020 14:24:01 +0100 +Subject: [PATCH 2/2] Fix build with musl - systemd specific + +--- + src/core/systemd/src/libsystemd-network/sd-dhcp6-client.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/core/systemd/src/libsystemd-network/sd-dhcp6-client.c b/src/core/systemd/src/libsystemd-network/sd-dhcp6-client.c +index 3fafd3c0e..79d6096c2 100644 +--- a/src/core/systemd/src/libsystemd-network/sd-dhcp6-client.c ++++ b/src/core/systemd/src/libsystemd-network/sd-dhcp6-client.c +@@ -8,7 +8,9 @@ + #include <errno.h> + #include <sys/ioctl.h> + #if 0 /* NM_IGNORED */ ++#ifdef __GLIBC__ /* musl supplies full set of userspace headers */ + #include <linux/if_arp.h> ++#endif + #else /* NM_IGNORED */ + #include <net/if_arp.h> + #endif /* NM_IGNORED */ +-- +2.20.1 + diff --git a/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl.patch b/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl.patch deleted file mode 100644 index 0f43c0c684..0000000000 --- a/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0002-Fix-build-with-musl.patch +++ /dev/null @@ -1,121 +0,0 @@ -From bacc14089c80ec757025789ff054a05e1f9c088d Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com> -Date: Mon, 8 Apr 2019 23:10:43 +0200 -Subject: [PATCH] Fix build with musl -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com> -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -The build issues caused by definition conflicts musl vs linux-libc headers -(error: redefinition of ...) can be reduced to two headers: - -1. netinet/if_ether.h <-> linux/if_ether.h: linux-libc header plays well with - glibc and musl headers in case libc's variant (netinet/if_ether.h) is - included BEFORE linux variant [1]. We add include at two positions: - 1. shared/nm-default.h: This is a global which used for networkmanager and - is included at the very beginning of all c-files. - 2. libnm-core/nm-utils.h: This file makes it into installation and is used - by dependent packages as network-manager-applet -2. net/if_arp. <-> linux/if_ether.h: linux-libc: Unfortunaly these files do - not play together in harmony. Therefore the libc variant is included early in - shared/nm-default.h and occurances linux/if_arp.h are removed. - -Note: -Be aware that this is still nasty business: We have to trust that musl headers -define same signatures as linux would do - just because musl-makers consider -linux-libc headers 'notoriously broken for userspace' [2] (search for -'error: redefinition of'). - -[1] http://lists.openembedded.org/pipermail/openembedded-core/2019-March/280440.html -[2] https://wiki.musl-libc.org/faq.html - -Upstream-Status: Pending - -Signed-off-by: Andreas Müller <schnitzeltony@gmail.com> - ---- - clients/tui/nmt-device-entry.c | 1 - - libnm-core/nm-utils.h | 4 ++++ - shared/nm-default.h | 3 +++ - src/devices/nm-device.c | 2 +- - src/platform/nm-linux-platform.c | 1 - - 5 files changed, 8 insertions(+), 3 deletions(-) - -diff --git a/clients/tui/nmt-device-entry.c b/clients/tui/nmt-device-entry.c -index 692a467..cf9b32e 100644 ---- a/clients/tui/nmt-device-entry.c -+++ b/clients/tui/nmt-device-entry.c -@@ -26,7 +26,6 @@ - #include "nmt-device-entry.h" - - #include <sys/socket.h> --#include <linux/if_arp.h> - - #include "nmtui.h" - -diff --git a/libnm-core/nm-utils.h b/libnm-core/nm-utils.h -index 9589c51..b82c5cf 100644 ---- a/libnm-core/nm-utils.h -+++ b/libnm-core/nm-utils.h -@@ -10,6 +10,10 @@ - #error "Only <NetworkManager.h> can be included directly." - #endif - -+/* include as early as possible for musl */ -+#include <netinet/if_ether.h> -+/* #include <net/if_arp.h> - uncoment for broken dependents?? */ -+ - #include <glib.h> - - #include <netinet/in.h> -diff --git a/shared/nm-default.h b/shared/nm-default.h -index b322f1d..c287dbe 100644 ---- a/shared/nm-default.h -+++ b/shared/nm-default.h -@@ -178,6 +178,9 @@ - #endif - - #include <stdlib.h> -+/* include as early as possible for musl */ -+#include <netinet/if_ether.h> -+#include <net/if_arp.h> - - /*****************************************************************************/ - -diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c -index 0be05f2..04061f9 100644 ---- a/src/devices/nm-device.c -+++ b/src/devices/nm-device.c -@@ -9,6 +9,7 @@ - #include "nm-device.h" - - #include <netinet/in.h> -+#include <net/if.h> - #include <unistd.h> - #include <sys/ioctl.h> - #include <signal.h> -@@ -17,7 +18,6 @@ - #include <arpa/inet.h> - #include <fcntl.h> - #include <linux/if_addr.h> --#include <linux/if_arp.h> - #include <linux/rtnetlink.h> - - #include "nm-std-aux/unaligned.h" -diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c -index b377c85..87af59a 100644 ---- a/src/platform/nm-linux-platform.c -+++ b/src/platform/nm-linux-platform.c -@@ -14,7 +14,6 @@ - #include <libudev.h> - #include <linux/fib_rules.h> - #include <linux/ip.h> --#include <linux/if_arp.h> - #include <linux/if_bridge.h> - #include <linux/if_link.h> - #include <linux/if_tun.h> diff --git a/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0003-Fix-build-with-musl-systemd-specific.patch b/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0003-Fix-build-with-musl-systemd-specific.patch deleted file mode 100644 index 5735d51a8c..0000000000 --- a/meta-networking/recipes-connectivity/networkmanager/networkmanager/musl/0003-Fix-build-with-musl-systemd-specific.patch +++ /dev/null @@ -1,26 +0,0 @@ -From ed748a28076eada9f38e3f4a476f28d7a10ba84b Mon Sep 17 00:00:00 2001 -From: Adrian Freihofer <adrian.freihofer@siemens.com> -Date: Sat, 7 Mar 2020 14:24:01 +0100 -Subject: [PATCH] Fix build with musl - systemd specific - ---- - src/systemd/src/libsystemd-network/sd-dhcp6-client.c | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/src/systemd/src/libsystemd-network/sd-dhcp6-client.c b/src/systemd/src/libsystemd-network/sd-dhcp6-client.c -index ec7f1be..31bcd4d 100644 ---- a/src/systemd/src/libsystemd-network/sd-dhcp6-client.c -+++ b/src/systemd/src/libsystemd-network/sd-dhcp6-client.c -@@ -7,7 +7,9 @@ - - #include <errno.h> - #include <sys/ioctl.h> -+#ifdef __GLIBC__ /* musl supplies full set of userspace headers */ - #include <linux/if_arp.h> -+#endif - #include <linux/if_infiniband.h> - - #include "sd-dhcp6-client.h" --- -2.24.1 - |