summaryrefslogtreecommitdiffstats
path: root/recipes-devtools/go-cross/go-1.5/armhf-elf-header.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-devtools/go-cross/go-1.5/armhf-elf-header.patch')
-rw-r--r--recipes-devtools/go-cross/go-1.5/armhf-elf-header.patch19
1 files changed, 19 insertions, 0 deletions
diff --git a/recipes-devtools/go-cross/go-1.5/armhf-elf-header.patch b/recipes-devtools/go-cross/go-1.5/armhf-elf-header.patch
new file mode 100644
index 00000000..f56869b2
--- /dev/null
+++ b/recipes-devtools/go-cross/go-1.5/armhf-elf-header.patch
@@ -0,0 +1,19 @@
1Index: go/src/cmd/link/internal/ld/elf.go
2===================================================================
3--- go.orig/src/cmd/link/internal/ld/elf.go 2015-07-29 13:05:25.952533140 -0700
4+++ go/src/cmd/link/internal/ld/elf.go 2015-07-29 13:14:53.413112995 -0700
5@@ -780,7 +780,13 @@
6 // 32-bit architectures
7 case '5':
8 // we use EABI on both linux/arm and freebsd/arm.
9- if HEADTYPE == obj.Hlinux || HEADTYPE == obj.Hfreebsd {
10+ if HEADTYPE == obj.Hlinux {
11+ if Ctxt.Goarm == 7 {
12+ ehdr.flags = 0x5000402 // has entry point, Version5 EABI, hard float
13+ } else {
14+ ehdr.flags = 0x5000202 // has entry point, Version5 EABI, soft float
15+ }
16+ } else if HEADTYPE == obj.Hfreebsd {
17 ehdr.flags = 0x5000002 // has entry point, Version5 EABI
18 }
19 fallthrough