aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Dempsky <mdempsky@google.com>2022-07-18 17:03:30 +0000
committerGopher Robot <gobot@golang.org>2022-07-18 18:00:52 +0000
commit967a3d985d9252368b236411d2f0658fd636b1d4 (patch)
tree41e13e9f0d78efa0ce9b0c354d49b42a104dcc6f
parentc0c1bbde172c33e6e4ea994b413f23ca42c50c06 (diff)
downloadgo-967a3d985d9252368b236411d2f0658fd636b1d4.tar.gz
go-967a3d985d9252368b236411d2f0658fd636b1d4.zip
cmd/compile: revert "remove -installsuffix flag"
This reverts CL 415236 (commit 558785a0a9df5fbb7e9617c05059cf2892884620). Reason for revert: Google's internal build system uses -installsuffix. Restoring -installsuffix for Go 1.19, and will try again for Go 1.20. Change-Id: Id6571f34f99f01bcf55e8e949e6fe7b6c1896134 Reviewed-on: https://go-review.googlesource.com/c/go/+/418036 TryBot-Result: Gopher Robot <gobot@golang.org> Auto-Submit: Matthew Dempsky <mdempsky@google.com> Run-TryBot: Matthew Dempsky <mdempsky@google.com> Reviewed-by: David Chase <drchase@google.com>
-rw-r--r--src/cmd/compile/doc.go3
-rw-r--r--src/cmd/compile/internal/base/flag.go1
-rw-r--r--src/cmd/compile/internal/noder/import.go4
-rw-r--r--src/cmd/go/internal/work/gc.go3
4 files changed, 10 insertions, 1 deletions
diff --git a/src/cmd/compile/doc.go b/src/cmd/compile/doc.go
index f4cfcda807..60e12630c5 100644
--- a/src/cmd/compile/doc.go
+++ b/src/cmd/compile/doc.go
@@ -68,6 +68,9 @@ Flags:
-importcfg file
Read import configuration from file.
In the file, set importmap, packagefile to specify import resolution.
+ -installsuffix suffix
+ Look for packages in $GOROOT/pkg/$GOOS_$GOARCH_suffix
+ instead of $GOROOT/pkg/$GOOS_$GOARCH.
-l
Disable inlining.
-lang version
diff --git a/src/cmd/compile/internal/base/flag.go b/src/cmd/compile/internal/base/flag.go
index e8b3f55ba4..a363b83984 100644
--- a/src/cmd/compile/internal/base/flag.go
+++ b/src/cmd/compile/internal/base/flag.go
@@ -100,6 +100,7 @@ type CmdFlags struct {
GenDwarfInl int "help:\"generate DWARF inline info records\"" // 0=disabled, 1=funcs, 2=funcs+formals/locals
GoVersion string "help:\"required version of the runtime\""
ImportCfg func(string) "help:\"read import configuration from `file`\""
+ InstallSuffix string "help:\"set pkg directory `suffix`\""
JSON string "help:\"version,file for JSON compiler/optimizer detail output\""
Lang string "help:\"Go language version source code expects\""
LinkObj string "help:\"write linker-specific object to `file`\""
diff --git a/src/cmd/compile/internal/noder/import.go b/src/cmd/compile/internal/noder/import.go
index f718c8db5d..2cef9f75e8 100644
--- a/src/cmd/compile/internal/noder/import.go
+++ b/src/cmd/compile/internal/noder/import.go
@@ -102,7 +102,9 @@ func openPackage(path string) (*os.File, error) {
if buildcfg.GOROOT != "" {
suffix := ""
- if base.Flag.Race {
+ if base.Flag.InstallSuffix != "" {
+ suffix = "_" + base.Flag.InstallSuffix
+ } else if base.Flag.Race {
suffix = "_race"
} else if base.Flag.MSan {
suffix = "_msan"
diff --git a/src/cmd/go/internal/work/gc.go b/src/cmd/go/internal/work/gc.go
index 4fa1126ade..8429529115 100644
--- a/src/cmd/go/internal/work/gc.go
+++ b/src/cmd/go/internal/work/gc.go
@@ -128,6 +128,9 @@ func (gcToolchain) gc(b *Builder, a *Action, archive string, importcfg, embedcfg
if extFiles == 0 {
defaultGcFlags = append(defaultGcFlags, "-complete")
}
+ if cfg.BuildContext.InstallSuffix != "" {
+ defaultGcFlags = append(defaultGcFlags, "-installsuffix", cfg.BuildContext.InstallSuffix)
+ }
if a.buildID != "" {
defaultGcFlags = append(defaultGcFlags, "-buildid", a.buildID)
}