diff options
| author | Michał Górny <mgorny@gentoo.org> | 2025-09-08 15:56:17 +0200 |
|---|---|---|
| committer | Michał Górny <mgorny@gentoo.org> | 2025-09-08 16:42:11 +0200 |
| commit | bb575e5598ec5daae9debe663ea4517c9ebe40bc (patch) | |
| tree | bdb9e645550c1f537abd28e511d99faa51a16334 /dev-libs/apache-arrow/apache-arrow-9999.ebuild | |
| parent | de71de924edd1a79543ef2a1cb831c49589db556 (diff) | |
| download | gentoo-bb575e5598ec5daae9debe663ea4517c9ebe40bc.tar.gz gentoo-bb575e5598ec5daae9debe663ea4517c9ebe40bc.tar.bz2 gentoo-bb575e5598ec5daae9debe663ea4517c9ebe40bc.zip | |
dev-libs/apache-arrow: Add a live ebuild for testing
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-libs/apache-arrow/apache-arrow-9999.ebuild')
| -rw-r--r-- | dev-libs/apache-arrow/apache-arrow-9999.ebuild | 119 |
1 files changed, 119 insertions, 0 deletions
diff --git a/dev-libs/apache-arrow/apache-arrow-9999.ebuild b/dev-libs/apache-arrow/apache-arrow-9999.ebuild new file mode 100644 index 000000000000..717616112186 --- /dev/null +++ b/dev-libs/apache-arrow/apache-arrow-9999.ebuild @@ -0,0 +1,119 @@ +# Copyright 2023-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Note: upstream meson port is incomplete. +# https://github.com/apache/arrow/issues/45778 +inherit cmake git-r3 + +DESCRIPTION="A cross-language development platform for in-memory data" +HOMEPAGE=" + https://arrow.apache.org/ + https://github.com/apache/arrow/ +" +EGIT_REPO_URI="https://github.com/apache/arrow.git" +EGIT_SUBMODULES=( '*' ) +S="${WORKDIR}/${P}/cpp" + +LICENSE="Apache-2.0" +SLOT="0/$(ver_cut 1)" +IUSE=" + +brotli bzip2 +compute +dataset +json lz4 +parquet +re2 +snappy ssl + test zlib zstd +" +REQUIRED_USE=" + test? ( + json + parquet? ( zstd ) + ) + ssl? ( json ) +" +RESTRICT="!test? ( test )" + +RDEPEND=" + brotli? ( app-arch/brotli:= ) + bzip2? ( app-arch/bzip2:= ) + compute? ( dev-libs/libutf8proc:= ) + dataset? ( + dev-libs/libutf8proc:= + ) + elibc_musl? ( sys-libs/timezone-data ) + lz4? ( app-arch/lz4:= ) + parquet? ( + dev-libs/libutf8proc:= + dev-libs/thrift:= + ssl? ( dev-libs/openssl:= ) + ) + re2? ( dev-libs/re2:= ) + snappy? ( app-arch/snappy:= ) + zlib? ( sys-libs/zlib:= ) + zstd? ( app-arch/zstd:= ) +" +DEPEND=" + ${RDEPEND} + dev-cpp/xsimd + >=dev-libs/boost-1.81.0 + json? ( dev-libs/rapidjson ) + test? ( + dev-cpp/gflags + dev-cpp/gtest + ) +" + +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 ON OFF) + -DARROW_COMPUTE=$(usex compute ON OFF) + -DARROW_CSV=ON + -DARROW_DATASET=$(usex dataset ON OFF) + -DARROW_DEPENDENCY_SOURCE=SYSTEM + -DARROW_DEPENDENCY_USE_SHARED=ON + -DARROW_DOC_DIR=share/doc/${PF} + -DARROW_FILESYSTEM=ON + -DARROW_HDFS=ON + -DARROW_JEMALLOC=OFF + -DARROW_JSON=$(usex json ON OFF) + -DARROW_MIMALLOC=OFF + -DARROW_PARQUET=$(usex parquet ON OFF) + -DPARQUET_REQUIRE_ENCRYPTION=$(usex ssl ON OFF) + -DARROW_USE_CCACHE=OFF + -DARROW_USE_SCCACHE=OFF + -DARROW_WITH_BROTLI=$(usex brotli ON OFF) + -DARROW_WITH_BZ2=$(usex bzip2 ON OFF) + -DARROW_WITH_LZ4=$(usex lz4 ON OFF) + -DARROW_WITH_RE2=$(usex re2 ON OFF) + -DARROW_WITH_SNAPPY=$(usex snappy ON OFF) + -DARROW_WITH_ZLIB=$(usex zlib ON OFF) + -DARROW_WITH_ZSTD=$(usex zstd ON OFF) + -DCMAKE_CXX_STANDARD=17 + ) + cmake_src_configure +} + +src_test() { + local -x PARQUET_TEST_DATA="${WORKDIR}/${P}/cpp/submodules/parquet-testing/data" + local -x ARROW_TEST_DATA="${WORKDIR}/${P}/testing/data" + cmake_src_test +} + +src_install() { + cmake_src_install + if use test; then + cd "${D}"/usr/$(get_libdir) || die + rm -r cmake/ArrowTesting || die + rm libarrow_testing* || die + rm pkgconfig/arrow-testing.pc || die + fi +} |
