mirror of
https://github.com/golang/go.git
synced 2026-02-02 00:52:04 +03:00
cmd/link: support .def file with MSVC clang toolchain
lld-link supports .def file, but requires a "-def:" (or "/def:") flag. (MinGW linker, on the other hand, requires no flag.) Pass the flag when using MSVC-based toolchain. CL originally authored by Chressie Himpel. Change-Id: I8c327ab48d36b0bcbb1d127cff544ffdb06be38e Reviewed-on: https://go-review.googlesource.com/c/go/+/708716 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Chressie Himpel <chressie@google.com>
This commit is contained in:
@@ -1787,9 +1787,13 @@ func (ctxt *Link) hostlink() {
|
||||
case ctxt.IsAIX():
|
||||
fileName := xcoffCreateExportFile(ctxt)
|
||||
argv = append(argv, "-Wl,-bE:"+fileName)
|
||||
case ctxt.IsWindows() && !slices.Contains(flagExtldflags, "-Wl,--export-all-symbols"):
|
||||
case ctxt.IsWindows() && !slices.Contains(flagExtldflags, wlPrefix+"export-all-symbols"):
|
||||
fileName := peCreateExportFile(ctxt, filepath.Base(outopt))
|
||||
argv = append(argv, fileName)
|
||||
prefix := ""
|
||||
if isMSVC {
|
||||
prefix = "-Wl,-def:"
|
||||
}
|
||||
argv = append(argv, prefix+fileName)
|
||||
}
|
||||
|
||||
const unusedArguments = "-Qunused-arguments"
|
||||
|
||||
Reference in New Issue
Block a user