From 634b54d79e8b160c8c2e2fd9f61f64e5099a80c1 Mon Sep 17 00:00:00 2001 From: "Stephen D. Huston" Date: Fri, 28 May 2010 14:07:25 +0000 Subject: Allow tests that load shareable libs to work on Windows with a debug build. Those libs have a 'd' appended to their name. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@949181 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/config.h.cmake | 6 ++++++ cpp/src/tests/ReplicationTest.cpp | 9 ++++++--- cpp/src/tests/Shlib.cpp | 5 +++-- 3 files changed, 15 insertions(+), 5 deletions(-) (limited to 'cpp/src') diff --git a/cpp/src/config.h.cmake b/cpp/src/config.h.cmake index a24500b860..012bf285b5 100644 --- a/cpp/src/config.h.cmake +++ b/cpp/src/config.h.cmake @@ -39,6 +39,12 @@ #cmakedefine QPID_LIBEXEC_DIR "${QPID_LIBEXEC_DIR}" +#cmakedefine QPID_DEBUG_POSTFIX "${QPID_DEBUG_POSTFIX}" +#if defined(QPID_DEBUG_POSTFIX) && defined (_DEBUG) +# define QPID_MODULE_POSTFIX QPID_DEBUG_POSTFIX +#else +# define QPID_MODULE_POSTFIX +#endif #define QPID_MODULE_SUFFIX "${CMAKE_SHARED_LIBRARY_SUFFIX}" #cmakedefine QPID_HAS_CLOCK_GETTIME diff --git a/cpp/src/tests/ReplicationTest.cpp b/cpp/src/tests/ReplicationTest.cpp index 3b289d1b4e..7310a3fe20 100644 --- a/cpp/src/tests/ReplicationTest.cpp +++ b/cpp/src/tests/ReplicationTest.cpp @@ -20,6 +20,7 @@ */ #include "unit_test.h" #include "test_tools.h" +#include "config.h" #include "BrokerFixture.h" #include "qpid/Plugin.h" @@ -50,11 +51,13 @@ QPID_AUTO_TEST_SUITE(ReplicationTestSuite) // FIXME aconway 2009-11-26: clean this up. // The CMake-based build passes in the module suffix; if it's not there, this // is a Linux/UNIX libtool-based build. -#if defined (QPID_MODULE_SUFFIX) -qpid::sys::Shlib plugin("replicating_listener" QPID_MODULE_SUFFIX); +#if defined (QPID_MODULE_PREFIX) && defined (QPID_MODULE_SUFFIX) +static const char *default_shlib = + QPID_MODULE_PREFIX "replicating_listener" QPID_MODULE_POSTFIX QPID_MODULE_SUFFIX; #else -qpid::sys::Shlib plugin(getLibPath("REPLICATING_LISTENER_LIB")); +static const char *default_shlib = ".libs/replicating_listener.so"; #endif +qpid::sys::Shlib plugin(getLibPath("REPLICATING_LISTENER_LIB", default_shlib)); qpid::broker::Broker::Options getBrokerOpts(const std::vector& args) { diff --git a/cpp/src/tests/Shlib.cpp b/cpp/src/tests/Shlib.cpp index 692cfcdff9..25974d0ebb 100644 --- a/cpp/src/tests/Shlib.cpp +++ b/cpp/src/tests/Shlib.cpp @@ -19,6 +19,7 @@ */ #include "test_tools.h" +#include "config.h" #include "qpid/sys/Shlib.h" #include "qpid/Exception.h" @@ -37,7 +38,7 @@ QPID_AUTO_TEST_CASE(testShlib) { // The CMake-based build passes in the module suffix; if it's not there, // this is a Linux/UNIX libtool-based build. #if defined (QPID_MODULE_PREFIX) && defined (QPID_MODULE_SUFFIX) - Shlib sh("./" QPID_MODULE_PREFIX "shlibtest" QPID_MODULE_SUFFIX); + Shlib sh("./" QPID_MODULE_PREFIX "shlibtest" QPID_MODULE_POSTFIX QPID_MODULE_SUFFIX); #else Shlib sh(".libs/libshlibtest.so"); #endif @@ -59,7 +60,7 @@ QPID_AUTO_TEST_CASE(testAutoShlib) { int unloaded = 0; { #if defined (QPID_MODULE_PREFIX) && defined (QPID_MODULE_SUFFIX) - AutoShlib sh("./" QPID_MODULE_PREFIX "shlibtest" QPID_MODULE_SUFFIX); + AutoShlib sh("./" QPID_MODULE_PREFIX "shlibtest" QPID_MODULE_POSTFIX QPID_MODULE_SUFFIX); #else AutoShlib sh(".libs/libshlibtest.so"); #endif -- cgit v1.2.1