xref: /phasta/phastaIO/CMakeLists.txt (revision 98d6580a8ecca5add329d7adadb1985835e1e604)
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