Author: ritchiem Date: Wed Oct 28 15:36:14 2009 New Revision: 830612 URL: http://svn.apache.org/viewvc?rev=830612&view=rev Log: Add ability to load modules from something other than a .so file; allows loading .dll files on Windows, for example. The proper suffix is gleaned from cmake; if on autoconf assume .so.
Modified: qpid/branches/0.5.x-dev/qpid/cpp/src/config.h.cmake qpid/branches/0.5.x-dev/qpid/cpp/src/qpid/Modules.cpp Modified: qpid/branches/0.5.x-dev/qpid/cpp/src/config.h.cmake URL: http://svn.apache.org/viewvc/qpid/branches/0.5.x-dev/qpid/cpp/src/config.h.cmake?rev=830612&r1=830611&r2=830612&view=diff ============================================================================== --- qpid/branches/0.5.x-dev/qpid/cpp/src/config.h.cmake (original) +++ qpid/branches/0.5.x-dev/qpid/cpp/src/config.h.cmake Wed Oct 28 15:36:14 2009 @@ -37,6 +37,8 @@ #cmakedefine QPIDC_MODULE_DIR "${QPIDC_MODULE_DIR}" #cmakedefine QPIDD_MODULE_DIR "${QPIDD_MODULE_DIR}" +#define QPID_MODULE_SUFFIX "${CMAKE_SHARED_LIBRARY_SUFFIX}" + #cmakedefine QPID_HAS_CLOCK_GETTIME #cmakedefine QPID_HAS_SASL Modified: qpid/branches/0.5.x-dev/qpid/cpp/src/qpid/Modules.cpp URL: http://svn.apache.org/viewvc/qpid/branches/0.5.x-dev/qpid/cpp/src/qpid/Modules.cpp?rev=830612&r1=830611&r2=830612&view=diff ============================================================================== --- qpid/branches/0.5.x-dev/qpid/cpp/src/qpid/Modules.cpp (original) +++ qpid/branches/0.5.x-dev/qpid/cpp/src/qpid/Modules.cpp Wed Oct 28 15:36:14 2009 @@ -19,6 +19,7 @@ * */ +#include "config.h" #include "qpid/Modules.h" #include "qpid/Exception.h" #include "qpid/log/Statement.h" @@ -67,10 +68,17 @@ } fs::directory_iterator endItr; + // CMake sets QPID_MODULE_SUFFIX; Autoconf doesn't, so assume Linux .so +#if defined (QPID_MODULE_SUFFIX) + std::string suffix(QPID_MODULE_SUFFIX); +#else + std::string suffix(".so"); +#endif for (fs::directory_iterator itr (dirPath); itr != endItr; ++itr) { if (!fs::is_directory(*itr) && - itr->string().find (".so") == itr->string().length() - 3) + itr->string().find (suffix) == + itr->string().length() - suffix.length()) tryShlib (itr->string().data(), true); } } --------------------------------------------------------------------- Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:commits-subscr...@qpid.apache.org