Select Git revision
CMakeLists.txt
-
Stéphane Del Pino authored
Actually, this should work for any kind of item based stencil (face to cells, edge to nodes) using a third kind of item to define connections. This is not plugged since by applications for these stencils are not clear.
Stéphane Del Pino authoredActually, this should work for any kind of item based stencil (face to cells, edge to nodes) using a third kind of item to define connections. This is not plugged since by applications for these stencils are not clear.
CMakeLists.txt 9.98 KiB
set(EXECUTABLE_OUTPUT_PATH ${PUGS_BINARY_DIR})
include_directories(${PUGS_SOURCE_DIR}/src)
include_directories(${PUGS_BINARY_DIR}/src)
include_directories(${PUGS_SOURCE_DIR}/tests)
set(checkpointing_sequential_TESTS
# this one should enventually integrate parallel tests
test_checkpointing_Checkpoint_sequential.cpp
test_checkpointing_Resume_sequential.cpp
)
add_executable (unit_tests
test_main.cpp
test_AffectationProcessor.cpp
test_AffectationToStringProcessor.cpp
test_AffectationToTupleProcessor.cpp
test_Array.cpp
test_ArraySubscriptProcessor.cpp
test_ASTBuilder.cpp
test_ASTCheckpoint.cpp
test_ASTCheckpointsInfo.cpp
test_ASTDotPrinter.cpp
test_ASTExecutionStack.cpp
test_ASTModulesImporter.cpp
test_ASTNode.cpp
test_ASTNodeAffectationExpressionBuilder.cpp
test_ASTNodeArraySubscriptExpressionBuilder.cpp
test_ASTNodeBinaryOperatorExpressionBuilder.cpp
test_ASTNodeBuiltinFunctionExpressionBuilder.cpp
test_ASTNodeDataType.cpp
test_ASTNodeDataTypeBuilder.cpp
test_ASTNodeDataTypeChecker.cpp
test_ASTNodeDataTypeFlattener.cpp
test_ASTNodeDeclarationToAffectationConverter.cpp
test_ASTNodeEmptyBlockCleaner.cpp
test_ASTNodeExpressionBuilder.cpp
test_ASTNodeFunctionEvaluationExpressionBuilder.cpp
test_ASTNodeFunctionExpressionBuilder.cpp
test_ASTNodeIncDecExpressionBuilder.cpp
test_ASTNodeJumpPlacementChecker.cpp
test_ASTNodeListAffectationExpressionBuilder.cpp
test_ASTNodeListProcessor.cpp
test_ASTNodeNaturalConversionChecker.cpp
test_ASTNodeTypeCleaner.cpp
test_ASTNodeUnaryOperatorExpressionBuilder.cpp
test_ASTPrinter.cpp
test_ASTSymbolTableBuilder.cpp
test_ASTSymbolInitializationChecker.cpp
test_BreakProcessor.cpp
test_BinaryExpressionProcessor_arithmetic.cpp
test_BinaryExpressionProcessor_comparison.cpp
test_BinaryExpressionProcessor_equality.cpp
test_BinaryExpressionProcessor_logic.cpp
test_BinaryExpressionProcessor_raw.cpp
test_BinaryExpressionProcessor_shift.cpp
test_BinaryOperatorMangler.cpp
test_BiCGStab.cpp
test_BuildInfo.cpp
test_BuiltinFunctionEmbedder.cpp
test_BuiltinFunctionEmbedderUtils.cpp
test_BuiltinFunctionEmbedderTable.cpp
test_BuiltinFunctionProcessor.cpp
test_CastArray.cpp
test_CellIntegrator.cpp
test_CellType.cpp
test_CommunicatorManager.cpp
test_ConsoleManager.cpp
test_CG.cpp
test_ConcatExpressionProcessor.cpp
test_ConsoleManager.cpp
test_ContinueProcessor.cpp
test_CRSGraph.cpp
test_CRSMatrix.cpp
test_CRSMatrixDescriptor.cpp
test_CubeGaussQuadrature.cpp
test_CubeTransformation.cpp
test_DataVariant.cpp
test_Demangle.cpp
test_DiamondDualConnectivityBuilder.cpp
test_DiamondDualMeshBuilder.cpp
test_DiscreteFunctionDescriptorP0.cpp
test_DiscreteFunctionDescriptorP0Vector.cpp
test_DiscreteFunctionType.cpp
test_DiscreteFunctionUtils.cpp
test_DoWhileProcessor.cpp
test_Dual1DConnectivityBuilder.cpp
test_Dual1DMeshBuilder.cpp
test_DualConnectivityManager.cpp
test_DualMeshManager.cpp
test_DualMeshType.cpp
test_EdgeIntegrator.cpp
test_EigenvalueSolver.cpp
test_EmbeddedData.cpp
test_EmbeddedDiscreteFunctionUtils.cpp
test_EscapedString.cpp
test_Exceptions.cpp
test_ExecutionPolicy.cpp
test_Exit.cpp
test_FaceIntegrator.cpp
test_FakeProcessor.cpp
test_ForProcessor.cpp
test_FunctionArgumentConverter.cpp
test_FunctionProcessor.cpp
test_FunctionSymbolId.cpp
test_FunctionTable.cpp
test_GaussLegendreQuadratureDescriptor.cpp
test_GaussLobattoQuadratureDescriptor.cpp
test_GaussQuadratureDescriptor.cpp
test_Givens.cpp
test_IfProcessor.cpp
test_IncDecExpressionProcessor.cpp
test_IntegrateCellArray.cpp
test_IntegrateCellValue.cpp
test_IntegrateOnCells.cpp
test_INodeProcessor.cpp
test_ItemId.cpp
test_ItemType.cpp
test_LinearSolver.cpp
test_LinearSolverOptions.cpp
test_LineTransformation.cpp
test_ListAffectationProcessor.cpp
test_MathModule.cpp
test_MedianDualConnectivityBuilder.cpp
test_MedianDualMeshBuilder.cpp
test_NameProcessor.cpp
test_NaNHelper.cpp
test_OStream.cpp
test_ParallelChecker_write.cpp
test_ParseError.cpp
test_PETScUtils.cpp
test_PrimalToDiamondDualConnectivityDataMapper.cpp
test_PrimalToDual1DConnectivityDataMapper.cpp
test_PrimalToMedianDualConnectivityDataMapper.cpp
test_PrismGaussQuadrature.cpp
test_PrismTransformation.cpp
test_PugsAssert.cpp
test_PugsFunctionAdapter.cpp
test_PugsUtils.cpp
test_PyramidGaussQuadrature.cpp
test_PyramidTransformation.cpp
test_QuadraticPolynomialReconstruction.cpp
test_QuadratureType.cpp
test_RefId.cpp
test_RefItemList.cpp
test_ReproducibleSumManager.cpp
test_RevisionInfo.cpp
test_SmallArray.cpp
test_SmallMatrix.cpp
test_SmallVector.cpp
test_Socket.cpp
test_SocketModule.cpp
test_SourceLocation.cpp
test_SquareGaussQuadrature.cpp
test_SquareTransformation.cpp
test_Stop.cpp
test_SymbolTable.cpp
test_Table.cpp
test_TetrahedronGaussQuadrature.cpp
test_TetrahedronTransformation.cpp
test_TensorialGaussLegendreQuadrature.cpp
test_TensorialGaussLobattoQuadrature.cpp
test_Timer.cpp
test_TinyMatrix.cpp
test_TinyVector.cpp
test_TriangleGaussQuadrature.cpp
test_TriangleTransformation.cpp
test_TupleToVectorProcessor.cpp
test_UnaryExpressionProcessor.cpp
test_UnaryOperatorMangler.cpp
test_Vector.cpp
test_WhileProcessor.cpp
${checkpointing_sequential_TESTS}
)
set(checkpointing_TESTS
test_checkpointing_Checkpoint.cpp
test_checkpointing_PrintCheckpointInfo.cpp
test_checkpointing_PrintScriptFrom.cpp
test_checkpointing_Resume.cpp
test_checkpointing_ResumingManager.cpp
test_checkpointing_ResumingUtils.cpp
test_checkpointing_SetResumeFrom.cpp
)
if(PUGS_HAS_HDF5)
list(APPEND checkpointing_TESTS
test_checkpointing_Array.cpp
test_checkpointing_Connectivity.cpp
test_checkpointing_DiscreteFunctionVariant.cpp
test_checkpointing_HFTypes.cpp
test_checkpointing_IBoundaryDescriptor.cpp
test_checkpointing_IBoundaryConditionDescriptor.cpp
test_checkpointing_IQuadratureDescriptor.cpp
test_checkpointing_IDiscreteFunctionDescriptor.cpp
test_checkpointing_IInterfaceDescriptor.cpp
test_checkpointing_INamedDiscreteData.cpp
test_checkpointing_ItemArray.cpp
test_checkpointing_ItemArrayVariant.cpp
test_checkpointing_ItemType.cpp
test_checkpointing_ItemValue.cpp
test_checkpointing_ItemValueVariant.cpp
test_checkpointing_IWriter.cpp
test_checkpointing_IZoneDescriptor.cpp
test_checkpointing_Mesh.cpp
test_checkpointing_OStream.cpp
test_checkpointing_SubItemArrayPerItemVariant.cpp
test_checkpointing_SubItemValuePerItemVariant.cpp
test_checkpointing_Table.cpp
test_checkpointing_VariableBCDescriptor.cpp
)
endif(PUGS_HAS_HDF5)
add_executable (mpi_unit_tests
mpi_test_main.cpp
test_Connectivity.cpp
test_ConnectivityDispatcher.cpp
test_DiscreteFunctionDPk.cpp
test_DiscreteFunctionDPkVector.cpp
test_DiscreteFunctionIntegrator.cpp
test_DiscreteFunctionIntegratorByZone.cpp
test_DiscreteFunctionInterpoler.cpp
test_DiscreteFunctionInterpolerByZone.cpp
test_DiscreteFunctionP0.cpp
test_DiscreteFunctionP0Vector.cpp
test_DiscreteFunctionVectorIntegrator.cpp
test_DiscreteFunctionVectorIntegratorByZone.cpp
test_DiscreteFunctionVectorInterpoler.cpp
test_DiscreteFunctionVectorInterpolerByZone.cpp
test_EmbeddedDiscreteFunctionMathFunctions1D.cpp
test_EmbeddedDiscreteFunctionMathFunctions2D.cpp
test_EmbeddedDiscreteFunctionMathFunctions3D.cpp
test_EmbeddedDiscreteFunctionOperators1D.cpp
test_EmbeddedDiscreteFunctionOperators2D.cpp
test_EmbeddedDiscreteFunctionOperators3D.cpp
test_ExecutionStatManager.cpp
test_InterpolateItemArray.cpp
test_InterpolateItemValue.cpp
test_ItemArray.cpp
test_ItemArrayUtils.cpp
test_ItemArrayVariant.cpp
test_ItemArrayVariantFunctionInterpoler.cpp
test_ItemValue.cpp
test_ItemValueUtils.cpp
test_ItemValueVariant.cpp
test_ItemValueVariantFunctionInterpoler.cpp
test_MeshEdgeBoundary.cpp
test_MeshEdgeInterface.cpp
test_MeshFaceBoundary.cpp
test_MeshFaceInterface.cpp
test_MeshFlatEdgeBoundary.cpp
test_MeshFlatFaceBoundary.cpp
test_MeshFlatNodeBoundary.cpp
test_MeshLineEdgeBoundary.cpp
test_MeshLineFaceBoundary.cpp
test_MeshLineNodeBoundary.cpp
test_MeshNodeBoundary.cpp
test_MeshNodeInterface.cpp
test_MeshVariant.cpp
test_Messenger.cpp
test_OFStream.cpp
test_ParallelChecker_read.cpp
test_Partitioner.cpp
test_PolynomialReconstruction.cpp
test_PolynomialReconstructionDescriptor.cpp
test_RandomEngine.cpp
test_StencilBuilder_cell2cell.cpp
test_StencilBuilder_node2cell.cpp
test_SubItemArrayPerItemVariant.cpp
test_SubItemValuePerItem.cpp
test_SubItemValuePerItemVariant.cpp
test_SubItemValuePerItemUtils.cpp
test_SubItemArrayPerItem.cpp
test_SubItemArrayPerItemUtils.cpp
test_Synchronizer.cpp
${checkpointing_TESTS}
)
add_library(test_Pugs_MeshDataBase
MeshDataBaseForTests.cpp)
add_library(test_Pugs_ParallelCheckerTester
ParallelCheckerTester.cpp)
target_link_libraries (test_Pugs_ParallelCheckerTester
${HIGHFIVE_TARGET})
target_link_libraries (unit_tests
test_Pugs_MeshDataBase
test_Pugs_ParallelCheckerTester
PugsLanguageAST
PugsLanguageModules
PugsLanguageAlgorithms
PugsLanguageUtils
PugsLanguage
PugsMesh
PugsAlgebra
PugsAnalysis
PugsScheme
PugsOutput
PugsUtils
PugsCheckpointing
PugsDev
Kokkos::kokkos
${PARMETIS_LIBRARIES}
${MPI_CXX_LINK_FLAGS} ${MPI_CXX_LIBRARIES}
${PETSC_LIBRARIES}
Catch2
${PUGS_STD_LINK_FLAGS}
${HIGHFIVE_TARGET}
${SLURM_LIBRARY}
stdc++fs
)
target_link_libraries (mpi_unit_tests
test_Pugs_MeshDataBase
test_Pugs_ParallelCheckerTester
PugsAlgebra
PugsAnalysis
PugsUtils
PugsLanguage
PugsLanguageAST
PugsLanguageModules
PugsLanguageAlgorithms
PugsMesh
PugsAlgebra
PugsUtils
PugsLanguageUtils
PugsScheme
PugsOutput
PugsUtils
PugsCheckpointing
PugsDev
PugsAlgebra
PugsMesh
Kokkos::kokkos
${PARMETIS_LIBRARIES}
${MPI_CXX_LINK_FLAGS} ${MPI_CXX_LIBRARIES}
${PETSC_LIBRARIES}
Catch2
${PUGS_STD_LINK_FLAGS}
${HIGHFIVE_TARGET}
${SLURM_LIBRARY}
stdc++fs
)