mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
cmd/link/internal/ld, cmd/go: -buildmode=c-shared support for darwin/amd64
All of the heavy-lifting was done by minux@, with his external-linking support for darwin/arm64: golang.org/cl/8781 Change-Id: I7c9fbc19246f418c065c92fb2c13c00026ff0f82 Reviewed-on: https://go-review.googlesource.com/11127 Run-TryBot: Srdjan Petrovic <spetrovic@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
This commit is contained in:
parent
dc89350fed
commit
cc6554f750
6 changed files with 38 additions and 18 deletions
|
|
@ -926,7 +926,7 @@ func hostlink() {
|
|||
}
|
||||
|
||||
if HEADTYPE == obj.Hdarwin {
|
||||
argv = append(argv, "-Wl,-no_pie,-pagezero_size,4000000,-headerpad,1144")
|
||||
argv = append(argv, "-Wl,-no_pie,-headerpad,1144")
|
||||
}
|
||||
if HEADTYPE == obj.Hopenbsd {
|
||||
argv = append(argv, "-Wl,-nopie")
|
||||
|
|
@ -944,9 +944,17 @@ func hostlink() {
|
|||
}
|
||||
|
||||
switch Buildmode {
|
||||
case BuildmodeExe:
|
||||
if HEADTYPE == obj.Hdarwin {
|
||||
argv = append(argv, "-Wl,-pagezero_size,4000000")
|
||||
}
|
||||
case BuildmodeCShared:
|
||||
argv = append(argv, "-Wl,-Bsymbolic")
|
||||
argv = append(argv, "-shared")
|
||||
if HEADTYPE == obj.Hdarwin {
|
||||
argv = append(argv, "-dynamiclib")
|
||||
} else {
|
||||
argv = append(argv, "-Wl,-Bsymbolic")
|
||||
argv = append(argv, "-shared")
|
||||
}
|
||||
case BuildmodeShared:
|
||||
// TODO(mwhudson): unless you do this, dynamic relocations fill
|
||||
// out the findfunctab table and for some reason shared libraries
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue