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