gummiboot: add patch fixing compilation error

Add patch fixing compilation error for implicit declaration of
'basename' and also add a patch to use toolchain version of nm and
objcopy tool.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
This commit is contained in:
Christian Marangi
2025-12-04 14:04:05 +01:00
parent c9895bfda8
commit 0879f66755
3 changed files with 54 additions and 3 deletions

View File

@@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=gummiboot
PKG_VERSION:=48.1
PKG_RELEASE:=2
PKG_RELEASE:=3
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://dev.alpinelinux.org/archive/gummiboot/

View File

@@ -1,6 +1,14 @@
--- a/src/setup/setup.c
+++ b/src/setup/setup.c
@@ -83,6 +83,9 @@ static int verify_esp(const char *p, uin
@@ -24,6 +24,7 @@
#include <getopt.h>
#include <errno.h>
#include <stdlib.h>
+#include <libgen.h>
#include <assert.h>
#include <sys/statfs.h>
#include <sys/stat.h>
@@ -83,6 +84,9 @@ static int verify_esp(const char *p, uin
blkid_probe b = NULL;
int r;
const char *v;
@@ -10,7 +18,7 @@
if (statfs(p, &sfs) < 0) {
fprintf(stderr, "Failed to check file system type of %s: %m\n", p);
@@ -122,24 +125,38 @@ static int verify_esp(const char *p, uin
@@ -122,24 +126,38 @@ static int verify_esp(const char *p, uin
return -ENODEV;
}

View File

@@ -0,0 +1,43 @@
From 32a605b069631bc41ad868ca35224fb4ec20c774 Mon Sep 17 00:00:00 2001
From: Christian Marangi <ansuelsmth@gmail.com>
Date: Thu, 4 Dec 2025 13:58:15 +0100
Subject: [PATCH] Makefile: get nm and objcopy tool from ENV variable
Get nm and objcopy tool from ENV variables to permit use alternative
tool than the one installed on host machine.
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
---
Makefile.am | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- a/Makefile.am
+++ b/Makefile.am
@@ -161,11 +161,11 @@ $(top_builddir)/src/efi/%.o: $(top_srcdi
$(gummiboot_solib): $(gummiboot_objects)
$(AM_V_CCLD)$(LD) $(efi_ldflags) $(gummiboot_objects) \
-o $@ -lefi -lgnuefi $(shell $(CC) -print-libgcc-file-name); \
- nm -D -u $@ | grep ' U ' && exit 1 || :
+ $(NM) -D -u $@ | grep ' U ' && exit 1 || :
.DELETE_ON_ERROR: $(gummboot_solib)
$(gummiboot): $(gummiboot_solib)
- $(AM_V_GEN) objcopy -j .text -j .sdata -j .data -j .dynamic \
+ $(AM_V_GEN) $(OBJCOPY) -j .text -j .sdata -j .data -j .dynamic \
-j .dynsym -j .rel -j .rela -j .reloc \
$(FORMAT) $< $@
@@ -196,11 +196,11 @@ $(top_builddir)/src/efi/%.o: $(top_srcdi
$(stub_solib): $(stub_objects)
$(AM_V_CCLD)$(LD) $(efi_ldflags) $(stub_objects) \
-o $@ -lefi -lgnuefi $(shell $(CC) -print-libgcc-file-name); \
- nm -D -u $@ | grep ' U ' && exit 1 || :
+ $(NM) -D -u $@ | grep ' U ' && exit 1 || :
.DELETE_ON_ERROR: $(gummboot_solib)
$(stub): $(stub_solib)
- $(AM_V_GEN) objcopy -j .text -j .sdata -j .data -j .dynamic \
+ $(AM_V_GEN) $(OBJCOPY) -j .text -j .sdata -j .data -j .dynamic \
-j .dynsym -j .rel -j .rela -j .reloc \
$(FORMAT) $< $@