uboot-ar71xx: fix musl host build
authorAndy Walsh <andy.walsh44+github@gmail.com>
Tue, 14 Aug 2018 12:27:47 +0000 (14:27 +0200)
committerJo-Philipp Wich <jo@mein.io>
Tue, 22 Jan 2019 12:29:46 +0000 (13:29 +0100)
On musl based distributions, u-boot 2010.03 fails to build with:

    u-boot-2010.03/include/u-boot/crc.h:29:50: error: unknown type name 'uint'
      uint32_t crc32 (uint32_t, const unsigned char *, uint);

The issue was fixed in the newer u-boot-2018.03 version, this commit
backports the change to the older version used by ar71xx/ath79.

Signed-off-by: Andy Walsh <andy.walsh44+github@gmail.com>
[add commit message from PR description]
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
package/boot/uboot-ar71xx/patches/023-musl-compat.patch [new file with mode: 0644]

diff --git a/package/boot/uboot-ar71xx/patches/023-musl-compat.patch b/package/boot/uboot-ar71xx/patches/023-musl-compat.patch
new file mode 100644 (file)
index 0000000..1dacc99
--- /dev/null
@@ -0,0 +1,13 @@
+--- a/include/compiler.h       2018-08-29
++++ b/include/compiler.h       2018-08-29
+@@ -46,6 +46,10 @@ extern int errno;
+ #ifdef __linux__
+ # include <endian.h>
+ # include <byteswap.h>
++#ifndef __GLIBC__
++typedef unsigned long ulong;
++typedef unsigned int  uint;
++#endif
+ #elif defined(__MACH__) || defined(__FreeBSD__)
+ # include <machine/endian.h>
+ typedef unsigned long ulong;