1 //===-- PluginLoader.cpp - Implement -load command line option ------------===//
3 // The LLVM Compiler Infrastructure
5 // This file was developed by the LLVM research group and is distributed under
6 // the University of Illinois Open Source License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 // This file implements the -load <plugin> command line option handler.
12 //===----------------------------------------------------------------------===//
14 #define DONT_GET_PLUGIN_LOADER_OPTION
15 #include "llvm/Support/PluginLoader.h"
16 #include "llvm/System/DynamicLibrary.h"
21 void PluginLoader::operator=(const std::string
&Filename
) {
22 std::string ErrorMessage
;
24 sys::DynamicLibrary::LoadLibraryPermanently(Filename
.c_str());
25 } catch (const std::string
& errmsg
) {
27 ErrorMessage
= "Unknown";
29 ErrorMessage
= errmsg
;
32 if (!ErrorMessage
.empty())
33 std::cerr
<< "Error opening '" << Filename
<< "': " << ErrorMessage
34 << "\n -load request ignored.\n";