summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRobert Yang <liezhi.yang@windriver.com>2014-03-27 15:27:01 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-03-27 15:44:42 +0000
commit55de99100e1667c00fee7417b9ec4346accdc3f3 (patch)
treefaa37b18ad418575df11cb0e6fe8ca4fde83c5b9
parent0e5f6e0f836e75837d8d8b6a6ab1ae7f35e7d74c (diff)
downloadpoky-55de99100e1667c00fee7417b9ec4346accdc3f3.tar.gz
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 <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-bsp/gummiboot/gummiboot/fix-objcopy.patch39
-rw-r--r--meta/recipes-bsp/gummiboot/gummiboot_git.bb4
2 files changed, 42 insertions, 1 deletions
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 @@
1From 0f7f9e3bb1d0e1b93f3ad8a1d5d7bdd3fbf27494 Mon Sep 17 00:00:00 2001
2From: Robert Yang <liezhi.yang@windriver.com>
3Date: Thu, 27 Mar 2014 07:20:33 +0000
4Subject: [PATCH] Makefile.am: use objcopy from the env
5
6It uses the "objcopy" directly, which is not suitable for cross compile.
7
8Upstream-Status: Pending
9
10Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
11---
12 Makefile.am | 4 +++-
13 1 file changed, 3 insertions(+), 1 deletion(-)
14
15diff --git a/Makefile.am b/Makefile.am
16index d224418..dcd95b0 100644
17--- a/Makefile.am
18+++ b/Makefile.am
19@@ -19,6 +19,8 @@
20 ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
21 AM_MAKEFLAGS = --no-print-directory
22
23+OBJCOPY ?= objcopy
24+
25 gummibootlibdir = $(prefix)/lib/gummiboot
26
27 AM_CPPFLAGS = -include config.h
28@@ -143,7 +145,7 @@ $(efi_solib): $(efi_objects)
29 .DELETE_ON_ERROR: $(efi_solib)
30
31 $(efi_loadername): $(efi_solib)
32- $(AM_V_GEN) objcopy -j .text -j .sdata -j .data -j .dynamic \
33+ $(AM_V_GEN) $(OBJCOPY) -j .text -j .sdata -j .data -j .dynamic \
34 -j .dynsym -j .rel -j .rela -j .reloc -j .eh_frame \
35 --target=efi-app-$(ARCH) $< $@
36
37--
381.8.3.4
39
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
11 11
12PV = "43+git${SRCPV}" 12PV = "43+git${SRCPV}"
13SRCREV = "4062c51075ba054d4949c714fe06123f9ad3097d" 13SRCREV = "4062c51075ba054d4949c714fe06123f9ad3097d"
14SRC_URI = "git://anongit.freedesktop.org/gummiboot" 14SRC_URI = "git://anongit.freedesktop.org/gummiboot \
15 file://fix-objcopy.patch \
16 "
15 17
16# Note: Add COMPATIBLE_HOST here is only because it depends on gnu-efi 18# Note: Add COMPATIBLE_HOST here is only because it depends on gnu-efi
17# which has set the COMPATIBLE_HOST, the gummiboot itself may work on 19# which has set the COMPATIBLE_HOST, the gummiboot itself may work on