159599516SKenneth E. Jansenproject(phastaIO) 259599516SKenneth E. Jansenenable_language(CXX) 359599516SKenneth E. Jansen 4*8cd183ecSCameron Smith 5e85dd27fSBen Matthewsif(NOT PHASTA_SKIP_MPI_CHECK) 659599516SKenneth E. Jansenfind_package(MPI REQUIRED) 7e85dd27fSBen Matthewsendif() 859599516SKenneth E. Janseninclude_directories(${MPI_C_INCLUDE_PATH}) 959599516SKenneth E. Jansen# collect all the source files 1059599516SKenneth E. Janseninclude(FortranCInterface) 1159599516SKenneth E. JansenFortranCInterface_VERIFY(CXX) 1259599516SKenneth E. JansenFortranCInterface_Header(FCMangle.h) 1359599516SKenneth E. Janseninclude_directories("${phastaIO_BINARY_DIR}") 1459599516SKenneth E. Jansenadd_definitions(-DMPICH_SKIP_MPICXX) 1559599516SKenneth E. Jansenadd_definitions(-DOMPI_SKIP_MPICXX=1) 168f9016f6SCameron Smithset(SRC_FILES phiotmrc.cc phastaIO.cc phiompi.c) 178f9016f6SCameron Smithif(NOT PHASTA_CHEF_ENABLED) 18*8cd183ecSCameron Smith set(CMAKE_Fortran_MODULE_DIRECTORY ${CMAKE_BINARY_DIR}/phSolver/modules) 19*8cd183ecSCameron Smith set(SRC_FILES ${SRC_FILES} 20*8cd183ecSCameron Smith phiotimer_empty/phiotimer_empty.cc 21*8cd183ecSCameron Smith phiotimer_empty/phiotimer_empty.f) 228f9016f6SCameron Smith include_directories(phiotimer_empty) 238f9016f6SCameron Smithendif() 2459599516SKenneth E. Jansen 2559599516SKenneth E. JansenADD_LIBRARY(phastaIO ${SRC_FILES}) 2630d80da6SCameron Smithtarget_link_libraries(phastaIO PRIVATE ${MPI_C_LIBRARIES}) 2730d80da6SCameron Smithif(PHASTA_CHEF_ENABLED) 2830d80da6SCameron Smith TARGET_LINK_LIBRARIES(phastaIO PUBLIC SCOREC::ph) 2930d80da6SCameron Smithendif() 30