Created
April 8, 2022 19:30
-
-
Save derekparker/ce2606d2d043fd3433b0e122c2273936 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
```diff | |
diff --git a/src/cmd/dist/test.go b/src/cmd/dist/test.go | |
index d9eb9c3862..506f9799aa 100644 | |
--- a/src/cmd/dist/test.go | |
+++ b/src/cmd/dist/test.go | |
@@ -1180,18 +1180,20 @@ func (t *tester) cgoTest(dt *distTest) error { | |
fmt.Println("No support for static linking found (lacks libc.a?), skip cgo static linking test.") | |
} else { | |
if goos != "android" { | |
- t.addCmd(dt, "misc/cgo/testtls", t.goTest(), "-ldflags", `-linkmode=external -extldflags "-static -pthread"`) | |
+ t.addCmd(dt, "misc/cgo/testtls", t.goTest(), "-ldflags", `-linkmode=external -extldflags "-static -pthread"`, "-tags=no_openssl") | |
} | |
t.addCmd(dt, "misc/cgo/nocgo", t.goTest()) | |
t.addCmd(dt, "misc/cgo/nocgo", t.goTest(), "-ldflags", `-linkmode=external`) | |
if goos != "android" { | |
- t.addCmd(dt, "misc/cgo/nocgo", t.goTest(), "-ldflags", `-linkmode=external -extldflags "-static -pthread"`) | |
+ t.addCmd(dt, "misc/cgo/nocgo", t.goTest(), "-ldflags", `-linkmode=external -extldflags "-static -pthread"`, "-tags=no_openssl") | |
+ /* | |
t.addCmd(dt, "misc/cgo/test", t.goTest(), "-tags=static", "-ldflags", `-linkmode=external -extldflags "-static -pthread"`) | |
// -static in CGO_LDFLAGS triggers a different code path | |
// than -static in -extldflags, so test both. | |
// See issue #16651. | |
cmd := t.addCmd(dt, "misc/cgo/test", t.goTest(), "-tags=static") | |
setEnv(cmd, "CGO_LDFLAGS", "-static -pthread") | |
+ */ | |
} | |
} | |
@@ -1201,7 +1203,7 @@ func (t *tester) cgoTest(dt *distTest) error { | |
t.addCmd(dt, "misc/cgo/test", t.goTest(), "-buildmode=pie", "-ldflags=-linkmode=internal", "-tags=internal,internal_pie") | |
} | |
t.addCmd(dt, "misc/cgo/testtls", t.goTest(), "-buildmode=pie") | |
- t.addCmd(dt, "misc/cgo/nocgo", t.goTest(), "-buildmode=pie") | |
+ t.addCmd(dt, "misc/cgo/nocgo", t.goTest(), "-buildmode=pie", "-tags=no_openssl") | |
} | |
} | |
} | |
diff --git a/src/crypto/internal/boring/aes.go b/src/crypto/internal/boring/aes.go | |
index 8b981d652a..4f247ead38 100644 | |
--- a/src/crypto/internal/boring/aes.go | |
+++ b/src/crypto/internal/boring/aes.go | |
@@ -2,8 +2,8 @@ | |
// Use of this source code is governed by a BSD-style | |
// license that can be found in the LICENSE file. | |
-//go:build linux && amd64 && !android && !cmd_go_bootstrap && !msan && !no_openssl | |
-// +build linux,amd64,!android,!cmd_go_bootstrap,!msan,!no_openssl | |
+//go:build linux && amd64 && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static | |
+// +build linux,amd64,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static | |
package boring | |
diff --git a/src/crypto/internal/boring/aes_test.go b/src/crypto/internal/boring/aes_test.go | |
index 3b4c3644a3..371bc20e62 100644 | |
--- a/src/crypto/internal/boring/aes_test.go | |
+++ b/src/crypto/internal/boring/aes_test.go | |
@@ -1,9 +1,5 @@ | |
-// +build linux | |
-// +build !android | |
-// +build !no_openssl | |
-// +build !cmd_go_bootstrap | |
-// +build !msan | |
-// +build cgo | |
+//go:build linux && !android && !no_openssl && !cmd_go_bootstrap && !msan && cgo && !static | |
+// +build linux,!android,!no_openssl,!cmd_go_bootstrap,!msan,cgo,!static | |
package boring | |
diff --git a/src/crypto/internal/boring/boring.go b/src/crypto/internal/boring/boring.go | |
index 56da719d9d..28a95e9553 100644 | |
--- a/src/crypto/internal/boring/boring.go | |
+++ b/src/crypto/internal/boring/boring.go | |
@@ -2,8 +2,8 @@ | |
// Use of this source code is governed by a BSD-style | |
// license that can be found in the LICENSE file. | |
-//go:build linux && amd64 && !android && !cmd_go_bootstrap && !msan && !no_openssl | |
-// +build linux,amd64,!android,!cmd_go_bootstrap,!msan,!no_openssl | |
+//go:build linux && amd64 && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static | |
+// +build linux,amd64,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static | |
package boring | |
@@ -17,11 +17,11 @@ import ( | |
"crypto/internal/boring/fipstls" | |
"crypto/internal/boring/sig" | |
"errors" | |
+ "fmt" | |
"math/big" | |
"os" | |
"runtime" | |
"unsafe" | |
- "fmt" | |
) | |
const ( | |
@@ -161,16 +161,16 @@ func NewOpenSSLError(msg string) error { | |
break | |
} | |
- C._goboringcrypto_internal_ERR_error_string_n(e,(*C.uchar)(unsafe.Pointer (&buf[0])), 256) | |
+ C._goboringcrypto_internal_ERR_error_string_n(e, (*C.uchar)(unsafe.Pointer(&buf[0])), 256) | |
message = fmt.Sprintf( | |
"%v\nfile: %v\nline: %v\nfunction: %v\nflags: %v\nerror string: %s\n", | |
- message,C.GoString(file), line, C.GoString(fnc), flags, C.GoString(&(buf[0]))) | |
+ message, C.GoString(file), line, C.GoString(fnc), flags, C.GoString(&(buf[0]))) | |
} | |
} else { | |
for { | |
var buf [256]C.char | |
e = C._goboringcrypto_internal_ERR_get_error() | |
- C._goboringcrypto_internal_ERR_error_string_n(e,(*C.uchar)(unsafe.Pointer (&buf[0])), 256) | |
+ C._goboringcrypto_internal_ERR_error_string_n(e, (*C.uchar)(unsafe.Pointer(&buf[0])), 256) | |
if e == 0 { | |
break | |
} | |
diff --git a/src/crypto/internal/boring/ecdsa.go b/src/crypto/internal/boring/ecdsa.go | |
index 92c2a466da..d5ca822f69 100644 | |
--- a/src/crypto/internal/boring/ecdsa.go | |
+++ b/src/crypto/internal/boring/ecdsa.go | |
@@ -2,8 +2,8 @@ | |
// Use of this source code is governed by a BSD-style | |
// license that can be found in the LICENSE file. | |
-//go:build linux && amd64 && !android && !cmd_go_bootstrap && !msan && !no_openssl | |
-// +build linux,amd64,!android,!cmd_go_bootstrap,!msan,!no_openssl | |
+//go:build linux && amd64 && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static | |
+// +build linux,amd64,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static | |
package boring | |
diff --git a/src/crypto/internal/boring/goboringcrypto.h b/src/crypto/internal/boring/goboringcrypto.h | |
index 4547ade9c0..b8aaae4a36 100644 | |
--- a/src/crypto/internal/boring/goboringcrypto.h | |
+++ b/src/crypto/internal/boring/goboringcrypto.h | |
@@ -1,6 +1,12 @@ | |
// Copyright 2017 The Go Authors. All rights reserved. | |
// Use of this source code is governed by a BSD-style | |
// license that can be found in the LICENSE file. | |
+// +build linux | |
+// +build !android | |
+// +build !no_openssl | |
+// +build !cmd_go_bootstrap | |
+// +build !msan | |
+// +build !static | |
// This header file describes the BoringCrypto ABI as built for use in Go. | |
// The BoringCrypto build for Go (which generates goboringcrypto_*.syso) | |
diff --git a/src/crypto/internal/boring/goopenssl.h b/src/crypto/internal/boring/goopenssl.h | |
index 4820385f67..ac41482935 100644 | |
--- a/src/crypto/internal/boring/goopenssl.h | |
+++ b/src/crypto/internal/boring/goopenssl.h | |
@@ -6,6 +6,7 @@ | |
// +build !no_openssl | |
// +build !cmd_go_bootstrap | |
// +build !msan | |
+// +build !static | |
// This header file describes the OpenSSL ABI as built for use in Go. | |
diff --git a/src/crypto/internal/boring/hmac.go b/src/crypto/internal/boring/hmac.go | |
index 93166e4285..cdb0254575 100644 | |
--- a/src/crypto/internal/boring/hmac.go | |
+++ b/src/crypto/internal/boring/hmac.go | |
@@ -2,8 +2,8 @@ | |
// Use of this source code is governed by a BSD-style | |
// license that can be found in the LICENSE file. | |
-//go:build linux && amd64 && !android && !cmd_go_bootstrap && !msan && !no_openssl | |
-// +build linux,amd64,!android,!cmd_go_bootstrap,!msan,!no_openssl | |
+//go:build linux && amd64 && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static | |
+// +build linux,amd64,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static | |
package boring | |
diff --git a/src/crypto/internal/boring/notboring.go b/src/crypto/internal/boring/notboring.go | |
index 926e65e7d1..f9fa57c739 100644 | |
--- a/src/crypto/internal/boring/notboring.go | |
+++ b/src/crypto/internal/boring/notboring.go | |
@@ -2,8 +2,8 @@ | |
// Use of this source code is governed by a BSD-style | |
// license that can be found in the LICENSE file. | |
-//go:build !linux || !amd64 || !cgo || android || cmd_go_bootstrap || msan || no_openssl | |
-// +build !linux !amd64 !cgo android cmd_go_bootstrap msan no_openssl | |
+//go:build !linux || !amd64 || !cgo || android || cmd_go_bootstrap || msan || no_openssl || static | |
+// +build !linux !amd64 !cgo android cmd_go_bootstrap msan no_openssl static | |
package boring | |
diff --git a/src/crypto/internal/boring/openssl_ecdsa_signature.c b/src/crypto/internal/boring/openssl_ecdsa_signature.c | |
index 710d0744ff..853be3da5b 100644 | |
--- a/src/crypto/internal/boring/openssl_ecdsa_signature.c | |
+++ b/src/crypto/internal/boring/openssl_ecdsa_signature.c | |
@@ -3,6 +3,7 @@ | |
// +build !no_openssl | |
// +build !cmd_go_bootstrap | |
// +build !msan | |
+// +build !static | |
#include "goboringcrypto.h" | |
diff --git a/src/crypto/internal/boring/openssl_evp.c b/src/crypto/internal/boring/openssl_evp.c | |
index 36be702224..331dfd3fe5 100644 | |
--- a/src/crypto/internal/boring/openssl_evp.c | |
+++ b/src/crypto/internal/boring/openssl_evp.c | |
@@ -3,6 +3,7 @@ | |
// +build !no_openssl | |
// +build !cmd_go_bootstrap | |
// +build !msan | |
+// +build !static | |
#include "goboringcrypto.h" | |
diff --git a/src/crypto/internal/boring/openssl_lock_setup.c b/src/crypto/internal/boring/openssl_lock_setup.c | |
index 955924eb07..c0f34354c8 100644 | |
--- a/src/crypto/internal/boring/openssl_lock_setup.c | |
+++ b/src/crypto/internal/boring/openssl_lock_setup.c | |
@@ -3,6 +3,7 @@ | |
// +build !no_openssl | |
// +build !cmd_go_bootstrap | |
// +build !msan | |
+// +build !static | |
#include "goboringcrypto.h" | |
#include <stdio.h> | |
diff --git a/src/crypto/internal/boring/openssl_port_aead_gcm.c b/src/crypto/internal/boring/openssl_port_aead_gcm.c | |
index b39bf547c0..80c933ad58 100644 | |
--- a/src/crypto/internal/boring/openssl_port_aead_gcm.c | |
+++ b/src/crypto/internal/boring/openssl_port_aead_gcm.c | |
@@ -4,6 +4,7 @@ | |
// +build !no_openssl | |
// +build !cmd_go_bootstrap | |
// +build !msan | |
+// +build !static | |
#include "goboringcrypto.h" | |
#include <openssl/err.h> | |
diff --git a/src/crypto/internal/boring/openssl_port_ctr128.c b/src/crypto/internal/boring/openssl_port_ctr128.c | |
index abaff5cbb7..e2263a59bb 100644 | |
--- a/src/crypto/internal/boring/openssl_port_ctr128.c | |
+++ b/src/crypto/internal/boring/openssl_port_ctr128.c | |
@@ -3,6 +3,7 @@ | |
// +build !no_openssl | |
// +build !cmd_go_bootstrap | |
// +build !msan | |
+// +build !static | |
#include "goboringcrypto.h" | |
diff --git a/src/crypto/internal/boring/openssl_port_evp_md5_sha1.c b/src/crypto/internal/boring/openssl_port_evp_md5_sha1.c | |
index 8418c3868b..39bf3aeb4c 100644 | |
--- a/src/crypto/internal/boring/openssl_port_evp_md5_sha1.c | |
+++ b/src/crypto/internal/boring/openssl_port_evp_md5_sha1.c | |
@@ -4,6 +4,7 @@ | |
// +build !no_openssl | |
// +build !cmd_go_bootstrap | |
// +build !msan | |
+// +build !static | |
// The following is a partial backport of crypto/evp/m_md5_sha1.c, | |
// commit cbc8a839959418d8a2c2e3ec6bdf394852c9501e on the | |
diff --git a/src/crypto/internal/boring/openssl_port_hmac.c b/src/crypto/internal/boring/openssl_port_hmac.c | |
index be7c71af6e..35e1860045 100644 | |
--- a/src/crypto/internal/boring/openssl_port_hmac.c | |
+++ b/src/crypto/internal/boring/openssl_port_hmac.c | |
@@ -4,6 +4,8 @@ | |
// +build !no_openssl | |
// +build !cmd_go_bootstrap | |
// +build !msan | |
+// +build !static | |
+ | |
#include "goboringcrypto.h" | |
diff --git a/src/crypto/internal/boring/openssl_port_rsa.c b/src/crypto/internal/boring/openssl_port_rsa.c | |
index 5174f662c9..a8008e9f0b 100644 | |
--- a/src/crypto/internal/boring/openssl_port_rsa.c | |
+++ b/src/crypto/internal/boring/openssl_port_rsa.c | |
@@ -4,6 +4,7 @@ | |
// +build !no_openssl | |
// +build !cmd_go_bootstrap | |
// +build !msan | |
+// +build !static | |
#include "goboringcrypto.h" | |
diff --git a/src/crypto/internal/boring/openssl_stub_rand.c b/src/crypto/internal/boring/openssl_stub_rand.c | |
index 18d6777494..e8ac53b919 100644 | |
--- a/src/crypto/internal/boring/openssl_stub_rand.c | |
+++ b/src/crypto/internal/boring/openssl_stub_rand.c | |
@@ -3,6 +3,7 @@ | |
// +build !no_openssl | |
// +build !cmd_go_bootstrap | |
// +build !msan | |
+// +build !static | |
#include "goboringcrypto.h" | |
#include <openssl/rand.h> | |
diff --git a/src/crypto/internal/boring/rand.go b/src/crypto/internal/boring/rand.go | |
index 483e3c9f89..05f3e06ee5 100644 | |
--- a/src/crypto/internal/boring/rand.go | |
+++ b/src/crypto/internal/boring/rand.go | |
@@ -2,8 +2,8 @@ | |
// Use of this source code is governed by a BSD-style | |
// license that can be found in the LICENSE file. | |
-//go:build linux && amd64 && !android && !cmd_go_bootstrap && !msan && !no_openssl | |
-// +build linux,amd64,!android,!cmd_go_bootstrap,!msan,!no_openssl | |
+//go:build linux && amd64 && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static | |
+// +build linux,amd64,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static | |
package boring | |
diff --git a/src/crypto/internal/boring/rsa.go b/src/crypto/internal/boring/rsa.go | |
index fa2a3781e5..c5ca0d1f6e 100644 | |
--- a/src/crypto/internal/boring/rsa.go | |
+++ b/src/crypto/internal/boring/rsa.go | |
@@ -2,8 +2,8 @@ | |
// Use of this source code is governed by a BSD-style | |
// license that can be found in the LICENSE file. | |
-//go:build linux && amd64 && !android && !cmd_go_bootstrap && !msan && !no_openssl | |
-// +build linux,amd64,!android,!cmd_go_bootstrap,!msan,!no_openssl | |
+//go:build linux && amd64 && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static | |
+// +build linux,amd64,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static | |
package boring | |
diff --git a/src/crypto/internal/boring/sha.go b/src/crypto/internal/boring/sha.go | |
index 9db4480656..5168281184 100644 | |
--- a/src/crypto/internal/boring/sha.go | |
+++ b/src/crypto/internal/boring/sha.go | |
@@ -2,8 +2,8 @@ | |
// Use of this source code is governed by a BSD-style | |
// license that can be found in the LICENSE file. | |
-//go:build linux && amd64 && !android && !cmd_go_bootstrap && !msan && !no_openssl | |
-// +build linux,amd64,!android,!cmd_go_bootstrap,!msan,!no_openssl | |
+//go:build linux && amd64 && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static | |
+// +build linux,amd64,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static | |
package boring | |
``` |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment