summaryrefslogtreecommitdiffstats
path: root/test/API/driver/kwsys/DynamicLoader.hxx.in
diff options
context:
space:
mode:
Diffstat (limited to 'test/API/driver/kwsys/DynamicLoader.hxx.in')
-rw-r--r--test/API/driver/kwsys/DynamicLoader.hxx.in106
1 files changed, 0 insertions, 106 deletions
diff --git a/test/API/driver/kwsys/DynamicLoader.hxx.in b/test/API/driver/kwsys/DynamicLoader.hxx.in
deleted file mode 100644
index 539c742..0000000
--- a/test/API/driver/kwsys/DynamicLoader.hxx.in
+++ /dev/null
@@ -1,106 +0,0 @@
-/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
- file Copyright.txt or https://cmake.org/licensing#kwsys for details. */
-#ifndef @KWSYS_NAMESPACE@_DynamicLoader_hxx
-#define @KWSYS_NAMESPACE@_DynamicLoader_hxx
-
-#include <@KWSYS_NAMESPACE@/Configure.hxx>
-
-#include <string>
-
-#if defined(__hpux)
-# include <dl.h>
-#elif defined(_WIN32) && !defined(__CYGWIN__)
-# include <windows.h>
-#elif defined(__APPLE__)
-# include <AvailabilityMacros.h>
-# if MAC_OS_X_VERSION_MAX_ALLOWED < 1030
-# include <mach-o/dyld.h>
-# endif
-#elif defined(__BEOS__)
-# include <be/kernel/image.h>
-#endif
-
-namespace @KWSYS_NAMESPACE@ {
-/** \class DynamicLoader
- * \brief Portable loading of dynamic libraries or dll's.
- *
- * DynamicLoader provides a portable interface to loading dynamic
- * libraries or dll's into a process.
- *
- * Directory currently works with Windows, Apple, HP-UX and Unix (POSIX)
- * operating systems
- *
- * \warning dlopen on *nix system works the following way:
- * If filename contains a slash ("/"), then it is interpreted as a (relative
- * or absolute) pathname. Otherwise, the dynamic linker searches for the
- * library as follows : see ld.so(8) for further details):
- * Whereas this distinction does not exist on Win32. Therefore ideally you
- * should be doing full path to guarantee to have a consistent way of dealing
- * with dynamic loading of shared library.
- *
- * \warning the Cygwin implementation do not use the Win32 HMODULE. Put extra
- * condition so that we can include the correct declaration (POSIX)
- */
-
-class @KWSYS_NAMESPACE@_EXPORT DynamicLoader
-{
-public:
-// Ugly stuff for library handles
-// They are different on several different OS's
-#if defined(__hpux)
- typedef shl_t LibraryHandle;
-#elif defined(_WIN32) && !defined(__CYGWIN__)
- typedef HMODULE LibraryHandle;
-#elif defined(__APPLE__)
-# if MAC_OS_X_VERSION_MAX_ALLOWED < 1030
- typedef NSModule LibraryHandle;
-# else
- typedef void* LibraryHandle;
-# endif
-#elif defined(__BEOS__)
- typedef image_id LibraryHandle;
-#else // POSIX
- typedef void* LibraryHandle;
-#endif
-
- // Return type from DynamicLoader::GetSymbolAddress.
- typedef void (*SymbolPointer)();
-
- enum OpenFlags
- {
- // Search for dependent libraries beside the library being loaded.
- //
- // This is currently only supported on Windows.
- SearchBesideLibrary = 0x00000001,
-
- AllOpenFlags = SearchBesideLibrary
- };
-
- /** Load a dynamic library into the current process.
- * The returned LibraryHandle can be used to access the symbols in the
- * library. The optional second argument is a set of flags to use when
- * opening the library. If unrecognized or unsupported flags are specified,
- * the library is not opened. */
- static LibraryHandle OpenLibrary(const std::string&);
- static LibraryHandle OpenLibrary(const std::string&, int);
-
- /** Attempt to detach a dynamic library from the
- * process. A value of true is returned if it is successful. */
- static int CloseLibrary(LibraryHandle);
-
- /** Find the address of the symbol in the given library. */
- static SymbolPointer GetSymbolAddress(LibraryHandle, const std::string&);
-
- /** Return the default module prefix for the current platform. */
- static const char* LibPrefix() { return "@KWSYS_DynamicLoader_PREFIX@"; }
-
- /** Return the default module suffix for the current platform. */
- static const char* LibExtension() { return "@KWSYS_DynamicLoader_SUFFIX@"; }
-
- /** Return the last error produced from a calls made on this class. */
- static const char* LastError();
-}; // End Class: DynamicLoader
-
-} // namespace @KWSYS_NAMESPACE@
-
-#endif