diff --git a/Applications/ApplicationsLib/CMakeLists.txt b/Applications/ApplicationsLib/CMakeLists.txt index 9da6fe882cc1ab7286a0facdf4da05e6c69a49dc..0b1b31de32b3a690b6ac8e1b491b073bc240d350 100644 --- a/Applications/ApplicationsLib/CMakeLists.txt +++ b/Applications/ApplicationsLib/CMakeLists.txt @@ -7,8 +7,11 @@ ogs_add_library(ApplicationsLib ${LIB_SOURCES}) target_link_libraries( ApplicationsLib - PUBLIC BaseLib GeoLib NumLib - $<$<TARGET_EXISTS:VTK::ParallelMPI>:VTK::ParallelMPI> + PUBLIC + BaseLib + GeoLib + NumLib + $<$<AND:$<BOOL:${OGS_USE_PETSC}>,$<TARGET_EXISTS:VTK::ParallelMPI>>:VTK::ParallelMPI> PRIVATE CMakeInfoLib MathLib MeshLib diff --git a/Applications/CLI/CMakeLists.txt b/Applications/CLI/CMakeLists.txt index dcf2b6774b75f8fd5e2272f5f6e3bb7db759c8a2..e522f9a6f81d886e357a7a843b5715282cd4c5e0 100644 --- a/Applications/CLI/CMakeLists.txt +++ b/Applications/CLI/CMakeLists.txt @@ -52,17 +52,17 @@ ogs_add_executable(ogs ogs.cpp CommandLineArgumentParser.cpp) target_link_libraries( ogs - PRIVATE ApplicationsLib - BaseLib - CMakeInfoLib - GitInfoLib - MeshLib - ProcessLib - $<$<TARGET_EXISTS:MPI::MPI_CXX>:MPI::MPI_CXX> - $<$<TARGET_EXISTS:InSituLib>:InSituLib> - $<$<TARGET_EXISTS:petsc>:petsc> - $<$<TARGET_EXISTS:VTK::ParallelMPI>:VTK::ParallelMPI> - tclap + PRIVATE + ApplicationsLib + BaseLib + CMakeInfoLib + GitInfoLib + MeshLib + ProcessLib + $<$<AND:$<BOOL:${OGS_USE_PETSC}>,$<TARGET_EXISTS:MPI::MPI_CXX>>:MPI::MPI_CXX> + $<$<TARGET_EXISTS:InSituLib>:InSituLib> + $<$<TARGET_EXISTS:petsc>:petsc> + tclap ) # ---- Tests ---- diff --git a/Applications/Utils/ModelPreparation/PartitionMesh/CMakeLists.txt b/Applications/Utils/ModelPreparation/PartitionMesh/CMakeLists.txt index ad4aa95d9adb28c1311d71a0f1728ffb31612bcc..67a4ebe663cec7a94754ce56ff87700ed387bf2d 100644 --- a/Applications/Utils/ModelPreparation/PartitionMesh/CMakeLists.txt +++ b/Applications/Utils/ModelPreparation/PartitionMesh/CMakeLists.txt @@ -3,8 +3,14 @@ if(OGS_USE_MPI) binaryToPVTU BinaryToPVTU.cpp NodeWiseMeshPartitioner.cpp ) target_link_libraries( - binaryToPVTU GitInfoLib ProcessLib MeshLib MeshToolsLib tclap - $<$<TARGET_EXISTS:MPI::MPI_CXX>:MPI::MPI_CXX> VTK::ParallelMPI + binaryToPVTU + GitInfoLib + ProcessLib + MeshLib + MeshToolsLib + tclap + $<$<AND:$<BOOL:${OGS_USE_PETSC}>,$<TARGET_EXISTS:MPI::MPI_CXX>>:MPI::MPI_CXX> + $<$<AND:$<BOOL:${OGS_USE_PETSC}>,$<TARGET_EXISTS:VTK::ParallelMPI>>:VTK::ParallelMPI> ) install(TARGETS binaryToPVTU RUNTIME DESTINATION bin) endif() diff --git a/MeshLib/CMakeLists.txt b/MeshLib/CMakeLists.txt index 5bd9bae01e24fed1200779040f306d367235095b..59f9c82556703fcab87287addde7a127bd3b6c1a 100644 --- a/MeshLib/CMakeLists.txt +++ b/MeshLib/CMakeLists.txt @@ -34,18 +34,19 @@ ogs_add_library(MeshLib ${SOURCES}) target_link_libraries( MeshLib - PUBLIC BaseLib - GeoLib - GitInfoLib - ${HDF5_LIBRARIES} - MathLib - VTK::IOXML - VTK::IOLegacy - range-v3 - $<$<TARGET_EXISTS:VTK::IOParallelXML>:VTK::IOParallelXML> - $<$<TARGET_EXISTS:VTK::ParallelMPI>:VTK::ParallelMPI> - $<$<TARGET_EXISTS:MPI::MPI_CXX>:MPI::MPI_CXX> - $<$<TARGET_EXISTS:petsc>:petsc> + PUBLIC + BaseLib + GeoLib + GitInfoLib + ${HDF5_LIBRARIES} + MathLib + VTK::IOXML + VTK::IOLegacy + range-v3 + $<$<AND:$<BOOL:${OGS_USE_PETSC}>,$<TARGET_EXISTS:VTK::IOParallelXML>>:VTK::IOParallelXML> + $<$<AND:$<BOOL:${OGS_USE_PETSC}>,$<TARGET_EXISTS:VTK::ParallelMPI>>:VTK::ParallelMPI> + $<$<AND:$<BOOL:${OGS_USE_PETSC}>,$<TARGET_EXISTS:MPI::MPI_CXX>>:MPI::MPI_CXX> + $<$<TARGET_EXISTS:petsc>:petsc> PRIVATE nlohmann_json::nlohmann_json ) @@ -54,7 +55,7 @@ target_include_directories(MeshLib PUBLIC ${HDF5_INCLUDE_DIRS}) target_compile_definitions( MeshLib PUBLIC - $<$<AND:$<BOOL:$ENV{VTK_USE_64BIT_IDS}>,$<NOT:$<BOOL:VTK_ADDED>>>:VTK_USE_64BIT_IDS> + $<$<AND:$<BOOL:$ENV{VTK_USE_64BIT_IDS}>,$<NOT:$<BOOL:${VTK_ADDED}>>>:VTK_USE_64BIT_IDS> ) target_precompile_headers( diff --git a/MeshToolsLib/CMakeLists.txt b/MeshToolsLib/CMakeLists.txt index dd60ad0270411e6e6228b5deaa7615c177f8171a..98e8d6f83a57ce025b6d39d32246a18353c4f2c9 100644 --- a/MeshToolsLib/CMakeLists.txt +++ b/MeshToolsLib/CMakeLists.txt @@ -9,16 +9,24 @@ append_source_files(SOURCES MeshQuality) ogs_add_library(MeshToolsLib ${SOURCES}) target_link_libraries( - MeshToolsLib PUBLIC GeoLib - MeshLib - range-v3 - VTK::IOXML - VTK::IOLegacy - $<$<TARGET_EXISTS:VTK::IOParallelXML>:VTK::IOParallelXML> - $<$<TARGET_EXISTS:VTK::ParallelMPI>:VTK::ParallelMPI> - PRIVATE BaseLib MathLib NumLib GitInfoLib + MeshToolsLib + PUBLIC + GeoLib + MeshLib + range-v3 + VTK::IOXML + VTK::IOLegacy + $<$<AND:$<BOOL:${OGS_USE_PETSC}>,$<TARGET_EXISTS:VTK::IOParallelXML>>:VTK::IOParallelXML> + $<$<AND:$<BOOL:${OGS_USE_PETSC}>,$<TARGET_EXISTS:VTK::ParallelMPI>>:VTK::ParallelMPI> + PRIVATE BaseLib MathLib NumLib GitInfoLib ) -target_precompile_headers(MeshToolsLib PRIVATE [["BaseLib/Error.h"]] - [["BaseLib/ConfigTree.h"]] [["BaseLib/Logging.h"]] [["MeshLib/Mesh.h"]] - [["MeshLib/Elements/Element.h"]]) +target_precompile_headers( + MeshToolsLib + PRIVATE + [["BaseLib/Error.h"]] + [["BaseLib/ConfigTree.h"]] + [["BaseLib/Logging.h"]] + [["MeshLib/Mesh.h"]] + [["MeshLib/Elements/Element.h"]] +) diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt index a07732faf08d501d4680f396ac956d98adf6ab05..cfa57f3705d98fa968cec090750e71ef582e1a05 100644 --- a/Tests/CMakeLists.txt +++ b/Tests/CMakeLists.txt @@ -85,40 +85,39 @@ endif() ogs_add_executable(testrunner ${TEST_SOURCES}) -target_sources(testrunner - PRIVATE - ProcessLib/Graph/TestGet.cpp - ProcessLib/Graph/TestApply.cpp +target_sources( + testrunner PRIVATE ProcessLib/Graph/TestGet.cpp + ProcessLib/Graph/TestApply.cpp ) target_link_libraries( testrunner - PRIVATE $<$<NOT:$<BOOL:${OGS_BUILD_WHEEL}>>:ApplicationsLib> - ApplicationsFileIO - autocheck - gmock - gtest - MeshToolsLib - MeshGeoToolsLib - MaterialLib - MathLib - MeshLib - MeshToolsLib - NumLib - ParameterLib - $<$<NOT:$<BOOL:${OGS_BUILD_WHEEL}>>:ProcessLib> - $<$<NOT:$<BOOL:${OGS_BUILD_WHEEL}>>:Processes> - TestInfoLib - VTK::FiltersGeneral - VTK::FiltersSources - Boost::boost # TODO move OGSMFrontThermodynamicForcesView to - # MathLib? - $<$<TARGET_EXISTS:LIE>:LIE> - $<$<TARGET_EXISTS:TH2M>:TH2M> - $<$<TARGET_EXISTS:MPI::MPI_CXX>:MPI::MPI_CXX> - $<$<TARGET_EXISTS:SwmmInterface>:SwmmInterface> - $<$<TARGET_EXISTS:InSituLib>:InSituLib> - $<$<TARGET_EXISTS:petsc>:petsc> + PRIVATE + $<$<NOT:$<BOOL:${OGS_BUILD_WHEEL}>>:ApplicationsLib> + ApplicationsFileIO + autocheck + gmock + gtest + MeshToolsLib + MeshGeoToolsLib + MaterialLib + MathLib + MeshLib + MeshToolsLib + NumLib + ParameterLib + $<$<NOT:$<BOOL:${OGS_BUILD_WHEEL}>>:ProcessLib> + $<$<NOT:$<BOOL:${OGS_BUILD_WHEEL}>>:Processes> + TestInfoLib + VTK::FiltersGeneral + VTK::FiltersSources + Boost::boost # TODO move OGSMFrontThermodynamicForcesView to MathLib? + $<$<TARGET_EXISTS:LIE>:LIE> + $<$<TARGET_EXISTS:TH2M>:TH2M> + $<$<AND:$<BOOL:${OGS_USE_PETSC}>,$<TARGET_EXISTS:MPI::MPI_CXX>>:MPI::MPI_CXX> + $<$<TARGET_EXISTS:SwmmInterface>:SwmmInterface> + $<$<TARGET_EXISTS:InSituLib>:InSituLib> + $<$<TARGET_EXISTS:petsc>:petsc> PUBLIC $<$<BOOL:${OGS_USE_MFRONT}>:OgsMFrontBehaviourForUnitTests> )