diff --git a/src/config/CMakeLists.txt b/src/config/CMakeLists.txt --- a/src/config/CMakeLists.txt +++ b/src/config/CMakeLists.txt @@ -159,6 +159,18 @@ } " CHAR_EQUALS_INT8) +check_cxx_source_compiles(" + __attribute__((visibility(\"default\"))) int main() { + return 0; + } +" HAVE_FUNC_ATTRIBUTE_VISIBILITY) + +check_cxx_source_compiles(" + __declspec(dllexport) int main() { + return 0; + } +" HAVE_FUNC_ATTRIBUTE_DLLEXPORT) + # OpenSSL functionality set(CMAKE_REQUIRED_INCLUDES ${OPENSSL_CRYPTO_INCLUDES}) set(CMAKE_REQUIRED_LIBRARIES ${OPENSSL_CRYPTO_LIBRARY}) diff --git a/src/config/bitcoin-config.h.cmake.in b/src/config/bitcoin-config.h.cmake.in --- a/src/config/bitcoin-config.h.cmake.in +++ b/src/config/bitcoin-config.h.cmake.in @@ -54,6 +54,9 @@ #cmakedefine CHAR_EQUALS_INT8 0 +#cmakedefine HAVE_FUNC_ATTRIBUTE_VISIBILITY 1 +#cmakedefine HAVE_FUNC_ATTRIBUTE_DLLEXPORT 1 + #cmakedefine HAVE_DECL_EVP_MD_CTX_NEW 1 #cmakedefine ENABLE_WALLET 1