aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/go/go-1.9/0007-ld-add-soname-to-shareable-objects.patch
diff options
context:
space:
mode:
authorMatt Madison <matt@madison.systems>2017-09-13 14:54:10 -0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-09-13 22:12:19 +0100
commitf2ccf56778433ec16f44eecaa10a610a6630df50 (patch)
tree69fd38db1f610b8ae135f00a579b42082c9ae754 /meta/recipes-devtools/go/go-1.9/0007-ld-add-soname-to-shareable-objects.patch
parent24da8c321831dcc5de00d65d6c5613efee109b57 (diff)
downloadopenembedded-core-contrib-f2ccf56778433ec16f44eecaa10a610a6630df50.tar.gz
go: update to go 1.9
* Rebased patches - dropped armhf-elf patch, should no longer be needed - dropped syslog patch which should not have been imported to begin with - reworked other patches as needed for the updated code base * Updated native, cross, cross-canadian .inc files to remove some testdata directories that contain .a files that strip chokes on during sysroot staging Signed-off-by: Matt Madison <matt@madison.systems> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/go/go-1.9/0007-ld-add-soname-to-shareable-objects.patch')
-rw-r--r--meta/recipes-devtools/go/go-1.9/0007-ld-add-soname-to-shareable-objects.patch46
1 files changed, 46 insertions, 0 deletions
diff --git a/meta/recipes-devtools/go/go-1.9/0007-ld-add-soname-to-shareable-objects.patch b/meta/recipes-devtools/go/go-1.9/0007-ld-add-soname-to-shareable-objects.patch
new file mode 100644
index 0000000000..6459782d81
--- /dev/null
+++ b/meta/recipes-devtools/go/go-1.9/0007-ld-add-soname-to-shareable-objects.patch
@@ -0,0 +1,46 @@
+From e957c3458d53e37bf416f51d2f8bf54c195e50f5 Mon Sep 17 00:00:00 2001
+From: Matt Madison <matt@madison.systems>
+Date: Wed, 13 Sep 2017 08:27:02 -0700
+Subject: [PATCH 7/7] ld: add soname to shareable objects
+
+Shared library handling in OE depends on the inclusion
+of an soname header, so update the go linker to add that
+header for both internal and external linking.
+
+Upstream-Status: Pending
+
+Signed-off-by: Matt Madison <matt@madison.systems>
+---
+ src/cmd/link/internal/ld/lib.go | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/cmd/link/internal/ld/lib.go b/src/cmd/link/internal/ld/lib.go
+index 0234105..0b9e2d0 100644
+--- a/src/cmd/link/internal/ld/lib.go
++++ b/src/cmd/link/internal/ld/lib.go
+@@ -1124,12 +1124,14 @@ func (l *Link) hostlink() {
+ // Pass -z nodelete to mark the shared library as
+ // non-closeable: a dlclose will do nothing.
+ argv = append(argv, "-shared", "-Wl,-z,nodelete")
++ argv = append(argv, fmt.Sprintf("-Wl,-soname,%s", filepath.Base(*flagOutfile)))
+ }
+ case BuildmodeShared:
+ if UseRelro() {
+ argv = append(argv, "-Wl,-z,relro")
+ }
+ argv = append(argv, "-shared")
++ argv = append(argv, fmt.Sprintf("-Wl,-soname,%s", filepath.Base(*flagOutfile)))
+ case BuildmodePlugin:
+ if Headtype == objabi.Hdarwin {
+ argv = append(argv, "-dynamiclib")
+@@ -1138,6 +1140,7 @@ func (l *Link) hostlink() {
+ argv = append(argv, "-Wl,-z,relro")
+ }
+ argv = append(argv, "-shared")
++ argv = append(argv, fmt.Sprintf("-Wl,-soname,%s", filepath.Base(*flagOutfile)))
+ }
+ }
+
+--
+2.7.4
+