forked from pool/apache-arrow
## Bug Fixes
* [C++] Add option to string ‘center’ kernel to control
left/right alignment on odd number of padding (#41449)
* [C++][Python] Fix casting to extension type with fixed size
list storage type (#42219)
* [C++] Replace null_count with MayHaveNulls in
ListArrayFromArray and MapArray (#41957)
* [C++][Python] RecordBatch.filter() segfaults if passed a
ChunkedArray (#40971)
* [C++][Parquet] Timestamp conversion from Parquet to Arrow does
not follow compatibility guidelines for convertedType
* [C++] Use LargeStringArray for casting when writing tables to
CSV (#40271)
* [C++][Python] Map child Array constructed from keys and items
shouldn’t have offset (#40871)
* [C++] Fix compile warning with ‘implicitly-defined constructor
does not initialize’ in encoding_benchmark (#41060)
* [C++] Get null_bit_id according to are_cols_in_encoding_order
in NullUpdateColumnToRow_avx2 (#40998)
* [C++] Clean up unused parameter warnings (#41111)
* [C++][Acero] Fix asof join race (#41614)
* [C++] support for single threaded joins (#41125)
* [C++] Fix hashjoin benchmark failed at make utf8’s random
batches (#41195)
* [C++] Check to avoid copying when NullBitmapBuffer is Null
(#41452)
* [C++] Fix crash on invalid Parquet file (#41366)
* [C++][Parquet] More strict Parquet level checking (#41346)
* [C++][Gandiva] Fix gandiva cache size env var (#41330)
* [C++][CMake][Windows] Remove needless .dll suffix from link
libraries (#41341)
* [C++][CMake] Remove unused ARROW_NO_DEPRECATED_API (#41345)
* [C++][maybe_unused] with Arrow macro (#41359)
* [C++][Large] ListView and Map nested types for scalar_if_else’s
kernel functions (#41419)
* [C++][Gandiva] Fix ascii_utf8 function to return same result on
x86 and Arm (#41434)
* [C++] Reuse deduplication logic for direct registration
(#41466)
* [C++] Clean up more redundant move warnings (#41487)
* [C++][Compute] Remove redundant logic for ArrayData as
ExecResults in ExecScalarCaseWhen (#41380)
* [C++][CMake] correctly use Protobuf_PROTOC_EXECUTABLE (#41582)
* [C++][CMake] Fix ARROW_USE_BOOST detect condition (#41622)
* [C++][Python] Add optional null_bitmap to MapArray::FromArrays
(#41757)
* [C++] macros.h: Fix ARROW_FORCE_INLINE for MSVC (#41712)
* [C++][Acero] Remove an useless parameter for QueryContext::Init
called in hash_join_benchmark (#41716)
* [C++] Fix the issue that temp vector stack may be under sized
(#41746)
* [C++] Check that extension metadata key is present before
attempting to delete it (#41763)
* [C++] Iterator releases its resource immediately when it reads
all values (#41824)
* [C++][Flight][Benchmark] Ensure waiting server ready (#41793)
* [C++] Fix avx2 gather offset larger than 2GB in
CompareColumnsToRows (#42188)
* [C++][S3] Fix potential deadlock when closing output stream
(#41876)
* [CI][C++] Clear cache for mamba on AppVeyor (#41977)
* [CI][Python][C++] Fix utf8proc detection for wheel on Windows
(#42022)
* [C++] Support list-views on list_slice (#42067)
* [C++] Fix an OTel test failure and remove needless logs
(#42122)
* [C++][FS][Azure] Ensure setting BlobSasBuilder::Protocol
(#42108)
* [C++] Support list-view typed arrays in array_take and
array_filter (#42117)
* [C++] Fix some potential uninitialized variable warnings
(#42207)
* [C++] Avoid invalid accesses in parquet-encoding-benchmark
(#42141)
* [C++] Use FetchContent for bundled ORC (#43011)
* [C++] Fix GetRecordBatchPayload crashes for device data
(#42199)
* [C++] Use non-stale c-ares download URL (#42250)
* [C++][Parquet] Check for valid ciphertext length to prevent
segfault (#43071)
* [C++][Compute] Mark KeyCompare.CompareColumnsToRowsLarge as
large memory test (#43128)
* [C++] Upgrade bundled google-cloud-cpp to 2.22.0 (#43136)
## New Features and Improvements
* [C++][Compute] Implement Grouper::Reset (#41352)
* [Go][C++] Implement Flight SQL Bulk Ingestion (#38385)
* [C++][FS][Azure] Support azure cli auth (#41976)
* [C++][FS][Azure] Add support for environment credential
(#41715)
* [C++] Optimize Take for fixed-size types including nested
fixed-size lists (#41297)
* [C++][Device] Add Copy/View slice functions to a CPU pointer
(#41477)
* [C++] Add support for OpenTelemetry logging (#39905)
* [C++] Import/Export ArrowDeviceArrayStream (#40807)
* [C++] move LocalFileSystem to the registry (#40356)
* [C++] Make flatbuffers serialization more deterministic
(#40392)
* [C++][Gandiva] add RE2::Options set_dot_nl(true) for Like
function (#40970)
* [C++] Introduce portable compiler assumptions (#41021)
* [C++] Add a grouper benchmark for preventing performance
regression (#41036)
* [C++] Support flatten for combining nested list related types
(#41092)
* [C++] Clean up remaining tasks related to half float casts
(#41084)
* [C++][FS][Azure] Add support for CopyFile with hierarchical
namespace support (#41276)
* [C++] Add is_validity_defined_by_bitmap() predicate (#41115)
* [C++] IO: enhance boundary checking in CompressedInputStream
(#41117)
* [C++][Python] Expose recursive flatten for lists on
list_flatten kernel function and pyarrow bindings (#41295)
* [C++][Parquet][Doc] Denote PARQUET:field_id in parquet.rst
(#41187)
* [C++] Extract the kernel loops used for PrimitiveTakeExec and
generalize to any fixed-width type (#41373)
* [C++][Acero] Use per-node basis temp vector stack to mitigate
overflow (#41335)
* [C++][Parquet] Optimize DelimitRecords by batch execution when
max_rep_level > 1 (#41362)
* [C++][FS][Azure][Docs] Add AzureFileSystem to Filesystems API
reference (#41411)
* [C++] Use ASAN to poison temp vector stack memory (#41695)
* [C++][S3] Add a new option to check existence before CreateDir
(#41822)
* [C++][Parquet] Fix
DeltaLengthByteArrayEncoder::EstimatedDataEncodedSize (#41546)
* [C++] Thirdparty: Upgrade xsimd to 13.0.0 (#41548)
* [C++] Improve fixed_width_test_util.h (#41575)
* [C++] ChunkResolver: Implement ResolveMany and add unit tests
(#41561)
* [C++] fixed_width_internal.h: Simplify docstring and support
bit-sized types (BOOL) (#41597)
* [C++][Python] Extends the add_key_value to parquet::arrow and
PyArrow (#41633)
* [C++][CMake][Windows] Don’t build needless object libraries
(#41658)
* [C++][Python] PrettyPrint non-cpu data by copying to default
CPU device (#42010)
* [C++][Parquet] Thrift: generate template method to accelerate
reading thrift (#41703)
* [C++][Parquet] Minor: moving EncodedStats by default rather
than copying (#41727)
* [C++][ORC] Ensure setting detected ORC version (#41767)
* [C++][Parquet] Add file metadata read/write benchmark (#41761)
* [C++] Make git-dependent definitions internal (#41781)
* [C++][S3] Remove GetBucketRegion hack for newer AWS SDK
versions (#41798)
* [C++][Parquet] normalize dictionary encoding to use
RLE_DICTIONARY (#41819)
* [C++] IPC: Minor enhance the code of writer (#41900)
* [C++] Fix ExecuteScalar deduce all_scalar with chunked_array
(#41925)
* [C++] Minor enhance code style for FixedShapeTensorType
(#41954)
* [C++] Follow up of adding null_bitmap to MapArray::FromArrays
(#41956)
* [C++] Misc changes making code around list-like types and
list-view types behave the same way (#41971)
* [C++] : kernel.cc: Remove defaults on switch so that compiler
can check full enum coverage for us (#41995)
* [C++][Parquet] ParquetFilePrinter::JSONPrint print length of
FLBA (#41981)
* [C++][CMake] Add preset for Valgrind (#42110)
* [C++] Move TakeXXX free functions into TakeMetaFunction and
make them private (#42127)
* [C++][FS][Azure] Validate
AzureOptions::{blob,dfs}_storage_scheme (#42135)
* [C++] list_parent_indices: Add support for list-view types
(#42236)
* [C++] Reduce the recursion of many-join test (#43042)
* [C++] Limit buffer size in BufferedInputStream::SetBufferSize
with raw_read_bound (#43064)
- Require cmake lz4 for 1.10
- Update to 17.0.0
## Bug Fixes
* [C++][Python] Fix casting to extension type with fixed size
list storage type (#42219)
* [Python] Include metadata when creating pa.schema from
PyCapsule (#41538)
* [C++][Python] RecordBatch.filter() segfaults if passed a
ChunkedArray (#40971)
* [Python] pa.array: add check for byte-swapped numpy arrays
inside python objects (#41549)
* [Python] Fix read_table for encrypted parquet (#39438)
* [Python] RunEndEncodedArray.from_arrays: bugfix for Array
arguments (#40560) (#41093)
* [C++][Python] Map child Array constructed from keys and items
shouldn’t have offset (#40871)
* [Python] `test_numpy_array_protocol` test failures with numpy
2.0.0rc1
* [Python] Fix StructArray.sort() for by=None (#41495)
* [Python] Build with Python 3.13 (#42034)
* [Python] remove special methods related to buffers in python
<2.6 (#41492)
* [Python] Fix reading column index with decimal values (#41503)
* [Docs][Python] Remove duplicate contents (#41588)
* [C++][Python] Add optional null_bitmap to MapArray::FromArrays
(#41757)
* [Python][Parquet] Implement to_dict method on SortingColumn
(#41704)
* [Python] CMake: ignore Parquet encryption option if Parquet
itself is not enabled (fix Java integration build) (#41776)
* [Python] Disallow direct pa.RecordBatchReader() construction to
avoid segfaults (#41773)
* [Python] Fix RecordBatchReader.cast to support casting to equal
schema for all types (#42098)
* [Python] Fix tests when using NumPy 2.0 on Windows (#42099)
* [CI][Python] Use pip install -e instead of setup.py build_ext
–inplace for installing pyarrow on verification script (#42007)
* [CI][Python][C++] Fix utf8proc detection for wheel on Windows
(#42022)
* [Python][CI] Update expected output for numpy 2.0.0 (#42172)
## New Features and Improvements
* [Python] Replace pandas.util.testing.rands with vendored
version (#42089)
* [Python] begin moving static settings to pyproject.toml
(#41041)
* [Python] Implement PyCapsule interface for Device data in
PyArrow (#40717)
* [Python] Expand the Arrow PyCapsule Interface with C Device
Data support (#40708)
* [Python] Let RecordBatch.filter accept a boolean expression in
addition to mask array (#43043)
* [Python] Fix pickling of LocalFileSystem for cython 2 (#41459)
* [Python] Expand the C Device Interface bindings to support
import on CUDA device (#40385)
* [Python] Allow passing a mapping of column names to
rename_columns (#40645)
* [Python][Packaging] Strip unnecessary symbols when building
wheels (#42028)
* [Python][Docs] Update PyArrow installation docs for conda
package split (#41135)
* [Python] Basic bindings for Device and MemoryManager classes
(#41685)
* [C++][Python] Expose recursive flatten for lists on
list_flatten kernel function and pyarrow bindings (#41295)
* [Python][Packaging] Ensure to build with released numpy 2.0
(instead of RC) in the wheel building workflows (#42194)
* [CI][Python] Add a job on ARM64 macOS (#41313)
* [CI][Python] Reduce CI time on macOS (#41378)
* [Python] Expose byte_width and bit_width of ExtensionType in
terms of the storage type (#41413)
* [Python] Update Python development guide about components being
enabled by default based on Arrow C++ (#41705)
* [Python] Building PyArrow: enable/disable python components by
default based on availability in Arrow C++ (#41494)
* [C++][Python] Extends the add_key_value to parquet::arrow and
PyArrow (#41633)
* [Python] Ensure Buffer methods don’t crash with non-CPU data
(#41889)
* [C++][Python] PrettyPrint non-cpu data by copying to default
CPU device (#42010)
* [Python][Parquet] Update BYTE_STREAM_SPLIT description in
write_table() docstring (#41759)
* [Python] Add support for Pyodide (#37822)
* [Python] Fix pandas tests to follow downstream datetime64 unit
changes (#41979)
* [Python] Allow Array.filter() to take general array input
(#42051)
* [Python] Expose new FLOAT16 logical type in the pyarrow.parquet
bindings (#42103)
* [Python] Array gracefully fails on non-cpu device (#42113)
* [Python][Parquet] Pyarrow store decimal as integer (#42169)
* [Python] Add CI job for Numpy 1.X (#42189)
* [CI][Python] Pin openjdk=17 in python substrait integration
(#43051)
- Drop pyarrow-pr41319-numpy2-tests.patch
- Add pyarrow-pr433325-extradirs.patch gh#apache/arrow/pull/43325
OBS-URL: https://build.opensuse.org/package/show/science/apache-arrow?expand=0&rev=34
533 lines
20 KiB
RPMSpec
533 lines
20 KiB
RPMSpec
#
|
|
# spec file for package apache-arrow
|
|
#
|
|
# Copyright (c) 2024 SUSE LLC
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
# Remove static build due to devel-static packages being required by the generated CMake Targets
|
|
%bcond_with static
|
|
%bcond_without tests
|
|
# Required for runtime dispatch, not yet packaged
|
|
%bcond_with xsimd
|
|
|
|
%define sonum 1700
|
|
# See git submodule /testing pointing to the correct revision
|
|
%define arrow_testing_commit 735ae7128d571398dd798d7ff004adebeb342883
|
|
# See git submodule /cpp/submodules/parquet-testing pointing to the correct revision
|
|
%define parquet_testing_commit 74278bc4a1122d74945969e6dec405abd1533ec3
|
|
Name: apache-arrow
|
|
Version: 17.0.0
|
|
Release: 0
|
|
Summary: A development platform for in-memory data
|
|
License: Apache-2.0 AND BSD-3-Clause AND BSD-2-Clause AND MIT
|
|
Group: Development/Tools/Other
|
|
URL: https://arrow.apache.org/
|
|
# SourceRepository: https://github.com/apache/arrow
|
|
Source0: https://github.com/apache/arrow/archive/apache-arrow-%{version}.tar.gz
|
|
Source1: https://github.com/apache/arrow-testing/archive/%{arrow_testing_commit}.tar.gz#/arrow-testing-%{version}.tar.gz
|
|
Source2: https://github.com/apache/parquet-testing/archive/%{parquet_testing_commit}.tar.gz#/parquet-testing-%{version}.tar.gz
|
|
BuildRequires: bison
|
|
BuildRequires: cmake >= 3.16
|
|
BuildRequires: fdupes
|
|
BuildRequires: flex
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: libboost_filesystem-devel
|
|
BuildRequires: libboost_system-devel >= 1.64.0
|
|
%if %{with static}
|
|
BuildRequires: libzstd-devel-static
|
|
%endif
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: python-rpm-macros
|
|
BuildRequires: python3-base
|
|
BuildRequires: (cmake(lz4) >= 1.10 or (pkgconfig(liblz4) >= 1.8.3 with pkgconfig(liblz4) < 1.10))
|
|
BuildRequires: cmake(Snappy) >= 1.1.7
|
|
BuildRequires: cmake(absl)
|
|
BuildRequires: cmake(double-conversion) >= 3.1.5
|
|
BuildRequires: cmake(re2)
|
|
BuildRequires: pkgconfig(RapidJSON)
|
|
BuildRequires: pkgconfig(bzip2) >= 1.0.8
|
|
BuildRequires: pkgconfig(gflags) >= 2.2.0
|
|
BuildRequires: pkgconfig(grpc++) >= 1.20.0
|
|
BuildRequires: pkgconfig(libbrotlicommon) >= 1.0.7
|
|
BuildRequires: pkgconfig(libbrotlidec) >= 1.0.7
|
|
BuildRequires: pkgconfig(libbrotlienc) >= 1.0.7
|
|
BuildRequires: pkgconfig(libcares) >= 1.15.0
|
|
BuildRequires: pkgconfig(libglog) >= 0.3.5
|
|
BuildRequires: pkgconfig(libopenssl)
|
|
BuildRequires: pkgconfig(liburiparser) >= 0.9.3
|
|
BuildRequires: pkgconfig(libutf8proc)
|
|
BuildRequires: pkgconfig(libzstd) >= 1.4.3
|
|
BuildRequires: pkgconfig(protobuf) >= 3.7.1
|
|
BuildRequires: pkgconfig(sqlite3) >= 3.45.2
|
|
BuildRequires: pkgconfig(thrift) >= 0.11.0
|
|
BuildRequires: pkgconfig(zlib) >= 1.2.11
|
|
%if %{with tests}
|
|
BuildRequires: timezone
|
|
BuildRequires: pkgconfig(gmock) >= 1.10
|
|
BuildRequires: pkgconfig(gtest) >= 1.10
|
|
%endif
|
|
|
|
%description
|
|
Apache Arrow is a cross-language development platform for in-memory
|
|
data. It specifies a standardized language-independent columnar memory
|
|
format for flat and hierarchical data, organized for efficient
|
|
analytic operations on modern hardware. It also provides computational
|
|
libraries and zero-copy streaming messaging and interprocess
|
|
communication.
|
|
|
|
%package -n libarrow%{sonum}
|
|
Summary: Development platform for in-memory data - shared library
|
|
Group: System/Libraries
|
|
|
|
%description -n libarrow%{sonum}
|
|
Apache Arrow is a cross-language development platform for in-memory
|
|
data. It specifies a standardized language-independent columnar memory
|
|
format for flat and hierarchical data, organized for efficient
|
|
analytic operations on modern hardware. It also provides computational
|
|
libraries and zero-copy streaming messaging and interprocess
|
|
communication.
|
|
|
|
This package provides the shared library for Apache Arrow.
|
|
|
|
%package -n libarrow_acero%{sonum}
|
|
Summary: Development platform for in-memory data - shared library
|
|
Group: System/Libraries
|
|
|
|
%description -n libarrow_acero%{sonum}
|
|
Apache Arrow is a cross-language development platform for in-memory
|
|
data. It specifies a standardized language-independent columnar memory
|
|
format for flat and hierarchical data, organized for efficient
|
|
analytic operations on modern hardware. It also provides computational
|
|
libraries and zero-copy streaming messaging and interprocess
|
|
communication.
|
|
|
|
This package provides the shared library for the Acero streaming execution engine
|
|
|
|
%package -n libarrow_flight%{sonum}
|
|
Summary: Development platform for in-memory data - shared library
|
|
Group: System/Libraries
|
|
|
|
%description -n libarrow_flight%{sonum}
|
|
Apache Arrow is a cross-language development platform for in-memory
|
|
data. It specifies a standardized language-independent columnar memory
|
|
format for flat and hierarchical data, organized for efficient
|
|
analytic operations on modern hardware. It also provides computational
|
|
libraries and zero-copy streaming messaging and interprocess
|
|
communication.
|
|
|
|
This package provides the shared library for Arrow Flight
|
|
|
|
%package -n libarrow_flight_sql%{sonum}
|
|
Summary: Development platform for in-memory data - shared library
|
|
Group: System/Libraries
|
|
|
|
%description -n libarrow_flight_sql%{sonum}
|
|
Apache Arrow is a cross-language development platform for in-memory
|
|
data. It specifies a standardized language-independent columnar memory
|
|
format for flat and hierarchical data, organized for efficient
|
|
analytic operations on modern hardware. It also provides computational
|
|
libraries and zero-copy streaming messaging and interprocess
|
|
communication.
|
|
|
|
This package provides the shared library for Arrow Flight SQL
|
|
|
|
%package -n libarrow_dataset%{sonum}
|
|
Summary: Development platform for in-memory data - shared library
|
|
Group: System/Libraries
|
|
|
|
%description -n libarrow_dataset%{sonum}
|
|
Apache Arrow is a cross-language development platform for in-memory
|
|
data. It specifies a standardized language-independent columnar memory
|
|
format for flat and hierarchical data, organized for efficient
|
|
analytic operations on modern hardware. It also provides computational
|
|
libraries and zero-copy streaming messaging and interprocess
|
|
communication.
|
|
|
|
This package provides the shared library for Dataset API support.
|
|
|
|
%package -n libparquet%{sonum}
|
|
Summary: Development platform for in-memory data - shared library
|
|
Group: System/Libraries
|
|
|
|
%description -n libparquet%{sonum}
|
|
Apache Arrow is a cross-language development platform for in-memory
|
|
data. It specifies a standardized language-independent columnar memory
|
|
format for flat and hierarchical data, organized for efficient
|
|
analytic operations on modern hardware. It also provides computational
|
|
libraries and zero-copy streaming messaging and interprocess
|
|
communication.
|
|
|
|
This package provides the shared library for the Parquet format.
|
|
|
|
%package devel
|
|
Summary: Development platform for in-memory data - development files
|
|
Group: Development/Libraries/C and C++
|
|
Requires: libarrow%{sonum} = %{version}
|
|
Requires: libarrow_acero%{sonum} = %{version}
|
|
Requires: libarrow_dataset%{sonum} = %{version}
|
|
Requires: libarrow_flight%{sonum} = %{version}
|
|
Requires: libarrow_flight_sql%{sonum} = %{version}
|
|
%if %{with static}
|
|
Suggests: %{name}-devel-static = %{version}
|
|
Suggests: %{name}-acero-devel-static = %{version}
|
|
Suggests: %{name}-dataset-devel-static = %{version}
|
|
Suggests: %{name}-flight-devel-static = %{version}
|
|
Suggests: %{name}-flight-sql-devel-static = %{version}
|
|
%endif
|
|
|
|
%description devel
|
|
Apache Arrow is a cross-language development platform for in-memory
|
|
data. It specifies a standardized language-independent columnar memory
|
|
format for flat and hierarchical data, organized for efficient
|
|
analytic operations on modern hardware. It also provides computational
|
|
libraries and zero-copy streaming messaging and interprocess
|
|
communication.
|
|
|
|
This package provides the development libraries and headers for
|
|
Apache Arrow.
|
|
|
|
%if %{with static}
|
|
%package devel-static
|
|
Summary: Development platform for in-memory data - development files
|
|
Group: Development/Libraries/C and C++
|
|
Requires: %{name}-devel = %{version}
|
|
|
|
%description devel-static
|
|
Apache Arrow is a cross-language development platform for in-memory
|
|
data. It specifies a standardized language-independent columnar memory
|
|
format for flat and hierarchical data, organized for efficient
|
|
analytic operations on modern hardware. It also provides computational
|
|
libraries and zero-copy streaming messaging and interprocess
|
|
communication.
|
|
|
|
This package provides the static library
|
|
|
|
%package acero-devel-static
|
|
Summary: Development platform for in-memory data - development files
|
|
Group: Development/Libraries/C and C++
|
|
Requires: %{name}-devel = %{version}
|
|
|
|
%description acero-devel-static
|
|
Apache Arrow is a cross-language development platform for in-memory
|
|
data. It specifies a standardized language-independent columnar memory
|
|
format for flat and hierarchical data, organized for efficient
|
|
analytic operations on modern hardware. It also provides computational
|
|
libraries and zero-copy streaming messaging and interprocess
|
|
communication.
|
|
|
|
This package provides the static library for the Acero streaming execution engine
|
|
|
|
%package flight-devel-static
|
|
Summary: Development platform for in-memory data - development files
|
|
Group: Development/Libraries/C and C++
|
|
Requires: %{name}-devel = %{version}
|
|
|
|
%description flight-devel-static
|
|
Apache Arrow is a cross-language development platform for in-memory
|
|
data. It specifies a standardized language-independent columnar memory
|
|
format for flat and hierarchical data, organized for efficient
|
|
analytic operations on modern hardware. It also provides computational
|
|
libraries and zero-copy streaming messaging and interprocess
|
|
communication.
|
|
|
|
This package provides the static library for Arrow Flight
|
|
|
|
%package flight-sql-devel-static
|
|
Summary: Development platform for in-memory data - development files
|
|
Group: Development/Libraries/C and C++
|
|
Requires: %{name}-devel = %{version}
|
|
|
|
%description flight-sql-devel-static
|
|
Apache Arrow is a cross-language development platform for in-memory
|
|
data. It specifies a standardized language-independent columnar memory
|
|
format for flat and hierarchical data, organized for efficient
|
|
analytic operations on modern hardware. It also provides computational
|
|
libraries and zero-copy streaming messaging and interprocess
|
|
communication.
|
|
|
|
This package provides the static library for Arrow Flight SQL
|
|
|
|
%package dataset-devel-static
|
|
Summary: Development platform for in-memory data - development files
|
|
Group: Development/Libraries/C and C++
|
|
Requires: %{name}-devel = %{version}
|
|
|
|
%description dataset-devel-static
|
|
Apache Arrow is a cross-language development platform for in-memory
|
|
data. It specifies a standardized language-independent columnar memory
|
|
format for flat and hierarchical data, organized for efficient
|
|
analytic operations on modern hardware. It also provides computational
|
|
libraries and zero-copy streaming messaging and interprocess
|
|
communication.
|
|
|
|
This package provides the static library for Dataset API support
|
|
%endif
|
|
|
|
%package -n apache-parquet-devel
|
|
Summary: Development platform for in-memory data - development files
|
|
Group: Development/Libraries/C and C++
|
|
Requires: libparquet%{sonum} = %{version}
|
|
|
|
%description -n apache-parquet-devel
|
|
Apache Arrow is a cross-language development platform for in-memory
|
|
data. It specifies a standardized language-independent columnar memory
|
|
format for flat and hierarchical data, organized for efficient
|
|
analytic operations on modern hardware. It also provides computational
|
|
libraries and zero-copy streaming messaging and interprocess
|
|
communication.
|
|
|
|
This package provides the development libraries and headers for
|
|
the Parquet format.
|
|
|
|
%if %{with static}
|
|
%package -n apache-parquet-devel-static
|
|
Summary: Development platform for in-memory data - development files
|
|
Group: Development/Libraries/C and C++
|
|
Requires: apache-parquet-devel = %{version}
|
|
|
|
%description -n apache-parquet-devel-static
|
|
Apache Arrow is a cross-language development platform for in-memory
|
|
data. It specifies a standardized language-independent columnar memory
|
|
format for flat and hierarchical data, organized for efficient
|
|
analytic operations on modern hardware. It also provides computational
|
|
libraries and zero-copy streaming messaging and interprocess
|
|
communication.
|
|
|
|
This package provides the static library for the Parquet format.
|
|
%endif
|
|
|
|
%package -n apache-parquet-utils
|
|
Summary: Development platform for in-memory data - development files
|
|
Group: Productivity/Scientific/Math
|
|
|
|
%description -n apache-parquet-utils
|
|
Apache Arrow is a cross-language development platform for in-memory
|
|
data. It specifies a standardized language-independent columnar memory
|
|
format for flat and hierarchical data, organized for efficient
|
|
analytic operations on modern hardware. It also provides computational
|
|
libraries and zero-copy streaming messaging and interprocess
|
|
communication.
|
|
|
|
This package provides utilities for working with the Parquet format.
|
|
|
|
%prep
|
|
%setup -q -n arrow-apache-arrow-%{version} -a1 -a2
|
|
%autopatch -p1
|
|
# https://github.com/protocolbuffers/protobuf/issues/12292
|
|
sed -i 's/find_package(Protobuf/find_package(Protobuf CONFIG/' cpp/cmake_modules/FindProtobufAlt.cmake
|
|
|
|
%build
|
|
export CFLAGS="%{optflags} -ffat-lto-objects"
|
|
export CXXFLAGS="%{optflags} -ffat-lto-objects"
|
|
|
|
pushd cpp
|
|
%cmake \
|
|
-DARROW_BUILD_EXAMPLES:BOOL=ON \
|
|
-DARROW_BUILD_SHARED:BOOL=ON \
|
|
-DARROW_BUILD_STATIC:BOOL=%{?with_static:ON}%{!?with_static:OFF} \
|
|
-DARROW_BUILD_TESTS:BOOL=%{?with_tests:ON}%{!?with_tests:OFF} \
|
|
-DARROW_BUILD_UTILITIES:BOOL=ON \
|
|
-DARROW_DEPENDENCY_SOURCE=SYSTEM \
|
|
-DARROW_BUILD_BENCHMARKS:BOOL=OFF \
|
|
%ifarch aarch64
|
|
-DARROW_SIMD_LEVEL:STRING=%{?with_xsimd:NEON}%{!?with_xsimd:NONE} \
|
|
%else
|
|
-DARROW_SIMD_LEVEL:STRING="NONE" \
|
|
%endif
|
|
-DARROW_RUNTIME_SIMD_LEVEL:STRING=%{?with_xsimd:MAX}%{!?with_xsimd:NONE} \
|
|
-DARROW_COMPUTE:BOOL=ON \
|
|
-DARROW_CSV:BOOL=ON \
|
|
-DARROW_DATASET:BOOL=ON \
|
|
-DARROW_FILESYSTEM:BOOL=ON \
|
|
-DARROW_FLIGHT:BOOL=ON \
|
|
-DARROW_FLIGHT_SQL:BOOL=ON \
|
|
-DARROW_GANDIVA:BOOL=OFF \
|
|
-DARROW_SKYHOOK:BOOL=OFF \
|
|
-DARROW_HDFS:BOOL=ON \
|
|
-DARROW_HIVESERVER2:BOOL=OFF \
|
|
-DARROW_IPC:BOOL=ON \
|
|
-DARROW_JEMALLOC:BOOL=OFF \
|
|
-DARROW_JSON:BOOL=ON \
|
|
-DARROW_ORC:BOOL=OFF \
|
|
-DARROW_PARQUET:BOOL=ON \
|
|
-DARROW_USE_GLOG:BOOL=ON \
|
|
-DARROW_USE_OPENSSL:BOOL=ON \
|
|
-DARROW_WITH_BACKTRACE:BOOL=ON \
|
|
-DARROW_WITH_BROTLI:BOOL=ON \
|
|
-DARROW_WITH_BZ2:BOOL=ON \
|
|
-DARROW_WITH_LZ4:BOOL=ON \
|
|
-DARROW_WITH_SNAPPY:BOOL=ON \
|
|
-DARROW_WITH_ZLIB:BOOL=ON \
|
|
-DARROW_WITH_ZSTD:BOOL=ON \
|
|
-DPARQUET_BUILD_EXAMPLES:BOOL=ON \
|
|
-DPARQUET_BUILD_EXECUTABLES:BOOL=ON \
|
|
-DPARQUET_REQUIRE_ENCRYPTION:BOOL=ON \
|
|
-DARROW_VERBOSE_THIRDPARTY_BUILD:BOOL=ON \
|
|
-DARROW_CUDA:BOOL=OFF \
|
|
-DARROW_GANDIVA_JAVA:BOOL=OFF
|
|
|
|
%cmake_build
|
|
popd
|
|
|
|
%install
|
|
pushd cpp
|
|
%cmake_install
|
|
popd
|
|
%if %{with tests}
|
|
rm %{buildroot}%{_libdir}/libarrow_testing.so*
|
|
rm %{buildroot}%{_libdir}/libarrow_flight_testing.so*
|
|
rm %{buildroot}%{_libdir}/pkgconfig/arrow-testing.pc
|
|
rm %{buildroot}%{_libdir}/pkgconfig/arrow-flight-testing.pc
|
|
%if %{with static}
|
|
rm %{buildroot}%{_libdir}/libarrow_testing.a
|
|
rm %{buildroot}%{_libdir}/libarrow_flight_testing.a
|
|
%endif
|
|
rm -Rf %{buildroot}%{_libdir}/cmake/ArrowTesting
|
|
rm -Rf %{buildroot}%{_libdir}/cmake/ArrowFlightTesting
|
|
rm -Rf %{buildroot}%{_includedir}/arrow/testing
|
|
%endif
|
|
rm -r %{buildroot}%{_datadir}/doc/arrow/
|
|
%fdupes %{buildroot}%{_libdir}/cmake
|
|
|
|
%check
|
|
%if %{with tests}
|
|
export PARQUET_TEST_DATA="${PWD}/parquet-testing-%{parquet_testing_commit}/data"
|
|
export ARROW_TEST_DATA="${PWD}/arrow-testing-%{arrow_testing_commit}/data"
|
|
pushd cpp
|
|
export PYTHON=%{_bindir}/python3
|
|
%ifarch %ix86 %arm32
|
|
GTEST_failing="TestDecimalFromReal*"
|
|
GTEST_failing="${GTEST_failing}:*TestDecryptionConfiguration.TestDecryption*"
|
|
%endif
|
|
%ifnarch x86_64
|
|
GTEST_failing="${GTEST_failing}:Jemalloc.GetAllocationStats"
|
|
%endif
|
|
if [ -n "${GTEST_failing}" ]; then
|
|
export GTEST_FILTER=${GTEST_failing}
|
|
%ctest --label-regex unittest || true
|
|
export GTEST_FILTER=*:-${GTEST_failing}
|
|
fi
|
|
%ifarch s390x
|
|
# bsc#1218592
|
|
exclude_regex='--exclude-regex (arrow-dataset-file-parquet-test|parquet-internals-test|parquet-reader-test|parquet-arrow-test|parquet-arrow-internals-test|parquet-encryption-test|arquet-encryption-key-management-test)'
|
|
%endif
|
|
%ctest --label-regex unittest $exclude_regex
|
|
popd
|
|
%endif
|
|
|
|
%post -n libarrow%{sonum} -p /sbin/ldconfig
|
|
%postun -n libarrow%{sonum} -p /sbin/ldconfig
|
|
%post -n libarrow_acero%{sonum} -p /sbin/ldconfig
|
|
%postun -n libarrow_acero%{sonum} -p /sbin/ldconfig
|
|
%post -n libarrow_flight%{sonum} -p /sbin/ldconfig
|
|
%postun -n libarrow_flight%{sonum} -p /sbin/ldconfig
|
|
%post -n libarrow_flight_sql%{sonum} -p /sbin/ldconfig
|
|
%postun -n libarrow_flight_sql%{sonum} -p /sbin/ldconfig
|
|
%post -n libarrow_dataset%{sonum} -p /sbin/ldconfig
|
|
%postun -n libarrow_dataset%{sonum} -p /sbin/ldconfig
|
|
%post -n libparquet%{sonum} -p /sbin/ldconfig
|
|
%postun -n libparquet%{sonum} -p /sbin/ldconfig
|
|
|
|
%files
|
|
%license LICENSE.txt NOTICE.txt header
|
|
%{_bindir}/arrow-file-to-stream
|
|
%{_bindir}/arrow-stream-to-file
|
|
|
|
%files -n libarrow%{sonum}
|
|
%license LICENSE.txt NOTICE.txt header
|
|
%{_libdir}/libarrow.so.*
|
|
|
|
%files -n libarrow_acero%{sonum}
|
|
%license LICENSE.txt NOTICE.txt header
|
|
%{_libdir}/libarrow_acero.so.*
|
|
|
|
%files -n libarrow_flight%{sonum}
|
|
%license LICENSE.txt NOTICE.txt header
|
|
%{_libdir}/libarrow_flight.so.*
|
|
|
|
%files -n libarrow_flight_sql%{sonum}
|
|
%license LICENSE.txt NOTICE.txt header
|
|
%{_libdir}/libarrow_flight_sql.so.*
|
|
|
|
%files -n libarrow_dataset%{sonum}
|
|
%license LICENSE.txt NOTICE.txt header
|
|
%{_libdir}/libarrow_dataset.so.*
|
|
|
|
%files -n libparquet%{sonum}
|
|
%license LICENSE.txt NOTICE.txt header
|
|
%{_libdir}/libparquet.so.*
|
|
|
|
%files devel
|
|
%doc README.md
|
|
%license LICENSE.txt NOTICE.txt header
|
|
%{_includedir}/arrow/
|
|
%{_libdir}/cmake/Arrow*
|
|
%{_libdir}/libarrow.so
|
|
%{_libdir}/libarrow_acero.so
|
|
%{_libdir}/libarrow_dataset.so
|
|
%{_libdir}/libarrow_flight.so
|
|
%{_libdir}/libarrow_flight_sql.so
|
|
%{_libdir}/pkgconfig/arrow*.pc
|
|
%dir %{_datadir}/arrow
|
|
%{_datadir}/arrow/gdb
|
|
%dir %{_datadir}/gdb
|
|
%dir %{_datadir}/gdb/auto-load
|
|
%dir %{_datadir}/gdb/auto-load/%{_prefix}
|
|
%dir %{_datadir}/gdb/auto-load/%{_libdir}
|
|
%{_datadir}/gdb/auto-load/%{_libdir}/libarrow.so.*.py
|
|
|
|
%if %{with static}
|
|
%files devel-static
|
|
%license LICENSE.txt NOTICE.txt header
|
|
%{_libdir}/libarrow.a
|
|
|
|
%files acero-devel-static
|
|
%license LICENSE.txt NOTICE.txt header
|
|
%{_libdir}/libarrow_acero.a
|
|
|
|
%files dataset-devel-static
|
|
%license LICENSE.txt NOTICE.txt header
|
|
%{_libdir}/libarrow_dataset.a
|
|
|
|
%files flight-devel-static
|
|
%license LICENSE.txt NOTICE.txt header
|
|
%{_libdir}/libarrow_flight.a
|
|
|
|
%files flight-sql-devel-static
|
|
%license LICENSE.txt NOTICE.txt header
|
|
%{_libdir}/libarrow_flight_sql.a
|
|
%endif
|
|
|
|
%files -n apache-parquet-devel
|
|
%doc README.md
|
|
%license LICENSE.txt NOTICE.txt header
|
|
%{_includedir}/parquet/
|
|
%{_libdir}/cmake/Parquet
|
|
%{_libdir}/libparquet.so
|
|
%{_libdir}/pkgconfig/parquet.pc
|
|
|
|
%if %{with static}
|
|
%files -n apache-parquet-devel-static
|
|
%license LICENSE.txt NOTICE.txt header
|
|
%{_libdir}/libparquet.a
|
|
%endif
|
|
|
|
%files -n apache-parquet-utils
|
|
%doc README.md
|
|
%license LICENSE.txt NOTICE.txt header
|
|
%{_bindir}/parquet-*
|
|
|
|
%changelog
|