v1.5 branch refresh based upon upstream master @ c8677ca89e53e3be7988d54280fce166cc894a7e
[librecmc/librecmc.git] / toolchain / gcc / patches / 7.3.0 / 230-musl_libssp.patch
1 commit 1877bc9d8f2be143fbe530347a945850d0ecd234
2 Author: Steven Barth <cyrus@openwrt.org>
3 Date:   Mon Jun 22 10:31:07 2015 +0000
4
5     gcc/musl: rework SSP-support
6     
7     Make musl provide libssp_nonshared.a and make GCC link it unconditionally
8     if musl is used. This should be a no-op if SSP is disabled and seems to be
9     the only reliable way of dealing with SSP over all packages due to the mess
10     that is linkerflags handling in packages.
11     
12     Signed-off-by: Steven Barth <steven@midlink.org>
13     
14     SVN-Revision: 46108
15
16 --- a/gcc/gcc.c
17 +++ b/gcc/gcc.c
18 @@ -861,7 +861,9 @@ proper position among the other output f
19  #endif
20  
21  #ifndef LINK_SSP_SPEC
22 -#ifdef TARGET_LIBC_PROVIDES_SSP
23 +#if DEFAULT_LIBC == LIBC_MUSL
24 +#define LINK_SSP_SPEC "-lssp_nonshared"
25 +#elif defined(TARGET_LIBC_PROVIDES_SSP)
26  #define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all" \
27                        "|fstack-protector-strong|fstack-protector-explicit:}"
28  #else