You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by uw...@apache.org on 2017/04/19 17:42:54 UTC
arrow git commit: ARROW-853: [Python] Only set RPATH when bundling
the shared libraries
Repository: arrow
Updated Branches:
refs/heads/master 4555ab92b -> 41a8ff9ad
ARROW-853: [Python] Only set RPATH when bundling the shared libraries
See discussion in https://github.com/apache/arrow/pull/562. Modifying RPATH is no longer needed when libarrow/libarrow_python are installed someplace else in the loader path.
Author: Wes McKinney <we...@twosigma.com>
Closes #564 from wesm/ARROW-853 and squashes the following commits:
262f43a [Wes McKinney] Only set RPATH when bundling the shared libraries
Project: http://git-wip-us.apache.org/repos/asf/arrow/repo
Commit: http://git-wip-us.apache.org/repos/asf/arrow/commit/41a8ff9a
Tree: http://git-wip-us.apache.org/repos/asf/arrow/tree/41a8ff9a
Diff: http://git-wip-us.apache.org/repos/asf/arrow/diff/41a8ff9a
Branch: refs/heads/master
Commit: 41a8ff9ad18a4970c16b674b56ade25b8e8986ec
Parents: 4555ab9
Author: Wes McKinney <we...@twosigma.com>
Authored: Wed Apr 19 19:42:49 2017 +0200
Committer: Uwe L. Korn <uw...@xhochy.com>
Committed: Wed Apr 19 19:42:49 2017 +0200
----------------------------------------------------------------------
python/CMakeLists.txt | 24 ++++++++++++++----------
1 file changed, 14 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/arrow/blob/41a8ff9a/python/CMakeLists.txt
----------------------------------------------------------------------
diff --git a/python/CMakeLists.txt b/python/CMakeLists.txt
index 3db7b7b..0d34bcd 100644
--- a/python/CMakeLists.txt
+++ b/python/CMakeLists.txt
@@ -346,21 +346,25 @@ foreach(module ${CYTHON_EXTENSIONS})
LIBRARY_OUTPUT_DIRECTORY ${module_output_directory})
endif()
- if(APPLE)
+ if (PYARROW_BUNDLE_ARROW_CPP)
+ # In the event that we are bundling the shared libraries (e.g. in a
+ # manylinux1 wheel), we need to set the RPATH of the extensions to the
+ # root of the pyarrow/ package so that libarrow/libarrow_python are able
+ # to be loaded properly
+ if(APPLE)
set(module_install_rpath "@loader_path")
- else()
+ else()
set(module_install_rpath "\$ORIGIN")
- endif()
- list(LENGTH directories i)
- while(${i} GREATER 0)
+ endif()
+ list(LENGTH directories i)
+ while(${i} GREATER 0)
set(module_install_rpath "${module_install_rpath}/..")
math(EXPR i "${i} - 1" )
- endwhile(${i} GREATER 0)
+ endwhile(${i} GREATER 0)
- # for inplace development for now
- #set(module_install_rpath "${CMAKE_SOURCE_DIR}/pyarrow/")
+ set_target_properties(${module_name} PROPERTIES
+ INSTALL_RPATH ${module_install_rpath})
+ endif()
- set_target_properties(${module_name} PROPERTIES
- INSTALL_RPATH ${module_install_rpath})
target_link_libraries(${module_name} ${LINK_LIBS})
endforeach(module)