Blame SPECS/liborc.spec

20b247
Summary: Library for producing small, fast columnar storage for Hadoop workloads
20b247
Name:    liborc
b2a0d9
Version: 1.7.3
20b247
Release: 2%{?dist}
20b247
License: ASL 2.0
20b247
URL:     http://orc.apache.org/
20b247
Source: https://archive.apache.org/dist/orc/orc-%{version}/orc-%{version}.tar.gz
20b247
Patch1:  0001-cmake.patch
20b247
# Apache ORC has numerous compile errors and apparently assumes a 64-bit
20b247
# build and runtime environment. The only consumer of this package is 
20b247
# Ceph (by way of Apache Arrow) which is also 64-bit only
20b247
ExcludeArch:   i686 armv7hl
20b247
BuildRequires: gnupg2
20b247
BuildRequires: cmake
20b247
BuildRequires: gcc-c++
20b247
BuildRequires: protobuf-devel
20b247
BuildRequires: zlib-devel
20b247
BuildRequires: libzstd-devel
20b247
BuildRequires: lz4-devel
20b247
BuildRequires: snappy-devel
20b247
20b247
%description
20b247
ORC is a self-describing type-aware columnar file format designed
20b247
for Hadoop workloads. It is optimized for large streaming reads,
20b247
but with integrated support for finding required rows quickly.
20b247
Storing data in a columnar format lets the reader read, decompress,
20b247
and process only the values that are required for the current query.
20b247
Because ORC files are type-aware, the writer chooses the most
20b247
appropriate encoding for the type and builds an internal index as
20b247
the file is written. Predicate pushdown uses those indexes to
20b247
determine which stripes in a file need to be read for a particular
20b247
query and the row indexes can narrow the search to a particular set
20b247
of 10,000 rows. ORC supports the complete set of types in Hive,
20b247
including the complex types: structs, lists, maps, and unions.
20b247
20b247
%package -n liborc1
20b247
Summary: Library for producing small, fast columnar storage for Hadoop workloads
b2a0d9
Provides: %{name}%{?_isa} = %{version}-%{release}
20b247
20b247
%description -n liborc1
b2a0d9
ORC is a self-describing type-aware columnar file format designed
b2a0d9
for Hadoop workloads. It is optimized for large streaming reads,
b2a0d9
but with integrated support for finding required rows quickly.
b2a0d9
Storing data in a columnar format lets the reader read, decompress,
b2a0d9
and process only the values that are required for the current query.
b2a0d9
Because ORC files are type-aware, the writer chooses the most
b2a0d9
appropriate encoding for the type and builds an internal index as
b2a0d9
the file is written. Predicate pushdown uses those indexes to
b2a0d9
determine which stripes in a file need to be read for a particular
b2a0d9
query and the row indexes can narrow the search to a particular set
b2a0d9
of 10,000 rows. ORC supports the complete set of types in Hive,
b2a0d9
including the complex types: structs, lists, maps, and unions.
20b247
20b247
%package devel
20b247
Summary:  Header files, libraries and development documentation for %{name}
b2a0d9
Requires: %{name}1 = %{version}-%{release}
20b247
20b247
%description devel
b2a0d9
ORC is a self-describing type-aware columnar file format designed
b2a0d9
for Hadoop workloads. It is optimized for large streaming reads,
b2a0d9
but with integrated support for finding required rows quickly.
b2a0d9
Storing data in a columnar format lets the reader read, decompress,
b2a0d9
and process only the values that are required for the current query.
b2a0d9
Because ORC files are type-aware, the writer chooses the most
b2a0d9
appropriate encoding for the type and builds an internal index as
b2a0d9
the file is written. Predicate pushdown uses those indexes to
b2a0d9
determine which stripes in a file need to be read for a particular
b2a0d9
query and the row indexes can narrow the search to a particular set
b2a0d9
of 10,000 rows. ORC supports the complete set of types in Hive,
b2a0d9
including the complex types: structs, lists, maps, and unions.
b2a0d9
20b247
Contains header files for developing applications that use the %{name}
20b247
library.
20b247
20b247
%prep
b2a0d9
%setup -qn orc-%{version}
b2a0d9
%patch1 -p1
20b247
20b247
%build
20b247
%cmake . \
20b247
    -DOVERRIDE_INSTALL_PREFIX=/usr \
20b247
    -DCMAKE_COLOR_MAKEFILE:BOOL=OFF \
20b247
    -DCMAKE_INSTALL_LIBDIR:PATH=%{_libdir} \
20b247
    -DINSTALL_LIBDIR:PATH=%{_libdir} \
20b247
    -DBUILD_SHARED_LIBS:BOOL=on \
20b247
    -DBUILD_LIBHDFSPP:BOOL=off \
20b247
    -DSNAPPY_HOME="/usr" \
20b247
    -DLZ4_HOME="/usr" \
20b247
    -DZLIB_HOME="/usr" \
20b247
    -DZSTD_HOME="/usr" \
20b247
    -DGTEST_HOME="/usr" \
20b247
    -DPROTOBUF_HOME="/usr" \
20b247
    -Dorc_VERSION="%{version}" \
20b247
    -DBUILD_CPP_TESTS=off \
20b247
    -DBUILD_TOOLS=off \
20b247
    -DBUILD_JAVA=off \
20b247
    -DANALYZE_JAVA=off \
20b247
    "-GUnix Makefiles"
20b247
%cmake_build
20b247
20b247
%check
20b247
20b247
%install
20b247
%cmake_install
20b247
mkdir %{buildroot}%{_docdir}/%{name}1
20b247
mv %{buildroot}%{_docdir}/orc/NOTICE %{buildroot}%{_docdir}/%{name}1/
20b247
mkdir -p %{buildroot}/%{_defaultlicensedir}/%{name}1
20b247
mv %{buildroot}%{_docdir}/orc/LICENSE %{buildroot}/%{_defaultlicensedir}/%{name}1/
20b247
20b247
%ldconfig_scriptlets
20b247
20b247
%files -n %{name}1
20b247
%license LICENSE
20b247
%doc README.md NOTICE
20b247
%{_libdir}/liborc.so.*
20b247
20b247
%files devel
b2a0d9
%dir %{_includedir}/orc
b2a0d9
     %{_includedir}/orc/*.hh
b2a0d9
%dir %{_includedir}/orc/sargs
b2a0d9
     %{_includedir}/orc/sargs/*.hh
b2a0d9
     %{_libdir}/liborc.so
b2a0d9
%dir %{_libdir}/cmake/orc
b2a0d9
     %{_libdir}/cmake/orc/orc*.cmake
20b247
20b247
%changelog
b2a0d9
* Tue Feb 15 2022  Kaleb S. KEITHLEY <kkeithle [at] redhat.com> - 1.7.3-2
b2a0d9
- 1.7.3, fix SO_NAME
b2a0d9
b2a0d9
* Thu Feb 10 2022  Kaleb S. KEITHLEY <kkeithle [at] redhat.com> - 1.7.3-1
b2a0d9
- 1.7.3 GA
20b247
20b247
* Fri Aug 27 2021  Kaleb S. KEITHLEY <kkeithle [at] redhat.com> - 1.6.6-1
20b247
- New upstream release.
20b247