xref: /phasta/phSolver/common/CMakeLists.txt (revision dcce770d0dea56e763c7aa762c8e3c3ec090f60a)
159599516SKenneth E. Jansen# collect all the source files
259599516SKenneth E. JansenFILE(GLOB SRC_FILES *.cc *.f *.f90 *.c *.F90)
3295809c6SCameron Smithset(PHASTA_COMMON_INCLUDE_DIRS)
4295809c6SCameron Smithset(PHASTA_COMMON_LIBS)
559599516SKenneth E. Jansenif(PHASTA_USE_MPI)
659599516SKenneth E. Jansen  add_definitions(-DOMPI_SKIP_MPICXX=1)
7295809c6SCameron Smith  set(PHASTA_COMMON_INCLUDE_DIRS ${PHASTA_COMMON_INCLUDE_DIRS}
807df5f19SCameron Smith    ${CMAKE_CURRENT_SOURCE_DIR}
9295809c6SCameron Smith    ${MPI_INCLUDE_PATH}
10295809c6SCameron Smith    ${MPI_Fortran_INCLUDE_PATH}
11295809c6SCameron Smith  )
12295809c6SCameron Smith  set(PHASTA_COMMON_LIBS ${PHASTA_COMMON_LIBS}
13295809c6SCameron Smith    ${MPI_LIBRARIES}
14295809c6SCameron Smith    ${MPI_Fortran_LIBRARIES}
15295809c6SCameron Smith  )
1659599516SKenneth E. Jansenendif(PHASTA_USE_MPI)
176d494944SCameron Smith
186d494944SCameron Smithif(PHASTA_CHEF_ENABLED)
19295809c6SCameron Smith  set(PHASTA_COMMON_LIBS ${PHASTA_COMMON_LIBS} phstream)
20295809c6SCameron Smith  set(PHASTA_COMMON_INCLUDE_DIRS
21295809c6SCameron Smith    ${PHASTA_COMMON_INCLUDE_DIRS}
226d494944SCameron Smith    ${PHASTACHEF_SOURCE_DIR}/phstream
236d494944SCameron Smith  )
246d494944SCameron Smithelse()
25a02bd9e8SCameron Smith  set(SRC_FILES ${SRC_FILES} phstreamEmpty/phstreamEmpty.cc)
267660e259SMichel Rasquin  set(PHASTA_COMMON_INCLUDE_DIRS
277660e259SMichel Rasquin      ${PHASTA_COMMON_INCLUDE_DIRS}
287660e259SMichel Rasquin      ${CMAKE_CURRENT_SOURCE_DIR}/phstreamEmpty)
296d494944SCameron Smithendif()
306d494944SCameron Smith
31295809c6SCameron Smithinclude_directories(${PHASTA_COMMON_INCLUDE_DIRS})
320bfd2916SCameron Smith
33295809c6SCameron SmithADD_LIBRARY(common ${SRC_FILES})
34*dcce770dSKenneth E. Jansenif(CMAKE_Fortran_COMPILER_ID MATCHES XL)
35*dcce770dSKenneth E. Jansen        set_source_files_properties(fillsparse.f PROPERTIES COMPILE_FLAGS
36*dcce770dSKenneth E. Jansen"-qsuffix=cpp=f")
37*dcce770dSKenneth E. Jansen        set_source_files_properties(petscdbg.f PROPERTIES COMPILE_FLAGS
38*dcce770dSKenneth E. Jansen"-qsuffix=cpp=f")
39*dcce770dSKenneth E. Jansenendif(CMAKE_Fortran_COMPILER_ID MATCHES XL)
40295809c6SCameron SmithTARGET_LINK_LIBRARIES(common ${PHASTA_COMMON_LIBS})
41295809c6SCameron Smith
42295809c6SCameron Smithconfigure_file(
43295809c6SCameron Smith  "${CMAKE_CURRENT_SOURCE_DIR}/phastaCommonConfig.cmake.in"
44295809c6SCameron Smith  "${CMAKE_BINARY_DIR}/phastaCommonConfig.cmake"
452992863cSCameron Smith)
462992863cSCameron Smith
472992863cSCameron Smithexecute_process(
482992863cSCameron Smith  COMMAND git rev-parse HEAD
492992863cSCameron Smith  WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
502992863cSCameron Smith  OUTPUT_VARIABLE git_hash
512992863cSCameron Smith)
522992863cSCameron Smithset(git_hash_string "# git hash ${git_hash}")
532992863cSCameron Smithexecute_process(
542992863cSCameron Smith  COMMAND echo -n ${git_hash_string}
552992863cSCameron Smith  COMMAND cat - input.config
562992863cSCameron Smith  WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
572992863cSCameron Smith  OUTPUT_FILE ${CMAKE_BINARY_DIR}/input.config
58295809c6SCameron Smith)
596d494944SCameron Smith
602e3b5a4aSCameron Smithif(PHASTA_TESTING)
610bfd2916SCameron Smith  add_subdirectory(test)
622e3b5a4aSCameron Smithendif(PHASTA_TESTING)
63