diff options
author | Bruce Ashfield <bruce.ashfield@windriver.com> | 2013-12-10 10:16:15 -0500 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-12-14 09:09:34 +0000 |
commit | f2f8a2a05cbfff7e1d5d979ec1b9f4f371579fb9 (patch) | |
tree | c71ec80deb015c9b7e6a4fab3c3435cb251b9e5d /meta/recipes-kernel | |
parent | 5877781d1dcb2883d00097b66ff2481a4a5ff930 (diff) | |
download | openembedded-core-f2f8a2a05cbfff7e1d5d979ec1b9f4f371579fb9.tar.gz openembedded-core-f2f8a2a05cbfff7e1d5d979ec1b9f4f371579fb9.tar.bz2 openembedded-core-f2f8a2a05cbfff7e1d5d979ec1b9f4f371579fb9.zip |
linux-libc-headers: fix MIPS klibc build error
As reported by Andrea Adami, klibc fails to build for MIPS with the 3.10 libc-headers
commit ca044f9a [UAPI: fix endianness conditionals in linux/raid/md_p.h] is the root
cause of the breakage.
This is fixed in the kernel source itself, but we must also carry the
change in the linux-libc-headers recipe, until we update past the
3.13 kernel.
With this change, we can again build klibc for mips, with no impact
on the rest of the system.
cc: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta/recipes-kernel')
2 files changed, 37 insertions, 0 deletions
diff --git a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/UAPI-include-asm-byteorder.h-in-linux-raid-md_p.h.patch b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/UAPI-include-asm-byteorder.h-in-linux-raid-md_p.h.patch new file mode 100644 index 0000000000..1bf0e7ec85 --- /dev/null +++ b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers/UAPI-include-asm-byteorder.h-in-linux-raid-md_p.h.patch @@ -0,0 +1,34 @@ +From c0f8bd146a8b3e630798561c605f5669823107af Mon Sep 17 00:00:00 2001 +From: Aurelien Jarno <aurelien@aurel32.net> +Date: Thu, 14 Nov 2013 15:16:19 +1100 +Subject: [PATCH] UAPI: include <asm/byteorder.h> in linux/raid/md_p.h + +linux/raid/md_p.h is using conditionals depending on endianess and fails +with an error if neither of __BIG_ENDIAN, __LITTLE_ENDIAN or +__BYTE_ORDER are defined, but it doesn't include any header which can +define these constants. This make this header unusable alone. + +This patch adds a #include <asm/byteorder.h> at the beginning of this +header to make it usable alone. This is needed to compile klibc on MIPS. + +Signed-off-by: Aurelien Jarno <aurelien@aurel32.net> +Signed-off-by: NeilBrown <neilb@suse.de> +--- + include/uapi/linux/raid/md_p.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/include/uapi/linux/raid/md_p.h b/include/uapi/linux/raid/md_p.h +index fe1a540..f7cf7f3 100644 +--- a/include/uapi/linux/raid/md_p.h ++++ b/include/uapi/linux/raid/md_p.h +@@ -16,6 +16,7 @@ + #define _MD_P_H + + #include <linux/types.h> ++#include <asm/byteorder.h> + + /* + * RAID superblock. +-- +1.8.1.2 + diff --git a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_3.10.bb b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_3.10.bb index 65df230c4b..a78d4ba59a 100644 --- a/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_3.10.bb +++ b/meta/recipes-kernel/linux-libc-headers/linux-libc-headers_3.10.bb @@ -3,6 +3,9 @@ require linux-libc-headers.inc SRC_URI += "file://0001-ptrace.h-remove-ptrace_peeksiginfo_args.patch" SRC_URI += "file://scripts-Makefile.headersinst-install-headers-from-sc.patch" +# fixes klibc build for MIPS, drop when libc-headers > 3.13 +SRC_URI += "file://UAPI-include-asm-byteorder.h-in-linux-raid-md_p.h.patch" + SRC_URI[md5sum] = "72d0a9b3e60cd86fabcd3f24b1708944" SRC_URI[sha256sum] = "46c9e55e1fddf40813b8d697d5645037a8e2af5c1a8dff52b3fe82b5021582b8" |