From 55de99100e1667c00fee7417b9ec4346accdc3f3 Mon Sep 17 00:00:00 2001 From: Robert Yang Date: Thu, 27 Mar 2014 15:27:01 +0800 Subject: gummiboot: use objcopy from the env Fix the error: [snip] | nm -D -u src/efi/gummiboot.so | grep ' U ' && exit 1 || : | objcopy -j .text -j .sdata -j .data -j .dynamic \ | -j .dynsym -j .rel -j .rela -j .reloc -j .eh_frame \ | --target=efi-app-x86_64 src/efi/gummiboot.so gummibootx64.efi | objcopy: src/efi/gummiboot.so: Invalid bfd target | make[1]: *** [gummibootx64.efi] Error 1 | make[1]: *** Waiting for unfinished jobs.... | make: *** [all] Error 2 [snip] It uses the "objcopy" directly, which is not suitable for cross compile. [YOCTO #6054] (From OE-Core rev: 393fe40c14e7adeadbccb72953027b63b6f8030c) Signed-off-by: Robert Yang Signed-off-by: Richard Purdie --- .../gummiboot/gummiboot/fix-objcopy.patch | 39 ++++++++++++++++++++++ meta/recipes-bsp/gummiboot/gummiboot_git.bb | 4 ++- 2 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 meta/recipes-bsp/gummiboot/gummiboot/fix-objcopy.patch (limited to 'meta/recipes-bsp/gummiboot') diff --git a/meta/recipes-bsp/gummiboot/gummiboot/fix-objcopy.patch b/meta/recipes-bsp/gummiboot/gummiboot/fix-objcopy.patch new file mode 100644 index 0000000000..2683f835e9 --- /dev/null +++ b/meta/recipes-bsp/gummiboot/gummiboot/fix-objcopy.patch @@ -0,0 +1,39 @@ +From 0f7f9e3bb1d0e1b93f3ad8a1d5d7bdd3fbf27494 Mon Sep 17 00:00:00 2001 +From: Robert Yang +Date: Thu, 27 Mar 2014 07:20:33 +0000 +Subject: [PATCH] Makefile.am: use objcopy from the env + +It uses the "objcopy" directly, which is not suitable for cross compile. + +Upstream-Status: Pending + +Signed-off-by: Robert Yang +--- + Makefile.am | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/Makefile.am b/Makefile.am +index d224418..dcd95b0 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -19,6 +19,8 @@ + ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS} + AM_MAKEFLAGS = --no-print-directory + ++OBJCOPY ?= objcopy ++ + gummibootlibdir = $(prefix)/lib/gummiboot + + AM_CPPFLAGS = -include config.h +@@ -143,7 +145,7 @@ $(efi_solib): $(efi_objects) + .DELETE_ON_ERROR: $(efi_solib) + + $(efi_loadername): $(efi_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 -j .eh_frame \ + --target=efi-app-$(ARCH) $< $@ + +-- +1.8.3.4 + diff --git a/meta/recipes-bsp/gummiboot/gummiboot_git.bb b/meta/recipes-bsp/gummiboot/gummiboot_git.bb index 035cec163c..52a692b469 100644 --- a/meta/recipes-bsp/gummiboot/gummiboot_git.bb +++ b/meta/recipes-bsp/gummiboot/gummiboot_git.bb @@ -11,7 +11,9 @@ inherit deploy PV = "43+git${SRCPV}" SRCREV = "4062c51075ba054d4949c714fe06123f9ad3097d" -SRC_URI = "git://anongit.freedesktop.org/gummiboot" +SRC_URI = "git://anongit.freedesktop.org/gummiboot \ + file://fix-objcopy.patch \ + " # Note: Add COMPATIBLE_HOST here is only because it depends on gnu-efi # which has set the COMPATIBLE_HOST, the gummiboot itself may work on -- cgit v1.2.3-54-g00ecf