xref: /phasta/phSolver/common/CMakeLists.txt (revision 3de22adcea938dcbea5f2b4ef2369694350775bd)
1# collect all the source files
2FILE(GLOB SRC_FILES *.cc *.f *.f90 *.c *.F90)
3set(PHASTA_COMMON_INCLUDE_DIRS)
4set(PHASTA_COMMON_LIBS)
5if(PHASTA_USE_MPI)
6  add_definitions(-DOMPI_SKIP_MPICXX=1)
7  set(PHASTA_COMMON_INCLUDE_DIRS ${PHASTA_COMMON_INCLUDE_DIRS}
8    ${CMAKE_CURRENT_SOURCE_DIR}
9    ${MPI_INCLUDE_PATH}
10    ${MPI_Fortran_INCLUDE_PATH}
11  )
12  set(PHASTA_COMMON_LIBS ${PHASTA_COMMON_LIBS}
13    ${MPI_LIBRARIES}
14    ${MPI_Fortran_LIBRARIES}
15  )
16endif(PHASTA_USE_MPI)
17
18if(PHASTA_CHEF_ENABLED)
19  set(PHASTA_COMMON_LIBS ${PHASTA_COMMON_LIBS} phstream)
20  set(PHASTA_COMMON_INCLUDE_DIRS
21    ${PHASTA_COMMON_INCLUDE_DIRS}
22    ${PHASTACHEF_SOURCE_DIR}/phstream
23  )
24else()
25  set(SRC_FILES ${SRC_FILES} phstreamEmpty/phstreamEmpty.cc)
26  set(PHASTA_COMMON_INCLUDE_DIRS
27      ${PHASTA_COMMON_INCLUDE_DIRS}
28      ${CMAKE_CURRENT_SOURCE_DIR}/phstreamEmpty)
29endif()
30
31include_directories(${PHASTA_COMMON_INCLUDE_DIRS})
32
33ADD_LIBRARY(common ${SRC_FILES})
34TARGET_LINK_LIBRARIES(common ${PHASTA_COMMON_LIBS})
35
36configure_file(
37  "${CMAKE_CURRENT_SOURCE_DIR}/phastaCommonConfig.cmake.in"
38  "${CMAKE_BINARY_DIR}/phastaCommonConfig.cmake"
39)
40
41if(PHASTA_TESTING)
42  add_subdirectory(test)
43endif(PHASTA_TESTING)
44