diff options
author | Reid Spencer <rspencer@reidspencer.com> | 2004-11-29 14:07:46 +0000 |
---|---|---|
committer | Reid Spencer <rspencer@reidspencer.com> | 2004-11-29 14:07:46 +0000 |
commit | 9ec2761bb76d6c305821cc623ab5fb680ea4ddd6 (patch) | |
tree | 158a3390f0c7386032bc6395b85ec3475eabffe7 /llvm/lib/Support/PluginLoader.cpp | |
parent | 0e6a4fc4487f95b8d615fe7a93b3eb8268554ce0 (diff) | |
download | bcm5719-llvm-9ec2761bb76d6c305821cc623ab5fb680ea4ddd6.tar.gz bcm5719-llvm-9ec2761bb76d6c305821cc623ab5fb680ea4ddd6.zip |
Use System/DynamicLibrary instead of Support/DynamicLinker to implement.
llvm-svn: 18356
Diffstat (limited to 'llvm/lib/Support/PluginLoader.cpp')
-rw-r--r-- | llvm/lib/Support/PluginLoader.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/llvm/lib/Support/PluginLoader.cpp b/llvm/lib/Support/PluginLoader.cpp index 2c13d578129..39e3c0afa53 100644 --- a/llvm/lib/Support/PluginLoader.cpp +++ b/llvm/lib/Support/PluginLoader.cpp @@ -13,13 +13,23 @@ #define DONT_GET_PLUGIN_LOADER_OPTION #include "llvm/Support/PluginLoader.h" -#include "llvm/Support/DynamicLinker.h" +#include "llvm/System/DynamicLibrary.h" #include <iostream> + using namespace llvm; void PluginLoader::operator=(const std::string &Filename) { std::string ErrorMessage; - if (LinkDynamicObject(Filename.c_str(), &ErrorMessage)) + try { + sys::DynamicLibrary::LoadLibraryPermanently(Filename.c_str()); + } catch (const std::string& errmsg) { + if (errmsg.empty()) { + ErrorMessage = "Unknown"; + } else { + ErrorMessage = errmsg; + } + } + if (!ErrorMessage.empty()) std::cerr << "Error opening '" << Filename << "': " << ErrorMessage << "\n -load request ignored.\n"; } |