From 1f2e7d4b9af55b03623290b97d14c49fcbd6a46f Mon Sep 17 00:00:00 2001 From: Alex Dutka <97711898+dutkalex@users.noreply.github.com> Date: Tue, 29 Oct 2024 16:54:32 +0100 Subject: [PATCH 01/13] update submodules --- .gitignore | 1 + p4est | 2 +- sc | 2 +- src/t8.h | 2 +- .../t8_default/t8_default_hex/t8_default_hex.cxx | 6 +++--- .../t8_default/t8_default_line/t8_default_line.cxx | 6 +++--- .../t8_default/t8_default_prism/t8_default_prism.cxx | 10 +++++----- .../t8_default_pyramid/t8_default_pyramid.cxx | 6 +++--- .../t8_default/t8_default_quad/t8_default_quad.cxx | 6 +++--- .../t8_default/t8_default_tri/t8_dtri_bits.c | 10 +++++----- .../t8_default/t8_default_vertex/t8_default_vertex.cxx | 6 +++--- 11 files changed, 29 insertions(+), 28 deletions(-) diff --git a/.gitignore b/.gitignore index 122db9868d..d085775b76 100644 --- a/.gitignore +++ b/.gitignore @@ -24,6 +24,7 @@ doxygen/ CMakeCache.txt CMakeFiles/ +version.txt src/stamp-h1 src/t8_config.h diff --git a/p4est b/p4est index 8206f0e56d..851774a0c9 160000 --- a/p4est +++ b/p4est @@ -1 +1 @@ -Subproject commit 8206f0e56d536d6d7f2e1d106c491b8c9386e28f +Subproject commit 851774a0c993aaf6f1719da6fd62c2f3acd761ee diff --git a/sc b/sc index 2b209eab18..c371874cdd 160000 --- a/sc +++ b/sc @@ -1 +1 @@ -Subproject commit 2b209eab184d2feee7bd146ee580ae3c983b85f4 +Subproject commit c371874cdde434e831175d0feef3d869aa340c11 diff --git a/src/t8.h b/src/t8.h index 705659359c..a39d3311ef 100644 --- a/src/t8.h +++ b/src/t8.h @@ -108,7 +108,7 @@ typedef int64_t t8_gloidx_t; /** A type for storing SFC indices */ typedef uint64_t t8_linearidx_t; /** The MPI datatype of t8_linearidx_t */ -#define T8_MPI_LINEARIDX sc_MPI_UNSIGNED_LONG_LONG +#define T8_MPI_LINEARIDX MPI_UNSIGNED_LONG_LONG #define T8_PADDING_SIZE (sizeof (void *)) /** Compute the number of bytes that have to be added to a given byte_count diff --git a/src/t8_schemes/t8_default/t8_default_hex/t8_default_hex.cxx b/src/t8_schemes/t8_default/t8_default_hex/t8_default_hex.cxx index 5465eda575..6f6b4f2062 100644 --- a/src/t8_schemes/t8_default/t8_default_hex/t8_default_hex.cxx +++ b/src/t8_schemes/t8_default/t8_default_hex/t8_default_hex.cxx @@ -671,7 +671,7 @@ t8_default_scheme_hex_c::t8_element_MPI_Pack (t8_element_t **const elements, con SC_CHECK_MPI (mpiret); mpiret = sc_MPI_Pack (&quads[ielem]->z, 1, sc_MPI_INT, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Pack (&quads[ielem]->level, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm); + mpiret = sc_MPI_Pack (&quads[ielem]->level, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); } } @@ -690,7 +690,7 @@ t8_default_scheme_hex_c::t8_element_MPI_Pack_size (const unsigned int count, sc_ singlesize += 3 * datasize; /* level */ - mpiret = sc_MPI_Pack_size (1, sc_MPI_INT8_T, comm, &datasize); + mpiret = sc_MPI_Pack_size (1, MPI_INT8_T, comm, &datasize); SC_CHECK_MPI (mpiret); singlesize += datasize; @@ -712,7 +712,7 @@ t8_default_scheme_hex_c::t8_element_MPI_Unpack (void *recvbuf, const int buffer_ SC_CHECK_MPI (mpiret); mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(quads[ielem]->z), 1, sc_MPI_INT, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(quads[ielem]->level), 1, sc_MPI_INT8_T, comm); + mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(quads[ielem]->level), 1, MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); } } diff --git a/src/t8_schemes/t8_default/t8_default_line/t8_default_line.cxx b/src/t8_schemes/t8_default/t8_default_line/t8_default_line.cxx index 392ccc735a..94f126cc0b 100644 --- a/src/t8_schemes/t8_default/t8_default_line/t8_default_line.cxx +++ b/src/t8_schemes/t8_default/t8_default_line/t8_default_line.cxx @@ -465,7 +465,7 @@ t8_default_scheme_line_c::t8_element_MPI_Pack (t8_element_t **const elements, co for (unsigned int ielem = 0; ielem < count; ielem++) { mpiret = sc_MPI_Pack (&(lines[ielem]->x), 1, sc_MPI_INT, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Pack (&lines[ielem]->level, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm); + mpiret = sc_MPI_Pack (&lines[ielem]->level, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); } } @@ -482,7 +482,7 @@ t8_default_scheme_line_c::t8_element_MPI_Pack_size (const unsigned int count, sc SC_CHECK_MPI (mpiret); singlesize += datasize; - mpiret = sc_MPI_Pack_size (1, sc_MPI_INT8_T, comm, &datasize); + mpiret = sc_MPI_Pack_size (1, MPI_INT8_T, comm, &datasize); SC_CHECK_MPI (mpiret); singlesize += datasize; @@ -500,7 +500,7 @@ t8_default_scheme_line_c::t8_element_MPI_Unpack (void *recvbuf, const int buffer for (unsigned int ielem = 0; ielem < count; ielem++) { mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(lines[ielem]->x), 1, sc_MPI_INT, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(lines[ielem]->level), 1, sc_MPI_INT8_T, comm); + mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(lines[ielem]->level), 1, MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); } } diff --git a/src/t8_schemes/t8_default/t8_default_prism/t8_default_prism.cxx b/src/t8_schemes/t8_default/t8_default_prism/t8_default_prism.cxx index da2b18338d..6d3bc17aa0 100644 --- a/src/t8_schemes/t8_default/t8_default_prism/t8_default_prism.cxx +++ b/src/t8_schemes/t8_default/t8_default_prism/t8_default_prism.cxx @@ -488,11 +488,11 @@ t8_default_scheme_prism_c::t8_element_MPI_Pack (t8_element_t **const elements, c SC_CHECK_MPI (mpiret); mpiret = sc_MPI_Pack (&prisms[ielem]->tri.y, 1, sc_MPI_INT, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Pack (&prisms[ielem]->tri.type, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm); + mpiret = sc_MPI_Pack (&prisms[ielem]->tri.type, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); T8_ASSERT (prisms[ielem]->line.level == prisms[ielem]->tri.level); - mpiret = sc_MPI_Pack (&prisms[ielem]->line.level, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm); + mpiret = sc_MPI_Pack (&prisms[ielem]->line.level, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); } } @@ -511,7 +511,7 @@ t8_default_scheme_prism_c::t8_element_MPI_Pack_size (const unsigned int count, s singlesize += 3 * datasize; /*type, level*/ - mpiret = sc_MPI_Pack_size (1, sc_MPI_INT8_T, comm, &datasize); + mpiret = sc_MPI_Pack_size (1, MPI_INT8_T, comm, &datasize); SC_CHECK_MPI (mpiret); singlesize += 2 * datasize; @@ -533,9 +533,9 @@ t8_default_scheme_prism_c::t8_element_MPI_Unpack (void *recvbuf, const int buffe SC_CHECK_MPI (mpiret); mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(prisms[ielem]->tri.y), 1, sc_MPI_INT, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(prisms[ielem]->tri.type), 1, sc_MPI_INT8_T, comm); + mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(prisms[ielem]->tri.type), 1, MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(prisms[ielem]->tri.level), 1, sc_MPI_INT8_T, comm); + mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(prisms[ielem]->tri.level), 1, MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); prisms[ielem]->line.level = prisms[ielem]->tri.level; } diff --git a/src/t8_schemes/t8_default/t8_default_pyramid/t8_default_pyramid.cxx b/src/t8_schemes/t8_default/t8_default_pyramid/t8_default_pyramid.cxx index 7a7ee358bf..8996b4c20e 100644 --- a/src/t8_schemes/t8_default/t8_default_pyramid/t8_default_pyramid.cxx +++ b/src/t8_schemes/t8_default/t8_default_pyramid/t8_default_pyramid.cxx @@ -452,7 +452,7 @@ t8_default_scheme_pyramid_c::t8_element_MPI_Pack (t8_element_t **const elements, t8_dtet_t *p = &pyramids[ielem]->pyramid; t8_dtet_element_pack (&p, 1, send_buffer, buffer_size, position, comm); - SC_CHECK_MPI (sc_MPI_Pack (&pyramids[ielem]->switch_shape_at_level, 1, sc_MPI_INT8_T, send_buffer, buffer_size, + SC_CHECK_MPI (sc_MPI_Pack (&pyramids[ielem]->switch_shape_at_level, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm)); } } @@ -468,7 +468,7 @@ t8_default_scheme_pyramid_c::t8_element_MPI_Pack_size (const unsigned int count, singlesize += datasize; /* switch shape at level */ - SC_CHECK_MPI (sc_MPI_Pack_size (1, sc_MPI_INT8_T, comm, &datasize)); + SC_CHECK_MPI (sc_MPI_Pack_size (1, MPI_INT8_T, comm, &datasize)); singlesize += datasize; *pack_size = count * singlesize; @@ -487,7 +487,7 @@ t8_default_scheme_pyramid_c::t8_element_MPI_Unpack (void *recvbuf, const int buf t8_dtet_element_unpack (recvbuf, buffer_size, position, &p, 1, comm); mpiret - = sc_MPI_Unpack (recvbuf, buffer_size, position, &pyramids[ielem]->switch_shape_at_level, 1, sc_MPI_INT8_T, comm); + = sc_MPI_Unpack (recvbuf, buffer_size, position, &pyramids[ielem]->switch_shape_at_level, 1, MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); } } diff --git a/src/t8_schemes/t8_default/t8_default_quad/t8_default_quad.cxx b/src/t8_schemes/t8_default/t8_default_quad/t8_default_quad.cxx index 7a146353e9..d867c7dd41 100644 --- a/src/t8_schemes/t8_default/t8_default_quad/t8_default_quad.cxx +++ b/src/t8_schemes/t8_default/t8_default_quad/t8_default_quad.cxx @@ -799,7 +799,7 @@ t8_default_scheme_quad_c::t8_element_MPI_Pack (t8_element_t **const elements, co SC_CHECK_MPI (mpiret); mpiret = sc_MPI_Pack (&quads[ielem]->y, 1, sc_MPI_INT, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Pack (&quads[ielem]->level, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm); + mpiret = sc_MPI_Pack (&quads[ielem]->level, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); } } @@ -818,7 +818,7 @@ t8_default_scheme_quad_c::t8_element_MPI_Pack_size (const unsigned int count, sc singlesize += 2 * datasize; /* level */ - mpiret = sc_MPI_Pack_size (1, sc_MPI_INT8_T, comm, &datasize); + mpiret = sc_MPI_Pack_size (1, MPI_INT8_T, comm, &datasize); SC_CHECK_MPI (mpiret); singlesize += datasize; @@ -838,7 +838,7 @@ t8_default_scheme_quad_c::t8_element_MPI_Unpack (void *recvbuf, const int buffer SC_CHECK_MPI (mpiret); mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(quads[ielem]->y), 1, sc_MPI_INT, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(quads[ielem]->level), 1, sc_MPI_INT8_T, comm); + mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(quads[ielem]->level), 1, MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); } } diff --git a/src/t8_schemes/t8_default/t8_default_tri/t8_dtri_bits.c b/src/t8_schemes/t8_default/t8_default_tri/t8_dtri_bits.c index fed3b9039e..8fed8fdc48 100644 --- a/src/t8_schemes/t8_default/t8_default_tri/t8_dtri_bits.c +++ b/src/t8_schemes/t8_default/t8_default_tri/t8_dtri_bits.c @@ -1718,9 +1718,9 @@ t8_dtri_element_pack (t8_dtri_t **const elements, const unsigned int count, void SC_CHECK_MPI (mpiret); #endif - mpiret = sc_MPI_Pack (&elements[ielem]->type, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm); + mpiret = sc_MPI_Pack (&elements[ielem]->type, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Pack (&elements[ielem]->level, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm); + mpiret = sc_MPI_Pack (&elements[ielem]->level, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); } } @@ -1744,7 +1744,7 @@ t8_dtri_element_pack_size (const unsigned int count, sc_MPI_Comm comm, int *pack singlesize += coord_count * datasize; /* type, level*/ - mpiret = sc_MPI_Pack_size (1, sc_MPI_INT8_T, comm, &datasize); + mpiret = sc_MPI_Pack_size (1, MPI_INT8_T, comm, &datasize); SC_CHECK_MPI (mpiret); singlesize += 2 * datasize; @@ -1766,9 +1766,9 @@ t8_dtri_element_unpack (void *recvbuf, const int buffer_size, int *position, t8_ mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(elements[ielem]->z), 1, sc_MPI_INT, comm); SC_CHECK_MPI (mpiret); #endif - mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(elements[ielem]->type), 1, sc_MPI_INT8_T, comm); + mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(elements[ielem]->type), 1, MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(elements[ielem]->level), 1, sc_MPI_INT8_T, comm); + mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(elements[ielem]->level), 1, MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); } } diff --git a/src/t8_schemes/t8_default/t8_default_vertex/t8_default_vertex.cxx b/src/t8_schemes/t8_default/t8_default_vertex/t8_default_vertex.cxx index cefea160e6..d4b0118804 100644 --- a/src/t8_schemes/t8_default/t8_default_vertex/t8_default_vertex.cxx +++ b/src/t8_schemes/t8_default/t8_default_vertex/t8_default_vertex.cxx @@ -352,7 +352,7 @@ t8_default_scheme_vertex_c::t8_element_MPI_Pack (t8_element_t **const elements, int mpiret; t8_dvertex_t **vertices = (t8_dvertex_t **) elements; for (unsigned int ielem = 0; ielem < count; ielem++) { - mpiret = sc_MPI_Pack (&vertices[ielem]->level, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm); + mpiret = sc_MPI_Pack (&vertices[ielem]->level, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); } } @@ -365,7 +365,7 @@ t8_default_scheme_vertex_c::t8_element_MPI_Pack_size (const unsigned int count, int datasize = 0; int mpiret; - mpiret = sc_MPI_Pack_size (1, sc_MPI_INT8_T, comm, &datasize); + mpiret = sc_MPI_Pack_size (1, MPI_INT8_T, comm, &datasize); SC_CHECK_MPI (mpiret); singlesize += datasize; @@ -381,7 +381,7 @@ t8_default_scheme_vertex_c::t8_element_MPI_Unpack (void *recvbuf, const int buff int mpiret; t8_dvertex_t **vertices = (t8_dvertex_t **) elements; for (unsigned int ielem = 0; ielem < count; ielem++) { - mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(vertices[ielem]->level), 1, sc_MPI_INT8_T, comm); + mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(vertices[ielem]->level), 1, MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); } } From 71f02363d2e14e54d7aea9971d667aa513d310d8 Mon Sep 17 00:00:00 2001 From: Alex Dutka <97711898+dutkalex@users.noreply.github.com> Date: Tue, 29 Oct 2024 17:09:16 +0100 Subject: [PATCH 02/13] remove noise from sc and p4est --- CMakeLists.txt | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index c94ceaca0a..f3d157f9a9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -120,12 +120,16 @@ set(CMAKE_INSTALL_RPATH_USE_LINK_PATH true) if ( T8CODE_USE_SYSTEM_SC ) find_package( SC REQUIRED PATHS /path/to/system/sc ) else() + set( SC_BUILD_EXAMPLES OFF ) + set( SC_BUILD_TESTING OFF ) add_subdirectory( ${CMAKE_CURRENT_LIST_DIR}/sc ) endif() if ( T8CODE_USE_SYSTEM_P4EST ) find_package( P4EST REQUIRED PATHS /path/to/system/p4est ) else() + set( P4EST_BUILD_EXAMPLES OFF ) + set( P4EST_BUILD_TESTING OFF ) add_subdirectory( ${CMAKE_CURRENT_LIST_DIR}/p4est ) endif() From 52a93da657ef79f446b287abd59ec0ad9faba15e Mon Sep 17 00:00:00 2001 From: Alex Dutka <97711898+dutkalex@users.noreply.github.com> Date: Wed, 30 Oct 2024 16:40:12 +0100 Subject: [PATCH 03/13] replace hardcoded OFFs by dependent options --- CMakeLists.txt | 36 +++++++++++++++++++++--------------- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index f3d157f9a9..a573e8c8ec 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,29 +6,35 @@ project( T8CODE DESCRIPTION "Parallel algorithms and data structures for tree-based AMR with arbitrary element shapes." LANGUAGES C CXX Fortran VERSION "${T8CODE_VERSION_MAJOR}.${T8CODE_VERSION_MINOR}.${T8CODE_VERSION_PATCH}" ) + include( CTest ) +include(CMakeDependentOption) + +option( T8CODE_ENABLE_MPI "Enable t8code's features which rely on MPI" ON ) +option( T8CODE_ENABLE_VTK "Enable t8code's features which rely on VTK" OFF ) +option( T8CODE_ENABLE_OCC "Enable t8code's features which rely on OpenCASCADE" OFF ) +option( T8CODE_ENABLE_NETCDF "Enable t8code's features which rely on netCDF" OFF ) + +option( T8CODE_USE_SYSTEM_SC "Use system-installed sc library" OFF ) +option( T8CODE_USE_SYSTEM_P4EST "Use system-installed p4est library" OFF ) option( T8CODE_BUILD_AS_SHARED_LIBRARY "Whether t8code should be built as a shared or a static library" ON ) option( T8CODE_BUILD_PEDANTIC "Compile t8code with `-Wall -pedantic -Werror` as done in the Github CI." OFF ) option( T8CODE_EXPORT_COMPILE_COMMANDS "Export the compile commands as json. Can be used by IDEs for code completion (e.g. intellisense, clangd)" OFF ) + option( T8CODE_BUILD_TESTS "Build t8code's automated tests" ON ) +cmake_dependent_option( T8CODE_BUILD_TPL_TESTS "Build the tests from libsc and p4est" OFF "T8CODE_BUILD_TESTS" OFF ) +cmake_dependent_option( T8CODE_ENABLE_LESS_TESTS "Tests not as thoroughly to speed up the test suite. Tests the same functionality. (WARNING: Use with care.)" OFF "T8CODE_BUILD_TESTS" OFF ) + option( T8CODE_BUILD_TUTORIALS "Build t8code's tutorials" ON ) + option( T8CODE_BUILD_EXAMPLES "Build t8code's examples" ON ) +cmake_dependent_option( T8CODE_BUILD_TPL_EXAMPLES "Build the examples from libsc and p4est" OFF "T8CODE_BUILD_EXAMPLES" OFF ) + option( T8CODE_BUILD_BENCHMARKS "Build t8code's benchmarks" ON ) option( T8CODE_BUILD_FORTRAN_INTERFACE "Build t8code's Fortran interface" OFF ) -option( T8CODE_ENABLE_LESS_TESTS "Tests not as thoroughly to speed up the test suite. Tests the same functionality. (WARNING: Use with care.)" OFF ) - -option( T8CODE_ENABLE_MPI "Enable t8code's features which rely on MPI" ON ) -option( T8CODE_ENABLE_VTK "Enable t8code's features which rely on VTK" OFF ) -option( T8CODE_ENABLE_OCC "Enable t8code's features which rely on OpenCASCADE" OFF ) -option( T8CODE_ENABLE_NETCDF "Enable t8code's features which rely on netCDF" OFF ) - -option( T8CODE_USE_SYSTEM_SC "Use system-installed sc library" OFF ) -option( T8CODE_USE_SYSTEM_P4EST "Use system-installed p4est library" OFF ) option( T8CODE_BUILD_DOCUMENTATION "Build t8code's documentation" OFF ) - -include(CMakeDependentOption) cmake_dependent_option( T8CODE_BUILD_DOCUMENTATION_SPHINX "Build t8code's documentation using sphinx" OFF "T8CODE_BUILD_DOCUMENTATION" OFF ) set(T8CODE_CUSTOM_PARALLEL_TEST_COMMAND "" CACHE STRING "Define a custom command for parallel tests , e.g.: mpirun -np 8 (overwrites standard mpirun -np 4 if build with mpi)") @@ -120,16 +126,16 @@ set(CMAKE_INSTALL_RPATH_USE_LINK_PATH true) if ( T8CODE_USE_SYSTEM_SC ) find_package( SC REQUIRED PATHS /path/to/system/sc ) else() - set( SC_BUILD_EXAMPLES OFF ) - set( SC_BUILD_TESTING OFF ) + set( SC_BUILD_EXAMPLES ${T8CODE_BUILD_TPL_EXAMPLES} ) + set( SC_BUILD_TESTING ${T8CODE_BUILD_TPL_TESTS} ) add_subdirectory( ${CMAKE_CURRENT_LIST_DIR}/sc ) endif() if ( T8CODE_USE_SYSTEM_P4EST ) find_package( P4EST REQUIRED PATHS /path/to/system/p4est ) else() - set( P4EST_BUILD_EXAMPLES OFF ) - set( P4EST_BUILD_TESTING OFF ) + set( P4EST_BUILD_EXAMPLES ${T8CODE_BUILD_TPL_EXAMPLES} ) + set( P4EST_BUILD_TESTING ${T8CODE_BUILD_TPL_TESTS} ) add_subdirectory( ${CMAKE_CURRENT_LIST_DIR}/p4est ) endif() From 903eeb7ae543b4decf01bfdf336a5b6d106b672f Mon Sep 17 00:00:00 2001 From: Alex Dutka <97711898+dutkalex@users.noreply.github.com> Date: Wed, 30 Oct 2024 16:41:42 +0100 Subject: [PATCH 04/13] indent --- .../t8_default/t8_default_pyramid/t8_default_pyramid.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/t8_schemes/t8_default/t8_default_pyramid/t8_default_pyramid.cxx b/src/t8_schemes/t8_default/t8_default_pyramid/t8_default_pyramid.cxx index 8996b4c20e..488a010797 100644 --- a/src/t8_schemes/t8_default/t8_default_pyramid/t8_default_pyramid.cxx +++ b/src/t8_schemes/t8_default/t8_default_pyramid/t8_default_pyramid.cxx @@ -452,8 +452,8 @@ t8_default_scheme_pyramid_c::t8_element_MPI_Pack (t8_element_t **const elements, t8_dtet_t *p = &pyramids[ielem]->pyramid; t8_dtet_element_pack (&p, 1, send_buffer, buffer_size, position, comm); - SC_CHECK_MPI (sc_MPI_Pack (&pyramids[ielem]->switch_shape_at_level, 1, MPI_INT8_T, send_buffer, buffer_size, - position, comm)); + SC_CHECK_MPI ( + sc_MPI_Pack (&pyramids[ielem]->switch_shape_at_level, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm)); } } From 0e6523ab8e3c669dade899edb22c21a271b46fe2 Mon Sep 17 00:00:00 2001 From: Alex Dutka <97711898+dutkalex@users.noreply.github.com> Date: Mon, 4 Nov 2024 10:46:55 +0100 Subject: [PATCH 05/13] Enable sc and p4est tests by default --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a573e8c8ec..c874789c8a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -23,7 +23,7 @@ option( T8CODE_BUILD_PEDANTIC "Compile t8code with `-Wall -pedantic -Werror` as option( T8CODE_EXPORT_COMPILE_COMMANDS "Export the compile commands as json. Can be used by IDEs for code completion (e.g. intellisense, clangd)" OFF ) option( T8CODE_BUILD_TESTS "Build t8code's automated tests" ON ) -cmake_dependent_option( T8CODE_BUILD_TPL_TESTS "Build the tests from libsc and p4est" OFF "T8CODE_BUILD_TESTS" OFF ) +cmake_dependent_option( T8CODE_BUILD_TPL_TESTS "Build the tests from libsc and p4est" ON "T8CODE_BUILD_TESTS" OFF ) cmake_dependent_option( T8CODE_ENABLE_LESS_TESTS "Tests not as thoroughly to speed up the test suite. Tests the same functionality. (WARNING: Use with care.)" OFF "T8CODE_BUILD_TESTS" OFF ) option( T8CODE_BUILD_TUTORIALS "Build t8code's tutorials" ON ) From d4614d7b1bcc594cbb25e9ca120a0d1d0d869c4e Mon Sep 17 00:00:00 2001 From: Alex Dutka <97711898+dutkalex@users.noreply.github.com> Date: Mon, 13 Jan 2025 14:38:25 +0100 Subject: [PATCH 06/13] MPI_INT8_T -> sc_MPI_INT8_T --- src/t8.h | 2 +- .../t8_default/t8_default_hex/t8_default_hex.cxx | 6 +++--- .../t8_default/t8_default_line/t8_default_line.cxx | 6 +++--- .../t8_default/t8_default_prism/t8_default_prism.cxx | 10 +++++----- .../t8_default_pyramid/t8_default_pyramid.cxx | 6 +++--- .../t8_default/t8_default_quad/t8_default_quad.cxx | 6 +++--- .../t8_default/t8_default_tri/t8_dtri_bits.c | 10 +++++----- .../t8_default/t8_default_vertex/t8_default_vertex.cxx | 6 +++--- 8 files changed, 26 insertions(+), 26 deletions(-) diff --git a/src/t8.h b/src/t8.h index adc573e2b7..232a597534 100644 --- a/src/t8.h +++ b/src/t8.h @@ -115,7 +115,7 @@ typedef int64_t t8_gloidx_t; /** A type for storing SFC indices */ typedef uint64_t t8_linearidx_t; /** The MPI datatype of t8_linearidx_t */ -#define T8_MPI_LINEARIDX MPI_UNSIGNED_LONG_LONG +#define T8_MPI_LINEARIDX sc_MPI_UNSIGNED_LONG_LONG #define T8_PADDING_SIZE (sizeof (void *)) /** Compute the number of bytes that have to be added to a given byte_count diff --git a/src/t8_schemes/t8_default/t8_default_hex/t8_default_hex.cxx b/src/t8_schemes/t8_default/t8_default_hex/t8_default_hex.cxx index 801bf14e6b..222675e2f9 100644 --- a/src/t8_schemes/t8_default/t8_default_hex/t8_default_hex.cxx +++ b/src/t8_schemes/t8_default/t8_default_hex/t8_default_hex.cxx @@ -656,7 +656,7 @@ t8_default_scheme_hex::element_MPI_Pack (t8_element_t **const elements, const un SC_CHECK_MPI (mpiret); mpiret = sc_MPI_Pack (&quads[ielem]->z, 1, sc_MPI_INT, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Pack (&quads[ielem]->level, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm); + mpiret = sc_MPI_Pack (&quads[ielem]->level, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); } } @@ -675,7 +675,7 @@ t8_default_scheme_hex::element_MPI_Pack_size (const unsigned int count, sc_MPI_C singlesize += 3 * datasize; /* level */ - mpiret = sc_MPI_Pack_size (1, MPI_INT8_T, comm, &datasize); + mpiret = sc_MPI_Pack_size (1, sc_MPI_INT8_T, comm, &datasize); SC_CHECK_MPI (mpiret); singlesize += datasize; @@ -696,7 +696,7 @@ t8_default_scheme_hex::element_MPI_Unpack (void *recvbuf, const int buffer_size, SC_CHECK_MPI (mpiret); mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(quads[ielem]->z), 1, sc_MPI_INT, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(quads[ielem]->level), 1, MPI_INT8_T, comm); + mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(quads[ielem]->level), 1, sc_MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); } } diff --git a/src/t8_schemes/t8_default/t8_default_line/t8_default_line.cxx b/src/t8_schemes/t8_default/t8_default_line/t8_default_line.cxx index d996dfb178..89ed58f541 100644 --- a/src/t8_schemes/t8_default/t8_default_line/t8_default_line.cxx +++ b/src/t8_schemes/t8_default/t8_default_line/t8_default_line.cxx @@ -449,7 +449,7 @@ t8_default_scheme_line::element_MPI_Pack (t8_element_t **const elements, const u for (unsigned int ielem = 0; ielem < count; ielem++) { mpiret = sc_MPI_Pack (&(lines[ielem]->x), 1, sc_MPI_INT, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Pack (&lines[ielem]->level, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm); + mpiret = sc_MPI_Pack (&lines[ielem]->level, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); } } @@ -466,7 +466,7 @@ t8_default_scheme_line::element_MPI_Pack_size (const unsigned int count, sc_MPI_ SC_CHECK_MPI (mpiret); singlesize += datasize; - mpiret = sc_MPI_Pack_size (1, MPI_INT8_T, comm, &datasize); + mpiret = sc_MPI_Pack_size (1, sc_MPI_INT8_T, comm, &datasize); SC_CHECK_MPI (mpiret); singlesize += datasize; @@ -483,7 +483,7 @@ t8_default_scheme_line::element_MPI_Unpack (void *recvbuf, const int buffer_size for (unsigned int ielem = 0; ielem < count; ielem++) { mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(lines[ielem]->x), 1, sc_MPI_INT, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(lines[ielem]->level), 1, MPI_INT8_T, comm); + mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(lines[ielem]->level), 1, sc_MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); } } diff --git a/src/t8_schemes/t8_default/t8_default_prism/t8_default_prism.cxx b/src/t8_schemes/t8_default/t8_default_prism/t8_default_prism.cxx index 7405573d9f..d220d5b899 100644 --- a/src/t8_schemes/t8_default/t8_default_prism/t8_default_prism.cxx +++ b/src/t8_schemes/t8_default/t8_default_prism/t8_default_prism.cxx @@ -477,11 +477,11 @@ t8_default_scheme_prism::element_MPI_Pack (t8_element_t **const elements, const SC_CHECK_MPI (mpiret); mpiret = sc_MPI_Pack (&prisms[ielem]->tri.y, 1, sc_MPI_INT, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Pack (&prisms[ielem]->tri.type, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm); + mpiret = sc_MPI_Pack (&prisms[ielem]->tri.type, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); T8_ASSERT (prisms[ielem]->line.level == prisms[ielem]->tri.level); - mpiret = sc_MPI_Pack (&prisms[ielem]->line.level, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm); + mpiret = sc_MPI_Pack (&prisms[ielem]->line.level, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); } } @@ -500,7 +500,7 @@ t8_default_scheme_prism::element_MPI_Pack_size (const unsigned int count, sc_MPI singlesize += 3 * datasize; /*type, level*/ - mpiret = sc_MPI_Pack_size (1, MPI_INT8_T, comm, &datasize); + mpiret = sc_MPI_Pack_size (1, sc_MPI_INT8_T, comm, &datasize); SC_CHECK_MPI (mpiret); singlesize += 2 * datasize; @@ -521,9 +521,9 @@ t8_default_scheme_prism::element_MPI_Unpack (void *recvbuf, const int buffer_siz SC_CHECK_MPI (mpiret); mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(prisms[ielem]->tri.y), 1, sc_MPI_INT, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(prisms[ielem]->tri.type), 1, MPI_INT8_T, comm); + mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(prisms[ielem]->tri.type), 1, sc_MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(prisms[ielem]->tri.level), 1, MPI_INT8_T, comm); + mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(prisms[ielem]->tri.level), 1, sc_MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); prisms[ielem]->line.level = prisms[ielem]->tri.level; } diff --git a/src/t8_schemes/t8_default/t8_default_pyramid/t8_default_pyramid.cxx b/src/t8_schemes/t8_default/t8_default_pyramid/t8_default_pyramid.cxx index e0693be973..88bb4b3ca0 100644 --- a/src/t8_schemes/t8_default/t8_default_pyramid/t8_default_pyramid.cxx +++ b/src/t8_schemes/t8_default/t8_default_pyramid/t8_default_pyramid.cxx @@ -464,7 +464,7 @@ t8_default_scheme_pyramid::element_MPI_Pack (t8_element_t **const elements, cons t8_dtet_element_pack (&p, 1, send_buffer, buffer_size, position, comm); SC_CHECK_MPI ( - sc_MPI_Pack (&pyramids[ielem]->switch_shape_at_level, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm)); + sc_MPI_Pack (&pyramids[ielem]->switch_shape_at_level, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm)); } } @@ -479,7 +479,7 @@ t8_default_scheme_pyramid::element_MPI_Pack_size (const unsigned int count, sc_M singlesize += datasize; /* switch shape at level */ - SC_CHECK_MPI (sc_MPI_Pack_size (1, MPI_INT8_T, comm, &datasize)); + SC_CHECK_MPI (sc_MPI_Pack_size (1, sc_MPI_INT8_T, comm, &datasize)); singlesize += datasize; *pack_size = count * singlesize; @@ -498,7 +498,7 @@ t8_default_scheme_pyramid::element_MPI_Unpack (void *recvbuf, const int buffer_s t8_dtet_element_unpack (recvbuf, buffer_size, position, &p, 1, comm); mpiret - = sc_MPI_Unpack (recvbuf, buffer_size, position, &pyramids[ielem]->switch_shape_at_level, 1, MPI_INT8_T, comm); + = sc_MPI_Unpack (recvbuf, buffer_size, position, &pyramids[ielem]->switch_shape_at_level, 1, sc_MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); } } diff --git a/src/t8_schemes/t8_default/t8_default_quad/t8_default_quad.cxx b/src/t8_schemes/t8_default/t8_default_quad/t8_default_quad.cxx index c0fa9b55b5..de115bae75 100644 --- a/src/t8_schemes/t8_default/t8_default_quad/t8_default_quad.cxx +++ b/src/t8_schemes/t8_default/t8_default_quad/t8_default_quad.cxx @@ -774,7 +774,7 @@ t8_default_scheme_quad::element_MPI_Pack (t8_element_t **const elements, const u SC_CHECK_MPI (mpiret); mpiret = sc_MPI_Pack (&quads[ielem]->y, 1, sc_MPI_INT, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Pack (&quads[ielem]->level, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm); + mpiret = sc_MPI_Pack (&quads[ielem]->level, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); } } @@ -793,7 +793,7 @@ t8_default_scheme_quad::element_MPI_Pack_size (const unsigned int count, sc_MPI_ singlesize += 2 * datasize; /* level */ - mpiret = sc_MPI_Pack_size (1, MPI_INT8_T, comm, &datasize); + mpiret = sc_MPI_Pack_size (1, sc_MPI_INT8_T, comm, &datasize); SC_CHECK_MPI (mpiret); singlesize += datasize; @@ -812,7 +812,7 @@ t8_default_scheme_quad::element_MPI_Unpack (void *recvbuf, const int buffer_size SC_CHECK_MPI (mpiret); mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(quads[ielem]->y), 1, sc_MPI_INT, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(quads[ielem]->level), 1, MPI_INT8_T, comm); + mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(quads[ielem]->level), 1, sc_MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); } } diff --git a/src/t8_schemes/t8_default/t8_default_tri/t8_dtri_bits.c b/src/t8_schemes/t8_default/t8_default_tri/t8_dtri_bits.c index 8fed8fdc48..fed3b9039e 100644 --- a/src/t8_schemes/t8_default/t8_default_tri/t8_dtri_bits.c +++ b/src/t8_schemes/t8_default/t8_default_tri/t8_dtri_bits.c @@ -1718,9 +1718,9 @@ t8_dtri_element_pack (t8_dtri_t **const elements, const unsigned int count, void SC_CHECK_MPI (mpiret); #endif - mpiret = sc_MPI_Pack (&elements[ielem]->type, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm); + mpiret = sc_MPI_Pack (&elements[ielem]->type, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Pack (&elements[ielem]->level, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm); + mpiret = sc_MPI_Pack (&elements[ielem]->level, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); } } @@ -1744,7 +1744,7 @@ t8_dtri_element_pack_size (const unsigned int count, sc_MPI_Comm comm, int *pack singlesize += coord_count * datasize; /* type, level*/ - mpiret = sc_MPI_Pack_size (1, MPI_INT8_T, comm, &datasize); + mpiret = sc_MPI_Pack_size (1, sc_MPI_INT8_T, comm, &datasize); SC_CHECK_MPI (mpiret); singlesize += 2 * datasize; @@ -1766,9 +1766,9 @@ t8_dtri_element_unpack (void *recvbuf, const int buffer_size, int *position, t8_ mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(elements[ielem]->z), 1, sc_MPI_INT, comm); SC_CHECK_MPI (mpiret); #endif - mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(elements[ielem]->type), 1, MPI_INT8_T, comm); + mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(elements[ielem]->type), 1, sc_MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); - mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(elements[ielem]->level), 1, MPI_INT8_T, comm); + mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(elements[ielem]->level), 1, sc_MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); } } diff --git a/src/t8_schemes/t8_default/t8_default_vertex/t8_default_vertex.cxx b/src/t8_schemes/t8_default/t8_default_vertex/t8_default_vertex.cxx index ab6a27696c..5c7bea179f 100644 --- a/src/t8_schemes/t8_default/t8_default_vertex/t8_default_vertex.cxx +++ b/src/t8_schemes/t8_default/t8_default_vertex/t8_default_vertex.cxx @@ -336,7 +336,7 @@ t8_default_scheme_vertex::element_MPI_Pack (t8_element_t **const elements, const int mpiret; t8_dvertex_t **vertices = (t8_dvertex_t **) elements; for (unsigned int ielem = 0; ielem < count; ielem++) { - mpiret = sc_MPI_Pack (&vertices[ielem]->level, 1, MPI_INT8_T, send_buffer, buffer_size, position, comm); + mpiret = sc_MPI_Pack (&vertices[ielem]->level, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm); SC_CHECK_MPI (mpiret); } } @@ -349,7 +349,7 @@ t8_default_scheme_vertex::element_MPI_Pack_size (const unsigned int count, sc_MP int datasize = 0; int mpiret; - mpiret = sc_MPI_Pack_size (1, MPI_INT8_T, comm, &datasize); + mpiret = sc_MPI_Pack_size (1, sc_MPI_INT8_T, comm, &datasize); SC_CHECK_MPI (mpiret); singlesize += datasize; @@ -364,7 +364,7 @@ t8_default_scheme_vertex::element_MPI_Unpack (void *recvbuf, const int buffer_si int mpiret; t8_dvertex_t **vertices = (t8_dvertex_t **) elements; for (unsigned int ielem = 0; ielem < count; ielem++) { - mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(vertices[ielem]->level), 1, MPI_INT8_T, comm); + mpiret = sc_MPI_Unpack (recvbuf, buffer_size, position, &(vertices[ielem]->level), 1, sc_MPI_INT8_T, comm); SC_CHECK_MPI (mpiret); } } From 97409866ba415a6a23335adaf598f73de0cd4cdc Mon Sep 17 00:00:00 2001 From: Alex Dutka <97711898+dutkalex@users.noreply.github.com> Date: Mon, 13 Jan 2025 14:47:38 +0100 Subject: [PATCH 07/13] fix indent --- .../t8_default/t8_default_pyramid/t8_default_pyramid.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/t8_schemes/t8_default/t8_default_pyramid/t8_default_pyramid.cxx b/src/t8_schemes/t8_default/t8_default_pyramid/t8_default_pyramid.cxx index 88bb4b3ca0..7ddd238aa3 100644 --- a/src/t8_schemes/t8_default/t8_default_pyramid/t8_default_pyramid.cxx +++ b/src/t8_schemes/t8_default/t8_default_pyramid/t8_default_pyramid.cxx @@ -463,8 +463,8 @@ t8_default_scheme_pyramid::element_MPI_Pack (t8_element_t **const elements, cons t8_dtet_t *p = &pyramids[ielem]->pyramid; t8_dtet_element_pack (&p, 1, send_buffer, buffer_size, position, comm); - SC_CHECK_MPI ( - sc_MPI_Pack (&pyramids[ielem]->switch_shape_at_level, 1, sc_MPI_INT8_T, send_buffer, buffer_size, position, comm)); + SC_CHECK_MPI (sc_MPI_Pack (&pyramids[ielem]->switch_shape_at_level, 1, sc_MPI_INT8_T, send_buffer, buffer_size, + position, comm)); } } From 6709a74c16122919831db476bcd56db870bcb695 Mon Sep 17 00:00:00 2001 From: Alex Dutka <97711898+dutkalex@users.noreply.github.com> Date: Mon, 13 Jan 2025 14:50:09 +0100 Subject: [PATCH 08/13] fix CMakeLists.txt --- CMakeLists.txt | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 65166ba839..2a129b6488 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,11 +1,15 @@ cmake_minimum_required( VERSION 3.16 ) -include(cmake/GitProjectVersion.cmake) +project( + T8CODE + DESCRIPTION "Parallel algorithms and data structures for tree-based AMR with arbitrary element shapes." + LANGUAGES C CXX + VERSION "${T8CODE_VERSION_MAJOR}.${T8CODE_VERSION_MINOR}.${T8CODE_VERSION_PATCH}" +) -project( T8CODE - DESCRIPTION "Parallel algorithms and data structures for tree-based AMR with arbitrary element shapes." - LANGUAGES C CXX - VERSION "${T8CODE_VERSION_MAJOR}.${T8CODE_VERSION_MINOR}.${T8CODE_VERSION_PATCH}" ) +include(cmake/GitProjectVersion.cmake) +include( CTest ) +include( CMakeDependentOption ) option( T8CODE_BUILD_AS_SHARED_LIBRARY "Whether t8code should be built as a shared or a static library" ON ) option( T8CODE_BUILD_PEDANTIC "Compile t8code with `-pedantic` as done in the Github CI." OFF ) From 93f9688410e34e721cc1a9039632141fac68fddc Mon Sep 17 00:00:00 2001 From: Alex Dutka <97711898+dutkalex@users.noreply.github.com> Date: Mon, 13 Jan 2025 15:01:17 +0100 Subject: [PATCH 09/13] fix CMakeLists.txt --- CMakeLists.txt | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2a129b6488..466657ace8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,7 @@ cmake_minimum_required( VERSION 3.16 ) +include( cmake/GitProjectVersion.cmake ) +include( CTest ) +include( CMakeDependentOption ) project( T8CODE @@ -7,10 +10,6 @@ project( VERSION "${T8CODE_VERSION_MAJOR}.${T8CODE_VERSION_MINOR}.${T8CODE_VERSION_PATCH}" ) -include(cmake/GitProjectVersion.cmake) -include( CTest ) -include( CMakeDependentOption ) - option( T8CODE_BUILD_AS_SHARED_LIBRARY "Whether t8code should be built as a shared or a static library" ON ) option( T8CODE_BUILD_PEDANTIC "Compile t8code with `-pedantic` as done in the Github CI." OFF ) option( T8CODE_BUILD_WALL "Compile t8code with `-Wall` as done in the Github CI." OFF ) From 5b880058c0c6d98c23caa53693b2b436c5cc8063 Mon Sep 17 00:00:00 2001 From: Alex Dutka <97711898+dutkalex@users.noreply.github.com> Date: Mon, 13 Jan 2025 15:08:16 +0100 Subject: [PATCH 10/13] fix CMakeLists.txt --- CMakeLists.txt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 466657ace8..c767ce4f08 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,6 @@ cmake_minimum_required( VERSION 3.16 ) + include( cmake/GitProjectVersion.cmake ) -include( CTest ) -include( CMakeDependentOption ) project( T8CODE @@ -10,6 +9,9 @@ project( VERSION "${T8CODE_VERSION_MAJOR}.${T8CODE_VERSION_MINOR}.${T8CODE_VERSION_PATCH}" ) +include( CTest ) +include( CMakeDependentOption ) + option( T8CODE_BUILD_AS_SHARED_LIBRARY "Whether t8code should be built as a shared or a static library" ON ) option( T8CODE_BUILD_PEDANTIC "Compile t8code with `-pedantic` as done in the Github CI." OFF ) option( T8CODE_BUILD_WALL "Compile t8code with `-Wall` as done in the Github CI." OFF ) From 3fb41f35da6b130b60cd1d76398c596e18173944 Mon Sep 17 00:00:00 2001 From: Alex Dutka <97711898+dutkalex@users.noreply.github.com> Date: Mon, 13 Jan 2025 15:31:28 +0100 Subject: [PATCH 11/13] update libsc --- sc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sc b/sc index c371874cdd..1b127f01c5 160000 --- a/sc +++ b/sc @@ -1 +1 @@ -Subproject commit c371874cdde434e831175d0feef3d869aa340c11 +Subproject commit 1b127f01c5e472039e938f61201ae0611fb25bad From 2132126e55dd441ec96356c2a9dcde8a20f240c7 Mon Sep 17 00:00:00 2001 From: Alex Dutka <97711898+dutkalex@users.noreply.github.com> Date: Thu, 16 Jan 2025 19:25:23 +0100 Subject: [PATCH 12/13] remove duplicates --- CMakeLists.txt | 4 ---- 1 file changed, 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c767ce4f08..384be04072 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -33,10 +33,6 @@ option( T8CODE_ENABLE_NETCDF "Enable t8code's features which rely on netCDF" OFF option( T8CODE_USE_SYSTEM_SC "Use system-installed sc library" OFF ) option( T8CODE_USE_SYSTEM_P4EST "Use system-installed p4est library" OFF ) -option( T8CODE_BUILD_AS_SHARED_LIBRARY "Whether t8code should be built as a shared or a static library" ON ) -option( T8CODE_BUILD_PEDANTIC "Compile t8code with `-Wall -pedantic -Werror` as done in the Github CI." OFF ) -option( T8CODE_EXPORT_COMPILE_COMMANDS "Export the compile commands as json. Can be used by IDEs for code completion (e.g. intellisense, clangd)" OFF ) - option( T8CODE_BUILD_TESTS "Build t8code's automated tests" ON ) cmake_dependent_option( T8CODE_BUILD_TPL_TESTS "Build the tests from libsc and p4est" ON "T8CODE_BUILD_TESTS" OFF ) cmake_dependent_option( T8CODE_ENABLE_LESS_TESTS "Tests not as thoroughly to speed up the test suite. Tests the same functionality. (WARNING: Use with care.)" OFF "T8CODE_BUILD_TESTS" OFF ) From a953e47e83597d40470baffcfbb5d7a3d7c367cd Mon Sep 17 00:00:00 2001 From: Alex Dutka <97711898+dutkalex@users.noreply.github.com> Date: Mon, 20 Jan 2025 17:05:24 +0100 Subject: [PATCH 13/13] remove more duplicated options --- CMakeLists.txt | 21 +++++++-------------- 1 file changed, 7 insertions(+), 14 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 384be04072..94c036839a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,12 +18,17 @@ option( T8CODE_BUILD_WALL "Compile t8code with `-Wall` as done in the Github CI. option( T8CODE_BUILD_WERROR "Compile t8code with `-Werror` as done in the Github CI." OFF ) option( T8CODE_BUILD_EXTRA_WARNINGS "Compile t8code with extra warnings as done in the Github CI." OFF ) option( T8CODE_EXPORT_COMPILE_COMMANDS "Export the compile commands as json. Can be used by IDEs for code completion (e.g. intellisense, clangd)" OFF ) + option( T8CODE_BUILD_TESTS "Build t8code's automated tests" ON ) -option( T8CODE_BUILD_TUTORIALS "Build t8code's tutorials" ON ) +cmake_dependent_option( T8CODE_BUILD_TPL_TESTS "Build the tests from libsc and p4est" ON "T8CODE_BUILD_TESTS" OFF ) +cmake_dependent_option( T8CODE_ENABLE_LESS_TESTS "Tests not as thoroughly to speed up the test suite. Tests the same functionality. (WARNING: Use with care.)" OFF "T8CODE_BUILD_TESTS" OFF ) + option( T8CODE_BUILD_EXAMPLES "Build t8code's examples" ON ) +cmake_dependent_option( T8CODE_BUILD_TPL_EXAMPLES "Build the examples from libsc and p4est" OFF "T8CODE_BUILD_EXAMPLES" OFF ) + +option( T8CODE_BUILD_TUTORIALS "Build t8code's tutorials" ON ) option( T8CODE_BUILD_BENCHMARKS "Build t8code's benchmarks" ON ) option( T8CODE_BUILD_FORTRAN_INTERFACE "Build t8code's Fortran interface" OFF ) -option( T8CODE_ENABLE_LESS_TESTS "Tests not as thoroughly to speed up the test suite. Tests the same functionality. (WARNING: Use with care.)" OFF ) option( T8CODE_ENABLE_MPI "Enable t8code's features which rely on MPI" ON ) option( T8CODE_ENABLE_VTK "Enable t8code's features which rely on VTK" OFF ) @@ -33,18 +38,6 @@ option( T8CODE_ENABLE_NETCDF "Enable t8code's features which rely on netCDF" OFF option( T8CODE_USE_SYSTEM_SC "Use system-installed sc library" OFF ) option( T8CODE_USE_SYSTEM_P4EST "Use system-installed p4est library" OFF ) -option( T8CODE_BUILD_TESTS "Build t8code's automated tests" ON ) -cmake_dependent_option( T8CODE_BUILD_TPL_TESTS "Build the tests from libsc and p4est" ON "T8CODE_BUILD_TESTS" OFF ) -cmake_dependent_option( T8CODE_ENABLE_LESS_TESTS "Tests not as thoroughly to speed up the test suite. Tests the same functionality. (WARNING: Use with care.)" OFF "T8CODE_BUILD_TESTS" OFF ) - -option( T8CODE_BUILD_TUTORIALS "Build t8code's tutorials" ON ) - -option( T8CODE_BUILD_EXAMPLES "Build t8code's examples" ON ) -cmake_dependent_option( T8CODE_BUILD_TPL_EXAMPLES "Build the examples from libsc and p4est" OFF "T8CODE_BUILD_EXAMPLES" OFF ) - -option( T8CODE_BUILD_BENCHMARKS "Build t8code's benchmarks" ON ) -option( T8CODE_BUILD_FORTRAN_INTERFACE "Build t8code's Fortran interface" OFF ) - option( T8CODE_BUILD_DOCUMENTATION "Build t8code's documentation" OFF ) cmake_dependent_option( T8CODE_BUILD_DOCUMENTATION_SPHINX "Build t8code's documentation using sphinx" OFF "T8CODE_BUILD_DOCUMENTATION" OFF )