Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 416208 Details for
Bug 544476
sys-kernel/linux-headers-{3.18,3.19}: portability fixes for musl
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
portability fixes 4.3 headers
linux-headers-4.3-musl.patch (text/plain), 3.82 KB, created by
Jory A. Pratt
on 2015-11-07 03:11:19 UTC
(
hide
)
Description:
portability fixes 4.3 headers
Filename:
MIME Type:
Creator:
Jory A. Pratt
Created:
2015-11-07 03:11:19 UTC
Size:
3.82 KB
patch
obsolete
>diff -urN a/include/uapi/linux/if_ether.h b/include/uapi/linux/if_ether.h >--- a/include/uapi/linux/if_ether.h 2015-11-02 12:36:00.000000000 -0600 >+++ b/include/uapi/linux/if_ether.h 2015-11-06 21:07:36.109409947 -0600 >@@ -22,6 +22,7 @@ > #define _UAPI_LINUX_IF_ETHER_H > > #include <linux/types.h> >+#include <linux/libc-compat.h> > > /* > * IEEE 802.3 Ethernet magic constants. The frame sizes omit the preamble >@@ -134,12 +135,12 @@ > /* > * This is an Ethernet frame header. > */ >- >+#if __UAPI_DEF_ETHHDR > struct ethhdr { > unsigned char h_dest[ETH_ALEN]; /* destination eth addr */ > unsigned char h_source[ETH_ALEN]; /* source ether addr */ > __be16 h_proto; /* packet type ID field */ > } __attribute__((packed)); >- >+#endif > > #endif /* _UAPI_LINUX_IF_ETHER_H */ >diff -urN a/include/uapi/linux/kernel.h b/include/uapi/linux/kernel.h >--- a/include/uapi/linux/kernel.h 2015-11-02 12:36:00.000000000 -0600 >+++ b/include/uapi/linux/kernel.h 2015-11-06 20:59:38.595400307 -0600 >@@ -1,7 +1,9 @@ > #ifndef _UAPI_LINUX_KERNEL_H > #define _UAPI_LINUX_KERNEL_H > >+#ifdef __GLIBC__ > #include <linux/sysinfo.h> >+#endif > > /* > * 'kernel.h' contains some often-used function prototypes etc >diff -urN a/include/uapi/linux/libc-compat.h b/include/uapi/linux/libc-compat.h >--- a/include/uapi/linux/libc-compat.h 2015-11-02 12:36:00.000000000 -0600 >+++ b/include/uapi/linux/libc-compat.h 2015-11-06 21:09:14.645411936 -0600 >@@ -48,13 +48,18 @@ > #ifndef _UAPI_LIBC_COMPAT_H > #define _UAPI_LIBC_COMPAT_H > >-/* We have included glibc headers... */ >-#if defined(__GLIBC__) >+#ifndef __KERNEL__ /* we're used from userspace */ > >-/* Coordinate with glibc netinet/in.h header. */ >+#ifdef _NETINET_IF_ETHER_H /* musl */ >+#define __UAPI_DEF_ETHHDR 0 >+#else /* glibc uses __NETINET_IF_ETHER_H, and includes the kernel header. */ >+#define __UAPI_DEF_ETHHDR 1 >+#endif >+ >+/* Coordinate with libc netinet/in.h header. */ > #if defined(_NETINET_IN_H) > >-/* GLIBC headers included first so don't define anything >+/* libc headers included first so don't define anything > * that would already be defined. */ > #define __UAPI_DEF_IN_ADDR 0 > #define __UAPI_DEF_IN_IPPROTO 0 >@@ -64,15 +69,7 @@ > #define __UAPI_DEF_IN_CLASS 0 > > #define __UAPI_DEF_IN6_ADDR 0 >-/* The exception is the in6_addr macros which must be defined >- * if the glibc code didn't define them. This guard matches >- * the guard in glibc/inet/netinet/in.h which defines the >- * additional in6_addr macros e.g. s6_addr16, and s6_addr32. */ >-#if defined(__USE_MISC) || defined (__USE_GNU) > #define __UAPI_DEF_IN6_ADDR_ALT 0 >-#else >-#define __UAPI_DEF_IN6_ADDR_ALT 1 >-#endif > #define __UAPI_DEF_SOCKADDR_IN6 0 > #define __UAPI_DEF_IPV6_MREQ 0 > #define __UAPI_DEF_IPPROTO_V6 0 >@@ -80,10 +77,10 @@ > #define __UAPI_DEF_IN6_PKTINFO 0 > #define __UAPI_DEF_IP6_MTUINFO 0 > >-#else >+#else /* defined(_NETINET_IN_H) */ > > /* Linux headers included first, and we must define everything >- * we need. The expectation is that glibc will check the >+ * we need. The expectation is that libc will check the > * __UAPI_DEF_* defines and adjust appropriately. */ > #define __UAPI_DEF_IN_ADDR 1 > #define __UAPI_DEF_IN_IPPROTO 1 >@@ -93,7 +90,7 @@ > #define __UAPI_DEF_IN_CLASS 1 > > #define __UAPI_DEF_IN6_ADDR 1 >-/* We unconditionally define the in6_addr macros and glibc must >+/* We unconditionally define the in6_addr macros and libc must > * coordinate. */ > #define __UAPI_DEF_IN6_ADDR_ALT 1 > #define __UAPI_DEF_SOCKADDR_IN6 1 >@@ -115,7 +112,7 @@ > /* If we did not see any headers from any supported C libraries, > * or we are being included in the kernel, then define everything > * that we need. */ >-#else /* !defined(__GLIBC__) */ >+#else /* __KERNEL__ */ > > /* Definitions for in.h */ > #define __UAPI_DEF_IN_ADDR 1 >@@ -138,6 +135,6 @@ > /* Definitions for xattr.h */ > #define __UAPI_DEF_XATTR 1 > >-#endif /* __GLIBC__ */ >+#endif /* __KERNEL__ */ > > #endif /* _UAPI_LIBC_COMPAT_H */
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 544476
:
399746
|
399860
|
399862
| 416208 |
429462