diff --git a/CMake/VirtualFluidsMacros.cmake b/CMake/VirtualFluidsMacros.cmake index 2e9abfeeeca983dd6035306358011a3cd071c63b..edb407e7c70d8623aebe0f8525d4ae94f0538797 100644 --- a/CMake/VirtualFluidsMacros.cmake +++ b/CMake/VirtualFluidsMacros.cmake @@ -90,7 +90,8 @@ endfunction() ## parameter: ## NAME - Name of the target. If not passed the name is vf_get_library_name(). ## BUILDTYPE - STATIC; SHARED; EXECUTABLE -## DEPENDS - libraries to link +## PUBLIC_LINK - public libraries to link +## PRIVATE_LINK - private libraries to link ## FILES - adds these files to the target ## FOLDER - adds all files in these folders to the targets ## EXCLUDE - excludes these files from the target @@ -109,7 +110,7 @@ function(vf_add_library) set( options ) set( oneValueArgs ) - set( multiValueArgs NAME BUILDTYPE DEPENDS FILES FOLDER EXCLUDE) + set( multiValueArgs NAME BUILDTYPE PUBLIC_LINK PRIVATE_LINK FILES FOLDER EXCLUDE) cmake_parse_arguments( ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} ) if(${ARG_NAME}) @@ -151,9 +152,13 @@ function(vf_add_library) ################################################################# ### ADDITIONAL LINK LIBRARIES ### ################################################################# - status_lib("Link Depending Libraries: ${ARG_DEPENDS}") - if (ARG_DEPENDS) - target_link_libraries(${library_name} PRIVATE ${ARG_DEPENDS}) + status_lib("Link Depending Libraries: ${ARG_PUBLIC_LINK}") + status_lib("Link Depending Libraries: ${ARG_PRIVATE_LINK}") + if (ARG_PUBLIC_LINK) + target_link_libraries(${library_name} PUBLIC ${ARG_PUBLIC_LINK}) + endif() + if (ARG_PRIVATE_LINK) + target_link_libraries(${library_name} PRIVATE ${ARG_PRIVATE_LINK}) endif() ################################################################# diff --git a/CMake/cmake_config_files/TESLA01.config.cmake b/CMake/cmake_config_files/TESLA01.config.cmake index 97771db2a6058e26504d510fc2d796c2c02e4994..ab7f92aea592fb4f8f034ebc548df05c46c58382 100644 --- a/CMake/cmake_config_files/TESLA01.config.cmake +++ b/CMake/cmake_config_files/TESLA01.config.cmake @@ -9,9 +9,3 @@ SET(BOOST_LIBRARYDIR "C:\\Libraries\\boost_1_65_1\\lib" CACHE PATH "BOOST_LIBRA SET(VTK_DIR "C:/Libraries/VTK-8.0.1/build") -################################################################################# -# METIS -################################################################################# -SET(METIS_INCLUDEDIR "C:/Libraries/metis-5.1.0//include") -SET(METIS_DEBUG_LIBRARY "C:/Libraries/metis-5.1.0/build/libmetis/Debug/metis.lib") -SET(METIS_RELEASE_LIBRARY "C:/Libraries/metis-5.1.0/build/libmetis/Release/metis.lib") diff --git a/apps/cpu/LaminarTubeFlow/CMakeLists.txt b/apps/cpu/LaminarTubeFlow/CMakeLists.txt index 24e6fb397e31bae4856b174798972a0e130acf12..32e8d2fd9231e40002e972f370a19ebec27d995b 100644 --- a/apps/cpu/LaminarTubeFlow/CMakeLists.txt +++ b/apps/cpu/LaminarTubeFlow/CMakeLists.txt @@ -1,7 +1,7 @@ PROJECT(ltf) -vf_add_library(BUILDTYPE binary DEPENDS VirtualFluidsCore muparser basics ${MPI_CXX_LIBRARIES} FILES ltf.cpp ) +vf_add_library(BUILDTYPE binary PRIVATE_LINK VirtualFluidsCore muparser basics ${MPI_CXX_LIBRARIES} FILES ltf.cpp ) vf_get_library_name (library_name) target_include_directories(${library_name} PRIVATE ${APPS_ROOT_CPU}) \ No newline at end of file diff --git a/apps/cpu/LidDrivenCavity/CMakeLists.txt b/apps/cpu/LidDrivenCavity/CMakeLists.txt index 9527e73eab5b2bcfe7f874f640bb3cada7edc016..2afa5ee83ada573e3e31a89a33386d593a5bc261 100644 --- a/apps/cpu/LidDrivenCavity/CMakeLists.txt +++ b/apps/cpu/LidDrivenCavity/CMakeLists.txt @@ -1,4 +1,4 @@ PROJECT(LidDrivenCavity) -vf_add_library(NAME LidDrivenCavityCPU BUILDTYPE binary DEPENDS VirtualFluidsCore basics muparser FILES LidDrivenCavity.cpp) +vf_add_library(NAME LidDrivenCavityCPU BUILDTYPE binary PRIVATE_LINK VirtualFluidsCore FILES LidDrivenCavity.cpp) diff --git a/apps/cpu/pChannel/CMakeLists.txt b/apps/cpu/pChannel/CMakeLists.txt index e02916661b2575e68bed2b1a7e3c9566b46cb075..336ac6c018044246d9c6c2f26f6009cc1e19e485 100644 --- a/apps/cpu/pChannel/CMakeLists.txt +++ b/apps/cpu/pChannel/CMakeLists.txt @@ -2,4 +2,4 @@ PROJECT(PChannel) INCLUDE(${APPS_ROOT}/IncludsList.cmake) -vf_add_library(BUILDTYPE binary DEPENDS VirtualFluidsCore VirtualFluidsBasic FILES pChannel.cpp) +vf_add_library(BUILDTYPE binary PRIVATE_LINK VirtualFluidsCore VirtualFluidsBasic FILES pChannel.cpp) diff --git a/apps/gpu/GKS/Flame7cm/CMakeLists.txt b/apps/gpu/GKS/Flame7cm/CMakeLists.txt index 1befef79f421268b3993aad6539880991fac92fa..c3f57dcdd8c9ea9e8ba891d72c039f5acdfc9cf9 100644 --- a/apps/gpu/GKS/Flame7cm/CMakeLists.txt +++ b/apps/gpu/GKS/Flame7cm/CMakeLists.txt @@ -1,6 +1,6 @@ PROJECT(Flame7cm) -vf_add_library(BUILDTYPE binary DEPENDS basics GridGenerator GksMeshAdapter GksVtkAdapter GksGpu FILES Flame7cm.cpp ) +vf_add_library(BUILDTYPE binary PRIVATE_LINK basics GridGenerator GksMeshAdapter GksVtkAdapter GksGpu FILES Flame7cm.cpp ) include (${VF_CMAKE_DIR}/3rd/cuda.cmake) include (${VF_CMAKE_DIR}/3rd/mpi.cmake) diff --git a/apps/gpu/LBM/DrivenCavity/CMakeLists.txt b/apps/gpu/LBM/DrivenCavity/CMakeLists.txt index 16cd3e1b927e552b47d0af41e6355322798b7164..e170d772bded31bb0f333dc7519ff434ec91e313 100644 --- a/apps/gpu/LBM/DrivenCavity/CMakeLists.txt +++ b/apps/gpu/LBM/DrivenCavity/CMakeLists.txt @@ -2,6 +2,6 @@ PROJECT(DrivenCavity) #LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-DOMPI_SKIP_MPICXX" ) -vf_add_library(BUILDTYPE binary DEPENDS VirtualFluids_GPU basics GridGenerator FILES DrivenCavity.cpp ) +vf_add_library(BUILDTYPE binary PRIVATE_LINK VirtualFluids_GPU basics GridGenerator FILES DrivenCavity.cpp ) linkCUDA() diff --git a/apps/gpu/LBM/TGV_3D/CMakeLists.txt b/apps/gpu/LBM/TGV_3D/CMakeLists.txt index c8a724bf1f5f43500cf9e373193769e155ef3f35..a8018feeb7c79d0d07c5788e31f03769ebb9ffa9 100644 --- a/apps/gpu/LBM/TGV_3D/CMakeLists.txt +++ b/apps/gpu/LBM/TGV_3D/CMakeLists.txt @@ -1,5 +1,5 @@ PROJECT(TGV_3D) -vf_add_library(BUILDTYPE binary DEPENDS basics VirtualFluids_GPU GridGenerator FILES TGV_3D.cpp) +vf_add_library(BUILDTYPE binary PRIVATE_LINK basics VirtualFluids_GPU GridGenerator FILES TGV_3D.cpp) linkCUDA() diff --git a/apps/gpu/LBM/TGV_3D_MultiGPU/CMakeLists.txt b/apps/gpu/LBM/TGV_3D_MultiGPU/CMakeLists.txt index 49846436eefc93093a57bebf045833efd3b5e3f5..5fbef792d1385e46a99aa0da4b274233959e0b1e 100644 --- a/apps/gpu/LBM/TGV_3D_MultiGPU/CMakeLists.txt +++ b/apps/gpu/LBM/TGV_3D_MultiGPU/CMakeLists.txt @@ -1,5 +1,5 @@ PROJECT(TGV_3D_MultiGPU) -vf_add_library(BUILDTYPE binary DEPENDS basics VirtualFluids_GPU GridGenerator FILES TGV_3D_MultiGPU.cpp) +vf_add_library(BUILDTYPE binary PRIVATE_LINK basics VirtualFluids_GPU GridGenerator FILES TGV_3D_MultiGPU.cpp) linkCUDA() diff --git a/apps/gpu/LBM/TrafficTest/CMakeLists.txt b/apps/gpu/LBM/TrafficTest/CMakeLists.txt index 9503271f88ded591c3d9e8c12666b65c99780f91..766debd8705a7123decd8a11bb885e8e35b6f2d0 100644 --- a/apps/gpu/LBM/TrafficTest/CMakeLists.txt +++ b/apps/gpu/LBM/TrafficTest/CMakeLists.txt @@ -6,7 +6,7 @@ set(includeDirectories "${CMAKE_SOURCE_DIR}/src" -vf_add_library(BUILDTYPE binary DEPENDS Traffic basics GridGenerator) +vf_add_library(BUILDTYPE binary PRIVATE_LINK Traffic basics GridGenerator) vf_get_library_name(library_name) target_include_directories(${library_name} PRIVATE "${CMAKE_SOURCE_DIR}/src/basics") diff --git a/apps/gpu/LBM/gridGeneratorTest/CMakeLists.txt b/apps/gpu/LBM/gridGeneratorTest/CMakeLists.txt index cc8d8eb5d1390ac1b91ca2d6599fa0d82224735e..636870f1d809ac8e92f4017ffe8bad828075a8d8 100644 --- a/apps/gpu/LBM/gridGeneratorTest/CMakeLists.txt +++ b/apps/gpu/LBM/gridGeneratorTest/CMakeLists.txt @@ -1,5 +1,5 @@ PROJECT(GridGeneratorTest) -vf_add_library(BUILDTYPE binary DEPENDS basics VirtualFluids_GPU GridGenerator FILES gridGenerator.cpp) +vf_add_library(BUILDTYPE binary PRIVATE_LINK basics VirtualFluids_GPU GridGenerator FILES gridGenerator.cpp) linkCUDA() diff --git a/apps/gpu/LidDrivenCavity/CMakeLists.txt b/apps/gpu/LidDrivenCavity/CMakeLists.txt index f049da0390b5dac566531fbec690c6c81eae579d..108ab3c676e1abf2466f0b7ca61dce2df7eee792 100644 --- a/apps/gpu/LidDrivenCavity/CMakeLists.txt +++ b/apps/gpu/LidDrivenCavity/CMakeLists.txt @@ -3,4 +3,4 @@ PROJECT(LidDrivenCavity) -vf_add_library(BUILDTYPE binary DEPENDS basics GridGenerator VirtualFluids_GPU GksMeshAdapter GksGpu FILES LidDrivenCavity.cpp) +vf_add_library(BUILDTYPE binary PRIVATE_LINK basics GridGenerator VirtualFluids_GPU GksMeshAdapter GksGpu FILES LidDrivenCavity.cpp) diff --git a/apps/gpu/tests/NumericalTestPostProcessing/CMakeLists.txt b/apps/gpu/tests/NumericalTestPostProcessing/CMakeLists.txt index 137e2aa041030193afd2a8d52e3787fc845ab87d..4114004886660af9c9f95a0a7d5ed4fc90a7bd00 100644 --- a/apps/gpu/tests/NumericalTestPostProcessing/CMakeLists.txt +++ b/apps/gpu/tests/NumericalTestPostProcessing/CMakeLists.txt @@ -1,6 +1,6 @@ project(NumericalTestPostProcessing) -vf_add_library(BUILDTYPE binary DEPENDS VirtualFluids_GPU basics cudart_static) +vf_add_library(BUILDTYPE binary PRIVATE_LINK VirtualFluids_GPU basics cudart_static) vf_get_library_name(library_name) groupTarget(${library_name} ${testFolder}) diff --git a/apps/gpu/tests/NumericalTests/CMakeLists.txt b/apps/gpu/tests/NumericalTests/CMakeLists.txt index cf4cf7213037f43b0ee5027a407228f0149d5f41..6b66befe0107d6bd54ff95cf6a35f5373ff5975c 100644 --- a/apps/gpu/tests/NumericalTests/CMakeLists.txt +++ b/apps/gpu/tests/NumericalTests/CMakeLists.txt @@ -1,6 +1,6 @@ project(NumericalTestsGPU) set(collectTestFiles ON) -vf_add_library(BUILDTYPE binary DEPENDS VirtualFluids_GPU GridGenerator basics fftw3 gtest gmock gmock_main cudart_static) +vf_add_library(BUILDTYPE binary PRIVATE_LINK VirtualFluids_GPU GridGenerator basics fftw3 gtest gmock gmock_main cudart_static) vf_get_library_name(library_name) groupTarget(${library_name} ${testFolder}) diff --git a/src/cpu/VirtualFluidsCore/CMakeLists.txt b/src/cpu/VirtualFluidsCore/CMakeLists.txt index f23e96006cea40e9ef7721c0de06586448a1e53e..032ce414c5a005acb1a84d89a4d5b51dd44a4595 100644 --- a/src/cpu/VirtualFluidsCore/CMakeLists.txt +++ b/src/cpu/VirtualFluidsCore/CMakeLists.txt @@ -23,7 +23,7 @@ IF(${USE_DEM_COUPLING}) INCLUDE(${CMAKE_CURRENT_SOURCE_DIR}/../DemCoupling/DemCoupling.cmake) ENDIF() -vf_add_library(BUILDTYPE static DEPENDS basics muparser ${MPI_LIBRARY} ${CAB_ADDITIONAL_LINK_LIBRARIES}) +vf_add_library(BUILDTYPE static PUBLIC_LINK basics muparser ${CAB_ADDITIONAL_LINK_LIBRARIES}) vf_get_library_name(library_name) diff --git a/src/gpu/GksGpu/CMakeLists.txt b/src/gpu/GksGpu/CMakeLists.txt index 353a5c8424f8c454d21e58b1acb405611414462c..3bb439da1eaf72a24b5e9338a83e01a7b8d85a32 100644 --- a/src/gpu/GksGpu/CMakeLists.txt +++ b/src/gpu/GksGpu/CMakeLists.txt @@ -1,5 +1,5 @@ -vf_add_library(BUILDTYPE shared DEPENDS basics GksMeshAdapter) +vf_add_library(BUILDTYPE shared PRIVATE_LINK basics GksMeshAdapter) linkCUDA() linkMPI() diff --git a/src/gpu/GksMeshAdapter/CMakeLists.txt b/src/gpu/GksMeshAdapter/CMakeLists.txt index 7e008f0cef544e51fa1f474b60a18e3d8ca9cbc9..3e47fe4abb10c9b9165d9e795bfcf034f607fd22 100644 --- a/src/gpu/GksMeshAdapter/CMakeLists.txt +++ b/src/gpu/GksMeshAdapter/CMakeLists.txt @@ -1,3 +1,3 @@ -vf_add_library(BUILDTYPE shared DEPENDS basics GridGenerator) +vf_add_library(BUILDTYPE shared PRIVATE_LINK basics GridGenerator) diff --git a/src/gpu/GksVtkAdapter/CMakeLists.txt b/src/gpu/GksVtkAdapter/CMakeLists.txt index a5390e832155934861ee32e0b860d78d9c70a27d..644dc6defa101644338fc35211efa7eccabca3b0 100644 --- a/src/gpu/GksVtkAdapter/CMakeLists.txt +++ b/src/gpu/GksVtkAdapter/CMakeLists.txt @@ -1,5 +1,5 @@ -vf_add_library(BUILDTYPE shared DEPENDS basics GksGpu) +vf_add_library(BUILDTYPE shared PRIVATE_LINK basics GksGpu) include (${VF_CMAKE_DIR}/3rd/vtk.cmake) \ No newline at end of file diff --git a/src/gpu/GridGenerator/CMakeLists.txt b/src/gpu/GridGenerator/CMakeLists.txt index 2908e93ccfae8589b7d729c9f2dcdc8b2c9aaf44..aee5018a99a6749c13fda1459c3d3d6ce6b5e77d 100644 --- a/src/gpu/GridGenerator/CMakeLists.txt +++ b/src/gpu/GridGenerator/CMakeLists.txt @@ -1,6 +1,6 @@ -vf_add_library(BUILDTYPE shared DEPENDS basics) +vf_add_library(BUILDTYPE shared PRIVATE_LINK basics) linkCUDA() linkOpenMP() diff --git a/src/gpu/Traffic/CMakeLists.txt b/src/gpu/Traffic/CMakeLists.txt index 8876b709009cf597d4d2e33c624486650acebb64..c836ac39130824ebc01da73c62a76c85656573a8 100644 --- a/src/gpu/Traffic/CMakeLists.txt +++ b/src/gpu/Traffic/CMakeLists.txt @@ -1,5 +1,5 @@ -vf_add_library(BUILDTYPE shared DEPENDS GridGenerator basics) +vf_add_library(BUILDTYPE shared PRIVATE_LINK GridGenerator basics) linkCUDA() \ No newline at end of file diff --git a/src/gpu/VirtualFluids_GPU/CMakeLists.txt b/src/gpu/VirtualFluids_GPU/CMakeLists.txt index d24037e51bb922823625ce8a7605d581098681cb..6635323c8be77c36682bac560dc0491d08f3a54f 100644 --- a/src/gpu/VirtualFluids_GPU/CMakeLists.txt +++ b/src/gpu/VirtualFluids_GPU/CMakeLists.txt @@ -7,7 +7,7 @@ ELSE(MSVC) ENDIF(MSVC) -vf_add_library(BUILDTYPE shared DEPENDS ${libsToLink}) +vf_add_library(BUILDTYPE shared PRIVATE_LINK ${libsToLink}) linkMPI() linkCUDA()