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-dist.git


The following commit(s) were added to refs/heads/master by this push:
     new 2e99e83  Build wheels for 0.9.0 (#23)
2e99e83 is described below

commit 2e99e83c352775f1ccde096242c4bec783340369
Author: Phillip Cloud <[email protected]>
AuthorDate: Sat Mar 24 11:22:04 2018 -0400

    Build wheels for 0.9.0 (#23)
    
    * Build wheels for 0.9.0
    
    * Try with slightly older boost
    
    * Build and ship a namespaced boost in osx wheels
    
    * No namespace
    
    * Fix tabs
    
    * Package .deb and .rpm
    
    * Enable ORC
    
    * Verbose Parquet builds
    
    * Use newer Bison version
    
    * Fix merge conflict
    
    * Use newer flex
    
    * Remove dup
    
    * Remove mkl from windows builds
    
    * Install, not upgrade bison
    
    * Build thrift separately
    
    * Don't build thrift with libevent
    
    * Revert boost upgrade
    
    * Move THRIFT_HOME into /usr/local [skip appveyor]
    
    * Quiet boost
    
    * Remove nomkl
    
    * Exit if any conda commands fail
    
    * show some files
    
    * Show conda packages and cmake version
    
    * Show dylibs
    
    * Windoze
    
    * Show what is in the wheel
    
    * do not list conda
    
    * Install certifi
    
    * Try installing setuptools_scm directly
    
    * Remove delocation
    
    * Verbose mv
    
    * all_branches does not mean all branches [skip appveyor]
    
    * Revert "all_branches does not mean all branches [skip appveyor]"
    
    This reverts commit 593d93b8f666adb9351a84f8b05cf62cd33e17be.
    
    * Do not bundle boost for now
    
    * we do it by default so set that to false
    
    * Make it a string?
    
    * Try inplace
    
    * Revert
    
    * Just change to use shared libs
    
    * Use refs not dep version string interp
    
    * Refs
    
    * Do not bundle boost
    
    * Bundle without arrow or boost
    
    * Try an older cmake
    
    * typo
    
    * Build with ARROW-2349 and use static Boost with Windows wheels. Set 
SETUPTOOLS_SCM_PRETEND_VERSION
---
 .travis.yml                       |  11 ++--
 appveyor.yml                      |   6 +--
 cpp-linux/Rakefile                |   3 +-
 cpp-linux/debian/rules            |   3 +-
 cpp-linux/yum/arrow.spec.in       |   1 +
 python-macos/config.sh            | 107 +++++++++++++++++++++++++++++++-------
 scripts/python-wheels-windows.bat |  23 ++++----
 7 files changed, 116 insertions(+), 38 deletions(-)

diff --git a/.travis.yml b/.travis.yml
index d5d77c5..696f513 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,7 +1,8 @@
 env:
   global:
   - PLAT=x86_64
-  - BUILD_REF=apache-arrow-0.8.0
+  - BUILD_REF=7b2c79765cf92760e1f8cca079159d9613b86412
+  - PYARROW_VERSION=0.9.0
 language: python
 python: 3.5
 sudo: required
@@ -44,8 +45,9 @@ matrix:
     - pushd arrow/python/manylinux1
     - git clone ../../ arrow
     - docker build -t arrow-base-x86_64 -f Dockerfile-x86_64 .
-    - docker run --shm-size=2g --rm -e PYARROW_PARALLEL=3 -v $PWD:/io 
arrow-base-x86_64
-      /io/build_arrow.sh
+    - docker run --shm-size=2g --rm -e PYARROW_PARALLEL=3
+      -e SETUPTOOLS_SCM_PRETEND_VERSION=$PYARROW_VERSION
+      -v $PWD:/io arrow-base-x86_64 /io/build_arrow.sh
     - popd
     - sudo mv arrow/python/manylinux1/dist/* dist/
   - language: ruby
@@ -98,6 +100,7 @@ before_install:
 - brew uninstall boost cgal postgis sfcgal
 - brew update
 - brew upgrade cmake
+- brew install bison flex
 - BUILD_DEPENDS="numpy==$NP_BUILD_DEP six cython"
 - TEST_DEPENDS="numpy==$NP_TEST_DEP six pandas==$PANDAS_DEP"
 - mkdir -p dist
@@ -112,7 +115,7 @@ install:
 - unset -f popd
 - clean_code arrow $BUILD_REF
 - build_wheel arrow $PLAT
-- mv arrow/python/dist/* dist/
+- mv -v arrow/python/dist/* dist/
 script:
 - echo "SCRIPT"
 - pwd
diff --git a/appveyor.yml b/appveyor.yml
index b910a8d..e37c3bb 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -31,9 +31,9 @@ environment:
   MSVC_DEFAULT_OPTIONS: ON
   BOOST_ROOT: C:\Libraries\boost_1_63_0
   BOOST_LIBRARYDIR: C:\Libraries\boost_1_63_0\lib64-msvc-14.0
-  pyarrow_version: 0.8.0
-  pyarrow_commit: 1d689e5a3e417d3a4b3de16fea7a6fe195c8f8df
-  parquet_commit: e2814ccb224a01289ad3a736ce89a956cb7d52fb
+  pyarrow_version: 0.9.0
+  pyarrow_ref: 7b2c79765cf92760e1f8cca079159d9613b86412
+  parquet_cpp_ref: apache-parquet-cpp-1.4.0
 
 init:
   - set MINICONDA=C:\Miniconda35-x64
diff --git a/cpp-linux/Rakefile b/cpp-linux/Rakefile
index d612423..af575c0 100644
--- a/cpp-linux/Rakefile
+++ b/cpp-linux/Rakefile
@@ -81,7 +81,8 @@ class ApacheArrowPackageTask < PackageTask
         cd(cpp_build_dir) do
           sh("cmake", cpp_dir,
              "-DCMAKE_BUILD_TYPE=#{build_type}",
-             "-DARROW_BUILD_TESTS=no")
+             "-DARROW_BOOST_USE_SHARED=ON",
+             "-DARROW_BUILD_TESTS=OFF")
           sh("make", "-j8")
         end
         cd("c_glib") do
diff --git a/cpp-linux/debian/rules b/cpp-linux/debian/rules
index 3655b38..5a3c0a3 100755
--- a/cpp-linux/debian/rules
+++ b/cpp-linux/debian/rules
@@ -23,9 +23,10 @@ override_dh_auto_configure:
          -DCMAKE_BUILD_TYPE=$(BUILD_TYPE) \
          -DARROW_BUILD_TESTS=OFF \
          -DARROW_PYTHON=ON \
+         -DARROW_BOOST_USE_SHARED=ON \
+         -DARROW_ORC=ON \
          -DPythonInterp_FIND_VERSION=ON \
          -DPythonInterp_FIND_VERSION_MAJOR=3 \
-         -DARROW_ORC=ON \
          -DARROW_GPU=ON
        dh_auto_configure \
          --sourcedirectory=c_glib \
diff --git a/cpp-linux/yum/arrow.spec.in b/cpp-linux/yum/arrow.spec.in
index 013aaec..65c357e 100644
--- a/cpp-linux/yum/arrow.spec.in
+++ b/cpp-linux/yum/arrow.spec.in
@@ -60,6 +60,7 @@ mkdir cpp/build
 cd cpp/build
 %cmake3 .. \
   -DCMAKE_BUILD_TYPE=$build_type \
+  -DARROW_ORC=ON \
 %if %{use_python}
   -DARROW_PYTHON=ON \
   -DPythonInterp_FIND_VERSION=ON \
diff --git a/python-macos/config.sh b/python-macos/config.sh
index c611e8a..43bad90 100755
--- a/python-macos/config.sh
+++ b/python-macos/config.sh
@@ -20,25 +20,82 @@
 set -e
 
 function build_wheel {
+    pip install -U pip
+    pip install setuptools_scm
     echo `pwd`
+    export PATH="/usr/local/opt/flex/bin:/usr/local/opt/bison/bin:$PATH"
     echo CFLAGS=${CFLAGS}
     echo CXXFLAGS=${CXXFLAGS}
     echo LDFLAGS=${LDFLAGS}
     pushd $1
 
-       wget --no-check-certificate 
http://downloads.sourceforge.net/project/boost/boost/1.60.0/boost_1_60_0.tar.gz 
-O boost_1_60_0.tar.gz
-       tar xf boost_1_60_0.tar.gz
-    pushd boost_1_60_0
+    boost_version="1.65.1"
+    boost_directory_name="boost_${boost_version//\./_}"
+    boost_tarball_name="${boost_directory_name}.tar.gz"
+    wget --no-check-certificate \
+        
http://downloads.sourceforge.net/project/boost/boost/"${boost_version}"/"${boost_tarball_name}";
 \
+        -O "${boost_tarball_name}"
+    tar xf "${boost_tarball_name}"
+
+    arrow_boost="$PWD/arrow_boost"
+    arrow_boost_dist="$PWD/arrow_boost_dist"
+    mkdir "$arrow_boost" "$arrow_boost_dist"
+    pushd "${boost_directory_name}"
+
+    # Arrow is 64-bit-only at the moment
+    export CFLAGS="-fPIC -arch x86_64 ${CFLAGS//"-arch i386"/}"
+    export CXXFLAGS="-fPIC -arch x86_64 ${CXXFLAGS//"-arch i386"} -std=c++11"
+
+    ./bootstrap.sh
+    ./b2 tools/bcp > /dev/null 2>&1
+    ./dist/bin/bcp --namespace=arrow_boost --namespace-alias \
+        filesystem date_time system regex build algorithm locale format \
+       "$arrow_boost" > /dev/null 2>&1
+
+    popd
+    pushd "$arrow_boost"
     ./bootstrap.sh
-    ./bjam "cxxflags=-fPIC ${CFLAGS}" cflags="-fPIC ${CXXFLAGS}" 
--prefix=/usr/local --with-filesystem --with-date_time --with-system 
--with-regex install
+    ./bjam cxxflags="${CXXFLAGS}" \
+        linkflags="-std=c++11" \
+        cflags="${CFLAGS}" \
+        variant=release \
+        link=shared \
+        --prefix="$arrow_boost_dist" \
+        --with-filesystem --with-date_time --with-system --with-regex \
+        install > /dev/null 2>&1
     popd
 
-    # Arrow is 64bit-only at the moment
-    export CFLAGS="-arch x86_64"
-    export CXXFLAGS="-arch x86_64"
-    export ARROW_HOME=/usr/local/
-    export PARQUET_HOME=/usr/local/
-    pip install cython==0.25.2 numpy==${NP_TEST_DEP}
+    export THRIFT_HOME=/usr/local
+    export THRIFT_VERSION=0.11.0
+    wget 
http://archive.apache.org/dist/thrift/${THRIFT_VERSION}/thrift-${THRIFT_VERSION}.tar.gz
+    tar xf thrift-${THRIFT_VERSION}.tar.gz
+    pushd thrift-${THRIFT_VERSION}
+    mkdir build-tmp
+    pushd build-tmp
+    cmake -DCMAKE_BUILD_TYPE=release \
+        "-DCMAKE_CXX_FLAGS=-fPIC" \
+        "-DCMAKE_C_FLAGS=-fPIC" \
+        "-DCMAKE_INSTALL_PREFIX=${THRIFT_HOME}" \
+        "-DCMAKE_INSTALL_RPATH=${THRIFT_HOME}/lib" \
+        "-DBUILD_SHARED_LIBS=OFF" \
+        "-DBUILD_TESTING=OFF" \
+        "-DWITH_QT4=OFF" \
+        "-DWITH_C_GLIB=OFF" \
+        "-DWITH_JAVA=OFF" \
+        "-DWITH_PYTHON=OFF" \
+        "-DWITH_CPP=ON" \
+        "-DWITH_STATIC_LIB=ON" \
+        "-DWITH_LIBEVENT=OFF" \
+        -DBoost_NAMESPACE=arrow_boost \
+        -DBOOST_ROOT="$arrow_boost_dist" \
+        ..
+    make install -j5
+    popd
+    popd
+
+    export ARROW_HOME=/usr/local
+    export PARQUET_HOME=/usr/local
+    pip install "cython==0.27.3" "numpy==${NP_TEST_DEP}"
     pushd cpp
     mkdir build
     pushd build
@@ -46,12 +103,15 @@ function build_wheel {
           -DCMAKE_INSTALL_PREFIX=$ARROW_HOME \
           -DARROW_BUILD_TESTS=OFF \
           -DARROW_BUILD_SHARED=ON \
-          -DARROW_BOOST_USE_SHARED=OFF \
+          -DARROW_BOOST_USE_SHARED=ON \
           -DARROW_JEMALLOC=OFF \
           -DARROW_PLASMA=ON \
           -DARROW_RPATH_ORIGIN=ON \
           -DARROW_JEMALLOC_USE_SHARED=OFF \
           -DARROW_PYTHON=ON \
+          -DARROW_ORC=ON \
+          -DBOOST_ROOT="$arrow_boost_dist" \
+          -DBoost_NAMESPACE=arrow_boost \
           -DMAKE=make \
           ..
     make -j5
@@ -65,10 +125,13 @@ function build_wheel {
     pushd build
     cmake -DCMAKE_BUILD_TYPE=Release \
           -DCMAKE_INSTALL_PREFIX=$PARQUET_HOME \
+          -DPARQUET_VERBOSE_THIRDPARTY_BUILD=ON \
           -DPARQUET_BUILD_TESTS=OFF \
-          -DPARQUET_BOOST_USE_SHARED=OFF \
+          -DPARQUET_BOOST_USE_SHARED=ON \
+          -DBoost_NAMESPACE=arrow_boost \
+          -DBOOST_ROOT="$arrow_boost_dist" \
           ..
-    make -j5
+    make -j5 VERBOSE=1
     make install
     popd
     popd
@@ -76,19 +139,23 @@ function build_wheel {
     unset ARROW_HOME
     unset PARQUET_HOME
     export PYARROW_WITH_PARQUET=1
+    export PYARROW_WITH_ORC=1
     export PYARROW_WITH_JEMALLOC=1
     export PYARROW_WITH_PLASMA=1
+    export PYARROW_BUNDLE_BOOST=1
     export PYARROW_BUNDLE_ARROW_CPP=1
     export PYARROW_BUILD_TYPE='release'
+    export PYARROW_CMAKE_OPTIONS="-DBOOST_ROOT=$arrow_boost_dist"
+    export SETUPTOOLS_SCM_PRETEND_VERSION=$PYARROW_VERSION
     pushd python
-    echo "python setup.py build_ext --inplace --with-parquet --with-plasma 
--bundle-arrow-cpp"
-    python setup.py build_ext --inplace \
-           --with-plasma --with-parquet --bundle-arrow-cpp
-    python setup.py bdist_wheel
+    python setup.py build_ext \
+           --with-plasma --with-orc --with-parquet \
+           --bundle-arrow-cpp --bundle-boost --boost-namespace=arrow_boost \
+           bdist_wheel
     ls -l dist/
+    for wheel in dist/*.whl; do
+       unzip -l "$wheel"
+    done
     popd
-
-    pip install delocate==0.7.3
-    delocate-wheel -L . -v python/dist/*.whl
     popd
 }
diff --git a/scripts/python-wheels-windows.bat 
b/scripts/python-wheels-windows.bat
index 704e565..c6ab23c 100644
--- a/scripts/python-wheels-windows.bat
+++ b/scripts/python-wheels-windows.bat
@@ -22,11 +22,9 @@ conda update --yes --quiet conda
 conda create -n arrow -q -y python=%PYTHON% ^
       six pytest setuptools numpy=%NUMPY% pandas cython
 
-set ARROW_CMAKE_VERSION=3.8.0
-
 conda install -n arrow -q -y -c conda-forge ^
       git flatbuffers rapidjson ^
-      cmake=%ARROW_CMAKE_VERSION% ^
+      cmake ^
       boost-cpp thrift-cpp ^
       gflags snappy zlib brotli zstd lz4-c
 
@@ -40,7 +38,7 @@ pushd %ARROW_SRC%
 @rem fix up symlinks
 git config core.symlinks true
 git reset --hard || exit /B
-git checkout %pyarrow_commit% || exit /B
+git checkout "%pyarrow_ref%" || exit /B
 
 popd
 
@@ -54,7 +52,7 @@ mkdir %ARROW_SRC%\cpp\build
 pushd %ARROW_SRC%\cpp\build
 
 cmake -G "%GENERATOR%" ^
-      -DCMAKE_INSTALL_PREFIX=%CONDA_PREFIX%\Library ^
+      -DCMAKE_INSTALL_PREFIX=%ARROW_HOME% ^
       -DARROW_BOOST_USE_SHARED=OFF ^
       -DARROW_BUILD_TESTS=OFF ^
       -DCMAKE_BUILD_TYPE=Release ^
@@ -71,7 +69,7 @@ popd
 @rem Build parquet-cpp
 git clone https://github.com/apache/parquet-cpp.git || exit /B
 pushd parquet-cpp
-git checkout %parquet_commit%
+git checkout "%parquet_cpp_ref%"
 popd
 
 mkdir parquet-cpp\build
@@ -80,8 +78,8 @@ pushd parquet-cpp\build
 cmake -G "%GENERATOR%" ^
      -DCMAKE_INSTALL_PREFIX=%PARQUET_HOME% ^
      -DCMAKE_BUILD_TYPE=Release ^
-     -DPARQUET_BOOST_USE_SHARED=off ^
-     -DPARQUET_BUILD_TESTS=off .. || exit /B
+     -DPARQUET_BOOST_USE_SHARED=OFF ^
+     -DPARQUET_BUILD_TESTS=OFF .. || exit /B
 cmake --build . --target INSTALL --config Release || exit /B
 popd
 
@@ -89,7 +87,14 @@ popd
 set PYTHONPATH=
 
 pushd %ARROW_SRC%\python
-python setup.py build_ext --with-parquet --bundle-arrow-cpp bdist_wheel  || 
exit /B
+set PYARROW_BUILD_TYPE=Release
+set SETUPTOOLS_SCM_PRETEND_VERSION=%pyarrow_version%
+
+python setup.py build_ext ^
+       --with-parquet ^
+       --with-static-boost ^
+       --bundle-arrow-cpp ^
+       bdist_wheel  || exit /B
 popd
 
 @rem test the wheel

-- 
To stop receiving notification emails like this one, please contact
[email protected].

Reply via email to