Skip to content

Commit 13d9b06

Browse files
qbisischnellerhasejhale
authored
fix build with adios2 v2.11.0 (#4004)
* fix build with adios2 v2.11 The target cxx11_mpi has been renamed to cxx_mpi since adios2 v2.11. * find adios2 with component MPI * BUMP adios2 to 2.11.0 * Small tweaks --------- Co-authored-by: Paul T. Kühner <56360279+schnellerhase@users.noreply.github.com> Co-authored-by: Jack S. Hale <mail@jackhale.co.uk>
1 parent 7295803 commit 13d9b06

3 files changed

Lines changed: 14 additions & 10 deletions

File tree

cpp/CMakeLists.txt

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -377,15 +377,9 @@ set_package_properties(
377377
# ------------------------------------------------------------------------------
378378
# Find optional packages
379379
if(DOLFINX_ENABLE_ADIOS2 AND _REQUIRE_ADIOS2)
380-
find_package(ADIOS2 2.8.1 REQUIRED COMPONENTS CXX)
380+
find_package(ADIOS2 2.8.1 REQUIRED COMPONENTS CXX MPI)
381381
elseif(DOLFINX_ENABLE_ADIOS2)
382-
find_package(ADIOS2 2.8.1 COMPONENTS CXX)
383-
endif()
384-
if(ADIOS2_FOUND AND NOT ADIOS2_HAVE_MPI)
385-
message(
386-
FATAL_ERROR
387-
"Found serial ADIOS2, MPI ADIOS2 build required. Try setting ADIOS2_DIR or ADIOS2_ROOT."
388-
)
382+
find_package(ADIOS2 2.8.1 COMPONENTS CXX MPI)
389383
endif()
390384

391385
if(DOLFINX_ENABLE_PETSC)

cpp/dolfinx/CMakeLists.txt

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,17 @@ target_link_libraries(dolfinx PUBLIC hdf5::hdf5)
123123
# ADIOS2
124124
if(ADIOS2_FOUND)
125125
target_compile_definitions(dolfinx PUBLIC HAS_ADIOS2)
126-
target_link_libraries(dolfinx PUBLIC adios2::cxx11_mpi)
126+
# ADIOS2 2.11 and later
127+
if(TARGET adios2::cxx_mpi)
128+
set(_adios2_mpi_target adios2::cxx_mpi)
129+
# And prior
130+
elseif(TARGET adios2::cxx11_mpi)
131+
set(_adios2_mpi_target adios2::cxx11_mpi)
132+
else()
133+
message(FATAL_ERROR
134+
"ADIOS2 found, but no adios2::cxx*_mpi target found.")
135+
endif()
136+
target_link_libraries(dolfinx PUBLIC ${_adios2_mpi_target})
127137
endif()
128138

129139
# PETSc

docker/Dockerfile.test-env

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
# docker build --target dev-env --file dolfinx/docker/Dockerfile.test-env --build-arg PETSC_SLEPC_OPTFLAGS="-O2 -march=native" .
1313
#
1414

15-
ARG ADIOS2_VERSION=2.10.2
15+
ARG ADIOS2_VERSION=2.11.0
1616
ARG DOXYGEN_VERSION=1_14_0
1717
ARG GMSH_VERSION=4_14_0
1818
ARG HDF5_VERSION=1.14.6

0 commit comments

Comments
 (0)