BUG: revert yesterday patch. The implementation was correct. The problem was that _WIN32 was forced to be #define on cygwin when included from ITK, which was miss matching the implementation from the declaration. Put extra condition for CYGWIN system

This commit is contained in:
Mathieu Malaterre 2006-12-09 11:25:25 -05:00
parent 945dfe5c8e
commit b9787a965f
3 changed files with 9 additions and 8 deletions

View File

@ -718,9 +718,7 @@ IF(KWSYS_C_SRCS OR KWSYS_CXX_SRCS)
${KWSYS_C_SRCS} ${KWSYS_CXX_SRCS}) ${KWSYS_C_SRCS} ${KWSYS_CXX_SRCS})
IF(KWSYS_USE_DynamicLoader) IF(KWSYS_USE_DynamicLoader)
IF(UNIX) IF(UNIX)
IF(NOT CYGWIN AND NOT MINGW) TARGET_LINK_LIBRARIES(${KWSYS_NAMESPACE} ${CMAKE_DL_LIBS})
TARGET_LINK_LIBRARIES(${KWSYS_NAMESPACE} ${CMAKE_DL_LIBS})
ENDIF(NOT CYGWIN AND NOT MINGW)
ENDIF(UNIX) ENDIF(UNIX)
ENDIF(KWSYS_USE_DynamicLoader) ENDIF(KWSYS_USE_DynamicLoader)

View File

@ -219,8 +219,8 @@ const char* DynamicLoader::LastError()
#endif // __APPLE__ #endif // __APPLE__
// --------------------------------------------------------------- // ---------------------------------------------------------------
// 3. Implementation for Windows win32 code // 3. Implementation for Windows win32 code but not cygwin
#if defined(_WIN32) || defined(__CYGWIN__) || defined(__MINGW32__) #if defined(_WIN32) && !defined(__CYGWIN__)
#include <windows.h> #include <windows.h>
#define DYNAMICLOADER_DEFINED 1 #define DYNAMICLOADER_DEFINED 1

View File

@ -18,7 +18,7 @@
#if defined(__hpux) #if defined(__hpux)
#include <dl.h> #include <dl.h>
#elif defined(_WIN32) || defined(__CYGWIN__) || defined(__MINGW32__) #elif defined(_WIN32) && !defined(__CYGWIN__)
#include <windows.h> #include <windows.h>
#elif defined(__APPLE__) #elif defined(__APPLE__)
#include <AvailabilityMacros.h> #include <AvailabilityMacros.h>
@ -47,6 +47,9 @@ namespace @KWSYS_NAMESPACE@
* Whereas this distinction does not exist on Win32. Therefore ideally you * Whereas this distinction does not exist on Win32. Therefore ideally you
* should be doing full path to garantee to have a consistent way of dealing * should be doing full path to garantee to have a consistent way of dealing
* with dynamic loading of shared library. * 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 class @KWSYS_NAMESPACE@_EXPORT DynamicLoader
@ -56,7 +59,7 @@ public:
// They are different on several different OS's // They are different on several different OS's
#if defined(__hpux) #if defined(__hpux)
typedef shl_t LibraryHandle; typedef shl_t LibraryHandle;
#elif defined(_WIN32) || defined(__CYGWIN__) || defined(__MINGW32__) #elif defined(_WIN32) && !defined(__CYGWIN__)
typedef HMODULE LibraryHandle; typedef HMODULE LibraryHandle;
#elif defined(__APPLE__) #elif defined(__APPLE__)
#if MAC_OS_X_VERSION_MAX_ALLOWED < 1030 #if MAC_OS_X_VERSION_MAX_ALLOWED < 1030
@ -66,7 +69,7 @@ public:
#endif #endif
#elif defined(__BEOS__) #elif defined(__BEOS__)
typedef image_id LibraryHandle; typedef image_id LibraryHandle;
#else #else // POSIX
typedef void* LibraryHandle; typedef void* LibraryHandle;
#endif #endif