diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2020-04-03 17:25:38 -0600 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2020-04-03 19:07:33 -0600 |
commit | 9fe0019ec1abd6f440238f458f990d7c87f590f8 (patch) | |
tree | 2b1e9d7f6050971eabe5e36da034bbd22bf401d8 | |
parent | 84654a0302a2057ef0ebb525e90593d7f996d5d3 (diff) |
tunnel: libwg-go: use deterministic verdef name
From the ld.gold source:
const char* name = parameters->options().soname();
if (name == NULL)
name = parameters->options().output_file_name();
That means by default it uses `-o {output}` as the verdef aux name,
which is random every time due to Go's build system. By passing in
`--soname={somethingexplicit}` we can instead have a deterministic
verdef.
This commit makes wireguard-android reproducible.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
-rw-r--r-- | tunnel/tools/libwg-go/Makefile | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/tunnel/tools/libwg-go/Makefile b/tunnel/tools/libwg-go/Makefile index 1a83959a..abb42884 100644 --- a/tunnel/tools/libwg-go/Makefile +++ b/tunnel/tools/libwg-go/Makefile @@ -14,7 +14,7 @@ NDK_GO_ARCH_MAP_mips64 := mips64x CLANG_FLAGS := --target=$(ANDROID_LLVM_TRIPLE) --gcc-toolchain=$(ANDROID_TOOLCHAIN_ROOT) --sysroot=$(ANDROID_SYSROOT) export CGO_CFLAGS := $(CLANG_FLAGS) $(CFLAGS) -export CGO_LDFLAGS := $(CLANG_FLAGS) $(LDFLAGS) +export CGO_LDFLAGS := $(CLANG_FLAGS) $(LDFLAGS) -Wl,-soname=libwg-go.so export CC := $(ANDROID_C_COMPILER) export GOARCH := $(NDK_GO_ARCH_MAP_$(ANDROID_ARCH_NAME)) export GOOS := android |