]> Cypherpunks.ru repositories - gostls13.git/commitdiff
misc/cgo/testshared: test build std in shared mode
authorCherry Mui <cherryyz@google.com>
Thu, 22 Dec 2022 04:31:48 +0000 (23:31 -0500)
committerCherry Mui <cherryyz@google.com>
Thu, 22 Dec 2022 15:23:56 +0000 (15:23 +0000)
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 <thanm@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Tim Scharfenort <timscharfenort89@googlemail.com>
Run-TryBot: Cherry Mui <cherryyz@google.com>

misc/cgo/testshared/shared_test.go

index cd8a144d73aa82c54c45e3068ac2aad0877eed89..b14fb1cb3a7b79d7cfafa4e29bd59790b89866e9 100644 (file)
@@ -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")
+}