summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-libs/apache-arrow/Manifest3
-rw-r--r--dev-libs/apache-arrow/apache-arrow-11.0.0.ebuild98
-rw-r--r--dev-libs/apache-arrow/files/apache-arrow-11.0.0-shared-lz4.patch14
-rw-r--r--dev-libs/apache-arrow/metadata.xml14
4 files changed, 129 insertions, 0 deletions
diff --git a/dev-libs/apache-arrow/Manifest b/dev-libs/apache-arrow/Manifest
new file mode 100644
index 000000000000..42267587e393
--- /dev/null
+++ b/dev-libs/apache-arrow/Manifest
@@ -0,0 +1,3 @@
+DIST apache-arrow-11.0.0.tar.gz 19956186 BLAKE2B dff0faecbde9e2d19f092fd0c48a7ac7a401da6dbfd17f30af1b35c9e3fd3e1ba5611311f5bcb08383368de195cff783a178a9397a63a1c4f740a81349f8b8d3 SHA512 46df4fb5a703d38d0a74fde9838e9f9702b24b442cb225517516c335a5ab18955699000bf0b2fc7d1698ada6d2e890ba3860933b6280f5160b0fce8a07484d0e
+DIST apache-arrow-arrow-data-11.0.0.tar.gz 3570422 BLAKE2B df1f8d1c4e321ca0abdce598b09945aa9e63114199e7f2eb0fc549323dadf703b917efd90c04a2d540d763a44128d76c6ee12788a983d4b9536d04297316b656 SHA512 0be19960b0d22fc2e07bf84f11148e69d6fa82f10627eb2a5e4b762b1d4cf4e151a57c5a1dc761d6d8ed29881ea589e4cfe0cd47d5c7cbf7b6107143b4a45e82
+DIST apache-arrow-parquet-data-11.0.0.tar.gz 1013835 BLAKE2B cb4e544b6588ddad503f9692ee2eee5d4f1e931f10654b7253e11ffd2feb4c957dec047a1b1644c1f1538a3bf7ea726e5a9ae9b7d0c3bb0d55d27f088b5c5be3 SHA512 d4c2af20d6a88c1beb44770982f4aa324ea4ee375e8f556339074875af15c48f4398d972c1eec35eba5d209e9e62df4bdbf73ebc8148a7bb05ffa2d69c97df61
diff --git a/dev-libs/apache-arrow/apache-arrow-11.0.0.ebuild b/dev-libs/apache-arrow/apache-arrow-11.0.0.ebuild
new file mode 100644
index 000000000000..6d70b765d4d9
--- /dev/null
+++ b/dev-libs/apache-arrow/apache-arrow-11.0.0.ebuild
@@ -0,0 +1,98 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake
+
+ARROW_DATA_GIT_HASH=d2c73bf78246331d8e58b6f11aa8aa199cbb5929
+PARQUET_DATA_GIT_HASH=b2e7cc755159196e3a068c8594f7acbaecfdaaac
+
+DESCRIPTION="A cross-language development platform for in-memory data."
+HOMEPAGE="https://arrow.apache.org/"
+SRC_URI="
+ mirror://apache/arrow/arrow-${PV}/${P}.tar.gz
+ test? (
+ https://github.com/apache/parquet-testing/archive/${PARQUET_DATA_GIT_HASH}.tar.gz
+ -> ${PN}-parquet-data-${PV}.tar.gz
+ https://github.com/apache/arrow-testing/archive/${ARROW_DATA_GIT_HASH}.tar.gz
+ -> ${PN}-arrow-data-${PV}.tar.gz
+ )
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="bzip2 dataset json lz4 parquet re2 snappy test zlib zstd"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ bzip2? ( app-arch/bzip2 )
+ dataset? (
+ dev-libs/libutf8proc
+ re2? ( dev-libs/re2 )
+ )
+ lz4? ( app-arch/lz4 )
+ parquet? (
+ dev-libs/libutf8proc
+ dev-libs/thrift
+ )
+ snappy? ( app-arch/snappy )
+ zlib? ( sys-libs/zlib )
+ zstd? ( app-arch/zstd )
+"
+DEPEND="${RDEPEND}
+ dev-cpp/xsimd
+ json? ( dev-libs/rapidjson )
+ test? (
+ dev-cpp/gtest
+ )
+"
+
+REQUIRED_USE="test? (
+ json
+ parquet? ( zstd )
+ )"
+
+S="${WORKDIR}/${P}/cpp"
+
+PATCHES=( "${FILESDIR}/${P}-shared-lz4.patch" )
+
+src_prepare() {
+ # use Gentoo CXXFLAGS, specify docdir at src_configure.
+ sed -i \
+ -e '/SetupCxxFlags/d' \
+ -e '/set(ARROW_DOC_DIR.*)/d' \
+ CMakeLists.txt \
+ || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DARROW_BUILD_STATIC=OFF
+ -DARROW_BUILD_TESTS=$(usex test)
+ -DARROW_CSV=ON
+ -DARROW_DATASET=$(usex dataset)
+ -DARROW_DEPENDENCY_SOURCE=SYSTEM
+ -DARROW_DOC_DIR=share/doc/${PF}
+ -DARROW_JEMALLOC=OFF
+ -DARROW_JSON=$(usex json)
+ -DARROW_PARQUET=$(usex parquet)
+ -DARROW_USE_CCACHE=OFF
+ -DARROW_USE_SCCACHE=OFF
+ -DARROW_WITH_BZ2=$(usex bzip2)
+ -DARROW_WITH_LZ4=$(usex lz4)
+ -DARROW_WITH_RE2=$(usex re2)
+ -DARROW_WITH_SNAPPY=$(usex snappy)
+ -DARROW_WITH_ZLIB=$(usex zlib)
+ -DARROW_WITH_ZSTD=$(usex zstd)
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ export PARQUET_TEST_DATA="${WORKDIR}/parquet-testing-${PARQUET_DATA_GIT_HASH}/data"
+ export ARROW_TEST_DATA="${WORKDIR}/arrow-testing-${ARROW_DATA_GIT_HASH}/data"
+ cmake_src_test
+}
diff --git a/dev-libs/apache-arrow/files/apache-arrow-11.0.0-shared-lz4.patch b/dev-libs/apache-arrow/files/apache-arrow-11.0.0-shared-lz4.patch
new file mode 100644
index 000000000000..fdb26196d0bb
--- /dev/null
+++ b/dev-libs/apache-arrow/files/apache-arrow-11.0.0-shared-lz4.patch
@@ -0,0 +1,14 @@
+Index: cpp/cmake_modules/Findlz4Alt.cmake
+===================================================================
+--- cpp.orig/cmake_modules/Findlz4Alt.cmake
++++ cpp/cmake_modules/Findlz4Alt.cmake
+@@ -32,8 +32,8 @@ if(lz4_FOUND)
+ # Conan uses lz4::lz4 not LZ4::lz4
+ if(NOT TARGET LZ4::lz4 AND TARGET lz4::lz4)
+ add_library(LZ4::lz4 ALIAS lz4::lz4)
++ return()
+ endif()
+- return()
+ endif()
+
+ if(MSVC_TOOLCHAIN AND NOT DEFINED LZ4_MSVC_LIB_PREFIX)
diff --git a/dev-libs/apache-arrow/metadata.xml b/dev-libs/apache-arrow/metadata.xml
new file mode 100644
index 000000000000..78102c94fc52
--- /dev/null
+++ b/dev-libs/apache-arrow/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>tupone@gentoo.org</email>
+ <name>Tupone Alfredo</name>
+ </maintainer>
+ <use>
+ <flag name="dataset">Build the Arrow Dataset Modules</flag>
+ <flag name='json'>Enables read/write json format</flag>
+ <flag name='parquet'>Enables read/write parquet data format</flag>
+ <flag name="re2">Build with support for regular expressions using the re2 library</flag>
+ </use>
+</pkgmetadata>