diff --git a/apps/benchmarks/CouetteFlow/CMakeLists.txt b/apps/benchmarks/CouetteFlow/CMakeLists.txt index c4cb893e0e140e226ab4e75486a5fe36c714384f..caf4e4173acc72e51abf31584d54dff6a6a31cf2 100644 --- a/apps/benchmarks/CouetteFlow/CMakeLists.txt +++ b/apps/benchmarks/CouetteFlow/CMakeLists.txt @@ -7,8 +7,8 @@ waLBerla_add_executable( NAME CouetteFlow DEPENDS blockforest boundary core fiel # Some tests # ############## -waLBerla_execute_test( NO_MODULE_LABEL NAME CouetteFlowTestNoCheckRelease COMMAND $<TARGET_FILE:CouetteFlow> ${CMAKE_CURRENT_SOURCE_DIR}/TestNoCheck.dat --trt --linear-exp PROCESSES 4 CONFIGURATIONS Release RelWithDbgInfo ) -waLBerla_execute_test( NO_MODULE_LABEL NAME CouetteFlowTestNoCheckDebug COMMAND $<TARGET_FILE:CouetteFlow> ${CMAKE_CURRENT_SOURCE_DIR}/TestNoCheck.dat --trt --linear-exp PROCESSES 4 LABELS longrun CONFIGURATIONS Debug DebugOptimized ) +waLBerla_execute_test( NO_MODULE_LABEL NAME CouetteFlowTestNoCheckRelease COMMAND $<TARGET_FILE:CouetteFlow> ${CMAKE_CURRENT_SOURCE_DIR}/TestNoCheck.dat --trt --linear-exp PROCESSES 4 CONFIGURATIONS Release RelWithDbgInfo DEPENDS_ON_TARGETS CouetteFlow ) +waLBerla_execute_test( NO_MODULE_LABEL NAME CouetteFlowTestNoCheckDebug COMMAND $<TARGET_FILE:CouetteFlow> ${CMAKE_CURRENT_SOURCE_DIR}/TestNoCheck.dat --trt --linear-exp PROCESSES 4 LABELS longrun CONFIGURATIONS Debug DebugOptimized DEPENDS_ON_TARGETS CouetteFlow ) -waLBerla_execute_test( NO_MODULE_LABEL NAME CouetteFlowTest0 COMMAND $<TARGET_FILE:CouetteFlow> ${CMAKE_CURRENT_SOURCE_DIR}/Test0.dat --trt --linear-exp LABELS longrun CONFIGURATIONS Release RelWithDbgInfo ) -waLBerla_execute_test( NO_MODULE_LABEL NAME CouetteFlowTest2 COMMAND $<TARGET_FILE:CouetteFlow> ${CMAKE_CURRENT_SOURCE_DIR}/Test2.dat --trt --linear-exp LABELS longrun verylongrun PROCESSES 4 CONFIGURATIONS Release RelWithDbgInfo ) +waLBerla_execute_test( NO_MODULE_LABEL NAME CouetteFlowTest0 COMMAND $<TARGET_FILE:CouetteFlow> ${CMAKE_CURRENT_SOURCE_DIR}/Test0.dat --trt --linear-exp LABELS longrun CONFIGURATIONS Release RelWithDbgInfo DEPENDS_ON_TARGETS CouetteFlow ) +waLBerla_execute_test( NO_MODULE_LABEL NAME CouetteFlowTest2 COMMAND $<TARGET_FILE:CouetteFlow> ${CMAKE_CURRENT_SOURCE_DIR}/Test2.dat --trt --linear-exp LABELS longrun verylongrun PROCESSES 4 CONFIGURATIONS Release RelWithDbgInfo DEPENDS_ON_TARGETS CouetteFlow ) diff --git a/apps/benchmarks/FlowAroundSphereCodeGen/CMakeLists.txt b/apps/benchmarks/FlowAroundSphereCodeGen/CMakeLists.txt index a598b3323ba5c449b0faac046d1a7fb5e4c2744d..549b7fd080053a6cb198547fc5c5a2f8763a18a1 100644 --- a/apps/benchmarks/FlowAroundSphereCodeGen/CMakeLists.txt +++ b/apps/benchmarks/FlowAroundSphereCodeGen/CMakeLists.txt @@ -12,7 +12,7 @@ if (WALBERLA_BUILD_WITH_CUDA) FlowAroundSphereCodeGen_PackInfoOdd.cu FlowAroundSphereCodeGen_PackInfoOdd.h FlowAroundSphereCodeGen_InfoHeader.h) waLBerla_add_executable( NAME FlowAroundSphereCodeGen FILE FlowAroundSphereCodeGen.cpp - DEPENDS blockforest boundary core domain_decomposition field geometry timeloop vtk FlowAroundSphereGenerated) + DEPENDS blockforest boundary core domain_decomposition field geometry python_coupling timeloop vtk FlowAroundSphereGenerated) else () waLBerla_generate_target_from_python(NAME FlowAroundSphereGenerated FILE FlowAroundSphereCodeGen.py @@ -25,5 +25,5 @@ else () FlowAroundSphereCodeGen_PackInfoOdd.cpp FlowAroundSphereCodeGen_PackInfoOdd.h FlowAroundSphereCodeGen_InfoHeader.h) waLBerla_add_executable( NAME FlowAroundSphereCodeGen FILE FlowAroundSphereCodeGen.cpp - DEPENDS blockforest boundary core domain_decomposition field geometry timeloop vtk FlowAroundSphereGenerated) + DEPENDS blockforest boundary core domain_decomposition field geometry python_coupling timeloop vtk FlowAroundSphereGenerated) endif() \ No newline at end of file diff --git a/apps/benchmarks/PhaseFieldAllenCahn/CMakeLists.txt b/apps/benchmarks/PhaseFieldAllenCahn/CMakeLists.txt index 629c9ec0a609c7312027d037f5504fc3a4d3ecb6..35bf3f763256cd59bf0e516467e789db35a398de 100644 --- a/apps/benchmarks/PhaseFieldAllenCahn/CMakeLists.txt +++ b/apps/benchmarks/PhaseFieldAllenCahn/CMakeLists.txt @@ -15,7 +15,7 @@ if (WALBERLA_BUILD_WITH_CUDA) waLBerla_add_executable(NAME benchmark_multiphase FILES benchmark_multiphase.cpp InitializerFunctions.cpp multiphase_codegen.py - DEPENDS blockforest core cuda field postprocessing lbm geometry timeloop gui BenchmarkPhaseFieldCodeGenGPU) + DEPENDS blockforest core cuda field postprocessing python_coupling lbm geometry timeloop gui BenchmarkPhaseFieldCodeGenGPU) else () waLBerla_generate_target_from_python(NAME BenchmarkPhaseFieldCodeGenCPU FILE multiphase_codegen.py @@ -30,6 +30,6 @@ else () waLBerla_add_executable(NAME benchmark_multiphase FILES benchmark_multiphase.cpp InitializerFunctions.cpp multiphase_codegen.py - DEPENDS blockforest core field postprocessing lbm geometry timeloop gui BenchmarkPhaseFieldCodeGenCPU) + DEPENDS blockforest core field postprocessing python_coupling lbm geometry timeloop gui BenchmarkPhaseFieldCodeGenCPU) endif (WALBERLA_BUILD_WITH_CUDA) diff --git a/apps/benchmarks/PoiseuilleChannel/CMakeLists.txt b/apps/benchmarks/PoiseuilleChannel/CMakeLists.txt index b5d3d42a7fc0cc67f07307324c198144dad97a99..7d354fba8ad13ad6db45d312009db2ee43305cec 100644 --- a/apps/benchmarks/PoiseuilleChannel/CMakeLists.txt +++ b/apps/benchmarks/PoiseuilleChannel/CMakeLists.txt @@ -7,13 +7,13 @@ waLBerla_add_executable( NAME PoiseuilleChannel DEPENDS blockforest boundary cor # Some tests # ############## -waLBerla_execute_test( NO_MODULE_LABEL NAME PoiseuilleChannelTestParallelPlatesNoCheckRelease COMMAND $<TARGET_FILE:PoiseuilleChannel> ${CMAKE_CURRENT_SOURCE_DIR}/TestParallelPlatesNoCheck.dat --trt --linear-exp PROCESSES 4 CONFIGURATIONS Release RelWithDbgInfo ) -waLBerla_execute_test( NO_MODULE_LABEL NAME PoiseuilleChannelTestPipeNoCheckRelease COMMAND $<TARGET_FILE:PoiseuilleChannel> ${CMAKE_CURRENT_SOURCE_DIR}/TestPipeNoCheck.dat --trt --linear-exp PROCESSES 4 CONFIGURATIONS Release RelWithDbgInfo ) +waLBerla_execute_test( NO_MODULE_LABEL NAME PoiseuilleChannelTestParallelPlatesNoCheckRelease COMMAND $<TARGET_FILE:PoiseuilleChannel> ${CMAKE_CURRENT_SOURCE_DIR}/TestParallelPlatesNoCheck.dat --trt --linear-exp PROCESSES 4 CONFIGURATIONS Release RelWithDbgInfo DEPENDS_ON_TARGETS PoiseuilleChannel ) +waLBerla_execute_test( NO_MODULE_LABEL NAME PoiseuilleChannelTestPipeNoCheckRelease COMMAND $<TARGET_FILE:PoiseuilleChannel> ${CMAKE_CURRENT_SOURCE_DIR}/TestPipeNoCheck.dat --trt --linear-exp PROCESSES 4 CONFIGURATIONS Release RelWithDbgInfo DEPENDS_ON_TARGETS PoiseuilleChannel ) -waLBerla_execute_test( NO_MODULE_LABEL NAME PoiseuilleChannelTestParallelPlatesNoCheckDebug COMMAND $<TARGET_FILE:PoiseuilleChannel> ${CMAKE_CURRENT_SOURCE_DIR}/TestParallelPlatesNoCheck.dat --trt --linear-exp PROCESSES 4 LABELS longrun CONFIGURATIONS Debug DebugOptimized ) -waLBerla_execute_test( NO_MODULE_LABEL NAME PoiseuilleChannelTestPipeNoCheckDebug COMMAND $<TARGET_FILE:PoiseuilleChannel> ${CMAKE_CURRENT_SOURCE_DIR}/TestPipeNoCheck.dat --trt --linear-exp PROCESSES 4 LABELS longrun CONFIGURATIONS Debug DebugOptimized ) +waLBerla_execute_test( NO_MODULE_LABEL NAME PoiseuilleChannelTestParallelPlatesNoCheckDebug COMMAND $<TARGET_FILE:PoiseuilleChannel> ${CMAKE_CURRENT_SOURCE_DIR}/TestParallelPlatesNoCheck.dat --trt --linear-exp PROCESSES 4 LABELS longrun CONFIGURATIONS Debug DebugOptimized DEPENDS_ON_TARGETS PoiseuilleChannel ) +waLBerla_execute_test( NO_MODULE_LABEL NAME PoiseuilleChannelTestPipeNoCheckDebug COMMAND $<TARGET_FILE:PoiseuilleChannel> ${CMAKE_CURRENT_SOURCE_DIR}/TestPipeNoCheck.dat --trt --linear-exp PROCESSES 4 LABELS longrun CONFIGURATIONS Debug DebugOptimized DEPENDS_ON_TARGETS PoiseuilleChannel ) -waLBerla_execute_test( NO_MODULE_LABEL NAME PoiseuilleChannelTestParallelPlates0 COMMAND $<TARGET_FILE:PoiseuilleChannel> ${CMAKE_CURRENT_SOURCE_DIR}/TestParallelPlates0.dat --trt --linear-exp LABELS longrun CONFIGURATIONS Release RelWithDbgInfo ) -waLBerla_execute_test( NO_MODULE_LABEL NAME PoiseuilleChannelTestParallelPlates2 COMMAND $<TARGET_FILE:PoiseuilleChannel> ${CMAKE_CURRENT_SOURCE_DIR}/TestParallelPlates2.dat --trt --linear-exp LABELS longrun verylongrun PROCESSES 4 CONFIGURATIONS Release RelWithDbgInfo ) -waLBerla_execute_test( NO_MODULE_LABEL NAME PoiseuilleChannelTestPipe0 COMMAND $<TARGET_FILE:PoiseuilleChannel> ${CMAKE_CURRENT_SOURCE_DIR}/TestPipe0.dat --trt --linear-exp LABELS longrun CONFIGURATIONS Release RelWithDbgInfo ) -waLBerla_execute_test( NO_MODULE_LABEL NAME PoiseuilleChannelTestPipe2 COMMAND $<TARGET_FILE:PoiseuilleChannel> ${CMAKE_CURRENT_SOURCE_DIR}/TestPipe2.dat --trt --linear-exp LABELS longrun verylongrun PROCESSES 4 CONFIGURATIONS Release RelWithDbgInfo ) +waLBerla_execute_test( NO_MODULE_LABEL NAME PoiseuilleChannelTestParallelPlates0 COMMAND $<TARGET_FILE:PoiseuilleChannel> ${CMAKE_CURRENT_SOURCE_DIR}/TestParallelPlates0.dat --trt --linear-exp LABELS longrun CONFIGURATIONS Release RelWithDbgInfo DEPENDS_ON_TARGETS PoiseuilleChannel ) +waLBerla_execute_test( NO_MODULE_LABEL NAME PoiseuilleChannelTestParallelPlates2 COMMAND $<TARGET_FILE:PoiseuilleChannel> ${CMAKE_CURRENT_SOURCE_DIR}/TestParallelPlates2.dat --trt --linear-exp LABELS longrun verylongrun PROCESSES 4 CONFIGURATIONS Release RelWithDbgInfo DEPENDS_ON_TARGETS PoiseuilleChannel ) +waLBerla_execute_test( NO_MODULE_LABEL NAME PoiseuilleChannelTestPipe0 COMMAND $<TARGET_FILE:PoiseuilleChannel> ${CMAKE_CURRENT_SOURCE_DIR}/TestPipe0.dat --trt --linear-exp LABELS longrun CONFIGURATIONS Release RelWithDbgInfo DEPENDS_ON_TARGETS PoiseuilleChannel ) +waLBerla_execute_test( NO_MODULE_LABEL NAME PoiseuilleChannelTestPipe2 COMMAND $<TARGET_FILE:PoiseuilleChannel> ${CMAKE_CURRENT_SOURCE_DIR}/TestPipe2.dat --trt --linear-exp LABELS longrun verylongrun PROCESSES 4 CONFIGURATIONS Release RelWithDbgInfo DEPENDS_ON_TARGETS PoiseuilleChannel ) diff --git a/apps/benchmarks/SchaeferTurek/CMakeLists.txt b/apps/benchmarks/SchaeferTurek/CMakeLists.txt index 88463aaf3860249071e395f74a1bd1765127ef17..06cfca6e34be7beb1e0dc96f87ce9d0cd05109de 100644 --- a/apps/benchmarks/SchaeferTurek/CMakeLists.txt +++ b/apps/benchmarks/SchaeferTurek/CMakeLists.txt @@ -3,4 +3,4 @@ waLBerla_link_files_to_builddir( "*.dat" ) waLBerla_add_executable( NAME SchaeferTurek DEPENDS blockforest boundary core field lbm postprocessing stencil timeloop vtk sqlite ) -waLBerla_execute_test( NO_MODULE_LABEL NAME SchaeferTurekTest COMMAND $<TARGET_FILE:SchaeferTurek> Test2D.dat PROCESSES 4 CONFIGURATIONS Release RelWithDbgInfo ) \ No newline at end of file +waLBerla_execute_test( NO_MODULE_LABEL NAME SchaeferTurekTest COMMAND $<TARGET_FILE:SchaeferTurek> Test2D.dat PROCESSES 4 CONFIGURATIONS Release RelWithDbgInfo DEPENDS_ON_TARGETS SchaeferTurek ) \ No newline at end of file diff --git a/apps/benchmarks/UniformGridGPU/CMakeLists.txt b/apps/benchmarks/UniformGridGPU/CMakeLists.txt index d084f8171a9581f0e1aded38cde8182d7821f815..5725eac23a734f88dbe3ea215a460d2037cde53c 100644 --- a/apps/benchmarks/UniformGridGPU/CMakeLists.txt +++ b/apps/benchmarks/UniformGridGPU/CMakeLists.txt @@ -21,10 +21,9 @@ foreach(streaming_pattern pull push aa esotwist) UniformGridGPU_InfoHeader.h ) - waLBerla_add_executable(NAME UniformGridGPU_${config} FILES UniformGridGPU.cpp - DEPENDS blockforest boundary core cuda domain_decomposition field geometry timeloop vtk UniformGridGPUGenerated_${config}) + DEPENDS blockforest boundary core cuda domain_decomposition field geometry python_coupling timeloop vtk UniformGridGPUGenerated_${config}) # all configs are excluded from all except for pull d3q27. if (${streaming_pattern} STREQUAL "pull" AND ${stencil} STREQUAL "d3q27") diff --git a/apps/pythonmodule/CMakeLists.txt b/apps/pythonmodule/CMakeLists.txt index ee58a3257f9d9408f3da4eb608663e429aea84f1..5ea0decea67007ad01fb8e155a8667fe290dd64f 100644 --- a/apps/pythonmodule/CMakeLists.txt +++ b/apps/pythonmodule/CMakeLists.txt @@ -1,6 +1,7 @@ # waLBerla Python module - - +if( NOT TARGET python_coupling ) + message( WARNING "python module ist not build since the python_coupling target is non-existent" ) +else() if ( WALBERLA_BUILD_WITH_PYTHON ) if ( WALBERLA_BUILD_WITH_CUDA ) set(PYTHON_MODULE_DEPENDENCIES blockforest boundary domain_decomposition core field python_coupling timeloop vtk cuda) @@ -31,3 +32,4 @@ if ( WALBERLA_BUILD_WITH_PYTHON ) add_custom_target( pythonModule ALL ${Python_EXECUTABLE} setup.py build DEPENDS walberla_cpp ) add_custom_target( pythonModuleInstall ${Python_EXECUTABLE} setup.py install --user DEPENDS walberla_cpp ) endif() +endif() \ No newline at end of file diff --git a/apps/showcases/PhaseFieldAllenCahn/CPU/CMakeLists.txt b/apps/showcases/PhaseFieldAllenCahn/CPU/CMakeLists.txt index 07cc9000ed8a1b2dc6f952904d6b217c868629b0..abce2c997954b4cdcb5f55ea57c75ada1837b9c2 100644 --- a/apps/showcases/PhaseFieldAllenCahn/CPU/CMakeLists.txt +++ b/apps/showcases/PhaseFieldAllenCahn/CPU/CMakeLists.txt @@ -18,4 +18,4 @@ waLBerla_generate_target_from_python(NAME PhaseFieldCodeGenCPU waLBerla_add_executable(NAME multiphaseCPU FILES multiphase.cpp PythonExports.cpp InitializerFunctions.cpp multiphase_codegen.py - DEPENDS blockforest core field postprocessing lbm geometry timeloop gui PhaseFieldCodeGenCPU) + DEPENDS blockforest core field postprocessing python_coupling lbm geometry timeloop gui PhaseFieldCodeGenCPU) diff --git a/apps/showcases/PhaseFieldAllenCahn/GPU/CMakeLists.txt b/apps/showcases/PhaseFieldAllenCahn/GPU/CMakeLists.txt index 8cd135d5615458707f86cd2f0b0811f11da99ccf..ac4feda33525937c298e97116cdffa3833d40b7e 100644 --- a/apps/showcases/PhaseFieldAllenCahn/GPU/CMakeLists.txt +++ b/apps/showcases/PhaseFieldAllenCahn/GPU/CMakeLists.txt @@ -18,4 +18,4 @@ waLBerla_generate_target_from_python(NAME PhaseFieldCodeGenGPU waLBerla_add_executable(NAME multiphaseGPU FILES multiphase.cpp PythonExports.cpp InitializerFunctions.cpp util.cpp multiphase_codegen.py - DEPENDS blockforest core cuda field postprocessing lbm geometry timeloop gui PhaseFieldCodeGenGPU) + DEPENDS blockforest core cuda field postprocessing python_coupling lbm geometry timeloop gui PhaseFieldCodeGenGPU) diff --git a/apps/tutorials/pe/CMakeLists.txt b/apps/tutorials/pe/CMakeLists.txt index 4fda841130cfddf96965e100a1bdfa83d4df49ea..5b71226d3565ad94d9bac56f91f3d0385c6fdf61 100644 --- a/apps/tutorials/pe/CMakeLists.txt +++ b/apps/tutorials/pe/CMakeLists.txt @@ -11,4 +11,4 @@ waLBerla_add_executable ( NAME 02_Tutorial_ConfinedGasExtended waLBerla_execute_test( NO_MODULE_LABEL NAME 01_Tutorial_ConfinedGas PROCESSES 8 ) waLBerla_execute_test( NO_MODULE_LABEL NAME 02_Tutorial_ConfinedGasExtended COMMAND $<TARGET_FILE:02_Tutorial_ConfinedGasExtended> 02_ConfinedGasExtended.cfg - PROCESSES 8 ) + PROCESSES 8 DEPENDS_ON_TARGETS 02_Tutorial_ConfinedGasExtended ) diff --git a/cmake/waLBerlaFunctions.cmake b/cmake/waLBerlaFunctions.cmake index 2974ca22d9bd24988558c33cd5b07b59a58432c2..4962e18cabc6a6128ac8b003c99cfe6110d45520 100644 --- a/cmake/waLBerlaFunctions.cmake +++ b/cmake/waLBerlaFunctions.cmake @@ -31,6 +31,7 @@ set ( WALBERLA_GLOB_FILES *.cpp ####################################################################################################################### function ( waLBerla_add_module ) + message(WARNING "This function is deprecated. Please use the default cmake mechanisms like add_library.") set( options ) set( oneValueArgs ) set( multiValueArgs DEPENDS EXCLUDE FILES BUILD_ONLY_IF_FOUND OPTIONAL_DEPENDS ) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index e132dd52a4e2f87e6e52228f9a505b85711db74e..e5ca7b0c84c43f0d46a1dd9722bd6cdfe1d1f65e 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,23 +1,58 @@ # List modules here that should not be built -set ( excludedModules ) - - - -# Generate the list of modulesToBuild ( all subfolders minus excludedModules ) -file (GLOB allFilesAndDirs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} * ) -list_minus ( modulesToBuild LIST1 ${allFilesAndDirs} LIST2 ${excludedModules} "CMakeFiles" ) - -# Activate modules -foreach ( mod ${modulesToBuild} ) - if( IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${mod} ) - add_subdirectory( ${mod} ) - endif() -endforeach() - - -# Write out a module statistic file that accumulates information about all -# modules that have been added via waLBerla_add_module -waLBerla_write_module_statistics ( "${walberla_BINARY_DIR}/moduleStatistics.json" ) - +#set ( excludedModules core ) +# +# +# +## Generate the list of modulesToBuild ( all subfolders minus excludedModules ) +#file (GLOB allFilesAndDirs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} * ) +#list_minus ( modulesToBuild LIST1 ${allFilesAndDirs} LIST2 ${excludedModules} "CMakeFiles" ) +# +## Activate modules +#foreach ( mod ${modulesToBuild} ) +# if( IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${mod} ) +# add_subdirectory( ${mod} ) +# endif() +#endforeach() +# +# +## Write out a module statistic file that accumulates information about all +## modules that have been added via waLBerla_add_module +#waLBerla_write_module_statistics ( "${walberla_BINARY_DIR}/moduleStatistics.json" ) + +add_subdirectory( blockforest ) +add_subdirectory( boundary ) +add_subdirectory( communication ) +add_subdirectory( core ) +if ( CMAKE_CUDA_COMPILER ) + add_subdirectory( cuda ) +endif() +add_subdirectory( domain_decomposition ) +add_subdirectory( executiontree ) +if ( FFTW3_FOUND ) + add_subdirectory( fft ) +endif() +add_subdirectory( field ) +add_subdirectory( gather ) +add_subdirectory( geometry ) +add_subdirectory( gui ) +add_subdirectory( lbm ) +add_subdirectory( lbm_mesapd_coupling ) +add_subdirectory( mesa_pd ) +if( OPENMESH_FOUND ) + add_subdirectory( mesh ) + add_subdirectory( mesh_common ) +endif() +add_subdirectory( pde ) +add_subdirectory( pe ) +add_subdirectory( pe_coupling ) +add_subdirectory( postprocessing ) +if (WALBERLA_BUILD_WITH_PYTHON) + add_subdirectory(python_coupling) +endif () +add_subdirectory( simd ) +add_subdirectory( sqlite ) +add_subdirectory( stencil ) +add_subdirectory( timeloop ) +add_subdirectory( vtk ) diff --git a/src/blockforest/CMakeLists.txt b/src/blockforest/CMakeLists.txt index 84027d327ed552e6cb0c9b35aec657fa308f3074..1498ef455a1be4e128c35329e22c80065b141cab 100644 --- a/src/blockforest/CMakeLists.txt +++ b/src/blockforest/CMakeLists.txt @@ -3,6 +3,51 @@ OPTION( WALBERLA_BLOCKFOREST_PRIMITIVE_BLOCKID "BlockForest: enables/disables Bl mark_as_advanced( WALBERLA_BLOCKFOREST_PRIMITIVE_BLOCKID ) -configure_file ( CMakeDefs.in.h CMakeDefs.h ) +configure_file( CMakeDefs.in.h CMakeDefs.h ) -waLBerla_add_module( DEPENDS communication core domain_decomposition stencil ) +add_library( blockforest ) +target_link_libraries( blockforest PUBLIC communication core domain_decomposition stencil ) +target_sources( blockforest + PRIVATE + AABBRefinementSelection.h + all.h + BlockDataHandling.h + BlockForestEvaluation.h + BlockForestFile.h + BlockForest.h + Block.h + BlockID.h + BlockNeighborhoodConstruction.h + BlockNeighborhoodSection.h + BlockReconstruction.h + CMakeDefs.in.h + GlobalLoadBalancing.h + HilbertCurveConstruction.h + Initialization.h + OutputColor.h + PhantomBlockForest.h + PhantomBlock.h + SetupBlockForest.h + SetupBlock.h + StructuredBlockForest.h + Types.h + Utility.h + Block.cpp + BlockDataHandling.cpp + BlockForest.cpp + BlockForestEvaluation.cpp + BlockID.cpp + BlockNeighborhoodConstruction.cpp + BlockReconstruction.cpp + Initialization.cpp + OutputColor.cpp + PhantomBlock.cpp + PhantomBlockForest.cpp + SetupBlock.cpp + SetupBlockForest.cpp + StructuredBlockForest.cpp + Utility.cpp + ) + +add_subdirectory( communication ) +add_subdirectory( loadbalancing ) \ No newline at end of file diff --git a/src/blockforest/communication/CMakeLists.txt b/src/blockforest/communication/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..9038ee5c643bd17ec5741ca2870dc15589545a06 --- /dev/null +++ b/src/blockforest/communication/CMakeLists.txt @@ -0,0 +1,11 @@ +target_sources( blockforest + PRIVATE + DirectionBasedReduceScheme.h + LocalCommunicationMode.h + NonUniformBufferedScheme.h + NonUniformPackInfo.h + UniformBufferedScheme.h + UniformDirectScheme.h + UniformDirectScheme.impl.h + UniformToNonUniformPackInfoAdapter.h + ) \ No newline at end of file diff --git a/src/blockforest/loadbalancing/CMakeLists.txt b/src/blockforest/loadbalancing/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..ba4d7c69787dda149a68b01a77cbab46dc2be1ef --- /dev/null +++ b/src/blockforest/loadbalancing/CMakeLists.txt @@ -0,0 +1,17 @@ +target_sources( blockforest + PRIVATE + BlockInfo.h + Cartesian.h + DynamicCurve.h + DynamicDiffusive.h + DynamicParMetis.h + InfoCollection.h + NoPhantomData.h + PODPhantomData.h + StaticCurve.h + StaticParMetis.h + Cartesian.cpp + DynamicParMetis.cpp + StaticCurve.cpp + StaticParMetis.cpp + ) \ No newline at end of file diff --git a/src/boundary/CMakeLists.txt b/src/boundary/CMakeLists.txt index c46e4eee3a3f68f720be753f609db7637aafcfec..c122cbddc6a715ce446071a60c22dc11bb849b03 100644 --- a/src/boundary/CMakeLists.txt +++ b/src/boundary/CMakeLists.txt @@ -5,4 +5,13 @@ ################################################################################################### -waLBerla_add_module( DEPENDS core communication domain_decomposition field python_coupling stencil ) +add_library( boundary ) +target_link_libraries( boundary PUBLIC core communication domain_decomposition field stencil ) +target_sources( boundary + PRIVATE + BoundaryHandling.h + Boundary.h + BoundaryHandlingCollection.h + Boundary.cpp + BoundaryUID.h + ) diff --git a/src/boundary/communication/CMakeLists.txt b/src/boundary/communication/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..63d92d9db7fc2547845737fa5279844b3db2a4b9 --- /dev/null +++ b/src/boundary/communication/CMakeLists.txt @@ -0,0 +1,4 @@ +target_sources( boundary + PRIVATE + HandlingPackInfo.h + ) diff --git a/src/communication/CMakeLists.txt b/src/communication/CMakeLists.txt index 309ec2671d091413325f4984d432e60ee839997c..82b1a4cc2e6505c918f7f7512804973827f67f41 100644 --- a/src/communication/CMakeLists.txt +++ b/src/communication/CMakeLists.txt @@ -4,6 +4,13 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS core domain_decomposition stencil ) - +add_library( communication INTERFACE ) +target_sources( communication + INTERFACE + ReducePackInfo.h + UniformMPIDatatypeInfo.h + UniformPackInfo.h + ) +target_link_libraries( communication INTERFACE core domain_decomposition stencil ) + ################################################################################################### \ No newline at end of file diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt index b457a62c63f80b02e7dfa6a71e2ecc929b0fdbb7..f3a6dc20b97c034513391b21528648f51b394299 100644 --- a/src/core/CMakeLists.txt +++ b/src/core/CMakeLists.txt @@ -25,7 +25,67 @@ configure_file ( waLBerlaBuildInfo.in.cpp include( math/math.cmake ) include( logging/logging.cmake ) -file ( GLOB_RECURSE sourceFiles ${WALBERLA_GLOB_FILES} ) -list( APPEND sourceFiles "${walberla_BINARY_DIR}/src/core/waLBerlaBuildInfo.cpp" ) +add_library( core ) +if( MPI_FOUND ) + target_link_libraries( core PUBLIC MPI::MPI_CXX ) +endif() +target_link_libraries( core PUBLIC ${SERVICE_LIBS} ) +target_sources( core + PRIVATE + Abort.cpp + Conversion.cpp + DataTypes.cpp + Environment.cpp + GetPID.cpp + Hostname.cpp + MemoryUsage.cpp + RandomUUID.cpp + Sleep.cpp + waLBerlaBuildInfo.cpp + Abort.h + AllSet.h + Any.h + Array.h + ConcatIterator.h + Conversion.h + DataTypes.h + EndianIndependentSerialization.h + Environment.h + Filesystem.h + FunctionTraits.h + GetPID.h + Hostname.h + Macros.h + MemoryUsage.h + MultiArrayIO.h + MultiArrayIO.impl.h + NonCopyable.h + NonCreateable.h + OpenMP.h + Optional.h + RandomUUID.h + Regex.h + Sanitizer.h + Set.h + SharedFunctor.h + Sleep.h + STLIO.h + stringToNum.h + StringUtility.h + StringUtility.impl.h + typeToString.h + UniqueID.h + Variant.h + VectorTrait.h + waLBerlaBuildInfo.h + ) -waLBerla_add_module( FILES ${sourceFiles} EXCLUDE "${walberla_SOURCE_DIR}/src/core/waLBerlaBuildInfo.in.cpp" ) +add_subdirectory( cell ) +add_subdirectory( debug ) +add_subdirectory( mpi ) +add_subdirectory( logging) +add_subdirectory( load_balancing ) +add_subdirectory( config ) +add_subdirectory( math ) +add_subdirectory( timing ) +add_subdirectory( grid_generator ) \ No newline at end of file diff --git a/src/core/cell/CMakeLists.txt b/src/core/cell/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..fbc636d7c088ce46968d23034a0889b4ea587c66 --- /dev/null +++ b/src/core/cell/CMakeLists.txt @@ -0,0 +1,11 @@ +target_sources( core + PRIVATE + Cell.h + CellArray.h + CellInterval.cpp + CellInterval.h + CellSet.cpp + CellSet.h + CellVector.cpp + CellVector.h +) diff --git a/src/core/config/CMakeLists.txt b/src/core/config/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..ea80d2ac43cdbd24c70a398b92578a8eb9f09861 --- /dev/null +++ b/src/core/config/CMakeLists.txt @@ -0,0 +1,8 @@ +target_sources( core + PRIVATE + Config.cpp + Config.h + Create.cpp + Create.h + Iterator.h + ) diff --git a/src/core/debug/CMakeLists.txt b/src/core/debug/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..1d3a9743a757725614dadcb54e51d8b65afe65cd --- /dev/null +++ b/src/core/debug/CMakeLists.txt @@ -0,0 +1,18 @@ +target_sources(core + PRIVATE + CMakeLists.txt + CheckFunctions.cpp + CheckFunctions.h + CheckFunctions.impl.h + Debug.cpp + Debug.h + OperatorCheck.h + PrintStacktrace.cpp + PrintStacktrace.h + TestSubsystem.cpp + TestSubsystem.h + all.h + demangle.h + extern/StackWalker.cpp + extern/StackWalker.h + ) diff --git a/src/core/grid_generator/CMakeLists.txt b/src/core/grid_generator/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..4570ae56fb899e473e0f2283535188b7f9d7bad7 --- /dev/null +++ b/src/core/grid_generator/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( core + PRIVATE + HCPIterator.cpp + HCPIterator.h + SCIterator.cpp + SCIterator.h + ) diff --git a/src/core/load_balancing/CMakeLists.txt b/src/core/load_balancing/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..17a1aea2362857b7af2a332ec63ad44b37b46340 --- /dev/null +++ b/src/core/load_balancing/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( core + PRIVATE + MetisWrapper.h + ParMetisWrapper.h + MetisWrapper.cpp + ParMetisWrapper.cpp + ) \ No newline at end of file diff --git a/src/core/logging/CMakeLists.txt b/src/core/logging/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..563e57263ad813d04f1c66ac7c20b84a248e7664 --- /dev/null +++ b/src/core/logging/CMakeLists.txt @@ -0,0 +1,9 @@ +target_sources( core + PRIVATE + Initialization.cpp + Initialization.h + Logging.cpp + Logging.h + Tracing.h + ) + diff --git a/src/core/math/CMakeLists.txt b/src/core/math/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..fc18eccf217cd3c2b13358cf5119c3db5f22a065 --- /dev/null +++ b/src/core/math/CMakeLists.txt @@ -0,0 +1,58 @@ +target_sources( core + PRIVATE + AABB.h + AABBFwd.h + Angles.h + Constants.h + DistributedSample.cpp + DistributedSample.h + FPClassify.h + FastInvSqrt.h + GenericAABB.h + GenericAABB.impl.h + IntegerFactorization.cpp + IntegerFactorization.h + KahanSummation.h + Limits.h + MathTrait.h + Matrix2.h + Matrix3.h + MatrixMxN.h + Parser.cpp + Parser.h + ParserOMP.cpp + ParserOMP.h + PhysicalCheck.cpp + PhysicalCheck.h + Plane.h + Primes.cpp + Primes.h + Quaternion.h + Random.cpp + Random.h + Rot3.h + RotationFunctions.h + Sample.cpp + Sample.h + Shims.h + SqrtTrait.h + Uint.cpp + Uint.h + Utility.h + Vector2.h + Vector3.h + extern/exprtk.h + equation_system/Equation.cpp + equation_system/Equation.h + equation_system/EquationParser.cpp + equation_system/EquationParser.h + equation_system/EquationSystem.cpp + equation_system/EquationSystem.h + equation_system/FwdEquation.h + equation_system/FwdOperator.h + equation_system/FwdVariable.h + equation_system/Operator.cpp + equation_system/Operator.h + equation_system/Variable.cpp + equation_system/Variable.h + ) diff --git a/src/core/mpi/CMakeLists.txt b/src/core/mpi/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..13cc3653bd41f03e1840abd09f71147eee3c57cd --- /dev/null +++ b/src/core/mpi/CMakeLists.txt @@ -0,0 +1,37 @@ +target_sources( core + PRIVATE + Broadcast.h + BufferDataTypeExtensions.h + BufferSizeTrait.h + BufferSystem.h + BufferSystem.impl.h + BufferSystemHelper.h + BufferSystemHelper.impl.h + CMakeLists.txt + Datatype.h + Environment.h + Gather.h + Gatherv.cpp + Gatherv.h + MPIHelper.cpp + MPIHelper.h + MPIIO.cpp + MPIIO.h + MPIManager.cpp + MPIManager.h + MPITextFile.cpp + MPITextFile.h + MPIWrapper.h + OpenMPBufferSystem.h + OpenMPBufferSystem.impl.h + RecvBuffer.h + Reduce.h + SendBuffer.h + SetReduction.h + Tokenizing.cpp + Tokenizing.h + all.h + growPolicies/ConstantGrowth.h + growPolicies/LinearGrowth.h + growPolicies/OptimalGrowth.h + ) diff --git a/src/core/timing/CMakeLists.txt b/src/core/timing/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..b949b2eeb07612321b6297a53c92fa39c33d0eab --- /dev/null +++ b/src/core/timing/CMakeLists.txt @@ -0,0 +1,19 @@ +target_sources( core + PRIVATE + CpuPolicy.h + ReduceType.h + RemainingTimeLogger.h + StaticPolicy.cpp + StaticPolicy.h + Time.cpp + Time.h + Timer.h + TimingJSON.h + TimingNode.cpp + TimingNode.h + TimingPool.cpp + TimingPool.h + TimingTree.cpp + TimingTree.h + WcPolicy.h + ) diff --git a/src/cuda/CMakeLists.txt b/src/cuda/CMakeLists.txt index 46b22c43a0056afc407c98341384e8d22b5147f8..bfefb9dcc680ac5506f2113108e7283efd8c579d 100644 --- a/src/cuda/CMakeLists.txt +++ b/src/cuda/CMakeLists.txt @@ -4,7 +4,43 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS blockforest core communication domain_decomposition executiontree field stencil lbm - BUILD_ONLY_IF_FOUND CUDA ) +add_library( cuda ) +target_link_libraries( cuda PUBLIC blockforest core communication domain_decomposition executiontree field stencil lbm ) +target_sources( cuda + PRIVATE + AlignedAllocation.h + AddGPUFieldToStorage.h + ErrorChecking.h + ExecutionTreeGPU.h + FieldCopy.h + GPUCopy.cpp + NVTX.h + FieldIndexingXYZ.h + FieldIndexing3D.h + AddGPUFieldToStorage.impl.h + GPUField.h + FieldAccessor3D.h + DeviceSelectMPI.h + HostFieldAllocator.h + FieldAccessor.h + FieldIndexing3D.impl.h + GPUCopy.h + FieldAccessorXYZ.h + FieldIndexingXYZ.impl.h + ExecutionTreeSweepGPU.h + FieldIndexing.h + AlignedAllocation.cpp + GPUField.impl.h + ParallelStreams.cpp + FieldIndexing.impl.h + Kernel.h + ParallelStreams.h + CudaRAII.h + DeviceSelectMPI.cpp + ) + +add_subdirectory( sweeps ) +add_subdirectory( communication ) +add_subdirectory( lbm ) ################################################################################################### \ No newline at end of file diff --git a/src/cuda/communication/CMakeLists.txt b/src/cuda/communication/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..b1fe9c3492eb1e60040469cb1ada41559c1121dd --- /dev/null +++ b/src/cuda/communication/CMakeLists.txt @@ -0,0 +1,11 @@ +target_sources( cuda + PRIVATE + MemcpyPackInfo.h + UniformGPUScheme.impl.h + MemcpyPackInfo.impl.h + CustomMemoryBuffer.impl.h + GPUPackInfo.h + CustomMemoryBuffer.h + UniformGPUScheme.h + GeneratedGPUPackInfo.h + ) diff --git a/src/cuda/lbm/CMakeLists.txt b/src/cuda/lbm/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..a2db712aa018fd306019a4c43bf177f536f0c2f9 --- /dev/null +++ b/src/cuda/lbm/CMakeLists.txt @@ -0,0 +1,4 @@ +target_sources( cuda + PRIVATE + CombinedInPlaceGpuPackInfo.h + ) diff --git a/src/cuda/sweeps/CMakeLists.txt b/src/cuda/sweeps/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..188a4cbae837e9e649f21c242f7a33e4fdbcc7ff --- /dev/null +++ b/src/cuda/sweeps/CMakeLists.txt @@ -0,0 +1,4 @@ +target_sources( cuda + PRIVATE + GPUSweepBase.h + ) diff --git a/src/domain_decomposition/CMakeLists.txt b/src/domain_decomposition/CMakeLists.txt index dec43724f08b3414997af93b22e4ebe819191ae9..548c73ed4cb91812237f6c284ef0b0d1c665f82b 100644 --- a/src/domain_decomposition/CMakeLists.txt +++ b/src/domain_decomposition/CMakeLists.txt @@ -4,6 +4,31 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS core ) - +add_library( domain_decomposition ) +target_link_libraries( domain_decomposition PUBLIC core ) +target_sources( domain_decomposition + PRIVATE + BlockCounter.h + BlockDataHandling.h + BlockDataID.h + BlockStorage.h + BlockSweepWrapper.h + IBlock.h + IBlockID.h + MakeBlockDataInitFunction.h + MapPointToPeriodicDomain.h + PeriodicIntersect.h + PeriodicIntersectionVolume.h + SharedSweep.h + StructuredBlockStorageCellMapping.h + StructuredBlockStorage.h + BlockDataHandling.cpp + BlockStorage.cpp + IBlock.cpp + MapPointToPeriodicDomain.cpp + PeriodicIntersect.cpp + PeriodicIntersectionVolume.cpp + StructuredBlockStorage.cpp + ) + ################################################################################################### \ No newline at end of file diff --git a/src/executiontree/CMakeLists.txt b/src/executiontree/CMakeLists.txt index 46737d9f904318c4ca91dfbbb5b894a195103483..8d7e31419ac497911a7a3ef462e7710b0b64eac1 100644 --- a/src/executiontree/CMakeLists.txt +++ b/src/executiontree/CMakeLists.txt @@ -4,6 +4,14 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS core domain_decomposition timeloop ) +add_library( executiontree ) +target_link_libraries( executiontree PUBLIC core domain_decomposition timeloop ) +target_sources( executiontree + PRIVATE + ExecutionTreeSweep.h + ExecutionTree.cpp + ExecutionTree.h + ExecutionTree.impl.h + ) ################################################################################################### \ No newline at end of file diff --git a/src/fft/CMakeLists.txt b/src/fft/CMakeLists.txt index ccd909ca9a5c9c37aaf6476215e30170fe311989..641010004b73855fd0fd4d2d47e247cef22afcb3 100644 --- a/src/fft/CMakeLists.txt +++ b/src/fft/CMakeLists.txt @@ -4,6 +4,12 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS core blockforest field BUILD_ONLY_IF_FOUND ${FFT_REQUIRED_LIBRARIES} ) +add_library( fft ) +target_link_libraries( fft PUBLIC core blockforest field ) +target_sources( fft + PRIVATE + Fft.h + Fft.cpp + ) ################################################################################################### diff --git a/src/field/CMakeLists.txt b/src/field/CMakeLists.txt index 5653ec542776e1cf98d66797015c270af39089ee..6ef0a5835f537082069fad394787375e2cad1e0f 100644 --- a/src/field/CMakeLists.txt +++ b/src/field/CMakeLists.txt @@ -11,6 +11,45 @@ mark_as_advanced( WALBERLA_THREAD_SAFE_FIELD_ALLOCATION ) configure_file ( CMakeDefs.in.h CMakeDefs.h ) -waLBerla_add_module( DEPENDS blockforest core communication domain_decomposition python_coupling stencil vtk ) +add_library( field ) +target_link_libraries( field PUBLIC blockforest core communication domain_decomposition stencil vtk ) +target_sources( field + PRIVATE + SwapableCompare.h + AccuracyEvaluation.h + FlagFunctions.h + AccuracyEvaluationLinePlot.h + VolumetricFlowRateEvaluation.h + GhostLayerField.h + GhostRegions.h + AddToStorage.h + EvaluationFilter.h + FlagField.h + Gather.h + Layout.h + SymmetryCheck.h + FileIO.impl.h + Field.impl.h + Field.h + FileIO.h + FlagField.impl.h + CMakeDefs.in.h + CellCounter.h + Printers.impl.h + MassEvaluation.h + GhostLayerField.impl.h + Printers.h + FieldClone.h + StabilityChecker.h + FlagUID.h + ) - \ No newline at end of file +add_subdirectory( adaptors ) +add_subdirectory( allocation ) +add_subdirectory( blockforest ) +add_subdirectory( communication ) +add_subdirectory( distributors ) +add_subdirectory( interpolators ) +add_subdirectory( iterators ) +add_subdirectory( refinement ) +add_subdirectory( vtk ) \ No newline at end of file diff --git a/src/field/adaptors/CMakeLists.txt b/src/field/adaptors/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..b139d0e1499bb28eb692ceebdbdfec7b744d2694 --- /dev/null +++ b/src/field/adaptors/CMakeLists.txt @@ -0,0 +1,8 @@ +target_sources( field + PRIVATE + VectorFieldAccessor.h + GhostLayerFieldAdaptor.h + AdaptorIterator.h + AdaptorCreators.h + ComponentExtractionAdaptor.h + ) diff --git a/src/field/allocation/CMakeLists.txt b/src/field/allocation/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..d257a62cc39dffadc96ab91e5679db7f85bf2a2b --- /dev/null +++ b/src/field/allocation/CMakeLists.txt @@ -0,0 +1,6 @@ +target_sources( field + PRIVATE + AlignedMalloc.cpp + AlignedMalloc.h + FieldAllocator.h + ) diff --git a/src/field/blockforest/CMakeLists.txt b/src/field/blockforest/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..cb64f75c12f7eaca6bbc829a49cac051a5b64524 --- /dev/null +++ b/src/field/blockforest/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( field + PRIVATE + GradientRefinement.h + BlockDataHandling.h + ) diff --git a/src/field/communication/CMakeLists.txt b/src/field/communication/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..005bda8d2ee0af014085cf1e5fa6be6cb19a0fb7 --- /dev/null +++ b/src/field/communication/CMakeLists.txt @@ -0,0 +1,11 @@ +target_sources( field + PRIVATE + MPIDatatypes.impl.h + StencilRestrictedMPIDatatypeInfo.h + StencilRestrictedPackInfo.h + PackInfo.h + ReducePackInfo.h + UniformPullReductionPackInfo.h + UniformMPIDatatypeInfo.h + MPIDatatypes.h + ) diff --git a/src/field/distributors/CMakeLists.txt b/src/field/distributors/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..b74a8d3f2241f124ea3459d103e95a993f5e41ab --- /dev/null +++ b/src/field/distributors/CMakeLists.txt @@ -0,0 +1,6 @@ +target_sources( field + PRIVATE + NearestNeighborDistributor.h + KernelDistributor.h + DistributorCreators.h + ) diff --git a/src/field/doc/CMakeLists.txt b/src/field/doc/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..4f2d83c38de36e27908e50b8d41b8accc46b41fc --- /dev/null +++ b/src/field/doc/CMakeLists.txt @@ -0,0 +1,4 @@ +target_sources( field + PRIVATE + + ) diff --git a/src/field/interpolators/CMakeLists.txt b/src/field/interpolators/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..2e78a0e25d55446a19ac538dca647e73812a0a7e --- /dev/null +++ b/src/field/interpolators/CMakeLists.txt @@ -0,0 +1,10 @@ +target_sources( field + PRIVATE + NearestNeighborFieldInterpolator.h + TrilinearInterpolator.h + TrilinearInterpolatorFwd.h + NearestNeighborInterpolator.h + TrilinearFieldInterpolator.h + KernelFieldInterpolator.h + FieldInterpolatorCreators.h + ) diff --git a/src/field/iterators/CMakeLists.txt b/src/field/iterators/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..696f02855b086eade14b9356439447b66017b368 --- /dev/null +++ b/src/field/iterators/CMakeLists.txt @@ -0,0 +1,8 @@ +target_sources( field + PRIVATE + FieldIterator.h + IteratorMacros.h + FieldNeighborPointer.h + FieldPointer.h + FieldIterator.impl.h + ) diff --git a/src/field/refinement/CMakeLists.txt b/src/field/refinement/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..b88cbdabe00ad506c7da1c76ebc1691bff42429b --- /dev/null +++ b/src/field/refinement/CMakeLists.txt @@ -0,0 +1,4 @@ +target_sources( field + PRIVATE + PackInfo.h + ) diff --git a/src/field/vtk/CMakeLists.txt b/src/field/vtk/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..8fbb8e8038676fe071f59c838f08d428d209b68e --- /dev/null +++ b/src/field/vtk/CMakeLists.txt @@ -0,0 +1,6 @@ +target_sources( field + PRIVATE + FlagFieldCellFilter.h + FlagFieldMapping.h + VTKWriter.h + ) diff --git a/src/gather/CMakeLists.txt b/src/gather/CMakeLists.txt index 0519c21df8652aec8d4d7c7c21cb2da4aee3e371..19cdf86abbd3edf1cffe005f95a5a11aa9465b04 100644 --- a/src/gather/CMakeLists.txt +++ b/src/gather/CMakeLists.txt @@ -4,8 +4,21 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS core - domain_decomposition - field ) - +add_library( gather ) +target_link_libraries( gather PUBLIC core domain_decomposition field ) +target_sources( gather + PRIVATE + CellGatherPackInfo.h + FileGatherScheme.cpp + GnuPlotGraphWriter.h + CurveGatherPackInfo.h + CurveGatherPackInfo.impl.h + FileGatherScheme.h + MPIGatherScheme.h + CommonSchemeFunctions.h + DataProcessor.h + GatherPackInfo.h + MPIGatherScheme.cpp + CellGatherPackInfo.impl.h + ) ################################################################################################### diff --git a/src/geometry/CMakeLists.txt b/src/geometry/CMakeLists.txt index c9fd5112a90ed928d8b755fe1909f1fd3fa92793..43972ee5fdd81a71939328bd69bfe7b5e9a08686 100644 --- a/src/geometry/CMakeLists.txt +++ b/src/geometry/CMakeLists.txt @@ -4,12 +4,18 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS core - domain_decomposition - boundary - field - python_coupling - stencil ) -target_link_libraries(geometry PRIVATE lodepng) +add_library( geometry ) +target_sources( geometry + PRIVATE + GeometricalFunctions.h + InitBoundaryHandling.h + GeometricalFunctions.cpp + ) +target_link_libraries(geometry PUBLIC core domain_decomposition boundary field stencil PRIVATE lodepng) +add_subdirectory( bodies ) +add_subdirectory( containment_octree ) +add_subdirectory( initializer ) +add_subdirectory( mesh ) +add_subdirectory( structured ) ################################################################################################### diff --git a/src/geometry/bodies/CMakeLists.txt b/src/geometry/bodies/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..9a1194d4327a09c61cb9ad57be409ba12e4b9f82 --- /dev/null +++ b/src/geometry/bodies/CMakeLists.txt @@ -0,0 +1,18 @@ +target_sources( geometry + PRIVATE + Torus.h + BodyFromConfig.h + BodyFromConfig.cpp + Ellipsoid.h + Sphere.h + Cylinder.cpp + BodyLogic.h + Ellipsoid.cpp + AABBBody.h + Cylinder.h + Torus.cpp + BodyOverlapFunctions.h + Sphere.cpp + BodyOverlapFunctions.impl.h + DynamicBody.h + ) diff --git a/src/geometry/containment_octree/CMakeLists.txt b/src/geometry/containment_octree/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..5601695723e17a3542f2444d55db92238aa6c94c --- /dev/null +++ b/src/geometry/containment_octree/CMakeLists.txt @@ -0,0 +1,10 @@ +target_sources( geometry + PRIVATE + InsideLeafNode.h + OutsideLeafNode.h + IndeterminateLeafNode.h + BranchNode.h + ContainmentOctree.h + LeafNode.h + Node.h + ) diff --git a/src/geometry/initializer/CMakeLists.txt b/src/geometry/initializer/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..a6af8b35115c8e6dfed8e291a80e6fc0fe96f67a --- /dev/null +++ b/src/geometry/initializer/CMakeLists.txt @@ -0,0 +1,27 @@ +target_sources( geometry + PRIVATE + BoundaryFromCellInterval.h + BoundaryFromBody.impl.h + BoundaryFromVoxelFile.cpp + BoundaryFromVoxelFile.impl.h + BoundaryFromBody.h + ScalarFieldFromBody.h + BoundaryFromVoxelFile.h + ScalarFieldFromBody.impl.h + ScalarFieldFromGrayScaleImage.h + ScalarFieldFromGrayScaleImage.cpp + ScalarFieldFromCellInterval.h + BoundaryFromImage.h + InitializationManager.h + BoundaryFromDomainBorder.impl.h + BoundaryFromDomainBorder.h + BoundaryFromImage.impl.h + Initializer.h + OverlapFieldFromBody.h + BoundarySetter.h + ScalarFieldFromCellInterval.impl.h + BoundaryFromCellInterval.impl.h + BoundarySetterFlagFieldSpecialization.h + InitializationManager.cpp + OverlapFieldFromBody.cpp + ) diff --git a/src/geometry/mesh/CMakeLists.txt b/src/geometry/mesh/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..4979f5fac2c693fa56b791951c9a8501f3df6433 --- /dev/null +++ b/src/geometry/mesh/CMakeLists.txt @@ -0,0 +1,8 @@ +target_sources( geometry + PRIVATE + TriangleMeshComm.h + TriangleMeshIO.h + TriangleMesh.cpp + TriangleMesh.h + TriangleMeshIO.cpp + ) diff --git a/src/geometry/structured/CMakeLists.txt b/src/geometry/structured/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..0b2c842aab082ad24a356cced9149c77798cc344 --- /dev/null +++ b/src/geometry/structured/CMakeLists.txt @@ -0,0 +1,13 @@ +target_sources( geometry + PRIVATE + RGBAImage.h + RGBAImage.cpp + BasicVoxelFileReader.impl.h + GrayScaleImage.h + GrayScaleImage.cpp + BasicVoxelFileReader.h + BinaryRawFile.h + VoxelFileReader.impl.h + VoxelFileReader.h + BinaryRawFile.cpp + ) diff --git a/src/gui/BlockSliceView/CMakeLists.txt b/src/gui/BlockSliceView/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..db4cf97e443c2dfdb525f0323a3f695c08bbd69e --- /dev/null +++ b/src/gui/BlockSliceView/CMakeLists.txt @@ -0,0 +1,20 @@ +target_sources( gui + PRIVATE + FieldDisplayAdaptor.h + CellView.h + ScalarField3DisplayAdaptor.h + BlockSliceView.h + DisplayPropertiesItem.h + ScalarFieldDisplayAdaptor.impl.h + VectorFieldDisplayAdaptor.impl.h + ScalarField3DisplayAdaptor.impl.h + ISliceChangeListener.h + ScalarFieldDisplayAdaptor.h + FlagFieldDisplayAdaptor.impl.h + BlockSliceView.cpp + FlagFieldDisplayAdaptor.h + DisplayAdaptor.h + CellView.cpp + VectorFieldDisplayAdaptor.h + DisplayPropertiesItem.cpp + ) diff --git a/src/gui/BlockView3D/CMakeLists.txt b/src/gui/BlockView3D/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..6806b213412d2d4586134d0d0b3c6ed67f556a5a --- /dev/null +++ b/src/gui/BlockView3D/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( gui + PRIVATE + BlockDisplayObject.h + BlockDisplayObject.cpp + BlockView3D.h + BlockView3D.cpp + ) diff --git a/src/gui/BlockViewText/CMakeLists.txt b/src/gui/BlockViewText/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..5625b3c5307ab8fcbcd106a2106fdcd9233529ff --- /dev/null +++ b/src/gui/BlockViewText/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( gui + PRIVATE + BlockViewText.h + BlockViewText.cpp + ) diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt index 88a49629e903f07ad24d3af933ead85b721b380d..35765ef1b6d5b927cbea550671d016c03243f330 100644 --- a/src/gui/CMakeLists.txt +++ b/src/gui/CMakeLists.txt @@ -19,10 +19,6 @@ #---------------------------------------------------------------------------------- - -SET ( GUI_REQUIRED_MODULES core domain_decomposition blockforest field timeloop stencil ) - - # Sources from the gui base directory are always added, the parts including Qt Libs # are marked with ifdefs file( GLOB gui_SOURCES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.cpp ) @@ -90,6 +86,22 @@ if( WALBERLA_ENABLE_GUI ) endif(WALBERLA_ENABLE_GUI) -waLBerla_add_module ( DEPENDS ${GUI_REQUIRED_MODULES} FILES ${gui_SOURCES} ) - +add_library( gui ) +target_link_libraries( gui PUBLIC core domain_decomposition blockforest field timeloop stencil ) +target_sources( gui + PRIVATE + PropertyTree.h + PropertyTree.impl.h + PropertyTree.cpp + Gui.h + CMakeDefs.in.h + Gui.cpp + ) +#TODO: this needs some additional refactoring. Does not resamble the mechanism from above! +if( WALBERLA_ENABLE_GUI ) + add_subdirectory( MainWindow ) + add_subdirectory( BlockViewText ) + add_subdirectory( BlockView3D ) + add_subdirectory( BlockSliceView ) +endif() diff --git a/src/gui/MainWindow/CMakeLists.txt b/src/gui/MainWindow/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..738fda509bde9c6e06b0fce6eafbf18fd96d5e07 --- /dev/null +++ b/src/gui/MainWindow/CMakeLists.txt @@ -0,0 +1,9 @@ +target_sources( gui + PRIVATE + GuiUtil.h + BlockTreeView.cpp + BlockTreeView.h + MainWindow.h + MainWindow.cpp + GuiUtil.cpp + ) diff --git a/src/gui/extern/Qt3D/api/CMakeLists.txt b/src/gui/extern/Qt3D/api/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..a73e66e354560f433471853830d06d55c3f6f13e --- /dev/null +++ b/src/gui/extern/Qt3D/api/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( gui + PRIVATE + qopenglfunctions.h + qopenglfunctions.cpp + ) diff --git a/src/gui/extern/Qt3D/arrays/CMakeLists.txt b/src/gui/extern/Qt3D/arrays/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..c033759d8b50f4a764e47f5991eab486312a32c3 --- /dev/null +++ b/src/gui/extern/Qt3D/arrays/CMakeLists.txt @@ -0,0 +1,26 @@ +target_sources( gui + PRIVATE + qglvertexbundle.h + qglattributedescription.cpp + qcustomdataarray.h + qcolor4ub.cpp + qglattributeset.cpp + qglattributevalue.h + qglattributevalue.cpp + qarray.cpp + qvector4darray.h + qglattributeset.h + qvector3darray.h + qarray.h + qglindexbuffer.cpp + qglattributedescription.h + qglvertexbundle_p.h + qglvertexbundle.cpp + qglindexbuffer.h + qvector4darray.cpp + qcolor4ub.h + qvector2darray.h + qcustomdataarray.cpp + qvector2darray.cpp + qvector3darray.cpp + ) diff --git a/src/gui/extern/Qt3D/effects/CMakeLists.txt b/src/gui/extern/Qt3D/effects/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..988ac2c2cf4a667050147a6de32f8e8cfe9caa7e --- /dev/null +++ b/src/gui/extern/Qt3D/effects/CMakeLists.txt @@ -0,0 +1,20 @@ +target_sources( gui + PRIVATE + qglcolladafxeffectloader.h + qglshaderprogrameffect.h + qgllittextureeffect.cpp + qglflatcoloreffect.cpp + qgllittextureeffect_p.h + qglflattextureeffect.cpp + qglcolladafxeffectloader.cpp + qgllitmaterialeffect_p.h + qgllitmaterialeffect.cpp + qglcolladafxeffect_p.h + qglflatcoloreffect_p.h + qglcolladafxeffect.h + qglcolladafxeffectfactory.h + qglcolladafxeffectfactory.cpp + qglshaderprogrameffect.cpp + qglflattextureeffect_p.h + qglcolladafxeffect.cpp + ) diff --git a/src/gui/extern/Qt3D/geometry/CMakeLists.txt b/src/gui/extern/Qt3D/geometry/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..e136f7f213482d4dff30973400c81647cdde5b3b --- /dev/null +++ b/src/gui/extern/Qt3D/geometry/CMakeLists.txt @@ -0,0 +1,28 @@ +target_sources( gui + PRIVATE + qlogicalvertex.h + qglcube.h + qglsphere.cpp + qglmaterialcollection.cpp + qglteapot_data_p.h + qglsection.cpp + qglbuilder_p.h + qgeometrydata.h + qglcylinder.cpp + qglmaterialcollection.h + qglteapot.h + qlogicalvertex.cpp + qgldome.cpp + qvector_utils_p.h + qgeometrydata.cpp + qglcube.cpp + qglbezierpatches.h + qglbezierpatches.cpp + qglsection_p.h + qglteapot.cpp + qglbuilder.cpp + qglcylinder.h + qglbuilder.h + qglsphere.h + qgldome.h + ) diff --git a/src/gui/extern/Qt3D/global/CMakeLists.txt b/src/gui/extern/Qt3D/global/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..306a98397e299f921c07ac785c3311c41664d3f5 --- /dev/null +++ b/src/gui/extern/Qt3D/global/CMakeLists.txt @@ -0,0 +1,6 @@ +target_sources( gui + PRIVATE + qglnamespace.cpp + qglnamespace.h + qt3dglobal.h + ) diff --git a/src/gui/extern/Qt3D/graphicsview/CMakeLists.txt b/src/gui/extern/Qt3D/graphicsview/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..8841b70916198c0f786757a97bfd49397c0ad9cb --- /dev/null +++ b/src/gui/extern/Qt3D/graphicsview/CMakeLists.txt @@ -0,0 +1,17 @@ +target_sources( gui + PRIVATE + qglgraphicsviewportitem.h + qgraphicsrotation3d.cpp + qgraphicstranslation3d.cpp + qgraphicstranslation3d.h + qgraphicsbillboardtransform.h + qgraphicsembedscene.h + qgraphicsscale3d.cpp + qgraphicsrotation3d.h + qglgraphicsviewportitem.cpp + qgraphicsscale3d.h + qgraphicstransform3d.cpp + qgraphicsembedscene.cpp + qgraphicstransform3d.h + qgraphicsbillboardtransform.cpp + ) diff --git a/src/gui/extern/Qt3D/materials/CMakeLists.txt b/src/gui/extern/Qt3D/materials/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..769f0e6a4ff7902b2eeddb8b0a0bb033b2de13bc --- /dev/null +++ b/src/gui/extern/Qt3D/materials/CMakeLists.txt @@ -0,0 +1,12 @@ +target_sources( gui + PRIVATE + qglabstractmaterial.h + qgltwosidedmaterial.cpp + qglcolormaterial.h + qglcolormaterial.cpp + qgltwosidedmaterial.h + qglmaterial.h + qglabstractmaterial.cpp + qglmaterial_p.h + qglmaterial.cpp + ) diff --git a/src/gui/extern/Qt3D/math3d/CMakeLists.txt b/src/gui/extern/Qt3D/math3d/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..c64b2a31bb0fd4f873210cc94cb85fb30e9a597f --- /dev/null +++ b/src/gui/extern/Qt3D/math3d/CMakeLists.txt @@ -0,0 +1,13 @@ +target_sources( gui + PRIVATE + qtriangle3d.cpp + qplane3d.h + qtriangle3d.h + qray3d.h + qbox3d.cpp + qbox3d.h + qsphere3d.h + qray3d.cpp + qplane3d.cpp + qsphere3d.cpp + ) diff --git a/src/gui/extern/Qt3D/painting/CMakeLists.txt b/src/gui/extern/Qt3D/painting/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..187d98cfd53a01c9861da59fb1c0ecbbf5d3daec --- /dev/null +++ b/src/gui/extern/Qt3D/painting/CMakeLists.txt @@ -0,0 +1,20 @@ +target_sources( gui + PRIVATE + qmatrix4x4stack.h + qglabstracteffect.h + qgllightmodel.cpp + qmatrix4x4stack.cpp + qglpainter_p.h + qmatrix4x4stack_p.h + qglpickcolors.cpp + qglabstracteffect.cpp + qgllightmodel.h + qglabstracteffect_p.h + qglpickcolors_p.h + qglext_p.h + qgllightparameters.cpp + qgllightparameters.h + qglpainter.h + qglext.cpp + qglpainter.cpp + ) diff --git a/src/gui/extern/Qt3D/private/CMakeLists.txt b/src/gui/extern/Qt3D/private/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..3e23d33204d63168f85a4e5c2ec140aa86abc69e --- /dev/null +++ b/src/gui/extern/Qt3D/private/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( gui + PRIVATE + qglextensions_p.h + qfactoryloader_p.h + ) diff --git a/src/gui/extern/Qt3D/scene/CMakeLists.txt b/src/gui/extern/Qt3D/scene/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..a71295da55c99fcfb82074f6fabbce2d82eb3bf6 --- /dev/null +++ b/src/gui/extern/Qt3D/scene/CMakeLists.txt @@ -0,0 +1,20 @@ +target_sources( gui + PRIVATE + qglscenenode_p.h + qglsceneformatplugin.h + qglscenenode.cpp + qglrendersequencer.cpp + qglabstractscene.h + qglrenderordercomparator.h + qglscenenode.h + qglsceneformatplugin.cpp + qglrenderordercomparator.cpp + qglrenderorder.h + qglrendersequencer.h + qglpicknode.h + qglpicknode.cpp + qglabstractscene.cpp + qglrenderstate.h + qglrenderstate.cpp + qglrenderorder.cpp + ) diff --git a/src/gui/extern/Qt3D/surfaces/CMakeLists.txt b/src/gui/extern/Qt3D/surfaces/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..7ca057784fc6c0cef3184d0397fe25e7b3cbf257 --- /dev/null +++ b/src/gui/extern/Qt3D/surfaces/CMakeLists.txt @@ -0,0 +1,21 @@ +target_sources( gui + PRIVATE + qgldrawbuffersurface.cpp + qglabstractsurface.h + qglpaintersurface.cpp + qglwidgetsurface.h + qglpaintersurface_p.h + qglsubsurface.h + qglframebufferobjectsurface.cpp + qglmaskedsurface.cpp + qglwidgetsurface.cpp + qglpixelbuffersurface.cpp + qglsubsurface.cpp + qglframebufferobjectsurface.h + qglcontextsurface.cpp + qglcontextsurface_p.h + qglmaskedsurface_p.h + qglabstractsurface.cpp + qgldrawbuffersurface_p.h + qglpixelbuffersurface.h + ) diff --git a/src/gui/extern/Qt3D/textures/CMakeLists.txt b/src/gui/extern/Qt3D/textures/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..30977fdce7324f8dd02f157dc7e41fb4c51d8471 --- /dev/null +++ b/src/gui/extern/Qt3D/textures/CMakeLists.txt @@ -0,0 +1,14 @@ +target_sources( gui + PRIVATE + qareaallocator.cpp + qgltexture2d.h + qareaallocator.h + qgltexturecube.cpp + qgltexturecube.h + qgltextureutils_p.h + qgltexture2d_p.h + qgltextureutils.cpp + qgltexture2d.cpp + qglsharedresource.cpp + qglsharedresource_p.h + ) diff --git a/src/gui/extern/Qt3D/viewing/CMakeLists.txt b/src/gui/extern/Qt3D/viewing/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..b7f97f9f02d9445aacb4ec5ff91fe18d6ede20e1 --- /dev/null +++ b/src/gui/extern/Qt3D/viewing/CMakeLists.txt @@ -0,0 +1,9 @@ +target_sources( gui + PRIVATE + qglcameraanimation.h + qglcameraanimation.cpp + qglview.cpp + qglcamera.cpp + qglcamera.h + qglview.h + ) diff --git a/src/gui/extern/QtGradientEditor/CMakeLists.txt b/src/gui/extern/QtGradientEditor/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..b42e203c43078383ae97f88bb8f6612336454039 --- /dev/null +++ b/src/gui/extern/QtGradientEditor/CMakeLists.txt @@ -0,0 +1,27 @@ +target_sources( gui + PRIVATE + qtcolorbutton.h + qtcolorline.h + qtcolorline.cpp + qtgradientviewdialog.cpp + qtgradientstopsmodel.cpp + qtgradientutils.cpp + qtgradientview.cpp + qtgradientmanager.h + qtgradientviewdialog.h + qtgradientwidget.cpp + qtgradientstopscontroller.h + qtgradientdialog.cpp + qtgradientstopswidget.h + qtcolorbutton.cpp + qtgradientstopswidget.cpp + qtgradientstopsmodel.h + qtgradientmanager.cpp + qtgradientview.h + qtgradientstopscontroller.cpp + qtgradienteditor.cpp + qtgradientdialog.h + qtgradientwidget.h + qtgradienteditor.h + qtgradientutils.h + ) diff --git a/src/lbm/CMakeLists.txt b/src/lbm/CMakeLists.txt index afc14c730327734463d60700d66c7434156d3b14..511aafa84a04ca44385c22acba0cd02891640cc3 100644 --- a/src/lbm/CMakeLists.txt +++ b/src/lbm/CMakeLists.txt @@ -4,19 +4,47 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS blockforest - boundary - communication - core - domain_decomposition - field - geometry - python_coupling - gui - stencil - timeloop - vtk ) - +add_library( lbm ) +target_link_libraries( lbm + PUBLIC + blockforest + boundary + communication + core + domain_decomposition + field + geometry + gui + stencil + timeloop + vtk + ) +target_sources( lbm + PRIVATE + PerformanceEvaluation.h + BlockForestEvaluation.h + IntelCompilerOptimization.h + PerformanceLogger.h + MassEvaluation.h + ) + +add_subdirectory( vtk ) +add_subdirectory( blockforest ) +add_subdirectory( sweeps ) +add_subdirectory( communication ) +add_subdirectory( field ) +add_subdirectory( refinement ) +add_subdirectory( gui ) +add_subdirectory( boundary ) +add_subdirectory( mrt ) +add_subdirectory( evaluations ) +add_subdirectory( srt ) +add_subdirectory( geometry ) +add_subdirectory( trt ) +add_subdirectory( cumulant ) +add_subdirectory( lattice_model ) +add_subdirectory( inplace_streaming ) + ################################################################################################### \ No newline at end of file diff --git a/src/lbm/blockforest/CMakeLists.txt b/src/lbm/blockforest/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..2fa5d1378bce5fb4bc57f09a0f66426528094ae6 --- /dev/null +++ b/src/lbm/blockforest/CMakeLists.txt @@ -0,0 +1,4 @@ +target_sources( lbm + PRIVATE + PostProcessing.h + ) diff --git a/src/lbm/boundary/CMakeLists.txt b/src/lbm/boundary/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..9916174cf0736872d3339e0382c783f4325fb9a6 --- /dev/null +++ b/src/lbm/boundary/CMakeLists.txt @@ -0,0 +1,20 @@ +target_sources( lbm + PRIVATE + SimplePressure.h + SimpleUBB.h + FreeSlip.h + SimplePAB.h + ParserUBB.h + DynamicUBB.h + Pressure.h + DiffusionDirichlet.h + Outlet.h + NoDiffusion.h + SimpleVelocityBoundary.h + FreeDiffusion.h + SimpleDiffusionDirichlet.h + Curved.h + NoSlip.h + VelocityBoundary.h + UBB.h + ) diff --git a/src/lbm/boundary/factories/CMakeLists.txt b/src/lbm/boundary/factories/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..f15a18fd203ea20c8736cf5566ee29616c710597 --- /dev/null +++ b/src/lbm/boundary/factories/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( lbm + PRIVATE + DefaultDiffusionBoundaryHandling.h + DefaultBoundaryHandling.h + DefaultBoundaryHandlingCollection.h + ExtendedBoundaryHandlingFactory.h + ) diff --git a/src/lbm/communication/CMakeLists.txt b/src/lbm/communication/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..daac664f2d929c8a106f83b9cb85c1608e425976 --- /dev/null +++ b/src/lbm/communication/CMakeLists.txt @@ -0,0 +1,6 @@ +target_sources( lbm + PRIVATE + PdfFieldMPIDatatypeInfo.h + SparsePdfFieldPackInfo.h + PdfFieldPackInfo.h + ) diff --git a/src/lbm/cumulant/CMakeLists.txt b/src/lbm/cumulant/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..f04767f95fc231cc4431cd7fb34a5a67a58e5f01 --- /dev/null +++ b/src/lbm/cumulant/CMakeLists.txt @@ -0,0 +1,4 @@ +target_sources( lbm + PRIVATE + CellwiseSweep.impl.h + ) diff --git a/src/lbm/evaluations/CMakeLists.txt b/src/lbm/evaluations/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..1e014fb72a9cfa5777058f80d9c65c530ff851c5 --- /dev/null +++ b/src/lbm/evaluations/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( lbm + PRIVATE + Permeability.impl.h + Permeability.h + ) diff --git a/src/lbm/field/CMakeLists.txt b/src/lbm/field/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..706196f4da0787792c1740faf98b71a0ae6890f1 --- /dev/null +++ b/src/lbm/field/CMakeLists.txt @@ -0,0 +1,20 @@ +target_sources( lbm + PRIVATE + MomentumDensity.h + MacroscopicValueCalculation.h + Equilibrium.h + DensityAndVelocity.h + QCriterion.h + DensityVelocityCallback.h + AddToStorage.h + QCriterionFieldWriter.h + VelocityFieldWriter.h + ShearRate.h + PdfField.h + Density.h + Vorticity.h + DensityAndMomentumDensity.h + Adaptors.h + PressureTensor.h + ) +add_subdirectory( initializer ) \ No newline at end of file diff --git a/src/lbm/field/initializer/CMakeLists.txt b/src/lbm/field/initializer/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..4404f566cee2a51c6e1ba3718e853bafb39c75b5 --- /dev/null +++ b/src/lbm/field/initializer/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( lbm + PRIVATE + PdfFieldInitializer.h + ExprSystemInitFunction.h + PdfFieldInitializer.impl.h + ExprSystemInitFunction.cpp + ) diff --git a/src/lbm/geometry/CMakeLists.txt b/src/lbm/geometry/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..a5c3af8d693905798f29aea67480af7241db829f --- /dev/null +++ b/src/lbm/geometry/CMakeLists.txt @@ -0,0 +1,6 @@ +target_sources( lbm + PRIVATE + IntersectionRatio.h + IntersectionRatio.impl.h + IntersectionRatio.cpp + ) diff --git a/src/lbm/geometry/initializer/CMakeLists.txt b/src/lbm/geometry/initializer/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..4dcc7bc2fef01465b6117a518e4f042ce2edbd58 --- /dev/null +++ b/src/lbm/geometry/initializer/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( lbm + PRIVATE + PoiseuilleInitializer.impl.h + PoiseuilleInitializer.h + ) diff --git a/src/lbm/gui/CMakeLists.txt b/src/lbm/gui/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..5ab3c5179f6a0d90d90f51e2bf3249c6058965ba --- /dev/null +++ b/src/lbm/gui/CMakeLists.txt @@ -0,0 +1,6 @@ +target_sources( lbm + PRIVATE + Connection.h + PdfFieldDisplayAdaptor.impl.h + PdfFieldDisplayAdaptor.h + ) diff --git a/src/lbm/inplace_streaming/CMakeLists.txt b/src/lbm/inplace_streaming/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..6784a9a1a9b686897764debbd631c3b42a05bda5 --- /dev/null +++ b/src/lbm/inplace_streaming/CMakeLists.txt @@ -0,0 +1,4 @@ +target_sources( lbm + PRIVATE + TimestepTracker.h + ) diff --git a/src/lbm/lattice_model/CMakeLists.txt b/src/lbm/lattice_model/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..58f62308c907bc18b4c37887e0e8b76cf7771114 --- /dev/null +++ b/src/lbm/lattice_model/CMakeLists.txt @@ -0,0 +1,14 @@ +target_sources( lbm + PRIVATE + CollisionModel.cpp + D3Q27.h + CollisionModel.h + LatticeModelBase.h + ForceModel.h + D3Q19.h + EquilibriumDistribution.h + D3Q15.h + NeighborsStencil.h + D2Q9.h + SmagorinskyLES.h + ) diff --git a/src/lbm/mrt/CMakeLists.txt b/src/lbm/mrt/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..6dc8a16b5e40cb9d0a807441e945dbd67d83d54f --- /dev/null +++ b/src/lbm/mrt/CMakeLists.txt @@ -0,0 +1,6 @@ +target_sources( lbm + PRIVATE + SplitPureSweep.impl.h + SplitSweep.impl.h + CellwiseSweep.impl.h + ) diff --git a/src/lbm/mrt/cell_operations/CMakeLists.txt b/src/lbm/mrt/cell_operations/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..d5d533f233ef47fe79a2598bc77639217ea5d34d --- /dev/null +++ b/src/lbm/mrt/cell_operations/CMakeLists.txt @@ -0,0 +1,4 @@ +target_sources( lbm + PRIVATE + DefaultCellOperation.impl.h + ) diff --git a/src/lbm/refinement/CMakeLists.txt b/src/lbm/refinement/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..6aff346986b0ea8a5f7ebf41d34ec9c0b061c6a9 --- /dev/null +++ b/src/lbm/refinement/CMakeLists.txt @@ -0,0 +1,14 @@ +target_sources( lbm + PRIVATE + TimeTracker.h + TimeStep.h + LinearExplosion.h + CurlBasedLevelDetermination.h + EqualLevelBorderStreamCorrection.h + TimeStepPdfPackInfo.h + PdfFieldPackInfo.h + BoundarySetup.h + VorticityBasedLevelDetermination.h + RefinementFunctorWrapper.h + PdfFieldSyncPackInfo.h + ) diff --git a/src/lbm/srt/CMakeLists.txt b/src/lbm/srt/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..e95415ab92683e312685788fff35f42b6da4f408 --- /dev/null +++ b/src/lbm/srt/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( lbm + PRIVATE + AdvectionDiffusionSweep.impl.h + SplitPureSweep.impl.h + SplitSweep.impl.h + CellwiseSweep.impl.h + ) diff --git a/src/lbm/srt/cell_operations/CMakeLists.txt b/src/lbm/srt/cell_operations/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..6a8de6a5b6cc9a3d59c5d01dde73d71fbd030a42 --- /dev/null +++ b/src/lbm/srt/cell_operations/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( lbm + PRIVATE + AdvectionDiffusionCellOperation.impl.h + DefaultCellOperation.impl.h + ) diff --git a/src/lbm/sweeps/CMakeLists.txt b/src/lbm/sweeps/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..3cf1a982fb3b95a3f248842043988a318dfd69ba --- /dev/null +++ b/src/lbm/sweeps/CMakeLists.txt @@ -0,0 +1,12 @@ +target_sources( lbm + PRIVATE + FlagFieldSweepBase.h + SplitPureSweep.h + SweepBase.h + SweepWrappers.h + StreamPull.h + CellwiseSweep.h + ActiveCellSweep.h + Streaming.h + SplitSweep.h + ) diff --git a/src/lbm/sweeps/cell_operations/CMakeLists.txt b/src/lbm/sweeps/cell_operations/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..3875dd5abdb21ffb94f9c980b37748f5c73c1942 --- /dev/null +++ b/src/lbm/sweeps/cell_operations/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( lbm + PRIVATE + DefaultCellOperation.h + AdvectionDiffusionCellOperation.h + ) diff --git a/src/lbm/trt/CMakeLists.txt b/src/lbm/trt/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..6dc8a16b5e40cb9d0a807441e945dbd67d83d54f --- /dev/null +++ b/src/lbm/trt/CMakeLists.txt @@ -0,0 +1,6 @@ +target_sources( lbm + PRIVATE + SplitPureSweep.impl.h + SplitSweep.impl.h + CellwiseSweep.impl.h + ) diff --git a/src/lbm/trt/cell_operations/CMakeLists.txt b/src/lbm/trt/cell_operations/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..d5d533f233ef47fe79a2598bc77639217ea5d34d --- /dev/null +++ b/src/lbm/trt/cell_operations/CMakeLists.txt @@ -0,0 +1,4 @@ +target_sources( lbm + PRIVATE + DefaultCellOperation.impl.h + ) diff --git a/src/lbm/vtk/CMakeLists.txt b/src/lbm/vtk/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..ad2713023e1aac8f513e4be576c458294cc0c9aa --- /dev/null +++ b/src/lbm/vtk/CMakeLists.txt @@ -0,0 +1,13 @@ +target_sources( lbm + PRIVATE + QCriterion.h + NonEquilibrium.h + CurlMagnitude.h + Density.h + Velocity.h + Vorticity.h + VTKOutput.h + PressureTensor.h + QCriterionCellFilter.h + VelocityCellFilter.h + ) diff --git a/src/lbm_mesapd_coupling/CMakeLists.txt b/src/lbm_mesapd_coupling/CMakeLists.txt index 1f7af49cecad9842836ab3c0e31ee65219412ea1..76f78cca8d6e4ea1613ef908f083a55a423d187e 100644 --- a/src/lbm_mesapd_coupling/CMakeLists.txt +++ b/src/lbm_mesapd_coupling/CMakeLists.txt @@ -5,4 +5,14 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS boundary blockforest core domain_decomposition field lbm mesa_pd stencil ) +add_library( lbm_mesapd_coupling ) +target_link_libraries( lbm_mesapd_coupling PUBLIC boundary blockforest core domain_decomposition field lbm mesa_pd stencil ) +target_sources( lbm_mesapd_coupling + PRIVATE + DataTypes.h + ) + +add_subdirectory( amr ) +add_subdirectory( momentum_exchange_method ) +add_subdirectory( utility ) +add_subdirectory( mapping ) \ No newline at end of file diff --git a/src/lbm_mesapd_coupling/amr/CMakeLists.txt b/src/lbm_mesapd_coupling/amr/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..e88039b3e21e907176d8e5e2a61ce7d11631bd36 --- /dev/null +++ b/src/lbm_mesapd_coupling/amr/CMakeLists.txt @@ -0,0 +1,8 @@ +target_sources( lbm_mesapd_coupling + PRIVATE + BlockInfo.h + InfoCollection.h + ) + +add_subdirectory( level_determination ) +add_subdirectory( weight_assignment ) \ No newline at end of file diff --git a/src/lbm_mesapd_coupling/amr/level_determination/CMakeLists.txt b/src/lbm_mesapd_coupling/amr/level_determination/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..b6177fb27c2cb4b376c8642aed70019c8f8d84e8 --- /dev/null +++ b/src/lbm_mesapd_coupling/amr/level_determination/CMakeLists.txt @@ -0,0 +1,4 @@ +target_sources( lbm_mesapd_coupling + PRIVATE + ParticlePresenceLevelDetermination.h + ) diff --git a/src/lbm_mesapd_coupling/amr/weight_assignment/CMakeLists.txt b/src/lbm_mesapd_coupling/amr/weight_assignment/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..b13d50d4edf80d0ac939ba059dfd0d58be5e602b --- /dev/null +++ b/src/lbm_mesapd_coupling/amr/weight_assignment/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( lbm_mesapd_coupling + PRIVATE + WeightAssignmentFunctor.h + MetisAssignmentFunctor.cpp + MetisAssignmentFunctor.h + WeightEvaluationFunctions.h + ) diff --git a/src/lbm_mesapd_coupling/mapping/CMakeLists.txt b/src/lbm_mesapd_coupling/mapping/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..04f7fd66d1e8d180c1862fb30385cf4b757131a8 --- /dev/null +++ b/src/lbm_mesapd_coupling/mapping/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( lbm_mesapd_coupling + PRIVATE + ParticleMapping.h + ParticleBoundingBox.h + ) diff --git a/src/lbm_mesapd_coupling/momentum_exchange_method/CMakeLists.txt b/src/lbm_mesapd_coupling/momentum_exchange_method/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..e0c1a0bd3a1828cc74869951bede51cad674deaa --- /dev/null +++ b/src/lbm_mesapd_coupling/momentum_exchange_method/CMakeLists.txt @@ -0,0 +1,4 @@ +target_sources( lbm_mesapd_coupling + PRIVATE + MovingParticleMapping.h + ) diff --git a/src/lbm_mesapd_coupling/momentum_exchange_method/boundary/CMakeLists.txt b/src/lbm_mesapd_coupling/momentum_exchange_method/boundary/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..092fd13c0b5efa0b62a757786fb61a9a54fdb1c4 --- /dev/null +++ b/src/lbm_mesapd_coupling/momentum_exchange_method/boundary/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( lbm_mesapd_coupling + PRIVATE + CurvedLinear.h + SimpleBB.h + ) diff --git a/src/lbm_mesapd_coupling/momentum_exchange_method/reconstruction/CMakeLists.txt b/src/lbm_mesapd_coupling/momentum_exchange_method/reconstruction/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..a5b4e0b9b1da2b81d1b156042ac60d7e52965992 --- /dev/null +++ b/src/lbm_mesapd_coupling/momentum_exchange_method/reconstruction/CMakeLists.txt @@ -0,0 +1,6 @@ +target_sources( lbm_mesapd_coupling + PRIVATE + PdfReconstructionManager.h + ExtrapolationDirectionFinder.h + Reconstructor.h + ) diff --git a/src/lbm_mesapd_coupling/utility/CMakeLists.txt b/src/lbm_mesapd_coupling/utility/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..36f682d8efed81b54eae0fb662067e25786d26f4 --- /dev/null +++ b/src/lbm_mesapd_coupling/utility/CMakeLists.txt @@ -0,0 +1,16 @@ +target_sources( lbm_mesapd_coupling + PRIVATE + SubCyclingManager.h + AddHydrodynamicInteractionKernel.h + AddAccelerationOnParticlesKernel.h + SubCyclingManager.cpp + ParticleFunctions.h + ResetHydrodynamicForceTorqueKernel.h + ParticleSelector.h + LubricationCorrectionKernel.h + AddForceOnParticlesKernel.h + OmegaBulkAdaption.h + AverageHydrodynamicForceTorqueKernel.h + InspectionProbe.h + InitializeHydrodynamicForceTorqueForAveragingKernel.h + ) diff --git a/src/mesa_pd/CMakeLists.txt b/src/mesa_pd/CMakeLists.txt index 6fdb08da0a7bebc3c83fc71944fa74af7cdfc613..19eef8bf9d7e9858eb03113dba4c20c02782dda5 100644 --- a/src/mesa_pd/CMakeLists.txt +++ b/src/mesa_pd/CMakeLists.txt @@ -5,9 +5,19 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS blockforest core stencil vtk OPTIONAL_DEPENDS mesh_common ) +add_library( mesa_pd ) +target_link_libraries( mesa_pd PUBLIC blockforest core stencil vtk ) +add_subdirectory( collision_detection ) +add_subdirectory( common ) +add_subdirectory( data ) +add_subdirectory( domain ) +add_subdirectory( kernel ) +add_subdirectory( mpi ) +add_subdirectory( sorting ) +add_subdirectory( vtk ) if(OPENMESH_CORE_FOUND) set( WALBERLA_MESAPD_CONVEX_POLYHEDRON_AVAILABLE ON CACHE INTERNAL "") + target_link_libraries( mesa_pd PUBLIC mesh_common ) message( STATUS "MESA-PD: ConvexPolyhedron shape is available (OpenMesh dependency satisfied)" ) else() set( WALBERLA_MESAPD_CONVEX_POLYHEDRON_AVAILABLE OFF CACHE INTERNAL "") diff --git a/src/mesa_pd/collision_detection/CMakeLists.txt b/src/mesa_pd/collision_detection/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..0f971b71a5ef2a655002793a088db64b27222fa4 --- /dev/null +++ b/src/mesa_pd/collision_detection/CMakeLists.txt @@ -0,0 +1,12 @@ +target_sources( mesa_pd + PRIVATE + AnalyticCollisionFunctions.h + GJK.h + GJK.cpp + GeneralContactDetection.h + Support.h + EPA.h + BroadPhase.h + EPA.cpp + AnalyticContactDetection.h + ) diff --git a/src/mesa_pd/common/CMakeLists.txt b/src/mesa_pd/common/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..db4a239b7094716269975ab555944d851bc79d02 --- /dev/null +++ b/src/mesa_pd/common/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( mesa_pd + PRIVATE + RayParticleIntersection.h + Contains.h + ParticleFunctions.h + AABBConversion.h + ) diff --git a/src/mesa_pd/data/CMakeLists.txt b/src/mesa_pd/data/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..01e85915b46d1d0394421a5aac642ba7a4862125 --- /dev/null +++ b/src/mesa_pd/data/CMakeLists.txt @@ -0,0 +1,18 @@ +target_sources( mesa_pd + PRIVATE + ParticleStorage.h + IAccessor.h + LinkedCells.h + DataTypes.h + SparseLinkedCells.h + Flags.h + ContactHistory.h + ShapeStorage.h + STLOverloads.h + ParticleAccessorWithShape.h + ContactStorage.h + IContactAccessor.h + HashGrids.h + ParticleAccessor.h + ContactAccessor.h + ) diff --git a/src/mesa_pd/data/shape/CMakeLists.txt b/src/mesa_pd/data/shape/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..da0f608796dbe7215f8d7eec482fb88f3241e64f --- /dev/null +++ b/src/mesa_pd/data/shape/CMakeLists.txt @@ -0,0 +1,10 @@ +target_sources( mesa_pd + PRIVATE + CylindricalBoundary.h + BaseShape.h + Ellipsoid.h + Sphere.h + ConvexPolyhedron.h + HalfSpace.h + Box.h + ) diff --git a/src/mesa_pd/domain/CMakeLists.txt b/src/mesa_pd/domain/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..eaac7e4cdb1b059523f257cdb1463cda2ca7085d --- /dev/null +++ b/src/mesa_pd/domain/CMakeLists.txt @@ -0,0 +1,10 @@ +target_sources( mesa_pd + PRIVATE + BlockForestDomain.cpp + IDomain.h + InfiniteDomain.h + BlockForestDataHandling.h + InfoCollection.h + BlockForestDataHandling.cpp + BlockForestDomain.h + ) diff --git a/src/mesa_pd/kernel/CMakeLists.txt b/src/mesa_pd/kernel/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..884aeedeffc3c7954f246430e43b5b4bdfea50f7 --- /dev/null +++ b/src/mesa_pd/kernel/CMakeLists.txt @@ -0,0 +1,26 @@ +target_sources( mesa_pd + PRIVATE + NonLinearSpringDashpot.h + SingleCast.h + InitContactsForHCSITS.h + SpringDashpotSpring.h + VelocityVerlet.h + ForceLJ.h + HCSITSRelaxationStep.h + TemperatureIntegration.h + PFCDamping.h + HeatConduction.h + ExplicitEulerWithShape.h + AssocToBlock.h + InsertParticleIntoLinkedCells.h + ExplicitEuler.h + DoubleCast.h + ParticleSelector.h + InsertParticleIntoSparseLinkedCells.h + IntegrateParticlesHCSITS.h + DetectAndStoreContacts.h + SpringDashpot.h + LinearSpringDashpot.h + InitParticlesForHCSITS.h + SemiImplicitEuler.h + ) diff --git a/src/mesa_pd/kernel/cnt/CMakeLists.txt b/src/mesa_pd/kernel/cnt/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..db078539bccfbd46b73670ff94fb2db833e5efd8 --- /dev/null +++ b/src/mesa_pd/kernel/cnt/CMakeLists.txt @@ -0,0 +1,10 @@ +target_sources( mesa_pd + PRIVATE + IsotropicVDWContact.h + VBondContact.h + Parameters.h + AnisotropicVDWContact.h + IntegratedVDWContact.h + ViscousDamping.h + WallContact.h + ) diff --git a/src/mesa_pd/mpi/CMakeLists.txt b/src/mesa_pd/mpi/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..04e543f8a2a52a86ffe4a1201525910fe0895683 --- /dev/null +++ b/src/mesa_pd/mpi/CMakeLists.txt @@ -0,0 +1,20 @@ +target_sources( mesa_pd + PRIVATE + SyncNextNeighborsBlockForest.h + BroadcastProperty.h + SyncNextNeighborsNoGhosts.cpp + SyncNextNeighbors.h + ReduceContactHistory.h + ShapePackUnpack.h + ContactFilter.h + ReduceProperty.h + SyncGhostOwners.h + SyncGhostOwners.cpp + ClearNextNeighborSync.h + RemoveAndNotify.cpp + SyncNextNeighborsNoGhosts.h + SyncNextNeighborsBlockForest.cpp + RemoveAndNotify.h + SyncNextNeighbors.cpp + ClearGhostOwnerSync.h + ) diff --git a/src/mesa_pd/mpi/notifications/CMakeLists.txt b/src/mesa_pd/mpi/notifications/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..c50238b775c0bc00aa6986c8c471ab237ba296f0 --- /dev/null +++ b/src/mesa_pd/mpi/notifications/CMakeLists.txt @@ -0,0 +1,21 @@ +target_sources( mesa_pd + PRIVATE + ParticleGhostCopyNotification.h + ParticleRemovalNotification.h + ParticleRemovalInformationNotification.h + HeatFluxNotification.h + VelocityUpdateNotification.h + ParticleRemoteMigrationNotification.h + ParseMessage.h + PackNotification.h + VelocityCorrectionNotification.h + ParticleCopyNotification.h + NewGhostParticleNotification.h + ParticleUpdateNotification.h + ContactHistoryNotification.h + ParticleMigrationNotification.h + HydrodynamicForceTorqueNotification.h + reset.h + ForceTorqueNotification.h + NotificationType.h + ) diff --git a/src/mesa_pd/sorting/CMakeLists.txt b/src/mesa_pd/sorting/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..4b6badef860b9b133b38b6907553826555a6121c --- /dev/null +++ b/src/mesa_pd/sorting/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( mesa_pd + PRIVATE + LinearizedCompareFunctor.h + HilbertCompareFunctor.h + LinearizedCompareFunctor.cpp + HilbertCompareFunctor.cpp + ) diff --git a/src/mesa_pd/vtk/CMakeLists.txt b/src/mesa_pd/vtk/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..ffda945a2195ddc9439994c303814efb54d5bf82 --- /dev/null +++ b/src/mesa_pd/vtk/CMakeLists.txt @@ -0,0 +1,9 @@ +target_sources( mesa_pd + PRIVATE + TensorGlyph.h + TensorGlyph.cpp + ParticleVtkOutput.cpp + OutputSelector.h + WriteOutput.h + ParticleVtkOutput.h + ) diff --git a/src/mesa_pd/vtk/ConvexPolyhedron/CMakeLists.txt b/src/mesa_pd/vtk/ConvexPolyhedron/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..a6a8cf4a0e37ed65d36ca82d5c6be9c7938e8d4f --- /dev/null +++ b/src/mesa_pd/vtk/ConvexPolyhedron/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( mesa_pd + PRIVATE + Types.h + MeshParticleVTKOutput.h + ) diff --git a/src/mesa_pd/vtk/ConvexPolyhedron/data_sources/CMakeLists.txt b/src/mesa_pd/vtk/ConvexPolyhedron/data_sources/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..367bb6ea8d75fa261a9149c0a555a30a956c08f0 --- /dev/null +++ b/src/mesa_pd/vtk/ConvexPolyhedron/data_sources/CMakeLists.txt @@ -0,0 +1,9 @@ +target_sources( mesa_pd + PRIVATE + OutputSelectorFaceDataSource.h + FaceDataSource.h + SurfaceVelocityVertexDataSource.h + VertexDataSource.h + DataSourceAdapters.h + OutputSelectorVertexDataSource.h + ) diff --git a/src/mesa_pd/vtk/ConvexPolyhedron/tesselation/CMakeLists.txt b/src/mesa_pd/vtk/ConvexPolyhedron/tesselation/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..cdf2a2e4c51830df29cf42df955703216edd0c4f --- /dev/null +++ b/src/mesa_pd/vtk/ConvexPolyhedron/tesselation/CMakeLists.txt @@ -0,0 +1,4 @@ +target_sources( mesa_pd + PRIVATE + ConvexPolyhedronTesselation.h + ) diff --git a/src/mesh/CMakeLists.txt b/src/mesh/CMakeLists.txt index e53281ee904ac96c4570f5ae73ba4df065300fa2..9a47783b0b6d3ff79a36ef7ed95c04dead7403d1 100644 --- a/src/mesh/CMakeLists.txt +++ b/src/mesh/CMakeLists.txt @@ -4,8 +4,18 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS blockforest boundary core domain_decomposition - python_coupling field geometry pe stencil mesh_common - BUILD_ONLY_IF_FOUND OpenMesh) +add_library( mesh ) +target_link_libraries( mesh PUBLIC blockforest boundary core domain_decomposition field geometry pe stencil mesh_common ) +if ( OPENMESH_CORE_FOUND ) + target_link_directories( mesh PUBLIC OpenMeshCore) +endif() +target_sources( mesh + PRIVATE + MeshConversion.h + ) + +add_subdirectory( blockforest ) +add_subdirectory( pe ) +add_subdirectory( boundary ) ################################################################################################### diff --git a/src/mesh/blockforest/CMakeLists.txt b/src/mesh/blockforest/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..166d1ee94852532ec58ef260c2724c8e14fa3ba4 --- /dev/null +++ b/src/mesh/blockforest/CMakeLists.txt @@ -0,0 +1,8 @@ +target_sources( mesh + PRIVATE + RefinementSelection.h + BlockForestInitialization.cpp + BlockWorkloadMemory.h + BlockExclusion.h + BlockForestInitialization.h + ) diff --git a/src/mesh/boundary/CMakeLists.txt b/src/mesh/boundary/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..44f12efd6be21ae820c035d6cc7bb6db252454c4 --- /dev/null +++ b/src/mesh/boundary/CMakeLists.txt @@ -0,0 +1,10 @@ +target_sources( mesh + PRIVATE + BoundarySetup.cpp + ColorToBoundaryMapper.h + BoundaryLocationFunction.h + BoundaryLocation.h + BoundaryUIDFaceDataSource.h + BoundarySetup.h + BoundaryInfo.h + ) diff --git a/src/mesh/pe/CMakeLists.txt b/src/mesh/pe/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..b6cab535d34d750a24e4bc3844f28878996624b6 --- /dev/null +++ b/src/mesh/pe/CMakeLists.txt @@ -0,0 +1,10 @@ +target_sources( mesh + PRIVATE + DefaultTesselation.h + Types.h + ) +add_subdirectory( communication ) +add_subdirectory( raytracing ) +add_subdirectory( rigid_body ) +add_subdirectory( tesselation ) +add_subdirectory( vtk ) \ No newline at end of file diff --git a/src/mesh/pe/communication/CMakeLists.txt b/src/mesh/pe/communication/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..f84235cb9d736c5f93a37bffc1e0b4c4418c7cd8 --- /dev/null +++ b/src/mesh/pe/communication/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( mesh + PRIVATE + ConvexPolyhedron.cpp + ConvexPolyhedron.h + ) diff --git a/src/mesh/pe/raytracing/CMakeLists.txt b/src/mesh/pe/raytracing/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..67ee47c9f4a68317d044e168219051cc1be60307 --- /dev/null +++ b/src/mesh/pe/raytracing/CMakeLists.txt @@ -0,0 +1,4 @@ +target_sources( mesh + PRIVATE + Intersects.h + ) diff --git a/src/mesh/pe/rigid_body/CMakeLists.txt b/src/mesh/pe/rigid_body/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..f8413ca679229e23f2391f0bd6863d83ea30fa88 --- /dev/null +++ b/src/mesh/pe/rigid_body/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( mesh + PRIVATE + ConvexPolyhedronFactory.h + ConvexPolyhedron.cpp + ConvexPolyhedron.h + ConvexPolyhedronFactory.cpp + ) diff --git a/src/mesh/pe/tesselation/CMakeLists.txt b/src/mesh/pe/tesselation/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..437b5ad9d1568b50361f383edb0f8312aa2ba66e --- /dev/null +++ b/src/mesh/pe/tesselation/CMakeLists.txt @@ -0,0 +1,6 @@ +target_sources( mesh + PRIVATE + Sphere.h + ConvexPolyhedron.h + Box.h + ) diff --git a/src/mesh/pe/vtk/CMakeLists.txt b/src/mesh/pe/vtk/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..ed2b8bfe3b4bea33fe6d96b4a5e804b4bbb4f6d8 --- /dev/null +++ b/src/mesh/pe/vtk/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( mesh + PRIVATE + CommonDataSources.h + PeVTKMeshWriter.h + ) diff --git a/src/mesh_common/CMakeLists.txt b/src/mesh_common/CMakeLists.txt index de3b9e33c2fc793fb0d68066aa4ff93a61376371..184b140eb75aa5f00961ffceda11d7313c37fd7a 100644 --- a/src/mesh_common/CMakeLists.txt +++ b/src/mesh_common/CMakeLists.txt @@ -4,6 +4,25 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS core vtk BUILD_ONLY_IF_FOUND OpenMesh ) +add_library( mesh_common INTERFACE ) +target_link_libraries( mesh_common INTERFACE core vtk ) +if ( OPENMESH_CORE_FOUND ) + target_link_directories( mesh_common INTERFACE OpenMeshCore) +endif() +target_sources( mesh_common + INTERFACE + DistanceFunction.h + QHull.h + MeshOperations.h + MeshIO.h + DistanceComputations.h + TriangleMeshes.h + MatrixVectorOperations.h + OpenMeshBufferTypeExtensions.h + PolyMeshes.h + ) + +add_subdirectory( vtk ) +add_subdirectory( distance_octree ) ################################################################################################### diff --git a/src/mesh_common/distance_octree/CMakeLists.txt b/src/mesh_common/distance_octree/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..8146a0ed93a4b4eec3d0caec5daa8e67d767c338 --- /dev/null +++ b/src/mesh_common/distance_octree/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( mesh_common + INTERFACE + BranchNode.h + LeafNode.h + Node.h + DistanceOctree.h + ) diff --git a/src/mesh_common/vtk/CMakeLists.txt b/src/mesh_common/vtk/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..570e32c99c43346361a152a5c4e069f9273b115f --- /dev/null +++ b/src/mesh_common/vtk/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( mesh_common + INTERFACE + CommonFilters.h + VTKMeshWriter.h + DistributedVTKMeshWriter.h + CommonDataSources.h + ) diff --git a/src/pde/CMakeLists.txt b/src/pde/CMakeLists.txt index 0b013dda8b65a581f5f5b99e300f84b1f2a0924e..33005a00678e66a07d5e607a236727404cc5320d 100644 --- a/src/pde/CMakeLists.txt +++ b/src/pde/CMakeLists.txt @@ -4,11 +4,17 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS blockforest - boundary - core - domain_decomposition - field - stencil ) +add_library( pde ) +target_link_libraries( pde PUBLIC blockforest boundary core domain_decomposition field stencil ) +target_sources( pde + PRIVATE + ConditionalResidualNorm.h + ResidualNormStencilField.h + ResidualNorm.h + ) + +add_subdirectory( sweeps ) +add_subdirectory( boundary ) +add_subdirectory( iterations ) ################################################################################################### diff --git a/src/pde/boundary/CMakeLists.txt b/src/pde/boundary/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..7f5861ef04c789f26d6a8703f08f4cf745988c48 --- /dev/null +++ b/src/pde/boundary/CMakeLists.txt @@ -0,0 +1,6 @@ +target_sources( pde + PRIVATE + Dirichlet_withDx.h + Dirichlet.h + Neumann.h + ) diff --git a/src/pde/iterations/CMakeLists.txt b/src/pde/iterations/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..3356f0cb23433188f514cfe46c928d2094c90ce5 --- /dev/null +++ b/src/pde/iterations/CMakeLists.txt @@ -0,0 +1,11 @@ +target_sources( pde + PRIVATE + JacobiIteration.h + JacobiIteration.cpp + RBGSIteration.h + CGFixedStencilIteration.h + VCycles.h + VCycles.impl.h + RBGSIteration.cpp + CGIteration.h + ) diff --git a/src/pde/sweeps/CMakeLists.txt b/src/pde/sweeps/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..2f6d4893d713b2f0b64e79b3ceebc83bb647e424 --- /dev/null +++ b/src/pde/sweeps/CMakeLists.txt @@ -0,0 +1,15 @@ +target_sources( pde + PRIVATE + Multigrid.impl.h + StencilSweepBase.h + SweepBase.h + RBGS.h + RBGSFixedStencil.h + SOR.h + SweepBase.cpp + SORFixedStencil.h + Jacobi.h + StencilFieldSweepBase.h + Multigrid.h + JacobiFixedStencil.h + ) diff --git a/src/pe/CMakeLists.txt b/src/pe/CMakeLists.txt index 0030a0b275fe7eda1f302ecc8a1b32754e8140ef..12a3ebb4ee4e98f3c61fb092cf088005974c1c8b 100644 --- a/src/pe/CMakeLists.txt +++ b/src/pe/CMakeLists.txt @@ -5,5 +5,32 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS core blockforest domain_decomposition geometry stencil vtk ) -target_link_libraries(pe PRIVATE lodepng) +add_library( pe ) +target_link_libraries( pe PUBLIC core blockforest domain_decomposition geometry stencil vtk PRIVATE lodepng ) +target_sources( pe + PRIVATE + Config.h + Thresholds.h + Thresholds.cpp + Materials.cpp + Types.h + basic.h + BlockFunctions.h + Materials.h + ) + +add_subdirectory( cr ) +add_subdirectory( amr ) +add_subdirectory( vtk ) +add_subdirectory( raytracing ) +add_subdirectory( synchronization ) +add_subdirectory( ccd ) +add_subdirectory( debug ) +add_subdirectory( communication ) +add_subdirectory( bg ) +add_subdirectory( utility ) +add_subdirectory( contact ) +add_subdirectory( statistics ) +add_subdirectory( collision ) +add_subdirectory( rigidbody ) +add_subdirectory( fcd ) \ No newline at end of file diff --git a/src/pe/amr/CMakeLists.txt b/src/pe/amr/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..b5df7ae32eecef167115b105a61e858c652dac7f --- /dev/null +++ b/src/pe/amr/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( pe + PRIVATE + InfoCollection.cpp + InfoCollection.h + ) +add_subdirectory( level_determination ) +add_subdirectory( weight_assignment ) \ No newline at end of file diff --git a/src/pe/amr/level_determination/CMakeLists.txt b/src/pe/amr/level_determination/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..3124c8f8a9f677dfa24544cbb364b6e336331b77 --- /dev/null +++ b/src/pe/amr/level_determination/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( pe + PRIVATE + MinMaxLevelDetermination.h + MinMaxLevelDetermination.cpp + ) diff --git a/src/pe/amr/weight_assignment/CMakeLists.txt b/src/pe/amr/weight_assignment/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..7fdd4999b384c2544335b37586c375037391aa28 --- /dev/null +++ b/src/pe/amr/weight_assignment/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( pe + PRIVATE + WeightAssignmentFunctor.h + MetisAssignmentFunctor.h + ) diff --git a/src/pe/bg/CMakeLists.txt b/src/pe/bg/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..043041125a464e6c4a8d9fe2846d655fb94b5032 --- /dev/null +++ b/src/pe/bg/CMakeLists.txt @@ -0,0 +1,6 @@ +target_sources( pe + PRIVATE + SimpleBG.h + SimpleBGDataHandling.h + IBG.h + ) diff --git a/src/pe/ccd/CMakeLists.txt b/src/pe/ccd/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..bfc001c40d3f749aa1dfda9ec2a716294be86aa4 --- /dev/null +++ b/src/pe/ccd/CMakeLists.txt @@ -0,0 +1,12 @@ +target_sources( pe + PRIVATE + HashGrids.cpp + SimpleCCD.h + HashGridsDataHandling.h + CCDDataHandling.h + HashGridsBodyTrait.h + SimpleCCDDataHandling.h + ICCD.h + SimpleCCD.cpp + HashGrids.h + ) diff --git a/src/pe/collision/CMakeLists.txt b/src/pe/collision/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..132304871e5508a8603ac041440be4ca212ecb6c --- /dev/null +++ b/src/pe/collision/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( pe + PRIVATE + GJK.h + GJK.cpp + EPA.h + EPA.cpp + ) diff --git a/src/pe/communication/CMakeLists.txt b/src/pe/communication/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..f6a10f37c990de2fd9ba73a1d250e43065bccf1c --- /dev/null +++ b/src/pe/communication/CMakeLists.txt @@ -0,0 +1,22 @@ +target_sources( pe + PRIVATE + RigidBodyRemovalNotification.h + RigidBodyCopyNotification.h + RigidBodyRemoteMigrationNotification.h + RigidBodyMigrationNotification.h + RigidBodyVelocityCorrectionNotification.h + RigidBodyNewShadowCopyNotification.h + RigidBodyDeletionNotification.h + ParseMessage.h + PackNotification.h + Instantiate.h + RigidBodyVelocityUpdateNotification.h + Marshalling.h + RigidBodyUpdateNotification.h + Marshalling.cpp + RigidBodyForceNotification.h + DynamicMarshalling.h + RigidBodyRemovalInformationNotification.h + NotificationType.h + ) +add_subdirectory( rigidbody ) \ No newline at end of file diff --git a/src/pe/communication/rigidbody/CMakeLists.txt b/src/pe/communication/rigidbody/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..832e9bc007c9b3dff04b837dbdd8670ddaa2cc5a --- /dev/null +++ b/src/pe/communication/rigidbody/CMakeLists.txt @@ -0,0 +1,14 @@ +target_sources( pe + PRIVATE + Capsule.h + Capsule.cpp + Box.cpp + Squirmer.cpp + Ellipsoid.h + Union.h + Sphere.h + Ellipsoid.cpp + Box.h + Sphere.cpp + Squirmer.h + ) diff --git a/src/pe/contact/CMakeLists.txt b/src/pe/contact/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..8c7387e86b1a6ff8c04b69f516592168edd35fbd --- /dev/null +++ b/src/pe/contact/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( pe + PRIVATE + Contact.h + ContactFunctions.h + ContactFunctions.impl.h + Contact.cpp + ) diff --git a/src/pe/cr/CMakeLists.txt b/src/pe/cr/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..6ed5db65546c3f55d505be7ed6d21e817d58c6bc --- /dev/null +++ b/src/pe/cr/CMakeLists.txt @@ -0,0 +1,13 @@ +target_sources( pe + PRIVATE + HCSITSBodyTrait.h + Integrators.h + PlainIntegrator.h + HCSITS.h + PlainIntegrator.impl.h + HCSITS.impl.h + DEM.h + ICR.h + DEM.impl.h + ContactResolvers.h + ) diff --git a/src/pe/debug/CMakeLists.txt b/src/pe/debug/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..15053b394716d715aa6681ff25130fd528d3c668 --- /dev/null +++ b/src/pe/debug/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( pe + PRIVATE + BodyData.cpp + BodyData.h + ) diff --git a/src/pe/fcd/CMakeLists.txt b/src/pe/fcd/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..5a720cdb046a4b0e111651e6f50bbbb9a29059ee --- /dev/null +++ b/src/pe/fcd/CMakeLists.txt @@ -0,0 +1,9 @@ +target_sources( pe + PRIVATE + GenericFCD.h + SimpleFCD.h + IFCD.h + SimpleFCDDataHandling.h + AnalyticCollisionDetection.h + GJKEPACollideFunctor.h + ) diff --git a/src/pe/raytracing/CMakeLists.txt b/src/pe/raytracing/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..a130633b515cd20ed853dae86a6b05f76bbaf0b6 --- /dev/null +++ b/src/pe/raytracing/CMakeLists.txt @@ -0,0 +1,13 @@ +target_sources( pe + PRIVATE + Intersects.h + Ray.cpp + Raytracer.h + ShadingParameters.h + Color.cpp + Color.h + Lighting.h + ShadingFunctions.h + Ray.h + Raytracer.cpp + ) diff --git a/src/pe/rigidbody/CMakeLists.txt b/src/pe/rigidbody/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..36c0cca2e6ebae83819dad53e83f37876a5e9547 --- /dev/null +++ b/src/pe/rigidbody/CMakeLists.txt @@ -0,0 +1,45 @@ +target_sources( pe + PRIVATE + RigidBodyIterator.h + UnionFactory.h + PlaneFactory.cpp + SetBodyTypeIDs.h + RigidBody.h + RigidBody.cpp + GeomPrimitive.cpp + SphereFactory.h + Capsule.h + PlaneFactory.h + Capsule.cpp + Plane.h + CylindricalBoundary.h + Box.cpp + Squirmer.cpp + Owner.h + Plane.cpp + MPIRigidBodyTrait.h + EllipsoidFactory.cpp + Ellipsoid.h + Union.h + Sphere.h + CylindricalBoundaryFactory.cpp + StorageDataHandling.h + CylindricalBoundary.cpp + CapsuleFactory.h + Ellipsoid.cpp + CapsuleFactory.cpp + SphereFactory.cpp + EllipsoidFactory.h + BodyIterators.h + SquirmerFactory.cpp + CylindricalBoundaryFactory.h + BodyStorage.h + Box.h + GeomPrimitive.h + SquirmerFactory.h + RigidBodyCastIterator.h + BoxFactory.h + Sphere.cpp + Squirmer.h + BoxFactory.cpp + ) diff --git a/src/pe/statistics/CMakeLists.txt b/src/pe/statistics/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..224b36ca2ea3da5cc96857fc49a3beb39e7c6708 --- /dev/null +++ b/src/pe/statistics/CMakeLists.txt @@ -0,0 +1,5 @@ +target_sources( pe + PRIVATE + BodyStatistics.cpp + BodyStatistics.h + ) diff --git a/src/pe/synchronization/CMakeLists.txt b/src/pe/synchronization/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..83f27e3881a30bd80840fcd478566410346cd90f --- /dev/null +++ b/src/pe/synchronization/CMakeLists.txt @@ -0,0 +1,8 @@ +target_sources( pe + PRIVATE + SyncNextNeighbors.h + SyncShadowOwners.h + ClearSynchronization.h + SyncForces.h + RemoveAndNotify.h + ) diff --git a/src/pe/utility/CMakeLists.txt b/src/pe/utility/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..3f9f429a53a2006f07acc63626b2441f5bfb1a91 --- /dev/null +++ b/src/pe/utility/CMakeLists.txt @@ -0,0 +1,13 @@ +target_sources( pe + PRIVATE + DestroyBody.cpp + Distance.h + GetBody.cpp + GetInfo.h + DestroyBody.h + Overlap.cpp + GetInfo.cpp + Overlap.h + GetBody.h + BodyCast.h + ) diff --git a/src/pe/vtk/CMakeLists.txt b/src/pe/vtk/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..01cb517447f485db70d6926295e45fc9dfb977ef --- /dev/null +++ b/src/pe/vtk/CMakeLists.txt @@ -0,0 +1,9 @@ +target_sources( pe + PRIVATE + EllipsoidVtkOutput.cpp + BodyVtkOutput.h + SphereVtkOutput.cpp + SphereVtkOutput.h + BodyVtkOutput.cpp + EllipsoidVtkOutput.h + ) diff --git a/src/pe_coupling/CMakeLists.txt b/src/pe_coupling/CMakeLists.txt index 01cff7984139842f96941d2cca49d29cc4d11f80..7883137c42abcf7d1ffd9ed281dc9fa045a7830b 100644 --- a/src/pe_coupling/CMakeLists.txt +++ b/src/pe_coupling/CMakeLists.txt @@ -4,6 +4,15 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS blockforest boundary communication core domain_decomposition field geometry lbm pe stencil vtk ) +add_library( pe_coupling ) +target_link_libraries( pe_coupling PUBLIC blockforest boundary communication core domain_decomposition field geometry lbm pe stencil vtk ) + +add_subdirectory( amr ) +add_subdirectory( discrete_particle_methods ) +add_subdirectory( momentum_exchange_method ) +add_subdirectory( utility ) +add_subdirectory( partially_saturated_cells_method ) +add_subdirectory( geometry ) +add_subdirectory( mapping ) ################################################################################################### diff --git a/src/pe_coupling/amr/CMakeLists.txt b/src/pe_coupling/amr/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..4304ceaf447a3249a7fdfb3b5d0cb1861a9298d3 --- /dev/null +++ b/src/pe_coupling/amr/CMakeLists.txt @@ -0,0 +1,8 @@ +target_sources( pe_coupling + PRIVATE + InfoCollection.cpp + BlockInfo.h + InfoCollection.h + ) +add_subdirectory( level_determination ) +add_subdirectory( weight_assignment ) diff --git a/src/pe_coupling/amr/level_determination/CMakeLists.txt b/src/pe_coupling/amr/level_determination/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..19072c57c47e1aeb809b7c744d9e99d4b183a992 --- /dev/null +++ b/src/pe_coupling/amr/level_determination/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( pe_coupling + PRIVATE + GlobalBodyPresenceLevelDetermination.cpp + BodyPresenceLevelDetermination.cpp + GlobalBodyPresenceLevelDetermination.h + BodyPresenceLevelDetermination.h + ) diff --git a/src/pe_coupling/amr/weight_assignment/CMakeLists.txt b/src/pe_coupling/amr/weight_assignment/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..5698849c10fd956fc0eeb3eaff718b1153222221 --- /dev/null +++ b/src/pe_coupling/amr/weight_assignment/CMakeLists.txt @@ -0,0 +1,9 @@ +target_sources( pe_coupling + PRIVATE + WeightAssignmentFunctor.h + MetisAssignmentFunctor.cpp + WeightAssignmentFunctor.cpp + MetisAssignmentFunctor.h + WeightEvaluationFunctions.cpp + WeightEvaluationFunctions.h + ) diff --git a/src/pe_coupling/discrete_particle_methods/CMakeLists.txt b/src/pe_coupling/discrete_particle_methods/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..b35ee183f4bb091022051ffbaefd8fa01f4209d3 --- /dev/null +++ b/src/pe_coupling/discrete_particle_methods/CMakeLists.txt @@ -0,0 +1,4 @@ +add_subdirectory( correlations ) +add_subdirectory( evaluators ) +add_subdirectory( gns_lbm ) +add_subdirectory( utility ) \ No newline at end of file diff --git a/src/pe_coupling/discrete_particle_methods/correlations/CMakeLists.txt b/src/pe_coupling/discrete_particle_methods/correlations/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..38f6af98352b417f6cd53da8038a939040e7be16 --- /dev/null +++ b/src/pe_coupling/discrete_particle_methods/correlations/CMakeLists.txt @@ -0,0 +1,6 @@ +target_sources( pe_coupling + PRIVATE + DragForceCorrelations.h + LiftForceCorrelations.h + AddedMassForceCorrelations.h + ) diff --git a/src/pe_coupling/discrete_particle_methods/evaluators/CMakeLists.txt b/src/pe_coupling/discrete_particle_methods/evaluators/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..18b816062972697d6cbe63cc2b3a724bc080f720 --- /dev/null +++ b/src/pe_coupling/discrete_particle_methods/evaluators/CMakeLists.txt @@ -0,0 +1,17 @@ +target_sources( pe_coupling + PRIVATE + EffectiveViscosityFieldEvaluator.h + AddedMassForceEvaluator.h + StressTensorGradientFieldEvaluator.h + VelocityCurlFieldEvaluator.h + PressureFieldEvaluator.h + VelocityGradientFieldEvaluator.h + PressureGradientFieldEvaluator.h + LiftForceEvaluator.h + SolidVolumeFractionFieldEvaluator.h + VelocityFieldEvaluator.h + InteractionForceEvaluator.h + VelocityTotalTimeDerivativeFieldEvaluator.h + BodyVelocityTimeDerivativeEvaluator.h + LubricationForceEvaluator.h + ) diff --git a/src/pe_coupling/discrete_particle_methods/gns_lbm/CMakeLists.txt b/src/pe_coupling/discrete_particle_methods/gns_lbm/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..e97a9c4fc8fbef985bb8770a41783dadbade1777 --- /dev/null +++ b/src/pe_coupling/discrete_particle_methods/gns_lbm/CMakeLists.txt @@ -0,0 +1,4 @@ +target_sources( pe_coupling + PRIVATE + GNSSweep.h + ) diff --git a/src/pe_coupling/discrete_particle_methods/gns_lbm/utility/CMakeLists.txt b/src/pe_coupling/discrete_particle_methods/gns_lbm/utility/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..b5ac25e11febc6042653b8da6686d27ec4215c65 --- /dev/null +++ b/src/pe_coupling/discrete_particle_methods/gns_lbm/utility/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( pe_coupling + PRIVATE + GNSPressureFieldEvaluator.h + GNSVelocityFieldEvaluator.h + GNSExternalForceToForceFieldAdder.h + GNSSmagorinskyLESField.h + ) diff --git a/src/pe_coupling/discrete_particle_methods/utility/CMakeLists.txt b/src/pe_coupling/discrete_particle_methods/utility/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..b6c117c97d8124e9c2aac229400c278ce59106ed --- /dev/null +++ b/src/pe_coupling/discrete_particle_methods/utility/CMakeLists.txt @@ -0,0 +1,9 @@ +target_sources( pe_coupling + PRIVATE + BodyVelocityInitializer.h + AveragedInteractionForceFieldToForceFieldAdder.h + CombinedReductionFieldCommunication.h + ExternalForceToForceFieldAdder.h + FieldDataSwapper.h + ForceFieldResetter.h + ) diff --git a/src/pe_coupling/geometry/CMakeLists.txt b/src/pe_coupling/geometry/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..9331843e2cd06f8275b52ca6e825ca8c0c101369 --- /dev/null +++ b/src/pe_coupling/geometry/CMakeLists.txt @@ -0,0 +1,8 @@ +target_sources( pe_coupling + PRIVATE + SphereEquivalentDiameter.h + PeIntersectionRatio.cpp + PeIntersectionRatio.h + PeOverlapFraction.h + PeBodyOverlapFunctions.h + ) diff --git a/src/pe_coupling/mapping/CMakeLists.txt b/src/pe_coupling/mapping/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..4954955a1d01e7097c3e1a697e19b58fba18fb5e --- /dev/null +++ b/src/pe_coupling/mapping/CMakeLists.txt @@ -0,0 +1,6 @@ +target_sources( pe_coupling + PRIVATE + BodyMapping.h + BodyBBMapping.h + BodyBBMapping.cpp + ) diff --git a/src/pe_coupling/momentum_exchange_method/CMakeLists.txt b/src/pe_coupling/momentum_exchange_method/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..db5a4e0f83fa9a03e49728deadd1a4ac15676cfc --- /dev/null +++ b/src/pe_coupling/momentum_exchange_method/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( pe_coupling + PRIVATE + BodyMapping.h + ) +add_subdirectory( boundary ) +add_subdirectory( destruction ) +add_subdirectory( restoration ) diff --git a/src/pe_coupling/momentum_exchange_method/boundary/CMakeLists.txt b/src/pe_coupling/momentum_exchange_method/boundary/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..1c082cba5c1bdf481872b376a022c4de7953f976 --- /dev/null +++ b/src/pe_coupling/momentum_exchange_method/boundary/CMakeLists.txt @@ -0,0 +1,6 @@ +target_sources( pe_coupling + PRIVATE + CurvedQuadratic.h + CurvedLinear.h + SimpleBB.h + ) diff --git a/src/pe_coupling/momentum_exchange_method/destruction/CMakeLists.txt b/src/pe_coupling/momentum_exchange_method/destruction/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..e237634a3a73c378fe93f057c867e5f6db19299e --- /dev/null +++ b/src/pe_coupling/momentum_exchange_method/destruction/CMakeLists.txt @@ -0,0 +1,4 @@ +target_sources( pe_coupling + PRIVATE + Destroyer.h + ) diff --git a/src/pe_coupling/momentum_exchange_method/restoration/CMakeLists.txt b/src/pe_coupling/momentum_exchange_method/restoration/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..6930bd57e4d8fc54b1df871e32d8f971fe274323 --- /dev/null +++ b/src/pe_coupling/momentum_exchange_method/restoration/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( pe_coupling + PRIVATE + ExtrapolationDirectionFinder.h + ExtrapolationDirectionFinder.cpp + Reconstructor.h + PDFReconstruction.h + ) diff --git a/src/pe_coupling/partially_saturated_cells_method/CMakeLists.txt b/src/pe_coupling/partially_saturated_cells_method/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..df940c6fb7745ea225e2ff68b02102713014c687 --- /dev/null +++ b/src/pe_coupling/partially_saturated_cells_method/CMakeLists.txt @@ -0,0 +1,7 @@ +target_sources( pe_coupling + PRIVATE + PSMUtility.h + BodyAndVolumeFractionMapping.cpp + PSMSweep.h + BodyAndVolumeFractionMapping.h + ) diff --git a/src/pe_coupling/utility/CMakeLists.txt b/src/pe_coupling/utility/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..007e856e04cb79f3e0149d1aedae9891597ce480 --- /dev/null +++ b/src/pe_coupling/utility/CMakeLists.txt @@ -0,0 +1,17 @@ +target_sources( pe_coupling + PRIVATE + LubricationCorrection.h + TimeStep.h + BodiesForceTorqueContainer.cpp + LubricationCorrection.cpp + TimeStep.cpp + BodiesForceTorqueContainer.h + ForceOnBodiesAdder.h + ForceTorqueOnBodiesResetter.cpp + ForceOnBodiesAdder.cpp + BodySelectorFunctions.h + ForceTorqueOnBodiesScaler.h + BodySelectorFunctions.cpp + ForceTorqueOnBodiesScaler.cpp + ForceTorqueOnBodiesResetter.h + ) diff --git a/src/postprocessing/CMakeLists.txt b/src/postprocessing/CMakeLists.txt index 82f92b79c5ec5c0cc628a215607518544e44e1e0..1a1ad27e0f345fd4995d47389513252e7d23fc18 100644 --- a/src/postprocessing/CMakeLists.txt +++ b/src/postprocessing/CMakeLists.txt @@ -4,11 +4,14 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS core - domain_decomposition - field - python_coupling - stencil - geometry ) +add_library( postprocessing ) +target_link_libraries( postprocessing PUBLIC core domain_decomposition field geometry ) +target_sources( postprocessing + PRIVATE + MarchingCubes.impl.h + MarchingCubes.h + FieldToSurfaceMesh.h + FieldToSurfaceMesh.cpp + ) ################################################################################################### diff --git a/src/python_coupling/CMakeLists.txt b/src/python_coupling/CMakeLists.txt index 758289636ada5eefe4bdf7d8d02290c8f83dedcd..08266d3a9a51a452ba7022de56994f935fa7861c 100644 --- a/src/python_coupling/CMakeLists.txt +++ b/src/python_coupling/CMakeLists.txt @@ -1,4 +1,20 @@ -if (WALBERLA_BUILD_WITH_PYTHON) - waLBerla_add_module(DEPENDS core communication domain_decomposition stencil field blockforest vtk cuda) - target_link_libraries(python_coupling PUBLIC pybind11::embed core domain_decomposition) -endif() \ No newline at end of file + add_library( python_coupling ) + target_link_libraries( python_coupling PUBLIC pybind11::embed core communication domain_decomposition stencil field blockforest vtk ) + if( WALBERLA_BUILD_WITH_CUDA ) + target_link_libraries( python_coupling PUBLIC cuda ) + endif() + target_sources( python_coupling + PRIVATE + Manager.cpp + PythonWrapper.h + DictWrapper.impl.h + DictWrapper.h + CreateConfig.h + PythonCallback.cpp + Manager.h + PythonCallback.h + CreateConfig.cpp + ) + + add_subdirectory( export ) + add_subdirectory( helper ) \ No newline at end of file diff --git a/src/python_coupling/export/CMakeLists.txt b/src/python_coupling/export/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..bea431188570ec668ce21d5d50ebf2d372c81591 --- /dev/null +++ b/src/python_coupling/export/CMakeLists.txt @@ -0,0 +1,20 @@ +target_sources( python_coupling + PRIVATE + GatherExport.impl.h + VTKExport.cpp + CUDAExport.h + FieldCommunicationExport.impl.h + BasicExport.cpp + BlockForestCommunicationExport.h + VTKExport.h + MPIExport.cpp + BlockForestExport.cpp + BlockForestCommunicationExport.impl.h + MPIExport.h + FieldCommunicationExport.h + BlockForestExport.h + BasicExport.h + FieldExport.impl.h + FieldExports.h + CUDAExport.impl.h + ) diff --git a/src/python_coupling/helper/CMakeLists.txt b/src/python_coupling/helper/CMakeLists.txt new file mode 100644 index 0000000000000000000000000000000000000000..2c9fc4587c42d8af5dfe014bf57388286f79ec4b --- /dev/null +++ b/src/python_coupling/helper/CMakeLists.txt @@ -0,0 +1,14 @@ +target_sources( python_coupling + PRIVATE + ConfigFromDict.h + MplHelpers.h + PybindHelper.h + SliceToCellInterval.h + BlockStorageExportHelpers.h + ModuleInit.cpp + PythonIterableToStdVector.h + OwningIterator.h + ConfigFromDict.cpp + BlockStorageExportHelpers.cpp + ModuleInit.h + ) diff --git a/src/simd/CMakeLists.txt b/src/simd/CMakeLists.txt index f618b53a29573b840ffddd7c6f130301afdf8748..f850ff00d6037f4b731836e754009af0e3e85f7e 100644 --- a/src/simd/CMakeLists.txt +++ b/src/simd/CMakeLists.txt @@ -5,5 +5,18 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS core ) +add_library( simd INTERFACE ) +target_link_libraries( simd INTERFACE core ) +target_sources( simd + INTERFACE + AVX.h + SSE4.h + Scalar.h + AlignedAllocator.h + StreamOutput.h + IntelVecTypesCppOperators.h + SIMD.h + AVX2.h + SSE2.h + ) diff --git a/src/sqlite/CMakeLists.txt b/src/sqlite/CMakeLists.txt index f2809e2d9a8b98efaa0f429a4e3495465e3d7314..b7b33975158874dc2f7dfad346963ac45f674cc6 100644 --- a/src/sqlite/CMakeLists.txt +++ b/src/sqlite/CMakeLists.txt @@ -4,7 +4,12 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS core ) -target_link_libraries( sqlite PRIVATE sqlite3 ) +add_library( sqlite ) +target_link_libraries( sqlite PUBLIC core PRIVATE sqlite3 ) +target_sources( sqlite + PRIVATE + SQLite.cpp + SQLite.h + ) ################################################################################################### diff --git a/src/stencil/CMakeLists.txt b/src/stencil/CMakeLists.txt index e13003faaf4ff203dcc440a4fce306a50c3be38c..466e376fab0d4f5965f483fb834aa7d339748a88 100644 --- a/src/stencil/CMakeLists.txt +++ b/src/stencil/CMakeLists.txt @@ -4,6 +4,26 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS core ) +add_library( stencil INTERFACE ) +target_sources( stencil + INTERFACE + AABBQuadrant.h + D2CornerStencil.h + D2Q4.h + D2Q5.h + D2Q9.h + D3CornerStencil.h + D3EdgeCornerStencil.h + D3Q15.h + D3Q19.h + D3Q27.h + D3Q6.h + D3Q7.h + Directions.h + EdgeStencil.h + Iterator.h + Stencil.in.h + ) +target_link_libraries( stencil INTERFACE core ) ################################################################################################### diff --git a/src/timeloop/CMakeLists.txt b/src/timeloop/CMakeLists.txt index 465f95bb4806b2b27466bb978b396e31fa07d88b..9035c3d9ab1a6620f39b1a5e38295e9704ae3d0d 100644 --- a/src/timeloop/CMakeLists.txt +++ b/src/timeloop/CMakeLists.txt @@ -4,7 +4,18 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS core domain_decomposition python_coupling ) - +add_library( timeloop ) +target_link_libraries( timeloop PUBLIC core domain_decomposition ) +target_sources( timeloop + PRIVATE + ITimeloop.h + PerformanceMeter.h + SelectableFunctionCreators.h + SweepTimeloop.h + Timeloop.h + PerformanceMeter.cpp + SweepTimeloop.cpp + Timeloop.cpp +) ################################################################################################### diff --git a/src/vtk/CMakeLists.txt b/src/vtk/CMakeLists.txt index 6a12fce9b6bf3e367c9741c36f60a52aa06ac9f1..2b21bd8d5f1d4bd70a4b7efc85b4ee9ced6ba4b4 100644 --- a/src/vtk/CMakeLists.txt +++ b/src/vtk/CMakeLists.txt @@ -4,6 +4,26 @@ # ################################################################################################### -waLBerla_add_module( DEPENDS core blockforest domain_decomposition python_coupling ) +add_library( vtk ) +target_sources( vtk + PRIVATE + Base64Writer.cpp + Base64Writer.h + DumpBlockStructureLevel.h + CellBBCellFilter.h + Initialization.h + Initialization.cpp + PointDataSource.h + BlockCellDataWriter.h + VTKTrait.h + VTKOutput.cpp + VTKOutput.h + DumpBlockStructureProcess.h + AABBCellFilter.h + PolylineDataSource.h + UtilityFunctions.h + ChainedFilter.h + ) +target_link_libraries( vtk PUBLIC core blockforest domain_decomposition ) ################################################################################################### diff --git a/tests/blockforest/CMakeLists.txt b/tests/blockforest/CMakeLists.txt index 5c710c5bc835533ce21423695766b02e9645ce0b..4778166c984c9c4ad07c615527bf6e129afcf971 100644 --- a/tests/blockforest/CMakeLists.txt +++ b/tests/blockforest/CMakeLists.txt @@ -4,16 +4,16 @@ # ################################################################################################### -waLBerla_compile_test ( FILES BlockIDTest.cpp ) +waLBerla_compile_test ( FILES BlockIDTest.cpp DEPENDS core ) waLBerla_execute_test ( NAME BlockIDTest LABELS longrun ) -waLBerla_compile_test( FILES SetupBlockForestTest.cpp ) +waLBerla_compile_test( FILES SetupBlockForestTest.cpp DEPENDS core ) waLBerla_execute_test( NAME SetupBlockForestTest LABELS longrun CONFIGURATIONS Release RelWithDbgInfo ) -waLBerla_compile_test( FILES BlockForestTest.cpp ) +waLBerla_compile_test( FILES BlockForestTest.cpp DEPENDS core domain_decomposition ) waLBerla_execute_test( NAME BlockForestTest PROCESSES 4 ) -waLBerla_compile_test( FILES DeterministicCreation.cpp ) +waLBerla_compile_test( FILES DeterministicCreation.cpp DEPENDS core ) waLBerla_execute_test( NAME DeterministicCreation PROCESSES 8 ) waLBerla_compile_test( NAME SaveLoad FILES SaveLoadTest.cpp DEPENDS core blockforest ) @@ -27,27 +27,29 @@ set_property( TEST SaveLoad04 PROPERTY DEPENDS SaveLoad02 ) #serialize runs of t set_property( TEST SaveLoad08 PROPERTY DEPENDS SaveLoad04 ) #serialize runs of tets to avoid i/o conflicts when running ctest with -jN endif() -waLBerla_compile_test( FILES StructuredBlockForestTest.cpp ) +waLBerla_compile_test( FILES StructuredBlockForestTest.cpp DEPENDS core domain_decomposition ) waLBerla_execute_test( NAME StructuredBlockForestTest ) -waLBerla_compile_test( FILES BlockDataIOTest.cpp DEPENDS field ) -waLBerla_execute_test( NAME BlockDataIOTest1 COMMAND $<TARGET_FILE:BlockDataIOTest> ) -waLBerla_execute_test( NAME BlockDataIOTest3 COMMAND $<TARGET_FILE:BlockDataIOTest> PROCESSES 3 ) -waLBerla_execute_test( NAME BlockDataIOTest8 COMMAND $<TARGET_FILE:BlockDataIOTest> PROCESSES 8 ) +waLBerla_compile_test( FILES BlockDataIOTest.cpp DEPENDS core field ) +waLBerla_execute_test( NAME BlockDataIOTest1 COMMAND $<TARGET_FILE:BlockDataIOTest> DEPENDS_ON_TARGETS BlockDataIOTest ) +waLBerla_execute_test( NAME BlockDataIOTest3 COMMAND $<TARGET_FILE:BlockDataIOTest> PROCESSES 3 DEPENDS_ON_TARGETS BlockDataIOTest ) +waLBerla_execute_test( NAME BlockDataIOTest8 COMMAND $<TARGET_FILE:BlockDataIOTest> PROCESSES 8 DEPENDS_ON_TARGETS BlockDataIOTest ) #serialize runs of tests to avoid i/o conflicts when running ctest with -jN if( WALBERLA_BUILD_WITH_MPI ) - set_property( TEST BlockDataIOTest3 PROPERTY DEPENDS BlockDataIOTest1 ) - set_property( TEST BlockDataIOTest8 PROPERTY DEPENDS BlockDataIOTest3 ) + if( TARGET BlockDataIOTest ) + set_property( TEST BlockDataIOTest3 PROPERTY DEPENDS BlockDataIOTest1 ) + set_property( TEST BlockDataIOTest8 PROPERTY DEPENDS BlockDataIOTest3 ) + endif() endif( WALBERLA_BUILD_WITH_MPI ) # communication waLBerla_compile_test( FILES communication/GhostLayerCommTest.cpp DEPENDS field timeloop ) -waLBerla_execute_test( NAME GhostLayerCommTest1 COMMAND $<TARGET_FILE:GhostLayerCommTest> ) -waLBerla_execute_test( NAME GhostLayerCommTest4 COMMAND $<TARGET_FILE:GhostLayerCommTest> PROCESSES 4 ) -waLBerla_execute_test( NAME GhostLayerCommTest8 COMMAND $<TARGET_FILE:GhostLayerCommTest> PROCESSES 8 ) +waLBerla_execute_test( NAME GhostLayerCommTest1 COMMAND $<TARGET_FILE:GhostLayerCommTest> DEPENDS_ON_TARGETS GhostLayerCommTest ) +waLBerla_execute_test( NAME GhostLayerCommTest4 COMMAND $<TARGET_FILE:GhostLayerCommTest> PROCESSES 4 DEPENDS_ON_TARGETS GhostLayerCommTest ) +waLBerla_execute_test( NAME GhostLayerCommTest8 COMMAND $<TARGET_FILE:GhostLayerCommTest> PROCESSES 8 DEPENDS_ON_TARGETS GhostLayerCommTest ) waLBerla_compile_test( FILES communication/DirectionBasedReduceCommTest.cpp DEPENDS field timeloop ) -waLBerla_execute_test( NAME DirectionBasedReduceCommTest1 COMMAND $<TARGET_FILE:DirectionBasedReduceCommTest> ) -waLBerla_execute_test( NAME DirectionBasedReduceCommTest3 COMMAND $<TARGET_FILE:DirectionBasedReduceCommTest> PROCESSES 3 ) -waLBerla_execute_test( NAME DirectionBasedReduceCommTest8 COMMAND $<TARGET_FILE:DirectionBasedReduceCommTest> PROCESSES 8 ) +waLBerla_execute_test( NAME DirectionBasedReduceCommTest1 COMMAND $<TARGET_FILE:DirectionBasedReduceCommTest> DEPENDS_ON_TARGETS DirectionBasedReduceCommTest ) +waLBerla_execute_test( NAME DirectionBasedReduceCommTest3 COMMAND $<TARGET_FILE:DirectionBasedReduceCommTest> PROCESSES 3 DEPENDS_ON_TARGETS DirectionBasedReduceCommTest ) +waLBerla_execute_test( NAME DirectionBasedReduceCommTest8 COMMAND $<TARGET_FILE:DirectionBasedReduceCommTest> PROCESSES 8 DEPENDS_ON_TARGETS DirectionBasedReduceCommTest ) diff --git a/tests/core/CMakeLists.txt b/tests/core/CMakeLists.txt index 798a0b89d36c0db03ba53ff00dd79937f9b2a9a7..d4b4b2f6b0d0cc5094f5e630cff2d9d2adfa8c49 100644 --- a/tests/core/CMakeLists.txt +++ b/tests/core/CMakeLists.txt @@ -82,9 +82,10 @@ waLBerla_compile_test( FILES math/GenericAABBTest.cpp DEPENDS stencil domain_dec waLBerla_execute_test( NAME GenericAABBTest ) if( WALBERLA_BUILD_WITH_BOOST ) -waLBerla_compile_test( FILES math/PhysicalCheckTest.cpp DEPENDS stencil ) -waLBerla_execute_test( NAME PhysicalCheckTest - COMMAND $<TARGET_FILE:PhysicalCheckTest> ${CMAKE_CURRENT_SOURCE_DIR}/math/PhysicalCheckTestInput.prm ) + waLBerla_compile_test( FILES math/PhysicalCheckTest.cpp DEPENDS stencil ) + waLBerla_execute_test( NAME PhysicalCheckTest + COMMAND $<TARGET_FILE:PhysicalCheckTest> ${CMAKE_CURRENT_SOURCE_DIR}/math/PhysicalCheckTestInput.prm + DEPENDS_ON_TARGETS PhysicalCheckTest ) endif( WALBERLA_BUILD_WITH_BOOST ) @@ -164,7 +165,7 @@ waLBerla_execute_test( NAME TimingPoolTest PROCESSES 3 ) waLBerla_compile_test( FILES timing/TimingTreeTest.cpp ) waLBerla_execute_test( NAME TimingTreeTest PROCESSES 3) -waLBerla_compile_test( FILES timing/SweepTimeloopTimerReduction.cpp DEPENDS timeloop blockforest ) +waLBerla_compile_test( FILES timing/SweepTimeloopTimerReduction.cpp DEPENDS blockforest domain_decomposition timeloop) waLBerla_execute_test( NAME SweepTimeloopTimerReduction PROCESSES 9 ) diff --git a/tests/cuda/CMakeLists.txt b/tests/cuda/CMakeLists.txt index aae265a7b70a4d09aeb8530a193ee743c5398c56..723f7818710f502a792d0e5732fc0cf70f4bec01 100644 --- a/tests/cuda/CMakeLists.txt +++ b/tests/cuda/CMakeLists.txt @@ -15,7 +15,7 @@ waLBerla_execute_test( NAME GPUPackInfoCommunicationTest ) waLBerla_compile_test( FILES communication/GPUBlockSelectorCommunicationTest.cpp DEPENDS domain_decomposition blockforest stencil ) waLBerla_execute_test( NAME GPUBlockSelectorCommunicationTest ) -waLBerla_compile_test( FILES FieldTransferTest ) +waLBerla_compile_test( FILES FieldTransferTest.cpp ) waLBerla_execute_test( NAME FieldTransferTest ) waLBerla_compile_test( FILES SimpleKernelTest.cpp Kernels.cu DEPENDS blockforest timeloop gui ) @@ -38,10 +38,10 @@ waLBerla_compile_test( FILES codegen/CodegenPoissonGPU.cpp DEPENDS gui cuda time waLBerla_execute_test( NAME CodegenPoissonGPU ) # The following tests work only for CUDA enabled MPI -waLBerla_compile_test( FILES communication/CommTest ) +waLBerla_compile_test( FILES communication/CommTest.cpp ) #waLBerla_execute_test( NAME CommTest PROCESSES 2) -waLBerla_compile_test( FILES CudaMPI DEPENDS blockforest timeloop gui ) +waLBerla_compile_test( FILES CudaMPI.cpp DEPENDS blockforest timeloop gui ) #waLBerla_execute_test( NAME CudaMPI ) waLBerla_compile_test( FILES AlignmentTest.cpp DEPENDS blockforest timeloop ) @@ -56,4 +56,4 @@ waLBerla_generate_target_from_python(NAME CodegenGeneratedGPUFieldPackInfo FILE waLBerla_compile_test( FILES codegen/GeneratedFieldPackInfoTestGPU.cpp DEPENDS blockforest core field CodegenGeneratedGPUFieldPackInfo ) waLBerla_execute_test( NAME GeneratedFieldPackInfoTestGPU ) -endif() \ No newline at end of file +endif() diff --git a/tests/field/CMakeLists.txt b/tests/field/CMakeLists.txt index 199e0180199dcf6a7c75ab06dfa76f62bc614cb5..aa0ee9bb11cae93dba2f982647cece2d071cb59d 100644 --- a/tests/field/CMakeLists.txt +++ b/tests/field/CMakeLists.txt @@ -38,8 +38,8 @@ waLBerla_compile_test( FILES adaptors/AdaptorTest.cpp DEPENDS blockforest gui lb waLBerla_execute_test( NAME AdaptorTest ) waLBerla_compile_test( FILES FieldGatherTest.cpp DEPENDS blockforest gui ) -waLBerla_execute_test( NAME FieldGatherTest3 COMMAND $<TARGET_FILE:FieldGatherTest> PROCESSES 3 ) -waLBerla_execute_test( NAME FieldGatherTest1 COMMAND $<TARGET_FILE:FieldGatherTest> PROCESSES 1 ) +waLBerla_execute_test( NAME FieldGatherTest3 COMMAND $<TARGET_FILE:FieldGatherTest> PROCESSES 3 DEPENDS_ON_TARGETS FieldGatherTest ) +waLBerla_execute_test( NAME FieldGatherTest1 COMMAND $<TARGET_FILE:FieldGatherTest> PROCESSES 1 DEPENDS_ON_TARGETS FieldGatherTest ) waLBerla_compile_test( FILES FieldFileIOTest.cpp DEPENDS blockforest ) waLBerla_execute_test( NAME FieldFileIOTest1Proc COMMAND $<TARGET_FILE:FieldFileIOTest> PROCESSES 1 ) diff --git a/tests/lbm/CMakeLists.txt b/tests/lbm/CMakeLists.txt index a8cc3e9f91a2a3090a299f314abcbe84a8f6c707..fbcd45ff86750ca08ba0765f788bcb5b0caa9fbb 100644 --- a/tests/lbm/CMakeLists.txt +++ b/tests/lbm/CMakeLists.txt @@ -37,8 +37,8 @@ waLBerla_execute_test( NAME DiffusionDirichletTest2 COMMAND $<TARGET_FILE:Diffus waLBerla_compile_test( FILES DiffusionTest.cpp DEPENDS field blockforest timeloop vtk gui postprocessing) -waLBerla_execute_test( NAME DiffusionTestCorr COMMAND $<TARGET_FILE:DiffusionTest> -c 1 -dx 0.01 -dt 0.002 -d 0.005 -v 5 -err 0.0025 ) -waLBerla_execute_test( NAME DiffusionTestNone COMMAND $<TARGET_FILE:DiffusionTest> -c 0 -dx 0.01 -dt 0.002 -d 0.005 -v 5 -err 0.0040 ) +waLBerla_execute_test( NAME DiffusionTestCorr COMMAND $<TARGET_FILE:DiffusionTest> -c 1 -dx 0.01 -dt 0.002 -d 0.005 -v 5 -err 0.0025 DEPENDS_ON_TARGETS DiffusionTest ) +waLBerla_execute_test( NAME DiffusionTestNone COMMAND $<TARGET_FILE:DiffusionTest> -c 0 -dx 0.01 -dt 0.002 -d 0.005 -v 5 -err 0.0040 DEPENDS_ON_TARGETS DiffusionTest ) waLBerla_compile_test( FILES refinement/Uniformity.cpp DEPENDS blockforest stencil ) diff --git a/utilities/refactorCMake.py b/utilities/refactorCMake.py new file mode 100644 index 0000000000000000000000000000000000000000..e5262a96ca5cf4c23ecdbaf45bdb1fafde5fb7c4 --- /dev/null +++ b/utilities/refactorCMake.py @@ -0,0 +1,64 @@ +import argparse + +#!/usr/bin/env python3 + +import os +import re + + +def create_cmake_lists (folder, module_name, top_level=True, deps = []): + header_and_source = [] + subfolder = [] + newline = '\n ' + add_sub = '\nadd_subdirectory( ' + for entry in os.scandir(folder): + if entry.name == 'all.h': + continue + if entry.is_file(): + if entry.name.endswith('.h') or entry.name.endswith('.cpp'): + header_and_source += [entry.name] + else: + if entry.name != 'doc' and entry.name != 'CMakeFiles': + subfolder += [entry.name] + create_cmake_lists(folder + '/' + entry.name, module_name, False) + + print(subfolder) + if not header_and_source: + return + + if top_level: + with open(folder + '/CMakeListsRefactor.txt', 'w') as f: + content = f"""add_library( {module_name} ) +target_link_libraries( {module_name} PUBLIC {' '.join(x for x in deps)} ) +target_sources( {module_name} + PRIVATE + {newline.join(x for x in header_and_source)} + ) + +add_subdirectory( {add_sub.join(x + ' )' for x in subfolder)} +""" + f.write(content) + else: + with open(folder + '/CMakeLists.txt', 'w') as f: + content = f"""target_sources( {module_name} + PRIVATE + {newline.join(x for x in header_and_source)} + ) +""" + f.write(content) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser(description='Refactor CMakeLists.txt file') + parser.add_argument('folder', type=str, help='Folder to be refactored; a CMakeListsRefactor.txt file will be created in each subfolder') + args = parser.parse_args() + + print(args.folder) + with open(args.folder + '/CMakeLists.txt', 'r') as f: + depsRaw = re.findall(r'DEPENDS (.*)\)', f.read(), re.DOTALL) + deps = [] + if depsRaw: + deps = depsRaw[0].split() + + create_cmake_lists( args.folder, args.folder.split('/')[-1], True, deps ) +