[testsuite] Pass -pie in ldflags
Commit Message
-pie is a linker flag, it should be passed via "ldflags", instead
of "additional_flags". Otherwise, clang complains,
clang: warning: argument unused during compilation: '-pie'
gdb/testsuite:
2017-11-17 Yao Qi <yao.qi@linaro.org>
* gdb.base/attach-pie-noexec.exp: Pass "-pie" in ldflags.
* gdb.base/break-interp.exp: Likewise.
* gdb.base/jit-attach-pie.exp: Likewise.
---
gdb/testsuite/gdb.base/attach-pie-noexec.exp | 2 +-
gdb/testsuite/gdb.base/break-interp.exp | 3 ++-
gdb/testsuite/gdb.base/jit-attach-pie.exp | 2 +-
3 files changed, 4 insertions(+), 3 deletions(-)
Comments
On 2017-11-17 10:22, Yao Qi wrote:
> -pie is a linker flag, it should be passed via "ldflags", instead
> of "additional_flags". Otherwise, clang complains,
>
> clang: warning: argument unused during compilation: '-pie'
>
> gdb/testsuite:
>
> 2017-11-17 Yao Qi <yao.qi@linaro.org>
>
> * gdb.base/attach-pie-noexec.exp: Pass "-pie" in ldflags.
> * gdb.base/break-interp.exp: Likewise.
> * gdb.base/jit-attach-pie.exp: Likewise.
> ---
> gdb/testsuite/gdb.base/attach-pie-noexec.exp | 2 +-
> gdb/testsuite/gdb.base/break-interp.exp | 3 ++-
> gdb/testsuite/gdb.base/jit-attach-pie.exp | 2 +-
> 3 files changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/gdb/testsuite/gdb.base/attach-pie-noexec.exp
> b/gdb/testsuite/gdb.base/attach-pie-noexec.exp
> index 82e6af6..56a42cb 100644
> --- a/gdb/testsuite/gdb.base/attach-pie-noexec.exp
> +++ b/gdb/testsuite/gdb.base/attach-pie-noexec.exp
> @@ -20,7 +20,7 @@ if {![can_spawn_for_attach]} {
> standard_testfile .c
> set executable ${testfile}
>
> -if { [prepare_for_testing "failed to prepare" $executable "" [list
> debug "additional_flags=-fPIE -pie"]] } {
> +if { [prepare_for_testing "failed to prepare" $executable "" [list
> debug "additional_flags=-fPIE" "ldflags=-pie"]] } {
> return -1
> }
>
> diff --git a/gdb/testsuite/gdb.base/break-interp.exp
> b/gdb/testsuite/gdb.base/break-interp.exp
> index 3a6d9a9..460e5f6 100644
> --- a/gdb/testsuite/gdb.base/break-interp.exp
> +++ b/gdb/testsuite/gdb.base/break-interp.exp
> @@ -625,7 +625,8 @@ foreach ldprelink {NO YES} {
> lappend opts {debug}
> }
> if {$binpie != "NO"} {
> - lappend opts {additional_flags=-fPIE -pie}
> + lappend opts {additional_flags=-fPIE}
> + lappend opts {ldflags=-pie}
> }
>
> set dir ${exec}.d
> diff --git a/gdb/testsuite/gdb.base/jit-attach-pie.exp
> b/gdb/testsuite/gdb.base/jit-attach-pie.exp
> index da77a4a..eb484a3 100644
> --- a/gdb/testsuite/gdb.base/jit-attach-pie.exp
> +++ b/gdb/testsuite/gdb.base/jit-attach-pie.exp
> @@ -21,7 +21,7 @@ standard_testfile .c
> set executable ${testfile}
>
> if { [build_executable ${testfile}.exp $executable $srcfile \
> - [list debug pthreads "additional_flags=-fPIE -pie"]] } {
> + [list debug pthreads "additional_flags=-fPIE" "ldflags=-pie"]] }
> {
> return -1
> }
LGTM, but out of curiosity, does break-interp.exp work for you (before
this patch)? I am seeing many failures, even with GCC.
Simon
On 17-11-17 11:41:12, Simon Marchi wrote:
>
> LGTM, but out of curiosity, does break-interp.exp work for you (before this
> patch)? I am seeing many failures, even with GCC.
>
No, there are many fails in break-interp.exp. Patch is pushed in.
@@ -20,7 +20,7 @@ if {![can_spawn_for_attach]} {
standard_testfile .c
set executable ${testfile}
-if { [prepare_for_testing "failed to prepare" $executable "" [list debug "additional_flags=-fPIE -pie"]] } {
+if { [prepare_for_testing "failed to prepare" $executable "" [list debug "additional_flags=-fPIE" "ldflags=-pie"]] } {
return -1
}
@@ -625,7 +625,8 @@ foreach ldprelink {NO YES} {
lappend opts {debug}
}
if {$binpie != "NO"} {
- lappend opts {additional_flags=-fPIE -pie}
+ lappend opts {additional_flags=-fPIE}
+ lappend opts {ldflags=-pie}
}
set dir ${exec}.d
@@ -21,7 +21,7 @@ standard_testfile .c
set executable ${testfile}
if { [build_executable ${testfile}.exp $executable $srcfile \
- [list debug pthreads "additional_flags=-fPIE -pie"]] } {
+ [list debug pthreads "additional_flags=-fPIE" "ldflags=-pie"]] } {
return -1
}