Skip to content

Commit f548c8c

Browse files
cmd/go: print some not-defaults arch-env
Default values for GOARM were not fixed. Since its default value is obtained in cmd/dist.xgetgoarm, Dependent variable Settings are too complicated, Copying is difficult to guarantee semantic equivalence. For #67492 Change-Id: Ib8c7ed52fcc4bfae39577cb851e306180a6ab1c3
1 parent ca17bda commit f548c8c

File tree

2 files changed

+23
-7
lines changed

2 files changed

+23
-7
lines changed

src/cmd/go/internal/cfg/cfg.go

+18-7
Original file line numberDiff line numberDiff line change
@@ -400,6 +400,17 @@ func CanGetenv(key string) bool {
400400
return strings.Contains(cfg.KnownEnv, "\t"+key+"\n")
401401
}
402402

403+
// Keep the semantics synchronized with cmd/dist.xinit.
404+
const (
405+
defaultGO386 = "sse2"
406+
defaultGOAMD64 = "v1"
407+
defaultGOMIPS = "hardfloat"
408+
defaultGOMIPS64 = "hardfloat"
409+
defaultGOPPC64 = "power8"
410+
defaultGORISCV64 = "rva20u64"
411+
defaultGOARM64 = "v8.0"
412+
)
413+
403414
var (
404415
GOROOT string
405416

@@ -412,14 +423,14 @@ var (
412423
GOMODCACHE, GOMODCACHEChanged = EnvOrAndChanged("GOMODCACHE", gopathDir("pkg/mod"))
413424

414425
// Used in envcmd.MkEnv and build ID computations.
415-
GOARM64, goARM64Changed = EnvOrAndChanged("GOARM64", fmt.Sprint(buildcfg.GOARM64))
426+
GOARM64, goARM64Changed = EnvOrAndChanged("GOARM64", defaultGOARM64)
416427
GOARM, goARMChanged = EnvOrAndChanged("GOARM", fmt.Sprint(buildcfg.GOARM))
417-
GO386, go386Changed = EnvOrAndChanged("GO386", buildcfg.GO386)
418-
GOAMD64, goAMD64Changed = EnvOrAndChanged("GOAMD64", fmt.Sprintf("%s%d", "v", buildcfg.GOAMD64))
419-
GOMIPS, goMIPSChanged = EnvOrAndChanged("GOMIPS", buildcfg.GOMIPS)
420-
GOMIPS64, goMIPS64Changed = EnvOrAndChanged("GOMIPS64", buildcfg.GOMIPS64)
421-
GOPPC64, goPPC64Changed = EnvOrAndChanged("GOPPC64", fmt.Sprintf("%s%d", "power", buildcfg.GOPPC64))
422-
GORISCV64, goRISCV64Changed = EnvOrAndChanged("GORISCV64", fmt.Sprintf("rva%du64", buildcfg.GORISCV64))
428+
GO386, go386Changed = EnvOrAndChanged("GO386", defaultGO386)
429+
GOAMD64, goAMD64Changed = EnvOrAndChanged("GOAMD64", defaultGOAMD64)
430+
GOMIPS, goMIPSChanged = EnvOrAndChanged("GOMIPS", defaultGOMIPS)
431+
GOMIPS64, goMIPS64Changed = EnvOrAndChanged("GOMIPS64", defaultGOMIPS64)
432+
GOPPC64, goPPC64Changed = EnvOrAndChanged("GOPPC64", defaultGOPPC64)
433+
GORISCV64, goRISCV64Changed = EnvOrAndChanged("GORISCV64", defaultGORISCV64)
423434
GOWASM, goWASMChanged = EnvOrAndChanged("GOWASM", fmt.Sprint(buildcfg.GOWASM))
424435

425436
GOPROXY, GOPROXYChanged = EnvOrAndChanged("GOPROXY", "")

src/cmd/go/testdata/script/env_changed.txt

+5
Original file line numberDiff line numberDiff line change
@@ -43,3 +43,8 @@ go env -changed -json GOOS
4343
go env -changed -json GOARCH
4444
[GOARCH:amd64] stdout '"GOARCH": "arm64"'
4545
[!GOARCH:amd64] stdout '"GOARCH": "amd64"'
46+
47+
env GOARCH=amd64
48+
env GOAMD64=v3
49+
go env -changed
50+
stdout 'GOAMD64=''?v3''?'

0 commit comments

Comments
 (0)