From 9a46714edf317a021ca257c1fc315d5ff70ea345 Mon Sep 17 00:00:00 2001 From: Tee KOBAYASHI Date: Sat, 19 Nov 2022 16:53:40 +0900 Subject: [PATCH] libarrow-cpp: Bump to 10.0.1 --- packages/libarrow-cpp/build.sh | 47 ++++--------------- .../libarrow-python.subpackage.sh | 8 ---- packages/libarrow-python/build.sh | 40 ++++++++++++++++ ...p-cmake_modules-FindPython3Alt.cmake.patch | 7 +++ 4 files changed, 57 insertions(+), 45 deletions(-) delete mode 100644 packages/libarrow-cpp/libarrow-python.subpackage.sh create mode 100644 packages/libarrow-python/build.sh rename packages/{libarrow-cpp => libarrow-python}/cpp-cmake_modules-FindPython3Alt.cmake.patch (68%) diff --git a/packages/libarrow-cpp/build.sh b/packages/libarrow-cpp/build.sh index 91c4032f28..6dacc72e23 100644 --- a/packages/libarrow-cpp/build.sh +++ b/packages/libarrow-cpp/build.sh @@ -2,52 +2,25 @@ TERMUX_PKG_HOMEPAGE=https://github.com/apache/arrow TERMUX_PKG_DESCRIPTION="C++ libraries for Apache Arrow" TERMUX_PKG_LICENSE="Apache-2.0" TERMUX_PKG_MAINTAINER="@termux" -TERMUX_PKG_VERSION=(9.0.0) -TERMUX_PKG_REVISION=1 -TERMUX_PKG_VERSION+=(1.23.4) # NumPy version -TERMUX_PKG_SRCURL=(https://github.com/apache/arrow/archive/refs/tags/apache-arrow-${TERMUX_PKG_VERSION}.tar.gz - https://github.com/numpy/numpy/archive/refs/tags/v${TERMUX_PKG_VERSION[1]}.tar.gz) -TERMUX_PKG_SHA256=(bb187b4b0af8dcc027fffed3700a7b891c9f76c9b63ad8925b4afb8257a2bb1b - 3ffd7b40ebe8a316324ff0cf83b820a25a034626836e001548d09d5b63ba84a8) +# Align the version with `libarrow-python` package. +TERMUX_PKG_VERSION=10.0.1 +TERMUX_PKG_SRCURL=https://github.com/apache/arrow/archive/refs/tags/apache-arrow-${TERMUX_PKG_VERSION}.tar.gz +TERMUX_PKG_SHA256=28c3e0402bc1c3c1e047b6e26cedb8d1d89b2b9497d576af24b0b700eef11701 TERMUX_PKG_DEPENDS="libc++, libre2, utf8proc" TERMUX_PKG_BUILD_DEPENDS="rapidjson" TERMUX_PKG_EXTRA_CONFIGURE_ARGS=" -DARROW_BUILD_STATIC=OFF +-DARROW_CSV=ON +-DARROW_DATASET=ON +-DARROW_HDFS=ON -DARROW_JEMALLOC=OFF --DARROW_PYTHON=ON +-DARROW_JSON=ON -DARROW_PARQUET=ON +-DARROW_RUNTIME_SIMD_LEVEL=NONE +-DARROW_SIMD_LEVEL=NONE " -termux_step_post_get_source() { - mv numpy-${TERMUX_PKG_VERSION[1]} numpy -} - termux_step_pre_configure() { - _PYTHON_VERSION=$(. $TERMUX_SCRIPTDIR/packages/python/build.sh; echo $_MAJOR_VERSION) - termux_setup_python_crossenv - pushd $TERMUX_PYTHON_CROSSENV_SRCDIR - _CROSSENV_PREFIX=$TERMUX_PKG_BUILDDIR/python-crossenv-prefix - python${_PYTHON_VERSION} -m crossenv \ - $TERMUX_PREFIX/bin/python${_PYTHON_VERSION} \ - ${_CROSSENV_PREFIX} - popd - . ${_CROSSENV_PREFIX}/bin/activate - - build-pip install Cython wheel - - LDFLAGS+=" -lpython${_PYTHON_VERSION}" - export NPY_DISABLE_SVML=1 - pushd $TERMUX_PKG_SRCDIR/numpy - MATHLIB="m" pip install . - popd - TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" - -DPYTHON_EXECUTABLE=python - -DPYTHON_INCLUDE_DIRS=$TERMUX_PREFIX/include/python${_PYTHON_VERSION} - -DPYTHON_LIBRARIES=$TERMUX_PREFIX/lib/libpython${_PYTHON_VERSION}.so - -DPYTHON_OTHER_LIBS= - -DNUMPY_INCLUDE_DIRS=${_CROSSENV_PREFIX}/cross/lib/python${_PYTHON_VERSION}/site-packages/numpy/core/include - " - TERMUX_PKG_SRCDIR+="/cpp" _NEED_DUMMY_LIBRT_A= diff --git a/packages/libarrow-cpp/libarrow-python.subpackage.sh b/packages/libarrow-cpp/libarrow-python.subpackage.sh deleted file mode 100644 index 02a344952d..0000000000 --- a/packages/libarrow-cpp/libarrow-python.subpackage.sh +++ /dev/null @@ -1,8 +0,0 @@ -TERMUX_SUBPKG_INCLUDE=" -lib/libarrow_python* -lib/cmake/arrow/*ArrowPython*.cmake -lib/pkgconfig/arrow-python.pc -include/arrow/python -" -TERMUX_SUBPKG_DESCRIPTION="Arrow CPython extensions" -TERMUX_SUBPKG_DEPENDS="python" diff --git a/packages/libarrow-python/build.sh b/packages/libarrow-python/build.sh new file mode 100644 index 0000000000..e8843b2bd8 --- /dev/null +++ b/packages/libarrow-python/build.sh @@ -0,0 +1,40 @@ +TERMUX_PKG_HOMEPAGE=https://github.com/apache/arrow +TERMUX_PKG_DESCRIPTION="Python library for Apache Arrow" +TERMUX_PKG_LICENSE="Apache-2.0" +TERMUX_PKG_MAINTAINER="@termux" +# Align the version with `libarrow-cpp` package. +TERMUX_PKG_VERSION=10.0.1 +TERMUX_PKG_SRCURL=https://github.com/apache/arrow/archive/refs/tags/apache-arrow-${TERMUX_PKG_VERSION}.tar.gz +TERMUX_PKG_SHA256=28c3e0402bc1c3c1e047b6e26cedb8d1d89b2b9497d576af24b0b700eef11701 +TERMUX_PKG_DEPENDS="libarrow-cpp, libc++, python" +TERMUX_PKG_BUILD_DEPENDS="python-numpy" + +_PYTHON_VERSION=$(. $TERMUX_SCRIPTDIR/packages/python/build.sh; echo $_MAJOR_VERSION) + +TERMUX_PKG_EXTRA_CONFIGURE_ARGS=" +-DPYARROW_WITH_DATASET=ON +-DPYARROW_WITH_HDFS=ON +-DPYTHON_EXECUTABLE=python +-DPYTHON_INCLUDE_DIRS=$TERMUX_PREFIX/include/python${_PYTHON_VERSION} +-DPYTHON_OTHER_LIBS= +-DNUMPY_INCLUDE_DIRS=$TERMUX_PREFIX/lib/python${_PYTHON_VERSION}/site-packages/numpy/core/include +-DARROW_PKG_CONFIG_INCLUDEDIR=$TERMUX_PREFIX/include +-DARROW_PKG_CONFIG_LIBDIR=$TERMUX_PREFIX/lib +" + +termux_step_pre_configure() { + termux_setup_python_crossenv + pushd $TERMUX_PYTHON_CROSSENV_SRCDIR + _CROSSENV_PREFIX=$TERMUX_PKG_BUILDDIR/python-crossenv-prefix + python${_PYTHON_VERSION} -m crossenv \ + $TERMUX_PREFIX/bin/python${_PYTHON_VERSION} \ + ${_CROSSENV_PREFIX} + popd + . ${_CROSSENV_PREFIX}/bin/activate + + build-pip install Cython wheel + + LDFLAGS+=" -lpython${_PYTHON_VERSION}" + + TERMUX_PKG_SRCDIR+="/python/pyarrow/src" +} diff --git a/packages/libarrow-cpp/cpp-cmake_modules-FindPython3Alt.cmake.patch b/packages/libarrow-python/cpp-cmake_modules-FindPython3Alt.cmake.patch similarity index 68% rename from packages/libarrow-cpp/cpp-cmake_modules-FindPython3Alt.cmake.patch rename to packages/libarrow-python/cpp-cmake_modules-FindPython3Alt.cmake.patch index 60bdd01b3b..dc62434566 100644 --- a/packages/libarrow-cpp/cpp-cmake_modules-FindPython3Alt.cmake.patch +++ b/packages/libarrow-python/cpp-cmake_modules-FindPython3Alt.cmake.patch @@ -16,3 +16,10 @@ # CMake's python3_add_library() doesn't apply the required extension suffix, # detect it ourselves. +@@ -94,5 +96,6 @@ + set_target_properties(${name} PROPERTIES SUFFIX ${_EXT_SUFFIX}) + endfunction() + ++include(FindPackageHandleStandardArgs) + find_package_handle_standard_args( + Python3Alt REQUIRED_VARS PYTHON_EXECUTABLE PYTHON_INCLUDE_DIRS NUMPY_INCLUDE_DIRS)