diff options
author | Peter Collingbourne <peter@pcc.me.uk> | 2013-01-17 20:17:16 +0000 |
---|---|---|
committer | Peter Collingbourne <peter@pcc.me.uk> | 2013-01-17 20:17:16 +0000 |
commit | 17d481fb97b304a58e45a136e3f3e2a2a22b76c8 (patch) | |
tree | 0f138b328c63725164909dfa65a529db882993b7 /lib/Driver/Tools.cpp | |
parent | 205ecf01939d6e9c903f0e1d51455b2d882d076b (diff) |
Do not pass -pie flag to linker if -shared specified. This matches
the gcc driver and makes it possible to add -pie to $CC or similar and
have it apply in the right places.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172753 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Driver/Tools.cpp')
-rw-r--r-- | lib/Driver/Tools.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp index 199bb719de..372af79404 100644 --- a/lib/Driver/Tools.cpp +++ b/lib/Driver/Tools.cpp @@ -5506,7 +5506,7 @@ void linuxtools::Link::ConstructJob(Compilation &C, const JobAction &JA, if (!D.SysRoot.empty()) CmdArgs.push_back(Args.MakeArgString("--sysroot=" + D.SysRoot)); - if (Args.hasArg(options::OPT_pie)) + if (Args.hasArg(options::OPT_pie) && !Args.hasArg(options::OPT_shared)) CmdArgs.push_back("-pie"); if (Args.hasArg(options::OPT_rdynamic)) |