wesm closed pull request #23: Build wheels for 0.9.0 URL: https://github.com/apache/arrow-dist/pull/23
This is a PR merged from a forked repository. As GitHub hides the original diff on merge, it is displayed below for the sake of provenance: As this is a foreign pull request (from a fork), the diff is supplied below (as it won't show otherwise due to GitHub magic): 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/arrow b/arrow index 1d689e5..c695a5d 160000 --- a/arrow +++ b/arrow @@ -1 +1 @@ -Subproject commit 1d689e5a3e417d3a4b3de16fea7a6fe195c8f8df +Subproject commit c695a5ddc8d26c977b5ecd0c55212e900726953e 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/apt/debian-stretch/Dockerfile b/cpp-linux/apt/debian-stretch/Dockerfile index 815349f..b803727 100644 --- a/cpp-linux/apt/debian-stretch/Dockerfile +++ b/cpp-linux/apt/debian-stretch/Dockerfile @@ -35,6 +35,7 @@ RUN \ git \ gtk-doc-tools \ libboost-filesystem-dev \ + libboost-regex-dev \ libboost-system-dev \ libgirepository1.0-dev \ libglib2.0-doc \ diff --git a/cpp-linux/apt/descriptor.json b/cpp-linux/apt/descriptor.json index cc94323..27a1eae 100644 --- a/cpp-linux/apt/descriptor.json +++ b/cpp-linux/apt/descriptor.json @@ -7,7 +7,7 @@ "vcs_url": "htttps://github.com/apache/arrow.git" }, "version": { - "name": "0.8.0" + "name": "0.9.0" }, "files": [ { diff --git a/cpp-linux/apt/ubuntu-artful/Dockerfile b/cpp-linux/apt/ubuntu-artful/Dockerfile index 9cf779b..d953000 100644 --- a/cpp-linux/apt/ubuntu-artful/Dockerfile +++ b/cpp-linux/apt/ubuntu-artful/Dockerfile @@ -33,6 +33,7 @@ RUN \ git \ gtk-doc-tools \ libboost-filesystem-dev \ + libboost-regex-dev \ libboost-system-dev \ libgirepository1.0-dev \ libglib2.0-doc \ diff --git a/cpp-linux/apt/ubuntu-trusty/Dockerfile b/cpp-linux/apt/ubuntu-trusty/Dockerfile index f993458..dcb343b 100644 --- a/cpp-linux/apt/ubuntu-trusty/Dockerfile +++ b/cpp-linux/apt/ubuntu-trusty/Dockerfile @@ -32,6 +32,7 @@ RUN \ git \ gtk-doc-tools \ libboost-filesystem-dev \ + libboost-regex-dev \ libboost-system-dev \ libgirepository1.0-dev \ libglib2.0-doc \ diff --git a/cpp-linux/apt/ubuntu-xenial/Dockerfile b/cpp-linux/apt/ubuntu-xenial/Dockerfile index 86dc7d3..8448b28 100644 --- a/cpp-linux/apt/ubuntu-xenial/Dockerfile +++ b/cpp-linux/apt/ubuntu-xenial/Dockerfile @@ -34,6 +34,7 @@ RUN \ git \ gtk-doc-tools \ libboost-filesystem-dev \ + libboost-regex-dev \ libboost-system-dev \ libgirepository1.0-dev \ libglib2.0-doc \ diff --git a/cpp-linux/debian.ubuntu-trusty/changelog b/cpp-linux/debian.ubuntu-trusty/changelog index 9b54c39..ebfe935 100644 --- a/cpp-linux/debian.ubuntu-trusty/changelog +++ b/cpp-linux/debian.ubuntu-trusty/changelog @@ -1,3 +1,9 @@ +apache-arrow (0.9.0-1) unstable; urgency=low + + * New upstream release. + + -- Kouhei Sutou <k...@clear-code.com> Fri, 16 Mar 2018 16:56:31 -0000 + apache-arrow (0.8.0-2) unstable; urgency=low * Fix .typelib path. diff --git a/cpp-linux/debian.ubuntu-trusty/control b/cpp-linux/debian.ubuntu-trusty/control index aa0571d..9732ebd 100644 --- a/cpp-linux/debian.ubuntu-trusty/control +++ b/cpp-linux/debian.ubuntu-trusty/control @@ -9,6 +9,7 @@ Build-Depends: git, libboost-system-dev, libboost-filesystem-dev, + libboost-regex-dev, libjemalloc-dev, libgirepository1.0-dev, gtk-doc-tools, diff --git a/cpp-linux/debian.ubuntu-trusty/rules b/cpp-linux/debian.ubuntu-trusty/rules index 17f3378..783b7a7 100755 --- a/cpp-linux/debian.ubuntu-trusty/rules +++ b/cpp-linux/debian.ubuntu-trusty/rules @@ -17,7 +17,8 @@ override_dh_auto_configure: --builddirectory=cpp_build \ -- \ -DCMAKE_BUILD_TYPE=$(BUILD_TYPE) \ - -DARROW_BUILD_TESTS=OFF + -DARROW_BUILD_TESTS=OFF \ + -DARROW_ORC=ON dh_auto_configure \ --sourcedirectory=c_glib \ --builddirectory=c_glib_build \ diff --git a/cpp-linux/debian/changelog b/cpp-linux/debian/changelog index 691acb7..9e7a2ee 100644 --- a/cpp-linux/debian/changelog +++ b/cpp-linux/debian/changelog @@ -1,3 +1,9 @@ +apache-arrow (0.9.0-1) unstable; urgency=low + + * New upstream release. + + -- Kouhei Sutou <k...@clear-code.com> Fri, 16 Mar 2018 16:56:31 -0000 + apache-arrow (0.8.0-1) unstable; urgency=low * New upstream release. diff --git a/cpp-linux/debian/control b/cpp-linux/debian/control index 5b3fa6f..2534201 100644 --- a/cpp-linux/debian/control +++ b/cpp-linux/debian/control @@ -11,6 +11,7 @@ Build-Depends: git, libboost-system-dev, libboost-filesystem-dev, + libboost-regex-dev, libjemalloc-dev, python3-dev, python3-numpy, diff --git a/cpp-linux/debian/patches/0001-ARROW-1933-GLib-Fix-build-error-with-with-arrow-cpp-.patch b/cpp-linux/debian/patches/0001-ARROW-1933-GLib-Fix-build-error-with-with-arrow-cpp-.patch deleted file mode 100644 index 802b27b..0000000 --- a/cpp-linux/debian/patches/0001-ARROW-1933-GLib-Fix-build-error-with-with-arrow-cpp-.patch +++ /dev/null @@ -1,130 +0,0 @@ -From 72e660a7c90f1846eac473c21fb718a2e23c476e Mon Sep 17 00:00:00 2001 -From: Kouhei Sutou <k...@clear-code.com> -Date: Mon, 18 Dec 2017 16:52:22 +0100 -Subject: [PATCH] ARROW-1933: [GLib] Fix build error with - --with-arrow-cpp-build-dir - -The option is used in building deb package. - -`arrow/gpu/cuda_version.h` exists in build directory not source directory. - -Author: Kouhei Sutou <k...@clear-code.com> - -Closes #1429 from kou/glib-fix-build-error-with-arrow-cpp-build-dir and squashes the following commits: - -879d6bc [Kouhei Sutou] [GLib] Fix build error with --with-arrow-cpp-build-dir ---- - c_glib/arrow-glib/Makefile.am | 4 ++++ - c_glib/arrow-gpu-glib/Makefile.am | 13 ++++++++++++- - c_glib/configure.ac | 18 +++++++++++++++--- - c_glib/example/Makefile.am | 4 ++++ - 4 files changed, 35 insertions(+), 4 deletions(-) - -diff --git a/c_glib/arrow-glib/Makefile.am b/c_glib/arrow-glib/Makefile.am -index 39222a54..16d07031 100644 ---- a/c_glib/arrow-glib/Makefile.am -+++ b/c_glib/arrow-glib/Makefile.am -@@ -212,6 +212,10 @@ if HAVE_INTROSPECTION - INTROSPECTION_GIRS = - INTROSPECTION_SCANNER_ARGS = - INTROSPECTION_SCANNER_ENV = -+if USE_ARROW_BUILD_DIR -+INTROSPECTION_SCANNER_ENV += \ -+ LD_LIBRARY_PATH=$(ARROW_LIB_DIR):$${PKG_CONFIG_PATH} -+endif - if OS_MACOS - INTROSPECTION_SCANNER_ENV += \ - ARCHFLAGS= -diff --git a/c_glib/arrow-gpu-glib/Makefile.am b/c_glib/arrow-gpu-glib/Makefile.am -index 11ffa5ec..1e1c02ac 100644 ---- a/c_glib/arrow-gpu-glib/Makefile.am -+++ b/c_glib/arrow-gpu-glib/Makefile.am -@@ -70,8 +70,14 @@ if HAVE_INTROSPECTION - -include $(INTROSPECTION_MAKEFILE) - INTROSPECTION_GIRS = - INTROSPECTION_SCANNER_ARGS = --INTROSPECTION_SCANNER_ENV = \ -+INTROSPECTION_SCANNER_ENV = -+if USE_ARROW_BUILD_DIR -+INTROSPECTION_SCANNER_ENV += \ -+ PKG_CONFIG_PATH=${abs_builddir}/../arrow-glib:$(ARROW_BUILD_DIR)/src/arrow:$${PKG_CONFIG_PATH} -+else -+INTROSPECTION_SCANNER_ENV += \ - PKG_CONFIG_PATH=${abs_builddir}/../arrow-glib:$${PKG_CONFIG_PATH} -+endif - if OS_MACOS - INTROSPECTION_SCANNER_ENV += \ - ARCHFLAGS= -@@ -88,6 +94,11 @@ ArrowGPU_1_0_gir_INCLUDES = \ - Arrow-1.0 - ArrowGPU_1_0_gir_CFLAGS = \ - $(AM_CPPFLAGS) -+ArrowGPU_1_0_gir_LDFLAGS = -+if USE_ARROW_BUILD_DIR -+ArrowGPU_1_0_gir_LDFLAGS += \ -+ -L$(ARROW_LIB_DIR) -+endif - ArrowGPU_1_0_gir_LIBS = \ - $(abs_builddir)/../arrow-glib/libarrow-glib.la \ - libarrow-gpu-glib.la -diff --git a/c_glib/configure.ac b/c_glib/configure.ac -index f06a017a..eabe7bad 100644 ---- a/c_glib/configure.ac -+++ b/c_glib/configure.ac -@@ -89,16 +89,25 @@ AC_ARG_WITH(arrow-cpp-build-dir, - [GARROW_ARROW_CPP_BUILD_DIR="$withval"], - [GARROW_ARROW_CPP_BUILD_DIR=""]) - if test "x$GARROW_ARROW_CPP_BUILD_DIR" = "x"; then -+ USE_ARROW_BUILD_DIR=no -+ - PKG_CHECK_MODULES([ARROW], [arrow arrow-compute]) - PKG_CHECK_MODULES([ARROW_GPU], - [arrow-gpu], - [HAVE_ARROW_GPU=yes], - [HAVE_ARROW_GPU=no]) - else -- ARROW_INCLUDE_DIR="\$(abs_top_srcdir)/../cpp/src" -- ARROW_LIB_DIR="${GARROW_ARROW_CPP_BUILD_DIR}/${GARROW_ARROW_CPP_BUILD_TYPE}" -+ USE_ARROW_BUILD_DIR=yes - -- ARROW_CFLAGS="-I${ARROW_INCLUDE_DIR}" -+ ARROW_BUILD_DIR="${GARROW_ARROW_CPP_BUILD_DIR}" -+ AC_SUBST(ARROW_BUILD_DIR) -+ -+ ARROW_SOURCE_INCLUDE_DIR="\$(abs_top_srcdir)/../cpp/src" -+ ARROW_BUILD_INCLUDE_DIR="${GARROW_ARROW_CPP_BUILD_DIR}/src" -+ ARROW_LIB_DIR="${GARROW_ARROW_CPP_BUILD_DIR}/${GARROW_ARROW_CPP_BUILD_TYPE}" -+ AC_SUBST(ARROW_LIB_DIR) -+ -+ ARROW_CFLAGS="-I${ARROW_BUILD_INCLUDE_DIR} -I${ARROW_SOURCE_INCLUDE_DIR}" - ARROW_LIBS="-L${ARROW_LIB_DIR} -larrow" - AC_SUBST(ARROW_CFLAGS) - AC_SUBST(ARROW_LIBS) -@@ -115,6 +124,9 @@ else - AC_SUBST(ARROW_GPU_LIBS) - fi - -+AM_CONDITIONAL([USE_ARROW_BUILD_DIR], -+ [test "$USE_ARROW_BUILD_DIR" = "yes"]) -+ - AM_CONDITIONAL([HAVE_ARROW_GPU], [test "$HAVE_ARROW_GPU" = "yes"]) - if test "$HAVE_ARROW_GPU" = "yes"; then - AC_DEFINE(HAVE_ARROW_GPU, [1], [Define to 1 if Apache Arrow supports GPU.]) -diff --git a/c_glib/example/Makefile.am b/c_glib/example/Makefile.am -index 3eaf808b..f4aca70c 100644 ---- a/c_glib/example/Makefile.am -+++ b/c_glib/example/Makefile.am -@@ -33,6 +33,10 @@ AM_CFLAGS = \ - AM_LDFLAGS = \ - $(GLIB_LIBS) \ - $(builddir)/../arrow-glib/libarrow-glib.la -+if USE_ARROW_BUILD_DIR -+AM_LDFLAGS += \ -+ $(ARROW_LIBS) -+endif - - noinst_PROGRAMS = \ - build \ --- -2.15.1 - diff --git a/cpp-linux/debian/patches/series b/cpp-linux/debian/patches/series index bfc6620..e69de29 100644 --- a/cpp-linux/debian/patches/series +++ b/cpp-linux/debian/patches/series @@ -1 +0,0 @@ -0001-ARROW-1933-GLib-Fix-build-error-with-with-arrow-cpp-.patch diff --git a/cpp-linux/debian/rules b/cpp-linux/debian/rules index 036ba8a..5a3c0a3 100755 --- a/cpp-linux/debian/rules +++ b/cpp-linux/debian/rules @@ -23,6 +23,8 @@ 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_GPU=ON diff --git a/cpp-linux/yum/arrow.spec.in b/cpp-linux/yum/arrow.spec.in index 85405d3..65c357e 100644 --- a/cpp-linux/yum/arrow.spec.in +++ b/cpp-linux/yum/arrow.spec.in @@ -19,7 +19,7 @@ %define _centos_ver %{?centos_ver:%{centos_ver}}%{!?centos_ver:7} -%define use_python %{_centos_ver} >= 7 +%define use_python %{_centos_ver} >= 6 %define use_glib %{_centos_ver} >= 7 Name: @PACKAGE@ @@ -40,8 +40,8 @@ BuildRequires: boost-devel BuildRequires: git BuildRequires: jemalloc-devel %if %{use_python} -BuildRequires: python-devel -BuildRequires: numpy +BuildRequires: python34-devel +BuildRequires: python34-numpy %endif %if %{use_glib} BuildRequires: gtk-doc @@ -60,13 +60,17 @@ mkdir cpp/build cd cpp/build %cmake3 .. \ -DCMAKE_BUILD_TYPE=$build_type \ + -DARROW_ORC=ON \ %if %{use_python} - -DARROW_PYTHON=yes \ + -DARROW_PYTHON=ON \ + -DPythonInterp_FIND_VERSION=ON \ + -DPythonInterp_FIND_VERSION_MAJOR=3 \ %endif %if %{_centos_ver} == 6 - -DARROW_BOOST_VENDORED=yes \ + -DARROW_BOOST_VENDORED=ON \ %endif - -DARROW_BUILD_TESTS=no + -DARROW_ORC=ON \ + -DARROW_BUILD_TESTS=OFF make %{?_smp_mflags} cd - @@ -100,6 +104,7 @@ Group: System Environment/Libraries License: Apache-2.0 Requires: boost-system Requires: boost-filesystem +Requires: boost-regex Requires: jemalloc %description libs @@ -134,7 +139,7 @@ Summary: Apache Arrow CPython extensions Group: System Environment/Libraries License: Apache-2.0 Requires: arrow-libs = %{version}-%{release} -Requires: python2 +Requires: python34-numpy %description python-libs This package contains the Apache Arrow CPython extensions. @@ -150,7 +155,7 @@ Group: Development/Libraries License: Apache-2.0 Requires: arrow-devel = %{version}-%{release} Requires: %{name}-libs = %{version}-%{release} -Requires: python-devel +Requires: python34-devel %description python-devel Libraries and header files for Apache Arrow CPython extensions. @@ -220,6 +225,9 @@ Documentation for Apache Arrow GLib. %endif %changelog +* Fri Mar 16 2018 Kouhei Sutou <k...@clear-code.com> - 0.9.0-1 +- New upstream release. + * Sun Dec 17 2017 Uwe Korn <uw...@xhochy.com> - 0.8.0-1 - New upstream release. diff --git a/cpp-linux/yum/centos-6/Dockerfile b/cpp-linux/yum/centos-6/Dockerfile index 1f98d79..90bd710 100644 --- a/cpp-linux/yum/centos-6/Dockerfile +++ b/cpp-linux/yum/centos-6/Dockerfile @@ -52,10 +52,10 @@ RUN \ gobject-introspection-devel \ gtk-doc \ jemalloc-devel \ - numpy \ pkg-config \ - python \ - python-devel \ + python34 \ + python34-devel \ + python34-numpy \ rpm-build \ rpmdevtools \ tar && \ diff --git a/cpp-linux/yum/centos-7/Dockerfile b/cpp-linux/yum/centos-7/Dockerfile index f4cc61e..58058ee 100644 --- a/cpp-linux/yum/centos-7/Dockerfile +++ b/cpp-linux/yum/centos-7/Dockerfile @@ -31,10 +31,10 @@ RUN \ gobject-introspection-devel \ gtk-doc \ jemalloc-devel \ - numpy \ pkg-config \ - python \ - python-devel \ + python34 \ + python34-devel \ + python34-numpy \ rpm-build \ rpmdevtools \ tar && \ diff --git a/cpp-linux/yum/descriptor.json b/cpp-linux/yum/descriptor.json index 2c0ea47..f59ef85 100644 --- a/cpp-linux/yum/descriptor.json +++ b/cpp-linux/yum/descriptor.json @@ -7,7 +7,7 @@ "vcs_url": "htttps://github.com/apache/arrow.git" }, "version": { - "name": "0.8.0" + "name": "0.9.0" }, "files": [ { 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 ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services