From 50482b8c0a2cf5315e66d182998c8fc4901ffb2d Mon Sep 17 00:00:00 2001 From: Don J Olmstead Date: Mon, 25 Feb 2019 14:17:51 -0800 Subject: curl.h: use __has_declspec_attribute for shared builds Closes #3616 --- include/curl/curl.h | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) 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 #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 -- cgit v1.2.1