提交 bd1f6a79 编写于 作者: L liaogang

Fix swig on linux and clean cmake

上级 8c3a9e6b
...@@ -72,14 +72,21 @@ include_directories("${PROJ_ROOT}/paddle/cuda/include") ...@@ -72,14 +72,21 @@ include_directories("${PROJ_ROOT}/paddle/cuda/include")
include_directories("${CMAKE_CURRENT_BINARY_DIR}/proto") include_directories("${CMAKE_CURRENT_BINARY_DIR}/proto")
set(EXTERNAL_LIBS set(EXTERNAL_LIBS
# have not include gtest here.
${GFLAGS_LIBRARIES} ${GFLAGS_LIBRARIES}
${GLOG_LIBRARIES} ${GLOG_LIBRARIES}
${CBLAS_LIBRARIES} ${CBLAS_LIBRARIES}
${PROTOBUF_LIBRARY} ${PROTOBUF_LIBRARY}
${ZLIB_LIBRARIES} ${ZLIB_LIBRARIES}
${PYTHON_LIBRARIES}
) )
if(WITH_GPU)
list(APPEND EXTERNAL_LIB ${CUDA_LIBRARIES} ${CUDA_rt_LIBRARY})
if(NOT WITH_DSO)
list(APPEND EXTERNAL_LIB ${CUDNN_LIBRARY} ${CUDA_CUBLAS_LIBRARIES} ${CUDA_curand_LIBRARY})
endif(NOT WITH_DSO)
endif(WITH_GPU)
add_subdirectory(proto) add_subdirectory(proto)
add_subdirectory(paddle) add_subdirectory(paddle)
add_subdirectory(python) add_subdirectory(python)
......
...@@ -216,7 +216,3 @@ ENDIF(PYTHONLIBS_FOUND AND PYTHONINTERP_FOUND) ...@@ -216,7 +216,3 @@ ENDIF(PYTHONLIBS_FOUND AND PYTHONINTERP_FOUND)
INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIR}) INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIR})
INCLUDE_DIRECTORIES(${PYTHON_NUMPY_INCLUDE_DIR}) INCLUDE_DIRECTORIES(${PYTHON_NUMPY_INCLUDE_DIR})
MESSAGE("[Paddle] Python Executable: ${PYTHON_EXECUTABLE}")
MESSAGE("[Paddle] Python Include: ${PYTHON_INCLUDE_DIRS}")
MESSAGE("[Paddle] Python Libraries: ${PYTHON_LIBRARIES}")
...@@ -95,32 +95,12 @@ function(link_paddle_exe TARGET_NAME) ...@@ -95,32 +95,12 @@ function(link_paddle_exe TARGET_NAME)
paddle_parameter paddle_parameter
paddle_proto paddle_proto
paddle_cuda paddle_cuda
${METRIC_LIBS}
${EXTERNAL_LIBS} ${EXTERNAL_LIBS}
${CMAKE_THREAD_LIBS_INIT} ${CMAKE_THREAD_LIBS_INIT}
${CMAKE_DL_LIBS} ${CMAKE_DL_LIBS}
${RDMA_LD_FLAGS} ${RDMA_LD_FLAGS}
${RDMA_LIBS}) ${RDMA_LIBS})
if(WITH_PYTHON)
target_link_libraries(${TARGET_NAME}
${PYTHON_LIBRARIES} util)
endif()
if(WITH_GPU)
if(NOT WITH_DSO OR WITH_METRIC)
target_link_libraries(${TARGET_NAME}
${CUDNN_LIBRARY}
${CUDA_curand_LIBRARY})
CUDA_ADD_CUBLAS_TO_TARGET(${TARGET_NAME})
endif()
check_library_exists(rt clock_gettime "time.h" HAVE_CLOCK_GETTIME )
if(HAVE_CLOCK_GETTIME)
target_link_libraries(${TARGET_NAME} rt)
endif()
endif()
add_dependencies(${TARGET_NAME} ${external_project_dependencies}) add_dependencies(${TARGET_NAME} ${external_project_dependencies})
endfunction() endfunction()
......
...@@ -45,6 +45,9 @@ SET(SWIG_MODULE_swig_paddle_EXTRA_DEPS ...@@ -45,6 +45,9 @@ SET(SWIG_MODULE_swig_paddle_EXTRA_DEPS
IF(APPLE) IF(APPLE)
SET(CMAKE_LINK_FLAGS "-undefined dynamic_lookup -Wl,-all_load") SET(CMAKE_LINK_FLAGS "-undefined dynamic_lookup -Wl,-all_load")
ELSE(APPLE)
SET(ARCHIVE_START "-Wl,--whole-archive")
SET(ARCHIVE_END "-Wl,--no-whole-archive")
ENDIF(APPLE) ENDIF(APPLE)
SWIG_ADD_MODULE(swig_paddle python Paddle.i) SWIG_ADD_MODULE(swig_paddle python Paddle.i)
...@@ -52,21 +55,23 @@ SWIG_LINK_LIBRARIES(swig_paddle ...@@ -52,21 +55,23 @@ SWIG_LINK_LIBRARIES(swig_paddle
${CMAKE_LINK_FLAGS} ${CMAKE_LINK_FLAGS}
${CMAKE_DL_LIBS} ${CMAKE_DL_LIBS}
${EXTERNAL_LIBS} ${EXTERNAL_LIBS}
${PYTHON_LIBRARIES}
${CMAKE_THREAD_LIBS_INIT} ${CMAKE_THREAD_LIBS_INIT}
${RDMA_LD_FLAGS} ${RDMA_LD_FLAGS}
${RDMA_LIBS} ${RDMA_LIBS}
paddle_parameter paddle_parameter
paddle_function
paddle_math paddle_math
paddle_utils paddle_utils
paddle_gserver
paddle_pserver paddle_pserver
paddle_api paddle_api
paddle_cuda paddle_cuda
paddle_trainer_lib paddle_trainer_lib
paddle_network paddle_network
paddle_proto paddle_proto
ARCHIVE_START
paddle_gserver
paddle_function
${METRIC_LIBS}
ARCHIVE_END
) )
add_custom_command(OUTPUT ${PROJ_ROOT}/paddle/dist/.timestamp add_custom_command(OUTPUT ${PROJ_ROOT}/paddle/dist/.timestamp
......
...@@ -20,7 +20,11 @@ popd > /dev/null ...@@ -20,7 +20,11 @@ popd > /dev/null
cd $SCRIPTPATH cd $SCRIPTPATH
$1 -m pip install ../../dist/*.whl rm -rf .test_env
virtualenv .test_env
source .test_env/bin/activate
python -m pip install ../../dist/*.whl
test_list="testArguments.py testGradientMachine.py testMatrix.py testVector.py testTrain.py testTrainer.py" test_list="testArguments.py testGradientMachine.py testMatrix.py testVector.py testTrain.py testTrainer.py"
...@@ -29,7 +33,7 @@ export PYTHONPATH=$PWD/../../../python/ ...@@ -29,7 +33,7 @@ export PYTHONPATH=$PWD/../../../python/
for fn in $test_list for fn in $test_list
do do
echo "test $fn" echo "test $fn"
$1 $fn python $fn
if [ $? -ne 0 ]; then if [ $? -ne 0 ]; then
exit 1 exit 1
fi fi
......
...@@ -16,12 +16,12 @@ ...@@ -16,12 +16,12 @@
from setuptools import setup, Extension from setuptools import setup, Extension
setup(name="py_paddle", setup(name="py_paddle",
version="@PADDLE_VERSION@", version="@PADDLE_VERSION@",
packages=['py_paddle'], packages=['py_paddle'],
include_package_data=True, include_package_data=True,
package_data={'py_paddle':['*.py','_swig_paddle.so']}, package_data={'py_paddle':['*.py','_swig_paddle.so']},
install_requires = [ install_requires = [
'numpy>=1.8.0', # The numpy is required. 'numpy>=1.8.0', # The numpy is required.
'protobuf>=2.4.1' # The paddle protobuf version 'protobuf>=2.4.1' # The paddle protobuf version
], ],
) )
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册