aboutsummaryrefslogtreecommitdiffstats
path: root/main/gcc/gcc-4.8-musl-libssp.patch
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2013-09-26 17:17:40 +0000
committerTimo Teräs <timo.teras@iki.fi>2013-09-26 17:18:20 +0000
commita76e836073fe67d8c41e87f599f4d282fb5f202f (patch)
tree8ad0c3cc565827a310a8030fa35d35f48e74b8c9 /main/gcc/gcc-4.8-musl-libssp.patch
parentb25ed2a8a246932286bca92bae5b4f11135cc09e (diff)
downloadaports-a76e836073fe67d8c41e87f599f4d282fb5f202f.tar.bz2
aports-a76e836073fe67d8c41e87f599f4d282fb5f202f.tar.xz
main/gcc: fix alpine/musl specific libssp patch
Diffstat (limited to 'main/gcc/gcc-4.8-musl-libssp.patch')
-rw-r--r--main/gcc/gcc-4.8-musl-libssp.patch10
1 files changed, 9 insertions, 1 deletions
diff --git a/main/gcc/gcc-4.8-musl-libssp.patch b/main/gcc/gcc-4.8-musl-libssp.patch
index ba6d5c304e..88725c8e46 100644
--- a/main/gcc/gcc-4.8-musl-libssp.patch
+++ b/main/gcc/gcc-4.8-musl-libssp.patch
@@ -1,3 +1,11 @@
+Author: Timo Teräs <timo.teras@iki.fi>
+
+Alpine musl package provides libssp_nonshared.a. We link to it unconditionally,
+as otherwise we get link failures if some objects are -fstack-protector built
+and final link happens with -fno-stack-protector. This seems to be the common
+case when bootstrapping gcc, the piepatches do not seem to fully fix the
+crosstoolchain and bootstrap sequence wrt. stack-protector flag usage.
+
--- gcc-4.8.1/gcc/gcc.c.orig 2013-09-24 06:27:32.133894539 +0000
+++ gcc-4.8.1/gcc/gcc.c 2013-09-24 06:29:35.790562854 +0000
@@ -656,7 +656,9 @@
@@ -6,7 +14,7 @@
#ifndef LINK_SSP_SPEC
-#ifdef TARGET_LIBC_PROVIDES_SSP
+#if DEFAULT_LIBC == LIBC_MUSL
-+#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all:-lssp_nonshared}"
++#define LINK_SSP_SPEC "-lssp_nonshared"
+#elif defined(TARGET_LIBC_PROVIDES_SSP)
#define LINK_SSP_SPEC "%{fstack-protector:}"
#else