]> Cypherpunks repositories - gostls13.git/commitdiff
cmd/cgo/internal/swig,cmd/go: skip swig tests on 386
authorMichael Anthony Knyszek <mknyszek@google.com>
Wed, 29 May 2024 18:12:37 +0000 (18:12 +0000)
committerMichael Knyszek <mknyszek@google.com>
Wed, 29 May 2024 19:59:15 +0000 (19:59 +0000)
We recently added a C++ toolchain to the image, and this is causing
problems on 386 and clang builders. The likely culprit is that we're
missing 32-bit C++ libraries on the builders.

Even if this theory is wrong, these tests *never* ran (always skipped,
or truly never ran) on these platforms, so just skip them for now. We
can look into getting the libraries installed later, but skip for now
to unblock the builders.

There are also problems with clang, but I believe they'll be resolved by
setting CXX to clang++ in golangbuild.

For #67698.

Change-Id: I20fc1c5fa1285001ff86a4226771c30cf2e7f92d
Cq-Include-Trybots: luci.golang.try:gotip-linux-386-clang15,gotip-linux-386
Reviewed-on: https://go-review.googlesource.com/c/go/+/588938
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>

src/cmd/cgo/internal/swig/swig_test.go
src/cmd/go/testdata/script/list_swigcxx.txt

index 41563138a7b3d844dded9ef22515ac8e26b4325f..1bb52b6efb44be42ba00ca681b7f1ec155d5b6b9 100644 (file)
@@ -11,6 +11,7 @@ import (
        "os/exec"
        "path/filepath"
        "regexp"
+       "runtime"
        "strconv"
        "strings"
        "sync"
@@ -73,6 +74,13 @@ func mustHaveCxx(t *testing.T) {
                t.Skip("no C++ compiler")
        }
        testenv.MustHaveExecPath(t, string(args[0]))
+
+       // On the builders, the C++ toolchain doesn't quite work for these tests
+       // for 386 builders or on the clang builders. Thing is, these tests historically
+       // didn't even run on these builders *at all*, so just skip. See #67698.
+       if builder := testenv.Builder(); builder != "" && runtime.GOARCH == "386" {
+               t.Skip("test skipped on 386 on builders because of incompatibility with the C++ toolchain available on builders; see go.dev/issue/67698")
+       }
 }
 
 var (
index 731c1e5a7bcf4f7955ae7ee77fa2bd368ce0e51b..10510f6299404763863f81267e2b47ac9e7fbffa 100644 (file)
@@ -4,6 +4,9 @@
 [!exec:g++] skip
 [!cgo] skip
 
+# See go.dev/issue/67698.
+[GOARCH:386] skip
+
 # CompiledGoFiles should contain 4 files:
 #  a.go
 #  _cgo_import.go [gc only]