|
| 1 | +# ---------------------------------------------------------------------------- |
| 2 | +# |
| 3 | +# Package : pyArrow |
| 4 | +# Version : 1.0.1 |
| 5 | +# Source repo : https://github.com/apache/arrow |
| 6 | +# Tested on : rhel_7.4 |
| 7 | +# Script License: Apache License, Version 2 or later |
| 8 | +# Maintainer : Shivani Junawane <shivanij@us.ibm.com> |
| 9 | +# |
| 10 | +# Disclaimer: This script has been tested in non-root mode on given |
| 11 | +# ========== platform using the mentioned version of the package. |
| 12 | +# It may not work as expected with newer versions of the |
| 13 | +# package and/or distribution. In such case, please |
| 14 | +# contact "Maintainer" of this script. |
| 15 | +# |
| 16 | +# ---------------------------------------------------------------------------- |
| 17 | +#!/bin/bash |
| 18 | + |
| 19 | +# Install Pre-requisites |
| 20 | +yum install -y wget git |
| 21 | + |
| 22 | +# Install Conda |
| 23 | +wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-ppc64le.sh |
| 24 | +sh Miniconda3-latest-Linux-ppc64le.sh -u -b -p $HOME/conda |
| 25 | +$HOME/conda/bin/conda update -y -n base conda |
| 26 | +export PATH=$HOME/conda/bin/:$PATH |
| 27 | +conda init bash |
| 28 | +eval "$(conda shell.bash hook)" |
| 29 | +conda config --add channels conda-forge |
| 30 | + |
| 31 | +# Arrow build and install |
| 32 | +mkdir repos |
| 33 | +cd repos |
| 34 | +git clone https://github.com/apache/arrow.git |
| 35 | +cd arrow && git checkout apache-arrow-1.0.1 |
| 36 | +cd .. |
| 37 | +pushd arrow |
| 38 | +git submodule init |
| 39 | +git submodule update |
| 40 | +export PARQUET_TEST_DATA="${PWD}/cpp/submodules/parquet-testing/data" |
| 41 | +export ARROW_TEST_DATA="${PWD}/testing/data" |
| 42 | +popd |
| 43 | + |
| 44 | +# Create conda channel |
| 45 | +sed -i 's/benchmark/#benchmark/g' arrow/ci/conda_env_cpp.yml |
| 46 | +sed -i 's/gtest=/gtest>=/g' arrow/ci/conda_env_cpp.yml |
| 47 | +conda create -y -n pyarrow-dev -c conda-forge \ |
| 48 | + --file arrow/ci/conda_env_unix.yml \ |
| 49 | + --file arrow/ci/conda_env_cpp.yml \ |
| 50 | + --file arrow/ci/conda_env_python.yml \ |
| 51 | + --file arrow/ci/conda_env_gandiva.yml \ |
| 52 | + compilers \ |
| 53 | + python=3.7 \ |
| 54 | + pandas |
| 55 | +conda activate pyarrow-dev |
| 56 | +conda install -y cmake=3.16.3 |
| 57 | +export ARROW_HOME=$CONDA_PREFIX |
| 58 | + |
| 59 | +mkdir arrow/cpp/build |
| 60 | +pushd arrow/cpp/build |
| 61 | + |
| 62 | +cmake -DCMAKE_INSTALL_PREFIX=$ARROW_HOME \ |
| 63 | + -DCMAKE_INSTALL_LIBDIR=lib \ |
| 64 | + -DARROW_WITH_BZ2=ON \ |
| 65 | + -DARROW_WITH_ZLIB=ON \ |
| 66 | + -DARROW_WITH_ZSTD=ON \ |
| 67 | + -DARROW_WITH_LZ4=ON \ |
| 68 | + -DARROW_WITH_SNAPPY=ON \ |
| 69 | + -DARROW_WITH_BROTLI=ON \ |
| 70 | + -DARROW_PARQUET=ON \ |
| 71 | + -DARROW_PYTHON=ON \ |
| 72 | + -DARROW_BUILD_TESTS=ON \ |
| 73 | + .. |
| 74 | +make -j4 |
| 75 | +make install |
| 76 | +popd |
| 77 | + |
| 78 | +pushd arrow/python |
| 79 | +export PYARROW_WITH_PARQUET=1 |
| 80 | +python setup.py build_ext --inplace |
| 81 | +python setup.py build_ext --build-type="release" --bundle-arrow-cpp bdist_wheel |
| 82 | +popd |
0 commit comments