From 56ade5a3db02cf0bd363887e00961b74f8d803b5 Mon Sep 17 00:00:00 2001 From: Chuck Atkins <chuck.atkins@kitware.com> Date: Mon, 11 Sep 2017 11:14:18 -0400 Subject: [PATCH] Use KWSys as a static object lib on Windows --- source/adios2/CMakeLists.txt | 2 +- source/dataman/CMakeLists.txt | 2 +- thirdparty/KWSys/CMakeLists.txt | 8 ++++++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/source/adios2/CMakeLists.txt b/source/adios2/CMakeLists.txt index 5cca92009..24c36ffe8 100644 --- a/source/adios2/CMakeLists.txt +++ b/source/adios2/CMakeLists.txt @@ -55,7 +55,7 @@ target_include_directories(adios2 $<BUILD_INTERFACE:${ADIOS2_BINARY_DIR}/source> $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}> ) -target_link_libraries(adios2 PRIVATE adios2sys pugixml) +target_link_libraries(adios2 PRIVATE adios2sys_interface pugixml) target_link_libraries(adios2 PUBLIC ${CMAKE_THREAD_LIBS_INIT}) if(UNIX) diff --git a/source/dataman/CMakeLists.txt b/source/dataman/CMakeLists.txt index 11e4823c7..6defa0d61 100644 --- a/source/dataman/CMakeLists.txt +++ b/source/dataman/CMakeLists.txt @@ -19,7 +19,7 @@ target_include_directories(dataman PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> ) target_link_libraries(dataman - PRIVATE adios2sys + PRIVATE adios2sys_interface PUBLIC NLohmannJson ) set_target_properties(dataman PROPERTIES diff --git a/thirdparty/KWSys/CMakeLists.txt b/thirdparty/KWSys/CMakeLists.txt index 8c24389e1..952fd5e0c 100644 --- a/thirdparty/KWSys/CMakeLists.txt +++ b/thirdparty/KWSys/CMakeLists.txt @@ -2,10 +2,14 @@ set(KWSYS_NAMESPACE adios2sys) set(KWSYS_USE_DynamicLoader ON) set(KWSYS_USE_RegularExpression ON) set(KWSYS_USE_SystemTools ON) -set(KWSYS_BUILD_SHARED ${BUILD_SHARED_LIBS}) +if(WIN32) + set(KWSYS_BUILD_SHARED OFF) +else() + set(KWSYS_BUILD_SHARED ${BUILD_SHARED_LIBS}) +endif() 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) +add_library(adios2sys_interface ALIAS adios2sys_private) -- GitLab