From 101075fd6c8d211c12d2b10f0c4442023361c86a Mon Sep 17 00:00:00 2001 From: Lars Bilke <lars.bilke@ufz.de> Date: Fri, 5 May 2017 10:28:18 +0200 Subject: [PATCH] [CMake] Corrected remaining dependencies. --- Applications/ApplicationsLib/CMakeLists.txt | 5 ++--- Applications/CLI/CMakeLists.txt | 9 +++------ Applications/DataHolderLib/CMakeLists.txt | 5 ++--- Applications/FileIO/CMakeLists.txt | 11 +++++++++-- Applications/InSituLib/CMakeLists.txt | 3 +++ BaseLib/CMakeLists.txt | 10 ++++------ GeoLib/CMakeLists.txt | 8 +++----- MaterialLib/CMakeLists.txt | 3 ++- MathLib/CMakeLists.txt | 14 ++++++-------- MeshGeoToolsLib/CMakeLists.txt | 6 ++---- MeshLib/CMakeLists.txt | 2 +- NumLib/CMakeLists.txt | 8 ++------ 12 files changed, 39 insertions(+), 45 deletions(-) diff --git a/Applications/ApplicationsLib/CMakeLists.txt b/Applications/ApplicationsLib/CMakeLists.txt index 5d4b82fa1d1..d9025f2aa8c 100644 --- a/Applications/ApplicationsLib/CMakeLists.txt +++ b/Applications/ApplicationsLib/CMakeLists.txt @@ -6,9 +6,8 @@ set(LIB_SOURCES ${SOURCES_APPLICATIONSLIB}) add_library(ApplicationsLib ${LIB_SOURCES}) target_link_libraries(ApplicationsLib - MeshGeoToolsLib - NumLib - ProcessLib + PUBLIC BaseLib GeoLib NumLib ProcessLib logog + PRIVATE MathLib MeshLib ) if(TARGET Eigen) diff --git a/Applications/CLI/CMakeLists.txt b/Applications/CLI/CMakeLists.txt index 442531766f0..bb2be271453 100644 --- a/Applications/CLI/CMakeLists.txt +++ b/Applications/CLI/CMakeLists.txt @@ -2,20 +2,17 @@ add_executable(ogs ogs.cpp) target_link_libraries(ogs - ApplicationsLib - MeshGeoToolsLib - ProcessLib - NumLib + PRIVATE BaseLib ApplicationsLib NumLib ProcessLib ) ADD_VTK_DEPENDENCY(ogs) if(OGS_USE_PETSC) - target_link_libraries(ogs ${PETSC_LIBRARIES}) + target_link_libraries(ogs PRIVATE ${PETSC_LIBRARIES}) endif() if(OGS_INSITU) - target_link_libraries(ogs InSituLib) + target_link_libraries(ogs PRIVATE InSituLib) endif() if(OGS_USE_PCH) diff --git a/Applications/DataHolderLib/CMakeLists.txt b/Applications/DataHolderLib/CMakeLists.txt index cfcd824d098..9740aafa4b5 100644 --- a/Applications/DataHolderLib/CMakeLists.txt +++ b/Applications/DataHolderLib/CMakeLists.txt @@ -5,9 +5,8 @@ GET_SOURCE_FILES(SOURCES_DataHolderLib) add_library(DataHolderLib ${SOURCES_DataHolderLib}) target_link_libraries(DataHolderLib - GeoLib - MeshLib - logog + PUBLIC GeoLib MeshLib + PRIVATE BaseLib logog ) if(OGS_USE_PCH) diff --git a/Applications/FileIO/CMakeLists.txt b/Applications/FileIO/CMakeLists.txt index fffd2690063..cb5cc7f9d29 100644 --- a/Applications/FileIO/CMakeLists.txt +++ b/Applications/FileIO/CMakeLists.txt @@ -19,10 +19,17 @@ include(${PROJECT_SOURCE_DIR}/scripts/cmake/OGSEnabledElements.cmake) # Create the library add_library(ApplicationsFileIO ${SOURCES}) -target_link_libraries(ApplicationsFileIO DataHolderLib) +target_link_libraries(ApplicationsFileIO + PUBLIC BaseLib DataHolderLib GeoLib MathLib logog + PRIVATE ApplicationsLib MeshLib +) if(Shapelib_FOUND) - target_link_libraries(ApplicationsFileIO ${Shapelib_LIBRARIES}) + target_link_libraries(ApplicationsFileIO PRIVATE ${Shapelib_LIBRARIES}) +endif() + +if(OGS_BUILD_SWMM) + target_link_libraries(ApplicationsFileIO PRIVATE SwmmInterface) endif() ADD_VTK_DEPENDENCY(ApplicationsFileIO) diff --git a/Applications/InSituLib/CMakeLists.txt b/Applications/InSituLib/CMakeLists.txt index 38b9b025b7f..732d546c4e5 100644 --- a/Applications/InSituLib/CMakeLists.txt +++ b/Applications/InSituLib/CMakeLists.txt @@ -3,6 +3,9 @@ GET_SOURCE_FILES(SOURCES) # Library add_library(InSituLib ${SOURCES}) + +target_link_libraries(PUBLIC BaseLib PRIVATE MeshLib) + if(OGS_USE_PCH) cotire(InSituLib) endif() diff --git a/BaseLib/CMakeLists.txt b/BaseLib/CMakeLists.txt index 69e46a1af3c..377ac3b07a3 100644 --- a/BaseLib/CMakeLists.txt +++ b/BaseLib/CMakeLists.txt @@ -14,18 +14,16 @@ add_library(BaseLib ${SOURCES}) set_target_properties(BaseLib PROPERTIES LINKER_LANGUAGE CXX) -target_link_libraries(BaseLib - logog -) +target_link_libraries(BaseLib PUBLIC logog) if(MSVC) - target_link_libraries(BaseLib WinMM) # needed for timeGetTime + target_link_libraries(BaseLib PRIVATE WinMM) # needed for timeGetTime endif() if(Qt5XmlPatterns_FOUND) - target_link_libraries(BaseLib Qt5::Xml Qt5::XmlPatterns) + target_link_libraries(BaseLib PUBLIC Qt5::Xml Qt5::XmlPatterns) if(WIN32 AND CMAKE_CROSSCOMPILING AND OPENSSL_FOUND) - target_link_libraries(BaseLib Qt5::Network ${OPENSSL_LIBRARIES} ws2_32) + target_link_libraries(BaseLib PUBLIC Qt5::Network ${OPENSSL_LIBRARIES} ws2_32) endif() endif() diff --git a/GeoLib/CMakeLists.txt b/GeoLib/CMakeLists.txt index 747e074dca5..f7b51618a7a 100644 --- a/GeoLib/CMakeLists.txt +++ b/GeoLib/CMakeLists.txt @@ -16,14 +16,12 @@ add_library(GeoLib ${SOURCES} ${CMAKE_CURRENT_SOURCE_DIR}/../ThirdParty/tetgen/predicates.cxx ) -target_link_libraries(GeoLib - MathLib -) +target_link_libraries(GeoLib PUBLIC BaseLib MathLib logog) if(Qt5XmlPatterns_FOUND) - target_link_libraries(GeoLib Qt5::Xml Qt5::XmlPatterns) + target_link_libraries(GeoLib PUBLIC Qt5::Xml Qt5::XmlPatterns) if(WIN32 AND CMAKE_CROSSCOMPILING AND OPENSSL_FOUND) - target_link_libraries(GeoLib Qt5::Network ${OPENSSL_LIBRARIES} ws2_32) + target_link_libraries(GeoLib PUBLIC Qt5::Network ${OPENSSL_LIBRARIES} ws2_32) endif() endif() diff --git a/MaterialLib/CMakeLists.txt b/MaterialLib/CMakeLists.txt index d2488350c06..52b82c27b8b 100644 --- a/MaterialLib/CMakeLists.txt +++ b/MaterialLib/CMakeLists.txt @@ -21,7 +21,8 @@ append_source_files(SOURCES TwoPhaseModels) add_library(MaterialLib ${SOURCES}) target_link_libraries(MaterialLib - BaseLib + PUBLIC BaseLib NumLib ProcessLib logog + PRIVATE MathLib MeshLib ) if(OGS_USE_PCH) diff --git a/MathLib/CMakeLists.txt b/MathLib/CMakeLists.txt index aeccec33ff7..41abeba6e00 100644 --- a/MathLib/CMakeLists.txt +++ b/MathLib/CMakeLists.txt @@ -28,28 +28,26 @@ add_library(MathLib ${SOURCES}) set_target_properties(MathLib PROPERTIES LINKER_LANGUAGE CXX) -target_link_libraries(MathLib - BaseLib -) +target_link_libraries(MathLib PUBLIC BaseLib logog) if (CVODE_FOUND) - target_link_libraries(MathLib ${CVODE_LIBRARIES}) + target_link_libraries(MathLib PUBLIC ${CVODE_LIBRARIES}) endif() if(LAPACK_FOUND) - target_link_libraries(MathLib ${BLAS_LIBRARIES} ${LAPACK_LIBRARIES}) + target_link_libraries(MathLib PUBLIC ${BLAS_LIBRARIES} ${LAPACK_LIBRARIES}) endif() if (OGS_USE_LIS) - target_link_libraries(MathLib ${LIS_LIBRARIES}) + target_link_libraries(MathLib PUBLIC ${LIS_LIBRARIES}) endif() if (OGS_USE_MKL) - target_link_libraries(MathLib ${MKL_LIBRARIES}) + target_link_libraries(MathLib PUBLIC ${MKL_LIBRARIES}) endif() if (OGS_USE_PETSC) - target_link_libraries(MathLib ${PETSC_LIBRARIES}) + target_link_libraries(MathLib PUBLIC ${PETSC_LIBRARIES}) endif() if(TARGET Boost) diff --git a/MeshGeoToolsLib/CMakeLists.txt b/MeshGeoToolsLib/CMakeLists.txt index 662f25ece84..94e3ce86759 100644 --- a/MeshGeoToolsLib/CMakeLists.txt +++ b/MeshGeoToolsLib/CMakeLists.txt @@ -5,10 +5,8 @@ GET_SOURCE_FILES(SOURCES) add_library(MeshGeoToolsLib ${SOURCES}) target_link_libraries(MeshGeoToolsLib - BaseLib - MathLib - MeshLib - GeoLib + PUBLIC GeoLib MathLib + PRIVATE BaseLib MeshLib logog ) if(TARGET Boost) diff --git a/MeshLib/CMakeLists.txt b/MeshLib/CMakeLists.txt index 7da5c02a33e..13ec4dcd1f2 100644 --- a/MeshLib/CMakeLists.txt +++ b/MeshLib/CMakeLists.txt @@ -27,7 +27,7 @@ if(OGS_USE_PCH) endif() target_link_libraries(MeshLib - PUBLIC BaseLib GeoLib MathLib + PUBLIC BaseLib GeoLib MathLib logog INTERFACE vtkIOXML ) diff --git a/NumLib/CMakeLists.txt b/NumLib/CMakeLists.txt index ac83fc18073..bcd102b8e2c 100644 --- a/NumLib/CMakeLists.txt +++ b/NumLib/CMakeLists.txt @@ -20,12 +20,8 @@ add_library(NumLib ${SOURCES}) set_target_properties(NumLib PROPERTIES LINKER_LANGUAGE CXX) target_link_libraries(NumLib - BaseLib - GeoLib - MathLib - MeshLib - MeshGeoToolsLib - logog + PUBLIC BaseLib GeoLib MathLib MeshLib logog + PRIVATE MeshGeoToolsLib ) if(TARGET Eigen) -- GitLab