Skip to content

Commit

Permalink
tools/mkimage: update to 2020.04
Browse files Browse the repository at this point in the history
also change the download source to https and add a mirror
drop merged patches

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
[Add extra changes to compile on FreeBSD, merge two patches]
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
  • Loading branch information
lucize authored and hauke committed Apr 26, 2020
1 parent 066ec97 commit 042917f
Show file tree
Hide file tree
Showing 7 changed files with 113 additions and 241 deletions.
9 changes: 6 additions & 3 deletions tools/mkimage/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,14 @@
include $(TOPDIR)/rules.mk

PKG_NAME:=mkimage
PKG_VERSION:=2019.07
PKG_VERSION:=2020.04

PKG_SOURCE:=u-boot-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=http://ftp.denx.de/pub/u-boot
PKG_HASH:=bff4fa77e8da17521c030ca4c5b947a056c1b1be4d3e6ee8637020b8d50251d0
PKG_SOURCE_URL:= \
https://mirror.cyberbits.eu/u-boot \
https://ftp.denx.de/pub/u-boot \
ftp://ftp.denx.de/pub/u-boot
PKG_HASH:=fe732aaf037d9cc3c0909bad8362af366ae964bbdac6913a34081ff4ad565372

HOST_BUILD_DIR:=$(BUILD_DIR_HOST)/u-boot-$(PKG_VERSION)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ This patch makes it possible to set a custom image magic.
break;
--- a/tools/default_image.c
+++ b/tools/default_image.c
@@ -116,7 +116,7 @@ static void image_set_header(void *ptr,
@@ -120,7 +120,7 @@ static void image_set_header(void *ptr,
}

/* Build new header */
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
From 590b23a46b7ae0f5ec5e8f57a85c0e7578c71141 Mon Sep 17 00:00:00 2001
From: Hauke Mehrtens <hauke@hauke-m.de>
Date: Sun, 26 Apr 2020 17:15:17 +0200
Subject: [PATCH 1/2] Add compatibility with non Linux hosts

This adds some changes to the u-boot tools to make it possible to build
them on non Linux hosts like MacOS or FreeBSD.

asm/byteorder.h, asm/posix_types.h, asm/types.h and linux/kernel.h are
not available on such systems. Remove the include and add the necessary
parts for these header files manually or remove the usage too.

__u64 is not available on FreeBSD, remove its usage.

<malloc.h> has been replaced by <stdlib.h>

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
include/image.h | 2 ++
include/imx8image.h | 5 +++++
include/linux/posix_types.h | 2 ++
include/linux/types.h | 4 +++-
lib/rsa/rsa-sign.c | 2 +-
5 files changed, 13 insertions(+), 2 deletions(-)

--- a/include/image.h
+++ b/include/image.h
@@ -16,7 +16,9 @@
#define __IMAGE_H__

#include "compiler.h"
+#ifdef linux
#include <asm/byteorder.h>
+#endif
#include <stdbool.h>

/* Define this to avoid #ifdefs later on */
--- a/include/imx8image.h
+++ b/include/imx8image.h
@@ -11,7 +11,12 @@
#include <image.h>
#include <inttypes.h>
#include "imagetool.h"
+#ifdef linux
#include "linux/kernel.h"
+#else
+#define ALIGN(x,a) __ALIGN_MASK((x),(typeof(x))(a)-1)
+#define __ALIGN_MASK(x,mask) (((x)+(mask))&~(mask))
+#endif

#define __packed __attribute__((packed))

--- a/include/linux/posix_types.h
+++ b/include/linux/posix_types.h
@@ -43,6 +43,8 @@ typedef void (*__kernel_sighandler_t)(in
/* Type of a SYSV IPC key. */
typedef int __kernel_key_t;

+#ifdef linux
#include <asm/posix_types.h>
+#endif

#endif /* _LINUX_POSIX_TYPES_H */
--- a/include/linux/types.h
+++ b/include/linux/types.h
@@ -2,7 +2,9 @@
#define _LINUX_TYPES_H

#include <linux/posix_types.h>
+#ifdef linux
#include <asm/types.h>
+#endif
#include <stdbool.h>

#ifndef __KERNEL_STRICT_NAMES
@@ -142,7 +144,7 @@ typedef __u16 __bitwise __le16;
typedef __u16 __bitwise __be16;
typedef __u32 __bitwise __le32;
typedef __u32 __bitwise __be32;
-#if defined(__GNUC__)
+#if defined(__GNUC__) && defined(linux)
typedef __u64 __bitwise __le64;
typedef __u64 __bitwise __be64;
#endif
--- a/lib/rsa/rsa-sign.c
+++ b/lib/rsa/rsa-sign.c
@@ -4,7 +4,7 @@
*/

#include "mkimage.h"
-#include <malloc.h>
+#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <image.h>
207 changes: 0 additions & 207 deletions tools/mkimage/patches/050-image_h_portability.patch

This file was deleted.

29 changes: 0 additions & 29 deletions tools/mkimage/patches/060-remove_kernel_includes.patch

This file was deleted.

10 changes: 10 additions & 0 deletions tools/mkimage/patches/070-remove_generated_autoconf.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
--- a/tools/imximage.c
+++ b/tools/imximage.c
@@ -11,7 +11,6 @@
#include "imagetool.h"
#include <image.h>
#include "imximage.h"
-#include <generated/autoconf.h>

#define UNDEFINED 0xFFFFFFFF

2 changes: 1 addition & 1 deletion tools/mkimage/patches/210-link-libcrypto-static.patch
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ needed dependencies are added too.

--- a/tools/Makefile
+++ b/tools/Makefile
@@ -151,7 +151,7 @@ ifneq ($(CONFIG_MX23)$(CONFIG_MX28)$(CON
@@ -162,7 +162,7 @@ ifneq ($(CONFIG_MX23)$(CONFIG_MX28)$(CON
HOSTCFLAGS_kwbimage.o += \
$(shell pkg-config --cflags libssl libcrypto 2> /dev/null || echo "")
HOSTLOADLIBES_mkimage += \
Expand Down

0 comments on commit 042917f

Please sign in to comment.