diff --git a/apache-arrow-17.0.0.tar.gz b/apache-arrow-17.0.0.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..31eab63e830624a6d04beb9430325c8221db1642 Binary files /dev/null and b/apache-arrow-17.0.0.tar.gz differ diff --git a/arrow.spec b/arrow.spec new file mode 100644 index 0000000000000000000000000000000000000000..4de65c3a3cacdf19bd3b224ed3fa548074f7df3a --- /dev/null +++ b/arrow.spec @@ -0,0 +1,176 @@ +# Modified from https://svnweb.mageia.org/packages/cauldron/arrow/current/SPECS/arrow.spec?revision=2247571&view=co + +%define srcname apache-%{name} + +%define major 1700 + +%define libname libarrow +%define develname arrow-devel + +%define parname parquet +%define libparname libparquet +%define develparname parquet-devel + +Name: arrow +Summary: A multi-language toolbox for accelerated data interchange and in-memory processing +Version: 17.0.0 +Release: 1 +License: ASL 2.0 +URL: https://arrow.apache.org/ +Source0: https://archive.apache.org/dist/arrow/arrow-%{version}/%{srcname}-%{version}.tar.gz + +BuildRequires: cmake +BuildRequires: bison +BuildRequires: boost-devel +BuildRequires: gcc-c++ +BuildRequires: xsimd-devel +BuildRequires: re2-devel +BuildRequires: pkgconfig(libbrotlicommon) +BuildRequires: pkgconfig(bzip2) +BuildRequires: pkgconfig(libzstd) +BuildRequires: pkgconfig(liblz4) +BuildRequires: pkgconfig(snappy) +BuildRequires: pkgconfig(zlib) +BuildRequires: pkgconfig(grpc) +BuildRequires: pkgconfig(openssl) +BuildRequires: pkgconfig(libutf8proc) +BuildRequires: pkgconfig(thrift) + +%description +Apache Arrow is a software development platform for building high +performance applications that process and transport large data +sets. It is designed to both improve the performance of analytical +algorithms and the efficiency of moving data from one system or +programming language to another. A critical component of Apache Arrow +is its in-memory columnar format, a standardized, language-agnostic +specification for representing structured, table-like datasets +in-memory. This data format has a rich data type system (included +nested and user-defined data types) designed to support the needs of +analytic database systems, data frame libraries, and more. + + +%package -n %{libname} +Summary: Shared libraries for Apache Arrow +Provides: lib%{name} = %{version}-%{release} + +%description -n %{libname} +Apache Arrow is a software development platform for building high +performance applications that process and transport large data +sets. It is designed to both improve the performance of analytical +algorithms and the efficiency of moving data from one system or +programming language to another. A critical component of Apache Arrow +is its in-memory columnar format, a standardized, language-agnostic +specification for representing structured, table-like datasets +in-memory. This data format has a rich data type system (included +nested and user-defined data types) designed to support the needs of +analytic database systems, data frame libraries, and more. + + +%package -n %{develname} +Summary: Development files for Apache Arrow +Requires: %{libname} = %{version}-%{release} +Provides: lib%{name}-devel = %{version}-%{release} +Provides: %{name}-devel = %{version}-%{release} + +%description -n %{develname} +%{summary}. + + + + +%package -n %{libparname} +Summary: Shared libraries for Apache Parquet +Provides: lib%{parname} = %{version}-%{release} + +%description -n %{libparname} +Apache Parquet is a columnar storage format available to any project +in the Hadoop ecosystem, regardless of the choice of data processing +framework, data model or programming language. This library is part of +the Apache Arrow package. + + + + +%package -n %{develparname} +Summary: Development files for Apache Parquet +Requires: %{libparname} = %{version}-%{release} +Provides: lib%{parname}-devel = %{version}-%{release} +Provides: %{parname}-devel = %{version}-%{release} + +%description -n %{develparname} +%{summary}. + + + +%prep +%setup -q -n %{srcname}-%{version} + +%build + +pushd cpp + +%cmake -DARROW_DEPENDENCY_SOURCE="SYSTEM" \ + -DARROW_BUILD_STATIC:BOOL=OFF \ + -DARROW_INSTALL_NAME_RPATH:BOOL=OFF \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DCMAKE_COLOR_MAKEFILE:BOOL=OFF \ + -DARROW_USE_CCACHE:BOOL=OFF \ + -DARROW_SIMD_LEVEL:STRING='NONE' \ + -DARROW_USE_XSIMD:BOOL=ON \ + -DGRPC_SOURCE="SYSTEM" \ + -Dxsimd_SOURCE="SYSTEM" \ + -DARROW_COMPUTE:BOOL=ON \ + -DARROW_PARQUET:BOOL=ON \ + -DARROW_JEMALLOC:BOOL=OFF \ + -DARROW_WITH_BROTLI:BOOL=ON \ + -DARROW_WITH_BZ2:BOOL=ON \ + -DARROW_WITH_LZ4:BOOL=OFF \ + -DARROW_WITH_SNAPPY:BOOL=ON \ + -DARROW_WITH_ZLIB:BOOL=ON \ + -DARROW_WITH_ZSTD:BOOL=ON \ + -DARROW_WITH_UTF8PROC:BOOL=ON \ + -DARROW_WITH_RE2:BOOL=ON \ + -DARROW_UTF8PROC_USE_SHARED:BOOL=ON + +%cmake_build + +popd + +%install + +pushd cpp + +%cmake_install + +popd + +%files -n %{libname} +%{_libdir}/libarrow.so.%{major}{,.*} +%{_datadir}/arrow +%{_docdir}/arrow + + +%files -n %{develname} +%{_includedir}/arrow +%{_libdir}/libarrow.so +%{_libdir}/pkgconfig/arrow.pc +%{_libdir}/pkgconfig/arrow-compute.pc +%{_libdir}/cmake/Arrow +%{_datadir}/gdb/auto-load/%{_libdir}/libarrow.so.%{major}{,.*.py} + + +%files -n %{libparname} +%{_libdir}/libparquet.so.%{major}{,.*} + + +%files -n %{develparname} +%{_includedir}/parquet +%{_libdir}/libparquet.so +%{_libdir}/pkgconfig/parquet.pc + +%{_libdir}/cmake/Parquet + +%changelog + +* Tue Jul 22 2025 Suyun - 17.0.0-1 +- Init package at 17.0.0