summaryrefslogtreecommitdiffstats
path: root/contrib/gcc
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2012-07-15 10:54:10 +0000
committerkib <kib@FreeBSD.org>2012-07-15 10:54:10 +0000
commit7b143adfa238259653af6ba86944406418774c65 (patch)
treee0bd33184f5995065e201dce7d911d3895cabace /contrib/gcc
parenta78a2e3c36e31109393e2a502b2f8f54f3a7f8d0 (diff)
downloadFreeBSD-src-7b143adfa238259653af6ba86944406418774c65.zip
FreeBSD-src-7b143adfa238259653af6ba86944406418774c65.tar.gz
Pass --enable-new-dtags to the linker invocation by default. If
desired, one can turn off the generation of post-ELF standard dtags by overriding it with --disable-new-dtags after the default switch. Immediate effect of the change is that -rpath path is now stored both in DT_RPATH and DT_RUNPATH tags, which is the right way to provide rpath for dynamic linker supporting DT_RUNPATH per specification. Reviewed by: kan MFC after: 1 month
Diffstat (limited to 'contrib/gcc')
-rw-r--r--contrib/gcc/config/arm/freebsd.h2
-rw-r--r--contrib/gcc/config/i386/freebsd.h2
-rw-r--r--contrib/gcc/config/i386/freebsd64.h2
-rw-r--r--contrib/gcc/config/ia64/freebsd.h1
-rw-r--r--contrib/gcc/config/mips/freebsd.h1
-rw-r--r--contrib/gcc/config/rs6000/freebsd.h1
-rw-r--r--contrib/gcc/config/sparc/freebsd.h2
7 files changed, 7 insertions, 4 deletions
diff --git a/contrib/gcc/config/arm/freebsd.h b/contrib/gcc/config/arm/freebsd.h
index c4bc7e1..577d6de 100644
--- a/contrib/gcc/config/arm/freebsd.h
+++ b/contrib/gcc/config/arm/freebsd.h
@@ -50,7 +50,7 @@
%{rdynamic:-export-dynamic} \
%{!dynamic-linker:-dynamic-linker %(fbsd_dynamic_linker) }} \
%{static:-Bstatic}} \
- %{!static:--hash-style=both} \
+ %{!static:--hash-style=both --enable-new-dtags} \
%{symbolic:-Bsymbolic} \
-X %{mbig-endian:-EB} %{mlittle-endian:-EL}"
diff --git a/contrib/gcc/config/i386/freebsd.h b/contrib/gcc/config/i386/freebsd.h
index 3faa4f2..8f89d2a 100644
--- a/contrib/gcc/config/i386/freebsd.h
+++ b/contrib/gcc/config/i386/freebsd.h
@@ -49,7 +49,7 @@ Boston, MA 02110-1301, USA. */
%{rdynamic: -export-dynamic} \
%{!dynamic-linker:-dynamic-linker %(fbsd_dynamic_linker) }} \
%{static:-Bstatic}} \
- %{!static:--hash-style=both} \
+ %{!static:--hash-style=both --enable-new-dtags} \
%{symbolic:-Bsymbolic}"
/* Reset our STARTFILE_SPEC which was properly set in config/freebsd.h
diff --git a/contrib/gcc/config/i386/freebsd64.h b/contrib/gcc/config/i386/freebsd64.h
index 297af7c..9e47d5f 100644
--- a/contrib/gcc/config/i386/freebsd64.h
+++ b/contrib/gcc/config/i386/freebsd64.h
@@ -54,5 +54,5 @@ Boston, MA 02110-1301, USA. */
%{rdynamic:-export-dynamic} \
%{!dynamic-linker:-dynamic-linker %(fbsd_dynamic_linker) }} \
%{static:-Bstatic}} \
- %{!static:--hash-style=both} \
+ %{!static:--hash-style=both --enable-new-dtags} \
%{symbolic:-Bsymbolic}"
diff --git a/contrib/gcc/config/ia64/freebsd.h b/contrib/gcc/config/ia64/freebsd.h
index 2373910..b0c35b5 100644
--- a/contrib/gcc/config/ia64/freebsd.h
+++ b/contrib/gcc/config/ia64/freebsd.h
@@ -27,6 +27,7 @@ Boston, MA 02110-1301, USA. */
%{p:%nconsider using `-pg' instead of `-p' with gprof(1)} \
%{assert*} %{R*} %{rpath*} %{defsym*} \
%{shared:-Bshareable %{h*} %{soname*}} \
+ %{!static:--enable-new-dtags} \
%{symbolic:-Bsymbolic} \
%{!shared: \
%{!static: \
diff --git a/contrib/gcc/config/mips/freebsd.h b/contrib/gcc/config/mips/freebsd.h
index 712acd7..d8960aa5 100644
--- a/contrib/gcc/config/mips/freebsd.h
+++ b/contrib/gcc/config/mips/freebsd.h
@@ -56,6 +56,7 @@ Boston, MA 02110-1301, USA. */
%{v:-V} \
%{assert*} %{R*} %{rpath*} %{defsym*} \
%{shared:-Bshareable %{h*} %{soname*}} \
+ %{!static:--enable-new-dtags} \
%{!shared: \
%{!static: \
%{rdynamic: -export-dynamic} \
diff --git a/contrib/gcc/config/rs6000/freebsd.h b/contrib/gcc/config/rs6000/freebsd.h
index 56907a3..78c8f45 100644
--- a/contrib/gcc/config/rs6000/freebsd.h
+++ b/contrib/gcc/config/rs6000/freebsd.h
@@ -180,6 +180,7 @@ extern int dot_symbols;
%{v:-V} \
%{assert*} %{R*} %{rpath*} %{defsym*} \
%{shared:-Bshareable %{h*} %{soname*}} \
+ %{!static:--enable-new-dtags} \
%{!shared: \
%{!static: \
%{rdynamic: -export-dynamic} \
diff --git a/contrib/gcc/config/sparc/freebsd.h b/contrib/gcc/config/sparc/freebsd.h
index 305840f..6989868 100644
--- a/contrib/gcc/config/sparc/freebsd.h
+++ b/contrib/gcc/config/sparc/freebsd.h
@@ -53,7 +53,7 @@ Boston, MA 02110-1301, USA. */
%{rdynamic:-export-dynamic} \
%{!dynamic-linker:-dynamic-linker %(fbsd_dynamic_linker) }} \
%{static:-Bstatic}} \
- %{!static:--hash-style=both} \
+ %{!static:--hash-style=both --enable-new-dtags} \
%{symbolic:-Bsymbolic}"
OpenPOWER on IntegriCloud