1
cmake_minimum_required (VERSION 2.8)
2
set (CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/Modules)
3
include(${CMAKE_CURRENT_SOURCE_DIR}/Modules/CMakeUtilityFunctions.cmake)
5
project (AdiosPython CXX)
7
find_package (PythonInterp REQUIRED)
9
find_package (PythonLibs REQUIRED)
10
include_directories (${PYTHON_INCLUDE_DIRS})
12
find_package (Numpy REQUIRED)
13
include_directories (${PYTHON_NUMPY_INCLUDE_DIR})
15
find_package (MPI4Py REQUIRED)
17
option (ADIOS_USE_MPI "Use parallel ADIOS" ON)
19
find_package (ADIOS REQUIRED)
20
add_definitions (${ADIOS_COMPILE_FLAGS})
21
add_definitions (-DADIOS_USE_READ_API_1)
22
include_directories (${ADIOS_INCLUDE_PATH})
24
find_package (MPI REQUIRED)
25
include_directories (${MPI_CXX_INCLUDE_PATH})
31
foreach (FILE ${PSRCS})
32
string (REGEX REPLACE ".pyx" ".cpp" OUTFILE ${FILE})
36
COMMAND cython -o ${CMAKE_CURRENT_BINARY_DIR}/${OUTFILE} -I${PYTHON_MPI4PY_INCLUDE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/${FILE}
39
list (APPEND SRCS ${OUTFILE})
42
add_library (adios MODULE
46
target_link_libraries (adios
52
set_target_properties (adios
53
PROPERTIES OUTPUT_NAME adios
55
##LINK_FLAGS "-undefined dynamic_lookup"
59
add_test (test_write ${CMAKE_CURRENT_SOURCE_DIR}/test/test_adios_write.sh ${CMAKE_CURRENT_SOURCE_DIR}/test)
60
add_test (test_read ${CMAKE_CURRENT_SOURCE_DIR}/test/test_adios_read.sh ${CMAKE_CURRENT_SOURCE_DIR}/test)
61
add_test (test_noxml ${CMAKE_CURRENT_SOURCE_DIR}/test/test_adios_noxml.sh ${CMAKE_CURRENT_SOURCE_DIR}/test)