diff options
Diffstat (limited to 'recipes-devtools/clang/clang/0009-clang-Driver-tools.cpp-Add-lssp_nonshared-on-musl.patch')
-rw-r--r-- | recipes-devtools/clang/clang/0009-clang-Driver-tools.cpp-Add-lssp_nonshared-on-musl.patch | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/recipes-devtools/clang/clang/0009-clang-Driver-tools.cpp-Add-lssp_nonshared-on-musl.patch b/recipes-devtools/clang/clang/0009-clang-Driver-tools.cpp-Add-lssp_nonshared-on-musl.patch new file mode 100644 index 0000000..4820682 --- /dev/null +++ b/recipes-devtools/clang/clang/0009-clang-Driver-tools.cpp-Add-lssp_nonshared-on-musl.patch | |||
@@ -0,0 +1,31 @@ | |||
1 | From 8a7e28da4aa95eb2e19dce222542e787f79a444c Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Thu, 19 May 2016 21:11:06 -0700 | ||
4 | Subject: [PATCH] clang: Driver/tools.cpp: Add -lssp_nonshared on musl | ||
5 | |||
6 | musl driver will need to add ssp_nonshared for stack_check_local | ||
7 | on the linker cmdline when using stack protector commands on | ||
8 | compiler cmdline | ||
9 | |||
10 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
11 | --- | ||
12 | clang/lib/Driver/ToolChains/Gnu.cpp | 6 ++++++ | ||
13 | 1 file changed, 6 insertions(+) | ||
14 | |||
15 | diff --git a/clang/lib/Driver/ToolChains/Gnu.cpp b/clang/lib/Driver/ToolChains/Gnu.cpp | ||
16 | index da197e47662..4821cfebc21 100644 | ||
17 | --- a/clang/lib/Driver/ToolChains/Gnu.cpp | ||
18 | +++ b/clang/lib/Driver/ToolChains/Gnu.cpp | ||
19 | @@ -583,6 +583,12 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA, | ||
20 | if (IsIAMCU) | ||
21 | CmdArgs.push_back("-lgloss"); | ||
22 | |||
23 | + if (ToolChain.getTriple().isMusl() && | ||
24 | + (Args.hasArg(options::OPT_fstack_protector) || | ||
25 | + Args.hasArg(options::OPT_fstack_protector_strong) || | ||
26 | + Args.hasArg(options::OPT_fstack_protector_all))) { | ||
27 | + CmdArgs.push_back("-lssp_nonshared"); | ||
28 | + } | ||
29 | if (IsStatic || IsStaticPIE) | ||
30 | CmdArgs.push_back("--end-group"); | ||
31 | else | ||