Skip to content
Snippets Groups Projects
Commit 01a0ed2e authored by Soeren Peters's avatar Soeren Peters
Browse files

Exchange DEPENDS (which links everything private) variable with PUBLIC_LINK...

Exchange DEPENDS (which links everything private) variable with PUBLIC_LINK and PRIVATE_LINK. Therefore VirtualFluidsCPU is linking everything public know. Everything else is still linking private.
parent bfec8a3f
No related branches found
No related tags found
No related merge requests found
Showing
with 29 additions and 24 deletions
...@@ -90,7 +90,8 @@ endfunction() ...@@ -90,7 +90,8 @@ endfunction()
## parameter: ## parameter:
## NAME - Name of the target. If not passed the name is vf_get_library_name(). ## NAME - Name of the target. If not passed the name is vf_get_library_name().
## BUILDTYPE - STATIC; SHARED; EXECUTABLE ## 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 ## FILES - adds these files to the target
## FOLDER - adds all files in these folders to the targets ## FOLDER - adds all files in these folders to the targets
## EXCLUDE - excludes these files from the target ## EXCLUDE - excludes these files from the target
...@@ -109,7 +110,7 @@ function(vf_add_library) ...@@ -109,7 +110,7 @@ function(vf_add_library)
set( options ) set( options )
set( oneValueArgs ) 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} ) cmake_parse_arguments( ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} )
if(${ARG_NAME}) if(${ARG_NAME})
...@@ -151,9 +152,13 @@ function(vf_add_library) ...@@ -151,9 +152,13 @@ function(vf_add_library)
################################################################# #################################################################
### ADDITIONAL LINK LIBRARIES ### ### ADDITIONAL LINK LIBRARIES ###
################################################################# #################################################################
status_lib("Link Depending Libraries: ${ARG_DEPENDS}") status_lib("Link Depending Libraries: ${ARG_PUBLIC_LINK}")
if (ARG_DEPENDS) status_lib("Link Depending Libraries: ${ARG_PRIVATE_LINK}")
target_link_libraries(${library_name} PRIVATE ${ARG_DEPENDS}) 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() endif()
################################################################# #################################################################
......
PROJECT(ltf) 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) vf_get_library_name (library_name)
target_include_directories(${library_name} PRIVATE ${APPS_ROOT_CPU}) target_include_directories(${library_name} PRIVATE ${APPS_ROOT_CPU})
\ No newline at end of file
PROJECT(LidDrivenCavity) 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)
...@@ -2,4 +2,4 @@ PROJECT(PChannel) ...@@ -2,4 +2,4 @@ PROJECT(PChannel)
INCLUDE(${APPS_ROOT}/IncludsList.cmake) 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)
PROJECT(Flame7cm) 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/cuda.cmake)
include (${VF_CMAKE_DIR}/3rd/mpi.cmake) include (${VF_CMAKE_DIR}/3rd/mpi.cmake)
...@@ -2,6 +2,6 @@ PROJECT(DrivenCavity) ...@@ -2,6 +2,6 @@ PROJECT(DrivenCavity)
#LIST(APPEND CAB_COMPILER_ADDTIONAL_CXX_COMPILER_FLAGS "-DOMPI_SKIP_MPICXX" ) #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() linkCUDA()
PROJECT(TGV_3D) 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() linkCUDA()
PROJECT(TGV_3D_MultiGPU) 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() linkCUDA()
...@@ -6,7 +6,7 @@ set(includeDirectories "${CMAKE_SOURCE_DIR}/src" ...@@ -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) vf_get_library_name(library_name)
target_include_directories(${library_name} PRIVATE "${CMAKE_SOURCE_DIR}/src/basics") target_include_directories(${library_name} PRIVATE "${CMAKE_SOURCE_DIR}/src/basics")
......
PROJECT(GridGeneratorTest) 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() linkCUDA()
...@@ -3,4 +3,4 @@ ...@@ -3,4 +3,4 @@
PROJECT(LidDrivenCavity) 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)
project(NumericalTestPostProcessing) 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) vf_get_library_name(library_name)
groupTarget(${library_name} ${testFolder}) groupTarget(${library_name} ${testFolder})
project(NumericalTestsGPU) project(NumericalTestsGPU)
set(collectTestFiles ON) 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) vf_get_library_name(library_name)
groupTarget(${library_name} ${testFolder}) groupTarget(${library_name} ${testFolder})
......
...@@ -23,7 +23,7 @@ IF(${USE_DEM_COUPLING}) ...@@ -23,7 +23,7 @@ IF(${USE_DEM_COUPLING})
INCLUDE(${CMAKE_CURRENT_SOURCE_DIR}/../DemCoupling/DemCoupling.cmake) INCLUDE(${CMAKE_CURRENT_SOURCE_DIR}/../DemCoupling/DemCoupling.cmake)
ENDIF() 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) vf_get_library_name(library_name)
......
vf_add_library(BUILDTYPE shared DEPENDS basics GksMeshAdapter) vf_add_library(BUILDTYPE shared PRIVATE_LINK basics GksMeshAdapter)
linkCUDA() linkCUDA()
linkMPI() linkMPI()
......
vf_add_library(BUILDTYPE shared DEPENDS basics GridGenerator) vf_add_library(BUILDTYPE shared PRIVATE_LINK basics GridGenerator)
vf_add_library(BUILDTYPE shared DEPENDS basics GksGpu) vf_add_library(BUILDTYPE shared PRIVATE_LINK basics GksGpu)
include (${VF_CMAKE_DIR}/3rd/vtk.cmake) include (${VF_CMAKE_DIR}/3rd/vtk.cmake)
\ No newline at end of file
vf_add_library(BUILDTYPE shared DEPENDS basics) vf_add_library(BUILDTYPE shared PRIVATE_LINK basics)
linkCUDA() linkCUDA()
linkOpenMP() linkOpenMP()
......
vf_add_library(BUILDTYPE shared DEPENDS GridGenerator basics) vf_add_library(BUILDTYPE shared PRIVATE_LINK GridGenerator basics)
linkCUDA() linkCUDA()
\ No newline at end of file
...@@ -7,7 +7,7 @@ ELSE(MSVC) ...@@ -7,7 +7,7 @@ ELSE(MSVC)
ENDIF(MSVC) ENDIF(MSVC)
vf_add_library(BUILDTYPE shared DEPENDS ${libsToLink}) vf_add_library(BUILDTYPE shared PRIVATE_LINK ${libsToLink})
linkMPI() linkMPI()
linkCUDA() linkCUDA()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment