Fixes for PR214. Use the SHLIBEXT variable instead of hardcoding .so into
every file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10976 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Linker/LinkArchives.cpp b/lib/Linker/LinkArchives.cpp
index 7cd440d1..296d87b 100644
--- a/lib/Linker/LinkArchives.cpp
+++ b/lib/Linker/LinkArchives.cpp
@@ -56,8 +56,8 @@
if (!SharedObjectOnly && FileOpenable(Directory + LibName + ".bc"))
return Directory + LibName + ".bc";
- if (FileOpenable(Directory + LibName + ".so"))
- return Directory + LibName + ".so";
+ if (FileOpenable(Directory + LibName + SHLIBEXT))
+ return Directory + LibName + SHLIBEXT;
if (!SharedObjectOnly && FileOpenable(Directory + LibName + ".a"))
return Directory + LibName + ".a";
diff --git a/lib/Support/PluginLoader.cpp b/lib/Support/PluginLoader.cpp
index be8833d..1e67b94 100644
--- a/lib/Support/PluginLoader.cpp
+++ b/lib/Support/PluginLoader.cpp
@@ -37,5 +37,5 @@
// This causes operator= above to be invoked for every -load option.
static cl::opt<PluginLoader, false, cl::parser<std::string> >
-LoadOpt("load", cl::ZeroOrMore, cl::value_desc("plugin.so"),
+LoadOpt("load", cl::ZeroOrMore, cl::value_desc("plugin" SHLIBEXT),
cl::desc("Load the specified plugin"));
diff --git a/lib/Support/ToolRunner.cpp b/lib/Support/ToolRunner.cpp
index b1fb64b..f81da62 100644
--- a/lib/Support/ToolRunner.cpp
+++ b/lib/Support/ToolRunner.cpp
@@ -337,7 +337,7 @@
int GCC::MakeSharedObject(const std::string &InputFile, FileType fileType,
std::string &OutputFile) {
- OutputFile = getUniqueFilename(InputFile+".so");
+ OutputFile = getUniqueFilename(InputFile+SHLIBEXT);
// Compile the C/asm file into a shared object
const char* GCCArgs[] = {
GCCPath.c_str(),
diff --git a/tools/bugpoint/ToolRunner.cpp b/tools/bugpoint/ToolRunner.cpp
index b1fb64b..f81da62 100644
--- a/tools/bugpoint/ToolRunner.cpp
+++ b/tools/bugpoint/ToolRunner.cpp
@@ -337,7 +337,7 @@
int GCC::MakeSharedObject(const std::string &InputFile, FileType fileType,
std::string &OutputFile) {
- OutputFile = getUniqueFilename(InputFile+".so");
+ OutputFile = getUniqueFilename(InputFile+SHLIBEXT);
// Compile the C/asm file into a shared object
const char* GCCArgs[] = {
GCCPath.c_str(),
diff --git a/tools/gccld/Linker.cpp b/tools/gccld/Linker.cpp
index 7cd440d1..296d87b 100644
--- a/tools/gccld/Linker.cpp
+++ b/tools/gccld/Linker.cpp
@@ -56,8 +56,8 @@
if (!SharedObjectOnly && FileOpenable(Directory + LibName + ".bc"))
return Directory + LibName + ".bc";
- if (FileOpenable(Directory + LibName + ".so"))
- return Directory + LibName + ".so";
+ if (FileOpenable(Directory + LibName + SHLIBEXT))
+ return Directory + LibName + SHLIBEXT;
if (!SharedObjectOnly && FileOpenable(Directory + LibName + ".a"))
return Directory + LibName + ".a";
diff --git a/tools/llee/Makefile b/tools/llee/Makefile
index a93c4de..50632e0 100644
--- a/tools/llee/Makefile
+++ b/tools/llee/Makefile
@@ -16,7 +16,7 @@
llee: $(DESTTOOLCURRENT)/llee
$(DESTTOOLCURRENT)/llee: Makefile
- echo exec env LD_PRELOAD=$(DESTLIBCURRENT)/execve.so $$\* > $@
+ echo exec env LD_PRELOAD=$(DESTLIBCURRENT)/execve$(SHLIBEXT) $$\* > $@
chmod u+x $@
clean::