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: c2274f0c7af8470ad514637c35bcee7d
17 Patch0: %{name}-pc.patch
18 URL: https://github.com/google/brotli/
19 BuildRequires: autoconf >= 2.61
20 BuildRequires: automake >= 1:1.7
22 BuildRequires: cmake >= 2.8.6
23 BuildRequires: libstdc++-devel >= 6:4.7
24 BuildRequires: libtool >= 2:2
25 %{?with_python2:BuildRequires: python-devel >= 2}
26 %{?with_python3:BuildRequires: python3-devel >= 1:3.2}
27 BuildRequires: rpm-pythonprov
28 BuildRequires: rpmbuild(macros) >= 1.714
29 Requires: libbrotli = %{version}-%{release}
30 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
33 Brotli is a generic-purpose lossless compression algorithm that
34 compresses data using a combination of a modern variant of the LZ77
35 algorithm, Huffman coding and 2nd order context modeling, with a
36 compression ratio comparable to the best currently available
37 general-purpose compression methods. It is similar in speed with
38 deflate but offers more dense compression.
40 The specification of the Brotli Compressed Data Format is defined in
41 the following Internet draft:
42 <http://www.ietf.org/id/draft-alakuijala-brotli>.
44 %description -l pl.UTF-8
45 Brotli to algorytm kompresji bezstratnej ogólnego przeznaczenia,
46 kompresujący dane przy użyciu kombinacji współczesnego wariantu
47 algorytmu LZ77, kodowania Huffmana oraz modelowania kontekstu 2.
48 rzędu, ze współczynnikami kompresji porównywalnymi do najlepszych
49 obecnie dostępnych metod kompresji ogólnego przeznaczenia. Szybkość
50 jest podobna do deflatingu, ale kompresja jest bardziej zwarta.
52 Specyfikacja formatu danych kompresji Brotli jest zdefiniowana w
53 następującym szkicu internetowym:
54 <http://www.ietf.org/id/draft-alakuijala-brotli>.
57 Summary: Brotli compression encoding/decoding libraries
58 Summary(pl.UTF-8): Biblioteki do kodowania/dekodowania kompresji Brotli
61 %description -n libbrotli
62 Brotli compression encoding/decoding libraries.
64 %description -n libbrotli -l pl.UTF-8
65 Biblioteki do kodowania/dekodowania kompresji Brotli.
67 %package -n libbrotli-devel
68 Summary: Header files for Brotli libraries
69 Summary(pl.UTF-8): Pliki nagłówkowe bibliotek Brotli
70 Group: Development/Libraries
71 Requires: libbrotli = %{version}-%{release}
72 Requires: libstdc++-devel >= 6:4.7
74 %description -n libbrotli-devel
75 Header files for Brotli libraries.
77 %description -n libbrotli-devel -l pl.UTF-8
78 Pliki nagłówkowe bibliotek Brotli.
80 %package -n libbrotli-static
81 Summary: Static Brotli libraries
82 Summary(pl.UTF-8): Statyczne biblioteki Brotli
83 Group: Development/Libraries
84 Requires: libbrotli-devel = %{version}-%{release}
86 %description -n libbrotli-static
87 Static Brotli libraries.
89 %description -n libbrotli-static -l pl.UTF-8
90 Statyczne biblioteki Brotli.
92 %package -n python-brotli
93 Summary: Python 2 module for Brotli compression decoding/encoding
94 Summary(pl.UTF-8): Moduł Pythona 2 do kodowania/dekodowania kompresji Brotli
95 Group: Libraries/Python
97 %description -n python-brotli
98 Python 2 module for Brotli compression decoding/encoding.
100 %description -n python-brotli -l pl.UTF-8
101 Moduł Pythona 2 do kodowania/dekodowania kompresji Brotli.
103 %package -n python3-brotli
104 Summary: Python 3 module for Brotli compression decoding/encoding
105 Summary(pl.UTF-8): Moduł Pythona 3 do kodowania/dekodowania kompresji Brotli
106 Group: Libraries/Python
108 %description -n python3-brotli
109 Python 3 module for Brotli compression decoding/encoding.
111 %description -n python3-brotli -l pl.UTF-8
112 Moduł Pythona 3 do kodowania/dekodowania kompresji Brotli.
136 rm -rf $RPM_BUILD_ROOT
139 DESTDIR=$RPM_BUILD_ROOT
152 rm -rf $RPM_BUILD_ROOT
154 %post -n libbrotli -p /sbin/ldconfig
155 %postun -n libbrotli -p /sbin/ldconfig
158 %defattr(644,root,root,755)
159 %doc README README.md
160 %attr(755,root,root) %{_bindir}/brotli
163 %defattr(644,root,root,755)
164 %attr(755,root,root) %{_libdir}/libbrotlicommon.so.*.*
165 %attr(755,root,root) %ghost %{_libdir}/libbrotlicommon.so.1
166 %attr(755,root,root) %{_libdir}/libbrotlidec.so.*.*
167 %attr(755,root,root) %ghost %{_libdir}/libbrotlidec.so.1
168 %attr(755,root,root) %{_libdir}/libbrotlienc.so.*.*
169 %attr(755,root,root) %ghost %{_libdir}/libbrotlienc.so.1
171 %files -n libbrotli-devel
172 %defattr(644,root,root,755)
173 %attr(755,root,root) %{_libdir}/libbrotlicommon.so
174 %attr(755,root,root) %{_libdir}/libbrotlidec.so
175 %attr(755,root,root) %{_libdir}/libbrotlienc.so
176 %{_libdir}/libbrotlicommon.la
177 %{_libdir}/libbrotlidec.la
178 %{_libdir}/libbrotlienc.la
179 %{_includedir}/brotli
180 %{_pkgconfigdir}/libbrotlicommon.pc
181 %{_pkgconfigdir}/libbrotlidec.pc
182 %{_pkgconfigdir}/libbrotlienc.pc
184 %files -n libbrotli-static
185 %defattr(644,root,root,755)
186 %{_libdir}/libbrotlicommon.a
187 %{_libdir}/libbrotlidec.a
188 %{_libdir}/libbrotlienc.a
191 %files -n python-brotli
192 %defattr(644,root,root,755)
193 %attr(755,root,root) %{py_sitedir}/_brotli.so
194 %{py_sitedir}/brotli.py[co]
195 %{py_sitedir}/Brotli-%{version}-py*.egg-info
199 %files -n python3-brotli
200 %defattr(644,root,root,755)
201 %attr(755,root,root) %{py3_sitedir}/_brotli.cpython-*.so
202 %{py3_sitedir}/brotli.py
203 %{py3_sitedir}/__pycache__/brotli.cpython-*.py[co]
204 %{py3_sitedir}/Brotli-%{version}-py*.egg-info