diff options
author | Jonas Gorski <jogo@openwrt.org> | 2015-07-03 11:48:45 +0000 |
---|---|---|
committer | Jonas Gorski <jogo@openwrt.org> | 2015-07-03 11:48:45 +0000 |
commit | fa401693d986997c9761116d32826dacadad816a (patch) | |
tree | 5c7d1e0cb6751c5d6e0c5922e9df895b01ec329c /target/linux/generic/patches-3.18/270-uapi-kernel.h-glibc-specific-inclusion-of-sysinfo.h.patch | |
parent | 0abd6ce0cecf7a6dd7839120dc868b77232ae32c (diff) | |
download | mtk-20170518-fa401693d986997c9761116d32826dacadad816a.zip mtk-20170518-fa401693d986997c9761116d32826dacadad816a.tar.gz mtk-20170518-fa401693d986997c9761116d32826dacadad816a.tar.bz2 |
kernel: improve uapi headers coexistence with musl
Make some network uapi headers detect if they are included after
not only glibc but also musl headers.
Signed-off-by: Jonas Gorski <jogo@openwrt.org>
SVN-Revision: 46161
Diffstat (limited to 'target/linux/generic/patches-3.18/270-uapi-kernel.h-glibc-specific-inclusion-of-sysinfo.h.patch')
-rw-r--r-- | target/linux/generic/patches-3.18/270-uapi-kernel.h-glibc-specific-inclusion-of-sysinfo.h.patch | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/target/linux/generic/patches-3.18/270-uapi-kernel.h-glibc-specific-inclusion-of-sysinfo.h.patch b/target/linux/generic/patches-3.18/270-uapi-kernel.h-glibc-specific-inclusion-of-sysinfo.h.patch new file mode 100644 index 0000000..762f498 --- /dev/null +++ b/target/linux/generic/patches-3.18/270-uapi-kernel.h-glibc-specific-inclusion-of-sysinfo.h.patch @@ -0,0 +1,34 @@ +From 8b05e325824d3b38e52a7748b3b5dc34dc1c0f6d Mon Sep 17 00:00:00 2001 +From: David Heidelberger <david.heidelberger@ixit.cz> +Date: Mon, 29 Jun 2015 14:37:54 +0200 +Subject: [PATCH 1/3] uapi/kernel.h: glibc specific inclusion of sysinfo.h + +including sysinfo.h from kernel.h makes no sense whatsoever, +but removing it breaks glibc's userspace header, +which includes kernel.h instead of sysinfo.h from their sys/sysinfo.h. +this seems to be a historical mistake. +on musl, including any header that uses kernel.h directly or indirectly +plus sys/sysinfo.h will produce a compile error due to redefinition of +struct sysinfo from sys/sysinfo.h. +so for now, only include it on glibc or when including from kernel +in order not to break their headers. + +Signed-off-by: John Spencer <maillist-linux@barfooze.de> +Signed-off-by: David Heidelberger <david.heidelberger@ixit.cz> +Signed-off-by: Jonas Gorski <jogo@openwrt.org> +--- + include/uapi/linux/kernel.h | 2 ++ + 1 file changed, 2 insertions(+) + +--- a/include/uapi/linux/kernel.h ++++ b/include/uapi/linux/kernel.h +@@ -1,7 +1,9 @@ + #ifndef _UAPI_LINUX_KERNEL_H + #define _UAPI_LINUX_KERNEL_H + ++#if defined(__KERNEL__) || defined( __GLIBC__) + #include <linux/sysinfo.h> ++#endif + + /* + * 'kernel.h' contains some often-used function prototypes etc |