diff options
author | WenHan Gu <Wenhan.gu@mediatek.com> | 2014-07-31 14:39:49 +0800 |
---|---|---|
committer | Logan Chien <tzuhsiang.chien@gmail.com> | 2014-09-16 00:03:44 +0800 |
commit | 56ca658f0e983659e171f437a48b933b0389de4a (patch) | |
tree | 634c16804bdae4476be21987f1d4ebc6ba687b3a | |
parent | a9e7354ef9415cc442dba485ba3713c2da83ebdd (diff) | |
download | llvm-56ca658f0e983659e171f437a48b933b0389de4a.tar.gz |
[ndk][pndk] Let ndk-link support -static.
-rw-r--r-- | tools/ndk-link/ndk-link.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/tools/ndk-link/ndk-link.cpp b/tools/ndk-link/ndk-link.cpp index 2e35957df65..829c36ec226 100644 --- a/tools/ndk-link/ndk-link.cpp +++ b/tools/ndk-link/ndk-link.cpp @@ -44,6 +44,9 @@ InputFilenames(cl::Positional, cl::OneOrMore, static cl::opt<bool> Shared("shared", cl::ZeroOrMore, cl::desc("Generate shared bitcode library")); +static cl::opt<bool> +Static("static", cl::ZeroOrMore, cl::desc("Hint for generating static library")); + static cl::opt<std::string> OutputFilename("o", cl::desc("Override output filename"), cl::value_desc("output bitcode file")); @@ -382,6 +385,14 @@ static std::string* ProcessArgv(int argc, char **argv, NativeFileName = sys::path::stem(OutputFilename); } + if (Static) { + if (PIE) { + errs() << "Cannot use PIE with static build\n"; + exit (1); + } + Output << "-static "; + } + std::string implied_lib = getImpliedLibName(NativeFileName); if (!implied_lib.empty()) Output << "-l" << implied_lib << " "; |