3 %bcond_without python2 # Python 2 module
4 %bcond_without python3 # Python 3 module
5 %bcond_without static_libs # don't build static libraries
7 Summary: Brotli - generic-purpose lossless compression algorithm
8 Summary(pl.UTF-8): Brotli - algorytm bezstratnej kompresji ogólnego przeznaczenia
14 #Source0Download: https://github.com/google/brotli/releases
15 Source0: https://github.com/google/brotli/archive/v%{version}/Brotli-%{version}.tar.gz
16 # Source0-md5: 1728ace46c6624d9548ca710e8e9a952
17 URL: https://github.com/google/brotli/
18 BuildRequires: cmake >= 2.8.6
19 BuildRequires: libstdc++-devel >= 6:4.7
20 %{?with_python2:BuildRequires: python-devel >= 2}
21 %{?with_python3:BuildRequires: python3-devel >= 1:3.2}
22 BuildRequires: rpm-pythonprov
23 BuildRequires: rpmbuild(macros) >= 1.714
24 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
27 Brotli is a generic-purpose lossless compression algorithm that
28 compresses data using a combination of a modern variant of the LZ77
29 algorithm, Huffman coding and 2nd order context modeling, with a
30 compression ratio comparable to the best currently available
31 general-purpose compression methods. It is similar in speed with
32 deflate but offers more dense compression.
34 The specification of the Brotli Compressed Data Format is defined in
35 the following Internet draft:
36 <http://www.ietf.org/id/draft-alakuijala-brotli>.
38 %description -l pl.UTF-8
39 Brotli to algorytm kompresji bezstratnej ogólnego przeznaczenia,
40 kompresujący dane przy użyciu kombinacji współczesnego wariantu
41 algorytmu LZ77, kodowania Huffmana oraz modelowania kontekstu 2.
42 rzędu, ze współczynnikami kompresji porównywalnymi do najlepszych
43 obecnie dostępnych metod kompresji ogólnego przeznaczenia. Szybkość
44 jest podobna do deflatingu, ale kompresja jest bardziej zwarta.
46 Specyfikacja formatu danych kompresji Brotli jest zdefiniowana w
47 następującym szkicu internetowym:
48 <http://www.ietf.org/id/draft-alakuijala-brotli>.
51 Summary: Brotli compression encoding/decoding libraries
52 Summary(pl.UTF-8): Biblioteki do kodowania/dekodowania kompresji Brotli
55 %description -n libbrotli
56 Brotli compression encoding/decoding libraries.
58 %description -n libbrotli -l pl.UTF-8
59 Biblioteki do kodowania/dekodowania kompresji Brotli.
61 %package -n libbrotli-devel
62 Summary: Header files for Brotli libraries
63 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek Brotli
64 Group: Development/Libraries
65 Requires: libbrotli = %{version}-%{release}
66 Requires: libstdc++-devel >= 6:4.7
68 %description -n libbrotli-devel
69 Header files for Brotli libraries.
71 %description -n libbrotli-devel -l pl.UTF-8
72 Pliki nagłówkowe bibliotek Brotli.
74 %package -n libbrotli-static
75 Summary: Static Brotli libraries
76 Summary(pl.UTF-8): Statyczne biblioteki Brotli
77 Group: Development/Libraries
78 Requires: libbrotli-devel = %{version}-%{release}
80 %description -n libbrotli-static
81 Static Brotli libraries.
83 %description -n libbrotli-static -l pl.UTF-8
84 Statyczne biblioteki Brotli.
86 %package -n python-brotli
87 Summary: Python 2 module for Brotli compression decoding/encoding
88 Summary(pl.UTF-8): Moduł Pythona 2 do kodowania/dekodowania kompresji Brotli
89 Group: Libraries/Python
91 %description -n python-brotli
92 Python 2 module for Brotli compression decoding/encoding.
94 %description -n python-brotli -l pl.UTF-8
95 Moduł Pythona 2 do kodowania/dekodowania kompresji Brotli.
97 %package -n python3-brotli
98 Summary: Python 3 module for Brotli compression decoding/encoding
99 Summary(pl.UTF-8): Moduł Pythona 3 do kodowania/dekodowania kompresji Brotli
100 Group: Libraries/Python
102 %description -n python3-brotli
103 Python 3 module for Brotli compression decoding/encoding.
105 %description -n python3-brotli -l pl.UTF-8
106 Moduł Pythona 3 do kodowania/dekodowania kompresji Brotli.
128 rm -rf $RPM_BUILD_ROOT
130 %{__make} -C build install \
131 DESTDIR=$RPM_BUILD_ROOT
144 rm -rf $RPM_BUILD_ROOT
146 %post -n libbrotli -p /sbin/ldconfig
147 %postun -n libbrotli -p /sbin/ldconfig
150 %defattr(644,root,root,755)
151 %doc README.md docs/brotli-comparison-study-2015-09-22.pdf
152 %attr(755,root,root) %{_bindir}/brotli
155 %defattr(644,root,root,755)
156 %attr(755,root,root) %{_libdir}/libbrotlicommon.so.*.*
157 %attr(755,root,root) %ghost %{_libdir}/libbrotlicommon.so.1
158 %attr(755,root,root) %{_libdir}/libbrotlidec.so.*.*
159 %attr(755,root,root) %ghost %{_libdir}/libbrotlidec.so.1
160 %attr(755,root,root) %{_libdir}/libbrotlienc.so.*.*
161 %attr(755,root,root) %ghost %{_libdir}/libbrotlienc.so.1
163 %files -n libbrotli-devel
164 %defattr(644,root,root,755)
165 %attr(755,root,root) %{_libdir}/libbrotlicommon.so
166 %attr(755,root,root) %{_libdir}/libbrotlidec.so
167 %attr(755,root,root) %{_libdir}/libbrotlienc.so
168 %{_includedir}/brotli
169 %{_pkgconfigdir}/libbrotlicommon.pc
170 %{_pkgconfigdir}/libbrotlidec.pc
171 %{_pkgconfigdir}/libbrotlienc.pc
173 %files -n libbrotli-static
174 %defattr(644,root,root,755)
175 %{_libdir}/libbrotlicommon-static.a
176 %{_libdir}/libbrotlidec-static.a
177 %{_libdir}/libbrotlienc-static.a
180 %files -n python-brotli
181 %defattr(644,root,root,755)
182 %attr(755,root,root) %{py_sitedir}/_brotli.so
183 %{py_sitedir}/brotli.py[co]
184 %{py_sitedir}/Brotli-%{version}-py*.egg-info
188 %files -n python3-brotli
189 %defattr(644,root,root,755)
190 %attr(755,root,root) %{py3_sitedir}/_brotli.cpython-*.so
191 %{py3_sitedir}/brotli.py
192 %{py3_sitedir}/__pycache__/brotli.cpython-*.py[co]
193 %{py3_sitedir}/Brotli-%{version}-py*.egg-info