CMAKE_MINIMUM_REQUIRED( VERSION 2.8)
PROJECT (PJACOBI C)

INCLUDE_DIRECTORIES("${PROJECT_SOURCE_DIR}")

FIND_PACKAGE(MPI REQUIRED) 
INCLUDE_DIRECTORIES(${MPI_C_INCLUDE_PATH})


SET(C_SRCS
solvers.c
pjacobi.c
)

ADD_EXECUTABLE(sjacobi ${C_SRCS})
TARGET_LINK_LIBRARIES(sjacobi m)

ADD_EXECUTABLE(pjacobi ${C_SRCS})
TARGET_LINK_LIBRARIES(pjacobi ${MPI_C_LIBRARIES} m)
SET_PROPERTY(TARGET pjacobi APPEND PROPERTY COMPILE_FLAGS "-DPARALLEL")

OPTION(INSITU_COUPLING "create an executable linked with VisIt" ON)
if(INSITU_COUPLING)
INCLUDE_DIRECTORIES("$ENV{VISITHOME}/current/linux-x86_64/libsim/V2/include")
LINK_DIRECTORIES("$ENV{VISITHOME}/current/linux-x86_64/libsim/V2/lib")

ADD_EXECUTABLE(sjacobi_visit ${C_SRCS} PJacobi_InSitu.c)
TARGET_LINK_LIBRARIES(sjacobi_visit simV2.a dl m stdc++)
SET_PROPERTY(TARGET sjacobi_visit APPEND PROPERTY COMPILE_FLAGS "-D_VISIT_")


ADD_EXECUTABLE(pjacobi_visit ${C_SRCS} PJacobi_InSitu.c)
TARGET_LINK_LIBRARIES(pjacobi_visit ${MPI_C_LIBRARIES} simV2.a dl m stdc++)
SET_PROPERTY(TARGET pjacobi_visit APPEND PROPERTY COMPILE_FLAGS "-D_VISIT_ -DPARALLEL")
endif(INSITU_COUPLING)

