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::