blob: f73b1c0feb5a366942acff711209cfb593b9caf0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
From fc628b03a5ac41a446fd2dfea0ecbe03331e54d8 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 19 May 2016 21:11:06 -0700
Subject: [PATCH 2/8] clang: Driver/tools.cpp: Add -lssp_nonshared on musl
musl driver will need to add ssp_nonshared for stack_check_local
on the linker cmdline when using stack protector commands on
compiler cmdline
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
lib/Driver/ToolChains/Gnu.cpp | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/lib/Driver/ToolChains/Gnu.cpp b/lib/Driver/ToolChains/Gnu.cpp
index 3755673250..766c650b3c 100644
--- a/lib/Driver/ToolChains/Gnu.cpp
+++ b/lib/Driver/ToolChains/Gnu.cpp
@@ -503,6 +503,12 @@ void tools::gnutools::Linker::ConstructJob(Compilation &C, const JobAction &JA,
if (IsIAMCU)
CmdArgs.push_back("-lgloss");
+ if (ToolChain.getTriple().isMusl() &&
+ (Args.hasArg(options::OPT_fstack_protector) ||
+ Args.hasArg(options::OPT_fstack_protector_strong) ||
+ Args.hasArg(options::OPT_fstack_protector_all))) {
+ CmdArgs.push_back("-lssp_nonshared");
+ }
if (Args.hasArg(options::OPT_static))
CmdArgs.push_back("--end-group");
else
--
2.18.0
|