[oe-commits] Robert Yang : gummiboot: use objcopy from the env

git at git.openembedded.org git at git.openembedded.org
Thu Mar 27 15:36:43 UTC 2014


Module: openembedded-core.git
Branch: master
Commit: 393fe40c14e7adeadbccb72953027b63b6f8030c
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=393fe40c14e7adeadbccb72953027b63b6f8030c

Author: Robert Yang <liezhi.yang at windriver.com>
Date:   Thu Mar 27 15:27:01 2014 +0800

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]

Signed-off-by: Robert Yang <liezhi.yang at windriver.com>

---

 .../gummiboot/gummiboot/fix-objcopy.patch          | 39 ++++++++++++++++++++++
 meta/recipes-bsp/gummiboot/gummiboot_git.bb        |  4 ++-
 2 files changed, 42 insertions(+), 1 deletion(-)

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 0000000..2683f83
--- /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 <liezhi.yang at 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 at 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
+
diff --git a/meta/recipes-bsp/gummiboot/gummiboot_git.bb b/meta/recipes-bsp/gummiboot/gummiboot_git.bb
index 035cec1..52a692b 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



More information about the Openembedded-commits mailing list