311 lines
12 KiB
Diff
311 lines
12 KiB
Diff
diff --git a/src/cmd/dist/test.go b/src/cmd/dist/test.go
|
|
index d9eb9c3..506f979 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 a495bd7..2c6107b 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 && !android && !cmd_go_bootstrap && !msan && !no_openssl
|
|
-// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl
|
|
+//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
|
+// +build linux,!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 3b4c364..371bc20 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 ec6e80c..05431b1 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 && !android && !cmd_go_bootstrap && !msan && !no_openssl
|
|
-// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl
|
|
+//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
|
+// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static
|
|
|
|
package boring
|
|
|
|
diff --git a/src/crypto/internal/boring/ecdsa.go b/src/crypto/internal/boring/ecdsa.go
|
|
index f72da41..33ee442 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 && !android && !cmd_go_bootstrap && !msan && !no_openssl
|
|
-// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl
|
|
+//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
|
+// +build linux,!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 4547ade..b8aaae4 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 4820385..ac41482 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 4e913c3..10cfbb3 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 && !android && !cmd_go_bootstrap && !msan && !no_openssl
|
|
-// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl
|
|
+//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
|
+// +build linux,!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 e513834..08c5245 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 || !cgo || android || cmd_go_bootstrap || msan || no_openssl
|
|
-// +build !linux !cgo android cmd_go_bootstrap msan no_openssl
|
|
+//go:build !linux || !cgo || android || cmd_go_bootstrap || msan || no_openssl || static
|
|
+// +build !linux !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 710d074..853be3d 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 36be702..331dfd3 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 955924e..c0f3435 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 b39bf54..80c933a 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 abaff5c..e2263a5 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 8418c38..39bf3ae 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 be7c71a..35e1860 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 5174f66..a8008e9 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 18d6777..e8ac53b 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 e9c334f..3adbd4d 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 && !android && !cmd_go_bootstrap && !msan && !no_openssl
|
|
-// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl
|
|
+//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
|
+// +build linux,!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 b1a2f57..0cabadb 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 && !android && !cmd_go_bootstrap && !msan && !no_openssl
|
|
-// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl
|
|
+//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
|
+// +build linux,!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 bdcc782..6184d6c 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 && !android && !cmd_go_bootstrap && !msan && !no_openssl
|
|
-// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl
|
|
+//go:build linux && !android && !cmd_go_bootstrap && !msan && !no_openssl && !static
|
|
+// +build linux,!android,!cmd_go_bootstrap,!msan,!no_openssl,!static
|
|
|
|
package boring
|
|
|