5b87a259db59d4b4b76de3135f3a7ff9d71f3103
[openwrt/staging/mkresin.git] / tools / mkimage / patches / 050-Add-compatibility-with-non-Linux-hosts.patch
1 From 590b23a46b7ae0f5ec5e8f57a85c0e7578c71141 Mon Sep 17 00:00:00 2001
2 From: Hauke Mehrtens <hauke@hauke-m.de>
3 Date: Sun, 26 Apr 2020 17:15:17 +0200
4 Subject: [PATCH 1/2] Add compatibility with non Linux hosts
5
6 This adds some changes to the u-boot tools to make it possible to build
7 them on non Linux hosts like MacOS or FreeBSD.
8
9 asm/byteorder.h, asm/posix_types.h, asm/types.h and linux/kernel.h are
10 not available on such systems. Remove the include and add the necessary
11 parts for these header files manually or remove the usage too.
12
13 __u64 is not available on FreeBSD, remove its usage.
14
15 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
16 ---
17 include/image.h | 2 ++
18 include/imx8image.h | 5 +++++
19 include/linux/posix_types.h | 2 ++
20 include/linux/types.h | 4 +++-
21 lib/rsa/rsa-sign.c | 2 +-
22 5 files changed, 13 insertions(+), 2 deletions(-)
23
24 --- a/include/image.h
25 +++ b/include/image.h
26 @@ -16,7 +16,9 @@
27 #define __IMAGE_H__
28
29 #include "compiler.h"
30 +#ifdef linux
31 #include <asm/byteorder.h>
32 +#endif
33 #include <stdbool.h>
34
35 /* Define this to avoid #ifdefs later on */
36 --- a/include/linux/posix_types.h
37 +++ b/include/linux/posix_types.h
38 @@ -43,6 +43,8 @@ typedef void (*__kernel_sighandler_t)(in
39 /* Type of a SYSV IPC key. */
40 typedef int __kernel_key_t;
41
42 +#ifdef linux
43 #include <asm/posix_types.h>
44 +#endif
45
46 #endif /* _LINUX_POSIX_TYPES_H */
47 --- a/include/linux/types.h
48 +++ b/include/linux/types.h
49 @@ -2,7 +2,9 @@
50 #define _LINUX_TYPES_H
51
52 #include <linux/posix_types.h>
53 +#ifdef linux
54 #include <asm/types.h>
55 +#endif
56 #include <stdbool.h>
57
58 #ifndef __KERNEL_STRICT_NAMES
59 @@ -142,7 +144,7 @@ typedef __u16 __bitwise __le16;
60 typedef __u16 __bitwise __be16;
61 typedef __u32 __bitwise __le32;
62 typedef __u32 __bitwise __be32;
63 -#if defined(__GNUC__)
64 +#if defined(__GNUC__) && defined(linux)
65 typedef __u64 __bitwise __le64;
66 typedef __u64 __bitwise __be64;
67 #endif