summaryrefslogtreecommitdiff
path: root/package/musl
diff options
context:
space:
mode:
authorBaruch Siach <baruch@tkos.co.il>2016-12-16 06:52:17 +0200
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>2016-12-17 15:26:36 +0100
commit69ced963555b82f847d03ff3a832e4748ed0e721 (patch)
treec640b9e9daf9607182d2919420beb0106a2a7901 /package/musl
parent4470dd9b1bdbb9b39e9fb13f27bcaa044719de6d (diff)
musl: workaround kernel if_ether.h header conflict
Add a patch that defines _LINUX_IF_ETHER_H in netinet/if_ether.h to avoid the conflicting kernel if_ether.h. Other musl distros (Alpine, Sabotage, Gentoo) patch[1] the kernel headers instead. This is not practical in Buildroot, since we allow the user to choose the kernel version. This only fixes the normal case of including linux/if_ether.h (directly or indirectly) after netinet/if_ether.h. Fixes (tcpreplay): http://autobuild.buildroot.net/results/a65/a65b27f9e288f94f041ced64313dbf55af47bf36/ [1] https://cgit.gentoo.org/proj/musl.git/diff/sys-kernel/linux-headers/files/libc-compat.h-prevent-redefinition-of-struct-ethhdr.patch?id=8eddda8072add075ebf56cf6d288bc1450d6b5f8 Cc: Rich Felker <dalias@aerifal.cx> Signed-off-by: Baruch Siach <baruch@tkos.co.il> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Diffstat (limited to 'package/musl')
-rw-r--r--package/musl/0002-avoid-kernel-if_ether.h.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/package/musl/0002-avoid-kernel-if_ether.h.patch b/package/musl/0002-avoid-kernel-if_ether.h.patch
new file mode 100644
index 000000000..8efbcc845
--- /dev/null
+++ b/package/musl/0002-avoid-kernel-if_ether.h.patch
@@ -0,0 +1,30 @@
+From 3984adc4976de7553f51e0cf4de1e18c373b332b Mon Sep 17 00:00:00 2001
+From: Baruch Siach <baruch@tkos.co.il>
+Date: Thu, 15 Dec 2016 15:10:19 +0200
+Subject: [PATCH] Avoid redefinition of struct ethhdr
+
+This is a workaround to the if_ether.h conflict between musl and the kernel.
+Both define struct ethhdr.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+ include/netinet/if_ether.h | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/include/netinet/if_ether.h b/include/netinet/if_ether.h
+index 11ee65823f93..cfe1949d3371 100644
+--- a/include/netinet/if_ether.h
++++ b/include/netinet/if_ether.h
+@@ -1,6 +1,9 @@
+ #ifndef _NETINET_IF_ETHER_H
+ #define _NETINET_IF_ETHER_H
+
++/* Suppress kernel if_ether.h header inclusion */
++#define _LINUX_IF_ETHER_H
++
+ #include <stdint.h>
+ #include <sys/types.h>
+
+--
+2.10.2
+