From: Kefu Chai Date: Sat, 2 Jul 2016 07:22:03 +0000 (+0800) Subject: cmake: install python srcs into platform-independent dir X-Git-Tag: ses5-milestone5~503^2~10 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=383bee9506edef865910052634f803cc5dad9eba;p=ceph.git cmake: install python srcs into platform-independent dir otherwise they will be installed into $PREFIX/lib64/python2.7/site-packages instead of $PREFIX/lib/python2.7/site-packages on amd64 arch. Signed-off-by: Kefu Chai --- diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 0db78343d0cf..bfc215983504 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -245,21 +245,6 @@ if(NOT PYTHONINTERP_FOUND) endif(NOT PYTHONINTERP_FOUND) find_package(PythonLibs REQUIRED) -# if CMAKE_INSTALL_PREFIX is an empty string, must replace -# it with "/" to make PYTHON_INSTALL_TEMPLATE an absolute path to be -# consistent with all other installation paths. -if(CMAKE_INSTALL_PREFIX) - set(PYTHON_INSTALL_TEMPLATE "${CMAKE_INSTALL_PREFIX}") -else(CMAKE_INSTALL_PREFIX) - set(PYTHON_INSTALL_TEMPLATE "/") -endif(CMAKE_INSTALL_PREFIX) - -execute_process( - COMMAND - ${PYTHON_EXECUTABLE} -c "from distutils import sysconfig; print sysconfig.get_python_lib(1,0,prefix='${PYTHON_INSTALL_TEMPLATE}')" - OUTPUT_VARIABLE PYTHON_INSTDIR - OUTPUT_STRIP_TRAILING_WHITESPACE) - if(HAVE_XIO) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -I${XIO_INCLUDE_DIR}") list(APPEND EXTRALIBS ${XIO_LIBRARY} pthread rt) @@ -692,9 +677,6 @@ target_link_libraries(librados-config librados global ${BLKID_LIBRARIES} install(TARGETS rados librados-config DESTINATION bin) -install(DIRECTORY ${CMAKE_SOURCE_DIR}/src/pybind/ - DESTINATION ${PYTHON_INSTDIR}) - # virtualenv base directory for ceph-disk and ceph-detect-init set(CEPH_BUILD_VIRTUALENV $ENV{TMPDIR}) if(NOT CEPH_BUILD_VIRTUALENV) diff --git a/src/pybind/CMakeLists.txt b/src/pybind/CMakeLists.txt index 9acea1db9214..6e2fbe715398 100644 --- a/src/pybind/CMakeLists.txt +++ b/src/pybind/CMakeLists.txt @@ -8,4 +8,26 @@ add_subdirectory(rbd) add_subdirectory(cephfs) add_custom_target(cython_modules ALL - DEPENDS cython_rados cython_cephfs cython_rbd) + DEPENDS cython_rados cython_cephfs cython_rbd) + +# if CMAKE_INSTALL_PREFIX is an empty string, must replace +# it with "/" to make PYTHON_INSTALL_TEMPLATE an absolute path to be +# consistent with all other installation paths. +if(CMAKE_INSTALL_PREFIX) + set(PYTHON_INSTALL_TEMPLATE "${CMAKE_INSTALL_PREFIX}") +else(CMAKE_INSTALL_PREFIX) + set(PYTHON_INSTALL_TEMPLATE "/") +endif(CMAKE_INSTALL_PREFIX) + +execute_process( + COMMAND + ${PYTHON_EXECUTABLE} -c "from distutils import sysconfig; print sysconfig.get_python_lib(prefix='${PYTHON_INSTALL_TEMPLATE}')" + OUTPUT_VARIABLE PYTHON_INSTDIR + OUTPUT_STRIP_TRAILING_WHITESPACE) + +install(FILES + ${CMAKE_CURRENT_SOURCE_DIR}/ceph_argparse.py + ${CMAKE_CURRENT_SOURCE_DIR}/ceph_daemon.py + ${CMAKE_CURRENT_SOURCE_DIR}/ceph_rest_api.py + ${CMAKE_CURRENT_SOURCE_DIR}/ceph_volume_client.py + DESTINATION ${PYTHON_INSTDIR})