提交 e60103f5 编写于 作者: H Haonan 提交者: Xiaochen Lian

improve CMakeLists.txt (#8)

上级 04c220ba
...@@ -17,24 +17,23 @@ cmake_minimum_required(VERSION 3.8) ...@@ -17,24 +17,23 @@ cmake_minimum_required(VERSION 3.8)
enable_testing() enable_testing()
option(WITH_TESTING "Include unit testing" ON) option(WITH_TESTING "Include unit testing" ON)
option(FLUID_PATH "Path to PaddlePaddle Fluid" "") set(PADDLE_PYTHON_PATH "" CACHE STRING "Python path to PaddlePaddle Fluid")
function(py_test TARGET_NAME) function(py_test TARGET_NAME)
if(WITH_TESTING) set(options "")
set(options "") set(oneValueArgs "")
set(oneValueArgs "") set(multiValueArgs SRCS DEPS ARGS ENVS)
set(multiValueArgs SRCS DEPS ARGS ENVS) cmake_parse_arguments(py_test "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
cmake_parse_arguments(py_test "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) add_test(NAME ${TARGET_NAME}
add_test(NAME ${TARGET_NAME} COMMAND env PYTHONPATH=.:${py_test_ENVS}
COMMAND env PYTHONPATH=.:${py_test_ENVS} python -u ${py_test_SRCS} ${py_test_ARGS}
python -u ${py_test_SRCS} ${py_test_ARGS} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
endif()
endfunction() endfunction()
file(GLOB_RECURSE TEST_OPS RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "test_*.py") if (WITH_TESTING)
string(REPLACE ".py" "" TEST_OPS "${TEST_OPS}") file(GLOB_RECURSE TEST_OPS RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}" "test_*.py")
string(REPLACE ".py" "" TEST_OPS "${TEST_OPS}")
foreach(src ${TEST_OPS}) foreach(src ${TEST_OPS})
py_test(${src} SRCS ${src}.py ENVS ${FLUID_PATH}) py_test(${src} SRCS ${src}.py ENVS ${PADDLE_PYTHON_PATH})
endforeach() endforeach()
endif()
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册