All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 1/1] package/mkbootimg: new host package
@ 2022-07-24 23:58 Christian Stewart via buildroot
  2022-07-26 16:56 ` Thomas Petazzoni via buildroot
  0 siblings, 1 reply; 2+ messages in thread
From: Christian Stewart via buildroot @ 2022-07-24 23:58 UTC (permalink / raw)
  To: buildroot; +Cc: Christian Stewart, Yann E . MORIN, Thomas Petazzoni

Android bootimg utilities: mkbootimg and unpackbootimg.

Signed-off-by: Christian Stewart <christian@paral.in>
---
 package/Config.in.host                        |  1 +
 ...akefile-remove-cc-and-ar-definitions.patch | 97 +++++++++++++++++++
 package/mkbootimg/Config.in.host              |  4 +
 package/mkbootimg/mkbootimg.hash              |  3 +
 package/mkbootimg/mkbootimg.mk                | 26 +++++
 5 files changed, 131 insertions(+)
 create mode 100644 package/mkbootimg/0001-makefile-remove-cc-and-ar-definitions.patch
 create mode 100644 package/mkbootimg/Config.in.host
 create mode 100644 package/mkbootimg/mkbootimg.hash
 create mode 100644 package/mkbootimg/mkbootimg.mk

diff --git a/package/Config.in.host b/package/Config.in.host
index 71f2a9311c..38ee0e9e32 100644
--- a/package/Config.in.host
+++ b/package/Config.in.host
@@ -54,6 +54,7 @@ menu "Host utilities"
 	source "package/mender-artifact/Config.in.host"
 	source "package/meson-tools/Config.in.host"
 	source "package/mfgtools/Config.in.host"
+	source "package/mkbootimg/Config.in.host"
 	source "package/mkpasswd/Config.in.host"
 	source "package/mtd/Config.in.host"
 	source "package/mtools/Config.in.host"
diff --git a/package/mkbootimg/0001-makefile-remove-cc-and-ar-definitions.patch b/package/mkbootimg/0001-makefile-remove-cc-and-ar-definitions.patch
new file mode 100644
index 0000000000..d61b1e0b88
--- /dev/null
+++ b/package/mkbootimg/0001-makefile-remove-cc-and-ar-definitions.patch
@@ -0,0 +1,97 @@
+From 04a62922ce238f3106a916a30c0c2995ffa1526c Mon Sep 17 00:00:00 2001
+From: Christian Stewart <christian@paral.in>
+Date: Sat, 14 May 2022 20:58:14 -0700
+Subject: [PATCH] makefile: remove cc and ar definitions
+
+Signed-off-by: Christian Stewart <christian@paral.in>
+---
+ Makefile             | 26 +-------------------------
+ libmincrypt/Makefile | 27 +++++----------------------
+ 2 files changed, 6 insertions(+), 47 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 6ee3a38c..39d0996b 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,29 +1,4 @@
+ # Andrew Huang <bluedrum@163.com>
+-ifeq ($(CC),cc)
+-CC = gcc
+-endif
+-AR = ar rcv
+-ifeq ($(windir),)
+-EXE =
+-RM = rm -f
+-else
+-EXE = .exe
+-RM = del
+-endif
+-
+-CFLAGS = -ffunction-sections -O3
+-
+-ifneq (,$(findstring darwin,$(CROSS_COMPILE)))
+-    UNAME_S := Darwin
+-else
+-    UNAME_S := $(shell uname -s)
+-endif
+-ifeq ($(UNAME_S),Darwin)
+-    LDFLAGS += -Wl,-dead_strip
+-else
+-    LDFLAGS += -Wl,--gc-sections -s
+-endif
+-
+ all:mkbootimg$(EXE) unpackbootimg$(EXE)
+ 
+ static:
+@@ -31,6 +6,7 @@ static:
+ 
+ libmincrypt.a:
+ 	$(MAKE) -C libmincrypt
++	cp ./libmincrypt/libmincrypt.a ./libmincrypt.a
+ 
+ mkbootimg$(EXE):mkbootimg.o libmincrypt.a
+ 	$(CROSS_COMPILE)$(CC) -o $@ $^ -L. -lmincrypt $(LDFLAGS)
+diff --git a/libmincrypt/Makefile b/libmincrypt/Makefile
+index ad482de9..c7c478ff 100755
+--- a/libmincrypt/Makefile
++++ b/libmincrypt/Makefile
+@@ -1,31 +1,14 @@
+-ifeq ($(CC),cc)
+-CC = gcc
+-endif
+-AR = ar rc
+-ifeq ($(windir),)
+-RM = rm -f
+-CP = cp
+-else
+-RM = del
+-CP = copy /y
+-endif
+-
+-CFLAGS = -ffunction-sections -O3
+-EXT = a
+-LIB = libmincrypt.$(EXT)
++LIB = libmincrypt.a
+ LIB_OBJS = dsa_sig.o p256.o p256_ec.o p256_ecdsa.o rsa.o sha.o sha256.o
+ INC  = -I..
+ 
+-all:$(LIB)
++all: $(LIB)
+ 
+ clean:
+ 	$(RM) $(LIB_OBJS) $(LIB)
+ 
+-$(LIB):$(LIB_OBJS)
+-	$(CROSS_COMPILE)$(AR) $@ $^
+-	$(CP) $@ ..
+-
++$(LIB): $(LIB_OBJS)
++	$(CROSS_COMPILE)$(AR) rc $@ $^
+ 
+-%.o:%.c
++%.o: %.c
+ 	$(CROSS_COMPILE)$(CC) -o $@ $(CFLAGS) -c $< $(INC)
+-
+-- 
+2.35.1
+
diff --git a/package/mkbootimg/Config.in.host b/package/mkbootimg/Config.in.host
new file mode 100644
index 0000000000..2ca7bcae00
--- /dev/null
+++ b/package/mkbootimg/Config.in.host
@@ -0,0 +1,4 @@
+config BR2_PACKAGE_HOST_MKBOOTIMG
+	bool "host mkbootimg"
+	help
+	  Android Bootimg mkbootimg and unpackbootimg utils.
diff --git a/package/mkbootimg/mkbootimg.hash b/package/mkbootimg/mkbootimg.hash
new file mode 100644
index 0000000000..8beaf8d56c
--- /dev/null
+++ b/package/mkbootimg/mkbootimg.hash
@@ -0,0 +1,3 @@
+# locally computed
+sha256  28ddd4a2e472e4e044c9b461fb8e3ce04ea9af0bbbafc8010958df28d27707a7  mkbootimg-d4a2677828fe9b60117af8996dcf1dea85d6b431.tar.gz
+sha256  b220fd3c79e0906eda798b23699305ab05576e849f45810eca74afcb2c7f2311  NOTICE
diff --git a/package/mkbootimg/mkbootimg.mk b/package/mkbootimg/mkbootimg.mk
new file mode 100644
index 0000000000..460e50aa9e
--- /dev/null
+++ b/package/mkbootimg/mkbootimg.mk
@@ -0,0 +1,26 @@
+################################################################################
+#
+# mkbootimg
+#
+################################################################################
+
+MKBOOTIMG_VERSION = d4a2677828fe9b60117af8996dcf1dea85d6b431
+MKBOOTIMG_SITE = $(call github,osm0sis,mkbootimg,$(MKBOOTIMG_VERSION))
+
+MKBOOTIMG_LICENSE = BSD-3-Clause
+MKBOOTIMG_LICENSE_FILES = NOTICE
+
+HOST_MKBOOTIMG_TARGETS = mkbootimg unpackbootimg
+
+define HOST_MKBOOTIMG_BUILD_CMDS
+	$(foreach t,$(HOST_MKBOOTIMG_TARGETS),\
+		$(HOST_MAKE_ENV) $(HOST_CONFIGURE_OPTS) $(MAKE) SRCDIR=$(@D) \
+			-C $(@D) $(t))
+endef
+
+define HOST_MKBOOTIMG_INSTALL_CMDS
+	$(foreach t,$(HOST_MKBOOTIMG_TARGETS),\
+		$(INSTALL) -D -m 0755 $(@D)/$(t) $(HOST_DIR)/bin/$(notdir $(t))$(sep))
+endef
+
+$(eval $(host-generic-package))
-- 
2.35.1

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-07-26 16:57 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-24 23:58 [Buildroot] [PATCH 1/1] package/mkbootimg: new host package Christian Stewart via buildroot
2022-07-26 16:56 ` Thomas Petazzoni via buildroot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.