diff options
author | Robert Yang <liezhi.yang@windriver.com> | 2014-03-27 15:27:01 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-03-27 15:44:42 +0000 |
commit | 55de99100e1667c00fee7417b9ec4346accdc3f3 (patch) | |
tree | faa37b18ad418575df11cb0e6fe8ca4fde83c5b9 | |
parent | 0e5f6e0f836e75837d8d8b6a6ab1ae7f35e7d74c (diff) | |
download | poky-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.patch | 39 | ||||
-rw-r--r-- | meta/recipes-bsp/gummiboot/gummiboot_git.bb | 4 |
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 @@ | |||
1 | From 0f7f9e3bb1d0e1b93f3ad8a1d5d7bdd3fbf27494 Mon Sep 17 00:00:00 2001 | ||
2 | From: Robert Yang <liezhi.yang@windriver.com> | ||
3 | Date: Thu, 27 Mar 2014 07:20:33 +0000 | ||
4 | Subject: [PATCH] Makefile.am: use objcopy from the env | ||
5 | |||
6 | It uses the "objcopy" directly, which is not suitable for cross compile. | ||
7 | |||
8 | Upstream-Status: Pending | ||
9 | |||
10 | Signed-off-by: Robert Yang <liezhi.yang@windriver.com> | ||
11 | --- | ||
12 | Makefile.am | 4 +++- | ||
13 | 1 file changed, 3 insertions(+), 1 deletion(-) | ||
14 | |||
15 | diff --git a/Makefile.am b/Makefile.am | ||
16 | index 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 | -- | ||
38 | 1.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 | ||
12 | PV = "43+git${SRCPV}" | 12 | PV = "43+git${SRCPV}" |
13 | SRCREV = "4062c51075ba054d4949c714fe06123f9ad3097d" | 13 | SRCREV = "4062c51075ba054d4949c714fe06123f9ad3097d" |
14 | SRC_URI = "git://anongit.freedesktop.org/gummiboot" | 14 | SRC_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 |