summaryrefslogtreecommitdiffstats
path: root/recipes-bsp
diff options
context:
space:
mode:
authorZhenhua Luo <zhenhua.luo@freescale.com>2015-02-12 15:54:18 +0800
committerZhenhua Luo <zhenhua.luo@freescale.com>2015-03-31 13:17:05 +0800
commit4c8cd553f9de56379e2b6502ceb996521e2d6a20 (patch)
treed1223a24987ac002566fc5ed9d5459eb6896c8d5 /recipes-bsp
parent61df8be41c952bcb81ab2799e5772a34b8788d43 (diff)
downloadmeta-fsl-ppc-4c8cd553f9de56379e2b6502ceb996521e2d6a20.tar.gz
u-boot-qoriq: fix the build issue with binutils-2.25
Remove _GLOBAL_OFFSET_TABLE_ definition from u-boot/mpc85xx/u-boot*.lds In binutils-2.25, the _GLOBAL_OFFSET_TABLE_ symbols defined by PROVIDE in u-boot.lds overrides the linker built-in symbols (https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=b893397a4b1316610f49819344817715e4305de9), so the linker is treating _GLOBAL_OFFSET_TABLE_ as a definition into the .reloc section. To align with the change of binutils-2.25, the _GLOBAL_OFFSET_TABLE_ symbol should not be defined in sections, and the symbols in linker generated .got section should be used(https://sourceware.org/ml/binutils/2008-09/msg00122.html). Fixed the following build errors with binutils-2.25: | powerpc-poky-linux-gnuspe-ld.bfd: _GLOBAL_OFFSET_TABLE_ not defined in linker created .got [YOCTO #7145] Signed-off-by: Zhenhua Luo <zhenhua.luo@freescale.com>
Diffstat (limited to 'recipes-bsp')
-rw-r--r--recipes-bsp/u-boot/files/0001-u-boot-mpc85xx-u-boot-.lds-remove-_GLOBAL_OFFSET_TAB.patch77
-rw-r--r--recipes-bsp/u-boot/u-boot-qoriq_2014.07.bb3
2 files changed, 79 insertions, 1 deletions
diff --git a/recipes-bsp/u-boot/files/0001-u-boot-mpc85xx-u-boot-.lds-remove-_GLOBAL_OFFSET_TAB.patch b/recipes-bsp/u-boot/files/0001-u-boot-mpc85xx-u-boot-.lds-remove-_GLOBAL_OFFSET_TAB.patch
new file mode 100644
index 0000000..e6b8d2e
--- /dev/null
+++ b/recipes-bsp/u-boot/files/0001-u-boot-mpc85xx-u-boot-.lds-remove-_GLOBAL_OFFSET_TAB.patch
@@ -0,0 +1,77 @@
1From 9ba002f1b1afc7af84a352f4ecab32a30d7ba353 Mon Sep 17 00:00:00 2001
2From: Zhenhua Luo <zhenhua.luo@freescale.com>
3Date: Mon, 9 Feb 2015 18:33:56 +0800
4Subject: [PATCH] u-boot/mpc85xx/u-boot*.lds: remove _GLOBAL_OFFSET_TABLE_
5 definition
6
7In binutils-2.25, the _GLOBAL_OFFSET_TABLE_ symbols defined by PROVIDE in
8u-boot.lds overrides the linker built-in symbols
9(https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=b893397a4b1316610f49819344817715e4305de9),
10so the linker is treating _GLOBAL_OFFSET_TABLE_ as a definition into the .reloc section.
11
12To align with the change of binutils-2.25, the _GLOBAL_OFFSET_TABLE_ symbol
13should not be defined in sections, and the symbols in linker generated .got
14section should be used(https://sourceware.org/ml/binutils/2008-09/msg00122.html).
15
16Fixed the following build errors with binutils-2.25:
17| powerpc-poky-linux-gnuspe-ld.bfd: _GLOBAL_OFFSET_TABLE_ not defined in linker created .got
18
19Signed-off-by: Zhenhua Luo <zhenhua.luo@freescale.com>
20---
21 arch/powerpc/cpu/mpc85xx/u-boot-nand.lds | 1 -
22 arch/powerpc/cpu/mpc85xx/u-boot-nand_spl.lds | 1 -
23 arch/powerpc/cpu/mpc85xx/u-boot-spl.lds | 1 -
24 arch/powerpc/cpu/mpc85xx/u-boot.lds | 1 -
25 4 files changed, 4 deletions(-)
26
27diff --git a/arch/powerpc/cpu/mpc85xx/u-boot-nand.lds b/arch/powerpc/cpu/mpc85xx/u-boot-nand.lds
28index f933b21..0399f93 100644
29--- a/arch/powerpc/cpu/mpc85xx/u-boot-nand.lds
30+++ b/arch/powerpc/cpu/mpc85xx/u-boot-nand.lds
31@@ -44,7 +44,6 @@ SECTIONS
32 _GOT2_TABLE_ = .;
33 KEEP(*(.got2))
34 KEEP(*(.got))
35- PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4);
36 _FIXUP_TABLE_ = .;
37 KEEP(*(.fixup))
38 }
39diff --git a/arch/powerpc/cpu/mpc85xx/u-boot-nand_spl.lds b/arch/powerpc/cpu/mpc85xx/u-boot-nand_spl.lds
40index b83c553..f044564 100644
41--- a/arch/powerpc/cpu/mpc85xx/u-boot-nand_spl.lds
42+++ b/arch/powerpc/cpu/mpc85xx/u-boot-nand_spl.lds
43@@ -22,7 +22,6 @@ SECTIONS
44 _GOT2_TABLE_ = .;
45 KEEP(*(.got2))
46 KEEP(*(.got))
47- PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4);
48 _FIXUP_TABLE_ = .;
49 KEEP(*(.fixup))
50 }
51diff --git a/arch/powerpc/cpu/mpc85xx/u-boot-spl.lds b/arch/powerpc/cpu/mpc85xx/u-boot-spl.lds
52index 5ae7b3e..889a4c2 100644
53--- a/arch/powerpc/cpu/mpc85xx/u-boot-spl.lds
54+++ b/arch/powerpc/cpu/mpc85xx/u-boot-spl.lds
55@@ -29,7 +29,6 @@ SECTIONS
56 _GOT2_TABLE_ = .;
57 KEEP(*(.got2))
58 KEEP(*(.got))
59- PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4);
60 _FIXUP_TABLE_ = .;
61 KEEP(*(.fixup))
62 }
63diff --git a/arch/powerpc/cpu/mpc85xx/u-boot.lds b/arch/powerpc/cpu/mpc85xx/u-boot.lds
64index 2cf0b25..f15eaf3 100644
65--- a/arch/powerpc/cpu/mpc85xx/u-boot.lds
66+++ b/arch/powerpc/cpu/mpc85xx/u-boot.lds
67@@ -50,7 +50,6 @@ SECTIONS
68 _GOT2_TABLE_ = .;
69 KEEP(*(.got2))
70 KEEP(*(.got))
71- PROVIDE(_GLOBAL_OFFSET_TABLE_ = . + 4);
72 _FIXUP_TABLE_ = .;
73 KEEP(*(.fixup))
74 }
75--
762.1.0
77
diff --git a/recipes-bsp/u-boot/u-boot-qoriq_2014.07.bb b/recipes-bsp/u-boot/u-boot-qoriq_2014.07.bb
index b780658..3e519e2 100644
--- a/recipes-bsp/u-boot/u-boot-qoriq_2014.07.bb
+++ b/recipes-bsp/u-boot/u-boot-qoriq_2014.07.bb
@@ -17,7 +17,8 @@ DEPENDS = "boot-format-native libgcc ${@base_contains('TCMODE', 'external-fsl',
17 17
18inherit deploy 18inherit deploy
19 19
20SRC_URI = "git://git.freescale.com/ppc/sdk/u-boot.git;nobranch=1" 20SRC_URI = "git://git.freescale.com/ppc/sdk/u-boot.git;nobranch=1 \
21 file://0001-u-boot-mpc85xx-u-boot-.lds-remove-_GLOBAL_OFFSET_TAB.patch"
21SRCREV = "659b6a23a8b1f3026200bc6352dbacef53f4dcb1" 22SRCREV = "659b6a23a8b1f3026200bc6352dbacef53f4dcb1"
22 23
23python () { 24python () {