--- src/cmd/link/internal/ld/config.go 2020-05-28 00:44:54.350000000 +0200 +++ src/cmd/link/internal/ld/config.go 2020-05-28 00:47:34.960000000 +0200 @@ -70,7 +70,7 @@ *mode = BuildModeCArchive case "c-shared": switch objabi.GOARCH { - case "386", "amd64", "arm", "arm64", "ppc64le", "s390x": + case "386", "amd64", "arm", "arm64", "ppc64", "ppc64le", "s390x": default: return badmode() } @@ -79,7 +79,7 @@ switch objabi.GOOS { case "linux": switch objabi.GOARCH { - case "386", "amd64", "arm", "arm64", "ppc64le", "s390x": + case "386", "amd64", "arm", "arm64", "ppc64", "ppc64le", "s390x": default: return badmode() } @@ -91,7 +91,7 @@ switch objabi.GOOS { case "linux": switch objabi.GOARCH { - case "386", "amd64", "arm", "arm64", "s390x", "ppc64le": + case "386", "amd64", "arm", "arm64", "s390x", "ppc64", "ppc64le": default: return badmode() } @@ -186,7 +186,7 @@ // Internally linking cgo is incomplete on some architectures. // https://golang.org/issue/14449 // https://golang.org/issue/21961 - if iscgo && ctxt.Arch.InFamily(sys.MIPS64, sys.MIPS, sys.PPC64) { + if iscgo && ctxt.Arch.InFamily(sys.MIPS64, sys.MIPS) { return true, objabi.GOARCH + " does not support internal cgo" } @@ -261,8 +261,6 @@ switch { case objabi.GOARCH == "riscv64": Exitf("external linking not supported for %s/riscv64", objabi.GOOS) - case objabi.GOARCH == "ppc64" && objabi.GOOS != "aix": - Exitf("external linking not supported for %s/ppc64", objabi.GOOS) } } }