diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2019-06-09 14:02:54 +0200 |
---|---|---|
committer | Ian Lance Taylor <iant@golang.org> | 2019-06-10 04:29:54 +0000 |
commit | 3887549ce40f4bccd598ea491ce6a3b7334bc214 (patch) | |
tree | 0f1cd57794f452a6c9c32eebef7b5fcb76980caf | |
parent | 451e6d61b375ed8b7d2411af9514df12e9970d45 (diff) | |
download | go-3887549ce40f4bccd598ea491ce6a3b7334bc214.tar.gz go-3887549ce40f4bccd598ea491ce6a3b7334bc214.zip |
[release-branch.go1.12] cmd/go: accept -Wl,-R/path/
This is a backport of CL 178397.
Updates #32167
Fixes #32168
Change-Id: Idb16a01d56814ea09ad277798787355dc6a3121f
Reviewed-on: https://go-review.googlesource.com/c/go/+/181437
Reviewed-by: Jason Donenfeld <Jason@zx2c4.com>
Reviewed-by: Emmanuel Odeke <emm.odeke@gmail.com>
Run-TryBot: Jason Donenfeld <Jason@zx2c4.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
-rw-r--r-- | src/cmd/go/internal/work/security.go | 4 | ||||
-rw-r--r-- | src/cmd/go/internal/work/security_test.go | 8 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/cmd/go/internal/work/security.go b/src/cmd/go/internal/work/security.go index 1a401b8981..59d5b0410f 100644 --- a/src/cmd/go/internal/work/security.go +++ b/src/cmd/go/internal/work/security.go @@ -177,6 +177,8 @@ var validLinkerFlags = []*regexp.Regexp{ re(`-Wl,-framework,[^,@\-][^,]+`), re(`-Wl,-headerpad_max_install_names`), re(`-Wl,--no-undefined`), + re(`-Wl,-R([^@\-][^,@]*$)`), + re(`-Wl,--just-symbols[=,]([^,@\-][^,@]+)`), re(`-Wl,-rpath(-link)?[=,]([^,@\-][^,]+)`), re(`-Wl,-s`), re(`-Wl,-search_paths_first`), @@ -206,6 +208,8 @@ var validLinkerFlagsWithNextArg = []string{ "-target", "-Wl,-framework", "-Wl,-rpath", + "-Wl,-R", + "-Wl,--just-symbols", "-Wl,-undefined", } diff --git a/src/cmd/go/internal/work/security_test.go b/src/cmd/go/internal/work/security_test.go index d23b6eadff..fd8caeab4e 100644 --- a/src/cmd/go/internal/work/security_test.go +++ b/src/cmd/go/internal/work/security_test.go @@ -125,6 +125,11 @@ var goodLinkerFlags = [][]string{ {"-pthread"}, {"-Wl,-rpath,foo"}, {"-Wl,-rpath,$ORIGIN/foo"}, + {"-Wl,-R", "/foo"}, + {"-Wl,-R", "foo"}, + {"-Wl,-R,foo"}, + {"-Wl,--just-symbols=foo"}, + {"-Wl,--just-symbols,foo"}, {"-Wl,--warn-error"}, {"-Wl,--no-warn-error"}, {"foo.so"}, @@ -197,6 +202,9 @@ var badLinkerFlags = [][]string{ {"-x", "--c"}, {"-x", "@obj"}, {"-Wl,-rpath,@foo"}, + {"-Wl,-R,foo,bar"}, + {"-Wl,-R,@foo"}, + {"-Wl,--just-symbols,@foo"}, {"../x.o"}, } |