|
Packit Service |
e31359 |
#ifndef CPPUNIT_CONFIG_SELECTDLLLOADER_H
|
|
Packit Service |
e31359 |
#define CPPUNIT_CONFIG_SELECTDLLLOADER_H
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
/*! \file
|
|
Packit Service |
e31359 |
* Selects DynamicLibraryManager implementation.
|
|
Packit Service |
e31359 |
*
|
|
Packit Service |
e31359 |
* Don't include this file directly. Include Portability.h instead.
|
|
Packit Service |
e31359 |
*/
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
/*!
|
|
Packit Service |
e31359 |
* \def CPPUNIT_NO_TESTPLUGIN
|
|
Packit Service |
e31359 |
* \brief If defined, then plug-in related classes and functions will not be compiled.
|
|
Packit Service |
e31359 |
*
|
|
Packit Service |
e31359 |
* \internal
|
|
Packit Service |
e31359 |
* CPPUNIT_HAVE_WIN32_DLL_LOADER
|
|
Packit Service |
e31359 |
* If defined, Win32 implementation of DynamicLibraryManager will be used.
|
|
Packit Service |
e31359 |
*
|
|
Packit Service |
e31359 |
* CPPUNIT_HAVE_UNIX_DLL_LOADER
|
|
Packit Service |
e31359 |
* If defined, Unix implementation (dlfcn.h) of DynamicLibraryManager will be used.
|
|
Packit Service |
e31359 |
*/
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
/*!
|
|
Packit Service |
e31359 |
* \def CPPUNIT_PLUGIN_EXPORT
|
|
Packit Service |
e31359 |
* \ingroup WritingTestPlugIn
|
|
Packit Service |
e31359 |
* \brief A macro to export a function from a dynamic library
|
|
Packit Service |
e31359 |
*
|
|
Packit Service |
e31359 |
* This macro export the C function following it from a dynamic library.
|
|
Packit Service |
e31359 |
* Exporting the function makes it accessible to the DynamicLibraryManager.
|
|
Packit Service |
e31359 |
*
|
|
Packit Service |
e31359 |
* Example of usage:
|
|
Packit Service |
e31359 |
* \code
|
|
Packit Service |
e31359 |
* #include <cppunit/include/plugin/TestPlugIn.h>
|
|
Packit Service |
e31359 |
*
|
|
Packit Service |
e31359 |
* CPPUNIT_PLUGIN_EXPORT CppUnitTestPlugIn *CPPUNIT_PLUGIN_EXPORTED_NAME(void)
|
|
Packit Service |
e31359 |
* {
|
|
Packit Service |
e31359 |
* ...
|
|
Packit Service |
e31359 |
* return &myPlugInInterface;
|
|
Packit Service |
e31359 |
* }
|
|
Packit Service |
e31359 |
* \endcode
|
|
Packit Service |
e31359 |
*/
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
#if !defined(CPPUNIT_NO_TESTPLUGIN)
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
// Is WIN32 platform ?
|
|
Packit Service |
e31359 |
#if defined(WIN32)
|
|
Packit Service |
e31359 |
#define CPPUNIT_HAVE_WIN32_DLL_LOADER 1
|
|
Packit Service |
e31359 |
#undef CPPUNIT_PLUGIN_EXPORT
|
|
Packit Service |
e31359 |
#define CPPUNIT_PLUGIN_EXPORT extern "C" __declspec(dllexport)
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
// Is Unix platform and have shl_load() (hp-ux)
|
|
Packit Service |
e31359 |
#elif defined(CPPUNIT_HAVE_SHL_LOAD)
|
|
Packit Service |
e31359 |
#define CPPUNIT_HAVE_UNIX_SHL_LOADER 1
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
// Is Unix platform and have include <dlfcn.h>
|
|
Packit Service |
e31359 |
#elif defined(CPPUNIT_HAVE_LIBDL)
|
|
Packit Service |
e31359 |
#define CPPUNIT_HAVE_UNIX_DLL_LOADER 1
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
// Otherwise, disable support for DllLoader
|
|
Packit Service |
e31359 |
#else
|
|
Packit Service |
e31359 |
#define CPPUNIT_NO_TESTPLUGIN 1
|
|
Packit Service |
e31359 |
#endif
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
#if !defined(CPPUNIT_PLUGIN_EXPORT)
|
|
Packit Service |
e31359 |
#define CPPUNIT_PLUGIN_EXPORT extern "C"
|
|
Packit Service |
e31359 |
#endif // !defined(CPPUNIT_PLUGIN_EXPORT)
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
#endif // !defined(CPPUNIT_NO_TESTPLUGIN)
|
|
Packit Service |
e31359 |
|
|
Packit Service |
e31359 |
#endif // CPPUNIT_CONFIG_SELECTDLLLOADER_H
|