diff options
-rw-r--r-- | include/curl/curl.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/include/curl/curl.h b/include/curl/curl.h index 88e1f39e8..f501fe631 100644 --- a/include/curl/curl.h +++ b/include/curl/curl.h @@ -91,6 +91,11 @@ #include <support/SupportDefs.h> #endif +/* Compatibility for non-Clang compilers */ +#ifndef __has_declspec_attribute +# define __has_declspec_attribute(x) 0 +#endif + #ifdef __cplusplus extern "C" { #endif @@ -109,7 +114,9 @@ typedef void CURLSH; #ifdef CURL_STATICLIB # define CURL_EXTERN -#elif defined(WIN32) || defined(_WIN32) || defined(__SYMBIAN32__) +#elif defined(WIN32) || defined(_WIN32) || defined(__SYMBIAN32__) || \ + (__has_declspec_attribute(dllexport) && \ + __has_declspec_attribute(dllimport)) # if defined(BUILDING_LIBCURL) # define CURL_EXTERN __declspec(dllexport) # else |