cmake_minimum_required(VERSION 3.20)

project(AdiosCatalyst LANGUAGES C CXX)

set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)

include (GNUInstallDirs)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_BINDIR}")
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}")

find_package(ADIOS2 REQUIRED)
find_package(catalyst REQUIRED)

option(USE_MPI "Use MPI" OFF)

if(USE_MPI)
  find_package(MPI REQUIRED)
endif()

# Contains the current implementation
add_subdirectory(AdiosCatalyst)

# For testing
option(BUILD_TESTING "Build tests" OFF)
if(BUILD_TESTING)

  include(CTest)
  enable_testing()

  add_subdirectory(Testing)
endif()
