aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIain Sandoe <iain@sandoe.co.uk>2021-03-28 14:48:17 +0100
committerIain Sandoe <iain@sandoe.co.uk>2021-08-18 19:28:20 +0100
commit15bdae016654f63a36e49a37c9d26282bebb1da9 (patch)
tree244dcca52d1d1c6dde27d7ca6ac0a90c8ea69245
parent1b34248527472496ca3fe2a07183beac8cf69041 (diff)
downloadgcc-15bdae016654f63a36e49a37c9d26282bebb1da9.zip
gcc-15bdae016654f63a36e49a37c9d26282bebb1da9.tar.gz
gcc-15bdae016654f63a36e49a37c9d26282bebb1da9.tar.bz2
Darwin: Handle the -rpath command line option.
This handles the command line '-rpath' option by passing it through to the static linker. Signed-off-by: Iain Sandoe <iain@sandoe.co.uk> gcc/ChangeLog: * config.gcc: Include rpath.opt for Darwin. * config/darwin.h (DRIVER_SELF_SPECS): Handle -rpath.
-rw-r--r--gcc/config.gcc2
-rw-r--r--gcc/config/darwin.h3
2 files changed, 3 insertions, 2 deletions
diff --git a/gcc/config.gcc b/gcc/config.gcc
index d9bfbfd..eb232df 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -700,7 +700,7 @@ case ${target} in
tm_file="${tm_file} ${cpu_type}/darwin.h"
tm_p_file="${tm_p_file} darwin-protos.h"
target_gtfiles="$target_gtfiles \$(srcdir)/config/darwin.c"
- extra_options="${extra_options} darwin.opt"
+ extra_options="${extra_options} rpath.opt darwin.opt"
c_target_objs="${c_target_objs} darwin-c.o"
cxx_target_objs="${cxx_target_objs} darwin-c.o"
d_target_objs="${d_target_objs} darwin-d.o"
diff --git a/gcc/config/darwin.h b/gcc/config/darwin.h
index 20d6b1e..b1be561 100644
--- a/gcc/config/darwin.h
+++ b/gcc/config/darwin.h
@@ -132,6 +132,7 @@ extern GTY(()) int darwin_ms_struct;
"%{gsplit-dwarf:%ngsplit-dwarf is not supported on this platform} \
%<gsplit-dwarf", \
"%{gused:-g -feliminate-unused-debug-symbols} %<gused", \
+"%{rpath*: -Xlinker -rpath -Xlinker %*}", \
"%{shared:-Zdynamiclib} %<shared", \
"%{static:%{Zdynamic:%e conflicting code gen style switches are used}}",\
"%{y*:%nthe y option is obsolete and ignored} %<y*", \
@@ -238,7 +239,7 @@ extern GTY(()) int darwin_ms_struct;
DARWIN_NOPIE_SPEC \
DARWIN_RDYNAMIC \
DARWIN_NOCOMPACT_UNWIND \
- "}}}}}}} %<pie %<no-pie %<rdynamic %<X "
+ "}}}}}}} %<pie %<no-pie %<rdynamic %<X %<rpath "
/* Spec that controls whether the debug linker is run automatically for
a link step. This needs to be done if there is a source file on the