]> git.pld-linux.org Git - packages/brotli.git/blob - brotli.spec
BR: bc
[packages/brotli.git] / brotli.spec
1 #
2 # Conditional build:
3 %bcond_without  python2         # Python 2 module
4 %bcond_without  python3         # Python 3 module
5 %bcond_without  static_libs     # don't build static libraries
6 #
7 Summary:        Brotli - generic-purpose lossless compression algorithm
8 Summary(pl.UTF-8):      Brotli - algorytm bezstratnej kompresji ogólnego przeznaczenia
9 Name:           brotli
10 Version:        1.0.7
11 Release:        3
12 License:        Apache v2.0
13 Group:          Libraries
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:  7b6edd4f2128f22794d0ca28c53898a5
17 URL:            https://github.com/google/brotli/
18 BuildRequires:  autoconf >= 2.61
19 BuildRequires:  automake >= 1:1.7
20 BuildRequires:  bc
21 BuildRequires:  cmake >= 2.8.6
22 BuildRequires:  libstdc++-devel >= 6:4.7
23 %{?with_python2:BuildRequires:  python-devel >= 2}
24 %{?with_python3:BuildRequires:  python3-devel >= 1:3.2}
25 BuildRequires:  rpm-pythonprov
26 BuildRequires:  rpmbuild(macros) >= 1.714
27 Requires:       libbrotli = %{version}-%{release}
28 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
29
30 %description
31 Brotli is a generic-purpose lossless compression algorithm that
32 compresses data using a combination of a modern variant of the LZ77
33 algorithm, Huffman coding and 2nd order context modeling, with a
34 compression ratio comparable to the best currently available
35 general-purpose compression methods. It is similar in speed with
36 deflate but offers more dense compression.
37
38 The specification of the Brotli Compressed Data Format is defined in
39 the following Internet draft:
40 <http://www.ietf.org/id/draft-alakuijala-brotli>.
41
42 %description -l pl.UTF-8
43 Brotli to algorytm kompresji bezstratnej ogólnego przeznaczenia,
44 kompresujący dane przy użyciu kombinacji współczesnego wariantu
45 algorytmu LZ77, kodowania Huffmana oraz modelowania kontekstu 2.
46 rzędu, ze współczynnikami kompresji porównywalnymi do najlepszych
47 obecnie dostępnych metod kompresji ogólnego przeznaczenia. Szybkość
48 jest podobna do deflatingu, ale kompresja jest bardziej zwarta.
49
50 Specyfikacja formatu danych kompresji Brotli jest zdefiniowana w
51 następującym szkicu internetowym:
52 <http://www.ietf.org/id/draft-alakuijala-brotli>.
53
54 %package -n libbrotli
55 Summary:        Brotli compression encoding/decoding libraries
56 Summary(pl.UTF-8):      Biblioteki do kodowania/dekodowania kompresji Brotli
57 Group:          Libraries
58
59 %description -n libbrotli
60 Brotli compression encoding/decoding libraries.
61
62 %description -n libbrotli -l pl.UTF-8
63 Biblioteki do kodowania/dekodowania kompresji Brotli.
64
65 %package -n libbrotli-devel
66 Summary:        Header files for Brotli libraries
67 Summary(pl.UTF-8):      Pliki nagłówkowe bibliotek Brotli
68 Group:          Development/Libraries
69 Requires:       libbrotli = %{version}-%{release}
70 Requires:       libstdc++-devel >= 6:4.7
71
72 %description -n libbrotli-devel
73 Header files for Brotli libraries.
74
75 %description -n libbrotli-devel -l pl.UTF-8
76 Pliki nagłówkowe bibliotek Brotli.
77
78 %package -n libbrotli-static
79 Summary:        Static Brotli libraries
80 Summary(pl.UTF-8):      Statyczne biblioteki Brotli
81 Group:          Development/Libraries
82 Requires:       libbrotli-devel = %{version}-%{release}
83
84 %description -n libbrotli-static
85 Static Brotli libraries.
86
87 %description -n libbrotli-static -l pl.UTF-8
88 Statyczne biblioteki Brotli.
89
90 %package -n python-brotli
91 Summary:        Python 2 module for Brotli compression decoding/encoding
92 Summary(pl.UTF-8):      Moduł Pythona 2 do kodowania/dekodowania kompresji Brotli
93 Group:          Libraries/Python
94
95 %description -n python-brotli
96 Python 2 module for Brotli compression decoding/encoding.
97
98 %description -n python-brotli -l pl.UTF-8
99 Moduł Pythona 2 do kodowania/dekodowania kompresji Brotli.
100
101 %package -n python3-brotli
102 Summary:        Python 3 module for Brotli compression decoding/encoding
103 Summary(pl.UTF-8):      Moduł Pythona 3 do kodowania/dekodowania kompresji Brotli
104 Group:          Libraries/Python
105
106 %description -n python3-brotli
107 Python 3 module for Brotli compression decoding/encoding.
108
109 %description -n python3-brotli -l pl.UTF-8
110 Moduł Pythona 3 do kodowania/dekodowania kompresji Brotli.
111
112 %prep
113 %setup -q
114
115 %build
116 ./bootstrap
117 %{__libtoolize}
118 %{__aclocal} -I m4
119 %{__autoconf}
120 %{__automake}
121 %configure \
122         --enable-shared \
123         --enable-static
124
125 %{__make}
126
127 %if %{with python2}
128 %py_build
129 %endif
130 %if %{with python3}
131 %py3_build
132 %endif
133
134 %install
135 rm -rf $RPM_BUILD_ROOT
136
137 %{__make} install \
138         DESTDIR=$RPM_BUILD_ROOT
139
140 %if %{with python2}
141 %py_install
142
143 %py_postclean
144 %endif
145
146 %if %{with python3}
147 %py3_install
148 %endif
149
150 %clean
151 rm -rf $RPM_BUILD_ROOT
152
153 %post -n libbrotli -p /sbin/ldconfig
154 %postun -n libbrotli -p /sbin/ldconfig
155
156 %files
157 %defattr(644,root,root,755)
158 %doc README README.md docs/brotli-comparison-study-2015-09-22.pdf
159 %attr(755,root,root) %{_bindir}/brotli
160
161 %files -n libbrotli
162 %defattr(644,root,root,755)
163 %attr(755,root,root) %{_libdir}/libbrotlicommon.so.*.*
164 %attr(755,root,root) %ghost %{_libdir}/libbrotlicommon.so.1
165 %attr(755,root,root) %{_libdir}/libbrotlidec.so.*.*
166 %attr(755,root,root) %ghost %{_libdir}/libbrotlidec.so.1
167 %attr(755,root,root) %{_libdir}/libbrotlienc.so.*.*
168 %attr(755,root,root) %ghost %{_libdir}/libbrotlienc.so.1
169
170 %files -n libbrotli-devel
171 %defattr(644,root,root,755)
172 %attr(755,root,root) %{_libdir}/libbrotlicommon.so
173 %attr(755,root,root) %{_libdir}/libbrotlidec.so
174 %attr(755,root,root) %{_libdir}/libbrotlienc.so
175 %{_libdir}/libbrotlicommon.la
176 %{_libdir}/libbrotlidec.la
177 %{_libdir}/libbrotlienc.la
178 %{_includedir}/brotli
179 %{_pkgconfigdir}/libbrotlicommon.pc
180 %{_pkgconfigdir}/libbrotlidec.pc
181 %{_pkgconfigdir}/libbrotlienc.pc
182
183 %files -n libbrotli-static
184 %defattr(644,root,root,755)
185 %{_libdir}/libbrotlicommon.a
186 %{_libdir}/libbrotlidec.a
187 %{_libdir}/libbrotlienc.a
188
189 %if %{with python2}
190 %files -n python-brotli
191 %defattr(644,root,root,755)
192 %attr(755,root,root) %{py_sitedir}/_brotli.so
193 %{py_sitedir}/brotli.py[co]
194 %{py_sitedir}/Brotli-%{version}-py*.egg-info
195 %endif
196
197 %if %{with python3}
198 %files -n python3-brotli
199 %defattr(644,root,root,755)
200 %attr(755,root,root) %{py3_sitedir}/_brotli.cpython-*.so
201 %{py3_sitedir}/brotli.py
202 %{py3_sitedir}/__pycache__/brotli.cpython-*.py[co]
203 %{py3_sitedir}/Brotli-%{version}-py*.egg-info
204 %endif
This page took 0.084207 seconds and 3 git commands to generate.