00001 #ifndef INCLUDE_ORA_SHAREDLIBRARYNAME_H 00002 #define INCLUDE_ORA_SHAREDLIBRARYNAME_H 00003 #include <string> 00004 #include <boost/filesystem/path.hpp> 00005 00006 namespace ora { 00013 struct SharedLibraryName{ 00014 const boost::filesystem::path operator () (const std::string &name){ 00015 #ifdef _WIN32 00016 return boost::filesystem::path(name + ".dll"); 00017 #elif defined __DARWIN 00018 return boost::filesystem::path("lib" + name + ".dylib"); 00019 #elif defined __hpux 00020 return boost::filesystem::path("lib" + name + ".sl"); 00021 #else 00022 return boost::filesystem::path("lib" + name + ".so"); 00023 #endif 00024 } 00025 }; 00026 } 00027 #endif