mirror of
https://github.com/golang/go.git
synced 2025-12-28 06:34:04 +00:00
cmd/link: set canUsePlugins only on platforms that support plugin
If a program imports the plugin package, but the plugin build mode is not supported on the platform, it still cannot use plugin. Don't treat it like so. Updates #76815. Change-Id: I0fd719427d7c3cc96a94ce1f92d6e4457da92a90 Reviewed-on: https://go-review.googlesource.com/c/go/+/730164 Reviewed-by: David Chase <drchase@google.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
This commit is contained in:
parent
9ba0948172
commit
d14b6427cf
@ -38,6 +38,7 @@ import (
|
||||
"encoding/binary"
|
||||
"fmt"
|
||||
"internal/buildcfg"
|
||||
"internal/platform"
|
||||
"io"
|
||||
"log"
|
||||
"os"
|
||||
@ -576,7 +577,8 @@ func (ctxt *Link) loadlib() {
|
||||
|
||||
// Plugins a require cgo support to function. Similarly, plugins may require additional
|
||||
// internal linker support on some platforms which may not be implemented.
|
||||
ctxt.canUsePlugins = ctxt.LibraryByPkg["plugin"] != nil && iscgo
|
||||
ctxt.canUsePlugins = ctxt.LibraryByPkg["plugin"] != nil && iscgo &&
|
||||
platform.BuildModeSupported("gc", "plugin", buildcfg.GOOS, buildcfg.GOARCH)
|
||||
|
||||
// We now have enough information to determine the link mode.
|
||||
determineLinkMode(ctxt)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user