summary refs log tree commit diff
path: root/gnu/packages/patches/gcc-arm-link-spec-fix.patch
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2015-04-09 01:48:05 -0400
committerMark H Weaver <mhw@netris.org>2015-04-09 01:58:04 -0400
commit1421afa94a825d413a5609ef0d89b878e1ba458c (patch)
tree88cf793643ecca7d35a4e2cc3f8a10b0d3e78113 /gnu/packages/patches/gcc-arm-link-spec-fix.patch
parent7b2abd0055fc88ac95a5ad10df7f150181564b7a (diff)
downloadguix-1421afa94a825d413a5609ef0d89b878e1ba458c.tar.gz
gnu: gcc: Do not pass -dynamic-linker to linker when !shared on arm.
Fixes <http://bugs.gnu.org/20102>.

* gnu/packages/patches/gcc-arm-link-spec-fix.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/gcc.scm (gcc-4.8, gcc-4.9): Add patch.
* gnu/packages/cross-base.scm (cross-gcc): Preserve patches from gcc-4.8.

Co-Authored-By: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages/patches/gcc-arm-link-spec-fix.patch')
-rw-r--r--gnu/packages/patches/gcc-arm-link-spec-fix.patch16
1 files changed, 16 insertions, 0 deletions
diff --git a/gnu/packages/patches/gcc-arm-link-spec-fix.patch b/gnu/packages/patches/gcc-arm-link-spec-fix.patch
new file mode 100644
index 0000000000..0ffe8a1810
--- /dev/null
+++ b/gnu/packages/patches/gcc-arm-link-spec-fix.patch
@@ -0,0 +1,16 @@
+Do not pass -dynamic-linker to linker when !shared.
+Fixes <http://bugs.gnu.org/20102>.
+
+Patch by Ludovic Courtès <ludo@gnu.org>.
+
+--- gcc-4.8.4/gcc/config/arm/linux-elf.h.orig	2015-04-08 20:31:20.376900478 +0200
++++ gcc-4.8.4/gcc/config/arm/linux-elf.h	2015-04-08 20:31:36.437014437 +0200
+@@ -65,7 +65,7 @@
+    %{symbolic:-Bsymbolic} \
+    %{!static: \
+      %{rdynamic:-export-dynamic} \
+-     -dynamic-linker " GNU_USER_DYNAMIC_LINKER "} \
++     %{!shared:-dynamic-linker " GNU_USER_DYNAMIC_LINKER "}} \
+    -X \
+    %{mbig-endian:-EB} %{mlittle-endian:-EL}" \
+    SUBTARGET_EXTRA_LINK_SPEC