diff --git a/thirdparty/KWSys/CMakeLists.txt b/thirdparty/KWSys/CMakeLists.txt index 6a2d53b5c6226b92d46be5e9f62e65b7ed0e4488..8c24389e10ca05c1859d7893a696184575b035ab 100644 --- a/thirdparty/KWSys/CMakeLists.txt +++ b/thirdparty/KWSys/CMakeLists.txt @@ -6,5 +6,6 @@ set(KWSYS_BUILD_SHARED ${BUILD_SHARED_LIBS}) set(KWSYS_SPLIT_OBJECTS_FROM_INTERFACE ON) set(KWSYS_INSTALL_EXPORT_NAME adios2Exports) set(KWSYS_INSTALL_LIB_DIR ${CMAKE_INSTALL_LIBDIR}) +set(KWSYS_DEFINE_SYMBOL adios2_EXPORTS) add_subdirectory(adios2sys) diff --git a/thirdparty/KWSys/adios2sys/CMakeLists.txt b/thirdparty/KWSys/adios2sys/CMakeLists.txt index 5b8ce00a9e1735f6ac40ca3a42c361c98280b30d..13375df81790e5f5589220f749a171d9a920624e 100644 --- a/thirdparty/KWSys/adios2sys/CMakeLists.txt +++ b/thirdparty/KWSys/adios2sys/CMakeLists.txt @@ -438,6 +438,10 @@ ELSE() SET(KWSYS_LIBRARY_TYPE STATIC) ENDIF() +IF(NOT KWSYS_DEFINE_SYMBOL) + SET(KWSYS_DEFINE_SYMBOL ${KWSYS_NAMESPACE}_EXPORTS) +ENDIF() + #----------------------------------------------------------------------------- # Configure some implementation details. @@ -830,6 +834,8 @@ IF(KWSYS_C_SRCS OR KWSYS_CXX_SRCS) IF(KWSYS_BUILD_SHARED) SET_PROPERTY(TARGET ${KWSYS_TARGET_OBJECT} PROPERTY POSITION_INDEPENDENT_CODE TRUE) + TARGET_COMPILE_DEFINITIONS(${KWSYS_TARGET_OBJECT} PRIVATE + ${KWSYS_DEFINE_SYMBOL}) ENDIF() ADD_LIBRARY(${KWSYS_TARGET_INTERFACE} INTERFACE) ADD_LIBRARY(${KWSYS_TARGET_LINK} INTERFACE) @@ -919,6 +925,8 @@ IF(KWSYS_ENABLE_C AND KWSYS_C_SRCS) IF(KWSYS_BUILD_SHARED) SET_PROPERTY(TARGET ${KWSYS_TARGET_C_OBJECT} PROPERTY POSITION_INDEPENDENT_CODE TRUE) + TARGET_COMPILE_DEFINITIONS(${KWSYS_TARGET_C_OBJECT} PRIVATE + ${KWSYS_DEFINE_SYMBOL}) ENDIF() ADD_LIBRARY(${KWSYS_TARGET_C_INTERFACE} INTERFACE) ADD_LIBRARY(${KWSYS_TARGET_C_LINK} INTERFACE) diff --git a/thirdparty/KWSys/adios2sys/Configure.h.in b/thirdparty/KWSys/adios2sys/Configure.h.in index 0afcae781d6ae46d6e27b3864948e6915119e542..921e1ae599a414a66ed05ee4c72dd1e8a9205d9b 100644 --- a/thirdparty/KWSys/adios2sys/Configure.h.in +++ b/thirdparty/KWSys/adios2sys/Configure.h.in @@ -71,7 +71,7 @@ /* Setup the export macro. */ #if @KWSYS_BUILD_SHARED@ #if defined(_WIN32) || defined(__CYGWIN__) -#if defined(@KWSYS_NAMESPACE@_EXPORTS) +#if defined(@KWSYS_DEFINE_SYMBOL@) #define @KWSYS_NAMESPACE@_EXPORT __declspec(dllexport) #else #define @KWSYS_NAMESPACE@_EXPORT __declspec(dllimport)