You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by we...@apache.org on 2019/06/27 16:56:38 UTC
[arrow] branch master updated: ARROW-5751: [Python][Packaging]
Ensure that c-ares is linked statically in Python wheels
This is an automated email from the ASF dual-hosted git repository.
wesm pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow.git
The following commit(s) were added to refs/heads/master by this push:
new 68c95b2 ARROW-5751: [Python][Packaging] Ensure that c-ares is linked statically in Python wheels
68c95b2 is described below
commit 68c95b285761307519356aee9a92ded04e944d7f
Author: Wes McKinney <we...@apache.org>
AuthorDate: Thu Jun 27 11:54:15 2019 -0500
ARROW-5751: [Python][Packaging] Ensure that c-ares is linked statically in Python wheels
Using the Homebrew provided c-ares results in a shared library dependency. I think it's easier to statically link this than to bundle it
```
$ otool -L /Users/wesm/miniconda/envs/wheel-test-3.7/lib/python3.7/site-packages/pyarrow/libarrow_flight.14.dylib
/Users/wesm/miniconda/envs/wheel-test-3.7/lib/python3.7/site-packages/pyarrow/libarrow_flight.14.dylib:
@rpath/libarrow_flight.14.dylib (compatibility version 14.0.0, current version 14.0.0)
@rpath/libarrow.14.dylib (compatibility version 14.0.0, current version 14.0.0)
/usr/local/opt/c-ares/lib/libcares.2.dylib (compatibility version 6.0.0, current version 6.0.0)
/usr/local/opt/openssl/lib/libssl.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/usr/local/opt/openssl/lib/libcrypto.1.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
/usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 307.5.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1238.50.2)
```
Author: Wes McKinney <we...@apache.org>
Closes #4725 from wesm/ARROW-3751 and squashes the following commits:
96cc48407 <Wes McKinney> Try to link to c-ares statically
---
dev/tasks/python-wheels/osx-build.sh | 1 +
dev/tasks/python-wheels/travis.osx.yml | 6 +++---
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/dev/tasks/python-wheels/osx-build.sh b/dev/tasks/python-wheels/osx-build.sh
index 28f09c8..b299646 100755
--- a/dev/tasks/python-wheels/osx-build.sh
+++ b/dev/tasks/python-wheels/osx-build.sh
@@ -136,6 +136,7 @@ function build_wheel {
-DBoost_NAMESPACE=arrow_boost \
-DARROW_FLIGHT=ON \
-DgRPC_SOURCE=SYSTEM \
+ -Dc-ares_SOURCE=BUNDLED \
-DARROW_PROTOBUF_USE_SHARED=OFF \
-DMAKE=make \
..
diff --git a/dev/tasks/python-wheels/travis.osx.yml b/dev/tasks/python-wheels/travis.osx.yml
index 5ac96f3..980d122 100644
--- a/dev/tasks/python-wheels/travis.osx.yml
+++ b/dev/tasks/python-wheels/travis.osx.yml
@@ -66,9 +66,9 @@ install:
# the following functions are defined in osx-build.sh
- build_wheel arrow
- # test the built wheels, remove llvm and grpc to ensure they link statically
- - brew uninstall llvm@7
- - brew uninstall grpc
+ # test the built wheels, remove llvm and grpc dependencies to ensure
+ # things are properly statically-linked
+ - brew uninstall llvm@7 grpc c-ares
- install_run arrow
# move built wheels to a top level directory