From 6d3139b203912835b19e32fcb9bb709f89f0bc11 Mon Sep 17 00:00:00 2001 From: Cherry Mui Date: Wed, 21 Dec 2022 23:31:48 -0500 Subject: [PATCH] misc/cgo/testshared: test build std in shared mode Test that "go install -buildmode=shared std" works. For #57334. Change-Id: I465a07cf2e9035995916ef9940b4c1eeba998099 Reviewed-on: https://go-review.googlesource.com/c/go/+/459056 Reviewed-by: Than McIntosh TryBot-Result: Gopher Robot Reviewed-by: Tim Scharfenort Run-TryBot: Cherry Mui --- misc/cgo/testshared/shared_test.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/misc/cgo/testshared/shared_test.go b/misc/cgo/testshared/shared_test.go index cd8a144d73a..b14fb1cb3a7 100644 --- a/misc/cgo/testshared/shared_test.go +++ b/misc/cgo/testshared/shared_test.go @@ -1105,3 +1105,15 @@ func TestIssue47873(t *testing.T) { goCmd(t, "install", "-buildmode=shared", "-linkshared", "./issue47837/a") goCmd(t, "run", "-linkshared", "./issue47837/main") } + +// Test that we can build std in shared mode. +func TestStd(t *testing.T) { + if testing.Short() { + t.Skip("skip in short mode") + } + t.Parallel() + // Use a temporary pkgdir to not interfere with other tests, and not write to GOROOT. + // Cannot use goCmd as it runs with cloned GOROOT which is incomplete. + runWithEnv(t, "building std", []string{"GOROOT=" + oldGOROOT}, + filepath.Join(oldGOROOT, "bin", "go"), "install", "-buildmode=shared", "-pkgdir="+t.TempDir(), "std") +}