[OE-core] [PATCH 1/2] iproute2: upgrade to 4.10.0

Maxin B. John maxin.john at intel.com
Fri Feb 24 16:07:07 UTC 2017


4.9.0 -> 4.10.0

added the following patch to fix build with musl libc
 1) 0001-libc-compat.h-add-musl-workaround.patch

Signed-off-by: Maxin B. John <maxin.john at intel.com>
---
 .../0001-libc-compat.h-add-musl-workaround.patch   |  41 +++++++
 .../iproute2/iproute2/iproute2-4.9.0-musl.patch    | 131 ---------------------
 .../{iproute2_4.9.0.bb => iproute2_4.10.0.bb}      |   6 +-
 3 files changed, 44 insertions(+), 134 deletions(-)
 create mode 100644 meta/recipes-connectivity/iproute2/iproute2/0001-libc-compat.h-add-musl-workaround.patch
 delete mode 100644 meta/recipes-connectivity/iproute2/iproute2/iproute2-4.9.0-musl.patch
 rename meta/recipes-connectivity/iproute2/{iproute2_4.9.0.bb => iproute2_4.10.0.bb} (59%)

diff --git a/meta/recipes-connectivity/iproute2/iproute2/0001-libc-compat.h-add-musl-workaround.patch b/meta/recipes-connectivity/iproute2/iproute2/0001-libc-compat.h-add-musl-workaround.patch
new file mode 100644
index 0000000..3d324c9
--- /dev/null
+++ b/meta/recipes-connectivity/iproute2/iproute2/0001-libc-compat.h-add-musl-workaround.patch
@@ -0,0 +1,41 @@
+From b7d96340c55afb7023ded0041107c63dbd886196 Mon Sep 17 00:00:00 2001
+From: Baruch Siach <baruch at tkos.co.il>
+Date: Thu, 22 Dec 2016 15:26:30 +0200
+Subject: [PATCH] libc-compat.h: add musl workaround
+
+The libc-compat.h kernel header uses glibc specific macros (__GLIBC__ and
+__USE_MISC) to solve conflicts with libc provided headers. This patch makes
+libc-compat.h work for musl libc as well.
+
+Upstream-Status: Pending
+
+Taken From:
+https://git.buildroot.net/buildroot/tree/package/iproute2/0001-Add-the-musl-workaround-to-the-libc-compat.h-copy.patch
+
+Signed-off-by: Baruch Siach <baruch at tkos.co.il>
+Signed-off-by: Maxin B. John <maxin.john at intel.com>
+---
+ include/linux/libc-compat.h | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/include/linux/libc-compat.h b/include/linux/libc-compat.h
+index f38571d..30f0b67 100644
+--- a/include/linux/libc-compat.h
++++ b/include/linux/libc-compat.h
+@@ -49,10 +49,12 @@
+ #define _LIBC_COMPAT_H
+ 
+ /* We have included glibc headers... */
+-#if defined(__GLIBC__)
++#if 1
++#define __USE_MISC
+ 
+ /* Coordinate with glibc net/if.h header. */
+ #if defined(_NET_IF_H) && defined(__USE_MISC)
++#define __UAPI_DEF_IF_NET_DEVICE_FLAGS_LOWER_UP_DORMANT_ECHO 0
+ 
+ /* GLIBC headers included first so don't define anything
+  * that would already be defined. */
+-- 
+2.4.0
+
diff --git a/meta/recipes-connectivity/iproute2/iproute2/iproute2-4.9.0-musl.patch b/meta/recipes-connectivity/iproute2/iproute2/iproute2-4.9.0-musl.patch
deleted file mode 100644
index 737a90c..0000000
--- a/meta/recipes-connectivity/iproute2/iproute2/iproute2-4.9.0-musl.patch
+++ /dev/null
@@ -1,131 +0,0 @@
-Subject: [PATCH] Avoid in6_addr redefinition
-
-Due to both <netinet/in.h> and <linux/in6.h> being included, the 
-in6_addr is being redefined: once from the C library headers and once
-from the kernel headers. This causes some build failures with for 
-example the musl C library.
-
-In order to fix this, use just the C library header <netinet/in.h>.
-Original patch taken from
-http://git.alpinelinux.org/cgit/aports/tree/main/iproute2/musl-fixes.patch.
-
-(Refreshed the patch for 4.9 release)
-
-Upstream-Status: Pending
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
-Signed-off-by: Maxin B. John <maxin.john at intel.com>
-Signed-off-by: Zheng Ruoqin <zhengrq.fnst at cn.fujitsu.com>
----
- include/libiptc/ipt_kernel_headers.h     | 1 -
- include/linux/if_bridge.h                | 1 -
- include/linux/if_tunnel.h                | 2 --
- include/linux/netfilter.h                | 2 --
- include/linux/netfilter_ipv4/ip_tables.h | 1 -
- include/linux/xfrm.h                     | 1 -
- include/utils.h                          | 1 +
- ip/ip6tunnel.c                           | 1 -
- 8 files changed, 1 insertion(+), 9 deletions(-)
-
-diff --git a/include/libiptc/ipt_kernel_headers.h b/include/libiptc/ipt_kernel_headers.h
-index a5963e9..42f8610 100644
---- a/include/libiptc/ipt_kernel_headers.h
-+++ b/include/libiptc/ipt_kernel_headers.h
-@@ -6,7 +6,6 @@
- #include <limits.h>
- 
- #include <netinet/ip.h>
--#include <netinet/in.h>
- #include <netinet/ip_icmp.h>
- #include <netinet/tcp.h>
- #include <netinet/udp.h>
-diff --git a/include/linux/if_bridge.h b/include/linux/if_bridge.h
-index b7393dd..a7028ab 100644
---- a/include/linux/if_bridge.h
-+++ b/include/linux/if_bridge.h
-@@ -15,7 +15,6 @@
- 
- #include <linux/types.h>
- #include <linux/if_ether.h>
--#include <linux/in6.h>
- 
- #define SYSFS_BRIDGE_ATTR	"bridge"
- #define SYSFS_BRIDGE_FDB	"brforward"
-diff --git a/include/linux/if_tunnel.h b/include/linux/if_tunnel.h
-index 4f975f5..2680646 100644
---- a/include/linux/if_tunnel.h
-+++ b/include/linux/if_tunnel.h
-@@ -2,9 +2,7 @@
- #define _IF_TUNNEL_H_
- 
- #include <linux/types.h>
--#include <linux/if.h>
- #include <linux/ip.h>
--#include <linux/in6.h>
- #include <asm/byteorder.h>
- 
- 
-diff --git a/include/linux/netfilter.h b/include/linux/netfilter.h
-index b71b4c9..3e4e6ae 100644
---- a/include/linux/netfilter.h
-+++ b/include/linux/netfilter.h
-@@ -4,8 +4,6 @@
- #include <linux/types.h>
- 
- #include <linux/sysctl.h>
--#include <linux/in.h>
--#include <linux/in6.h>
- 
- /* Responses from hook functions. */
- #define NF_DROP 0
-diff --git a/include/linux/netfilter_ipv4/ip_tables.h b/include/linux/netfilter_ipv4/ip_tables.h
-index 456fb86..38542b4 100644
---- a/include/linux/netfilter_ipv4/ip_tables.h
-+++ b/include/linux/netfilter_ipv4/ip_tables.h
-@@ -17,7 +17,6 @@
- 
- #include <linux/types.h>
- 
--#include <linux/if.h>
- #include <linux/netfilter_ipv4.h>
- 
- #include <linux/netfilter/x_tables.h>
-diff --git a/include/linux/xfrm.h b/include/linux/xfrm.h
-index d2dd1fd..8c72966 100644
---- a/include/linux/xfrm.h
-+++ b/include/linux/xfrm.h
-@@ -1,7 +1,6 @@
- #ifndef _LINUX_XFRM_H
- #define _LINUX_XFRM_H
- 
--#include <linux/in6.h>
- #include <linux/types.h>
- 
- /* All of the structures in this file may not change size as they are
-diff --git a/include/utils.h b/include/utils.h
-index 1b4f939..d10840b 100644
---- a/include/utils.h
-+++ b/include/utils.h
-@@ -1,6 +1,7 @@
- #ifndef __UTILS_H__
- #define __UTILS_H__ 1
- 
-+#include <sys/param.h>  /* MAXPATHLEN */
- #include <sys/types.h>
- #include <asm/types.h>
- #include <resolv.h>
-diff --git a/ip/ip6tunnel.c b/ip/ip6tunnel.c
-index b1c0ae6..8fa4eb2 100644
---- a/ip/ip6tunnel.c
-+++ b/ip/ip6tunnel.c
-@@ -28,7 +28,6 @@
- #include <arpa/inet.h>
- #include <sys/ioctl.h>
- #include <linux/ip.h>
--#include <linux/if.h>
- #include <linux/if_arp.h>
- #include <linux/if_tunnel.h>
- #include <linux/ip6_tunnel.h>
--- 
-2.7.4
-
diff --git a/meta/recipes-connectivity/iproute2/iproute2_4.9.0.bb b/meta/recipes-connectivity/iproute2/iproute2_4.10.0.bb
similarity index 59%
rename from meta/recipes-connectivity/iproute2/iproute2_4.9.0.bb
rename to meta/recipes-connectivity/iproute2/iproute2_4.10.0.bb
index 808e550..a050e87 100644
--- a/meta/recipes-connectivity/iproute2/iproute2_4.9.0.bb
+++ b/meta/recipes-connectivity/iproute2/iproute2_4.10.0.bb
@@ -3,11 +3,11 @@ require iproute2.inc
 SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BP}.tar.xz \
            file://configure-cross.patch \
            file://0001-iproute2-de-bash-scripts.patch \
-           file://iproute2-4.9.0-musl.patch \
+           file://0001-libc-compat.h-add-musl-workaround.patch \
           "
 
-SRC_URI[md5sum] = "44a8371a4b2c40e48e4c9f98cbd41391"
-SRC_URI[sha256sum] = "c0f30f043f7767cc1b2cd2197b08d4e9b2392c95823fabe30bbce308c30116c4"
+SRC_URI[md5sum] = "b94a2b0edefaeac124dc8f5d006931b9"
+SRC_URI[sha256sum] = "22b1e1c1fc704ad35837e5a66103739727b8b48ac90b48c13f79b7367ff0a9a8"
 
 # CFLAGS are computed in Makefile and reference CCOPTS
 #
-- 
2.4.0




More information about the Openembedded-core mailing list