]> code.ossystems Code Review - openembedded-core.git/commitdiff
gummiboot: use objcopy from the env
authorRobert Yang <liezhi.yang@windriver.com>
Thu, 27 Mar 2014 07:27:01 +0000 (15:27 +0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 27 Mar 2014 15:44:16 +0000 (15:44 +0000)
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]

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
meta/recipes-bsp/gummiboot/gummiboot/fix-objcopy.patch [new file with mode: 0644]
meta/recipes-bsp/gummiboot/gummiboot_git.bb

diff --git a/meta/recipes-bsp/gummiboot/gummiboot/fix-objcopy.patch b/meta/recipes-bsp/gummiboot/gummiboot/fix-objcopy.patch
new file mode 100644 (file)
index 0000000..2683f83
--- /dev/null
@@ -0,0 +1,39 @@
+From 0f7f9e3bb1d0e1b93f3ad8a1d5d7bdd3fbf27494 Mon Sep 17 00:00:00 2001
+From: Robert Yang <liezhi.yang@windriver.com>
+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 <liezhi.yang@windriver.com>
+---
+ 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
+
index 035cec163ced5c8bb3b20c03c3078d77fb8ec046..52a692b469c056a2efdb31566fa8af23d50b4fa9 100644 (file)
@@ -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