]> git.pld-linux.org Git - packages/brotli.git/blob - brotli.spec
acd559a31b65bab3b9281e73f803a224b287207d
[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.3
11 Release:        1
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:  bc896d681007a341b85b2b48b30223a2
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)
25
26 %description
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.
33
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>.
37
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.
45
46 Specyfikacja formatu danych kompresji Brotli jest zdefiniowana w
47 następującym szkicu internetowym:
48 <http://www.ietf.org/id/draft-alakuijala-brotli>.
49
50 %package -n libbrotli
51 Summary:        Brotli compression encoding/decoding libraries
52 Summary(pl.UTF-8):      Biblioteki do kodowania/dekodowania kompresji Brotli
53 Group:          Libraries
54
55 %description -n libbrotli
56 Brotli compression encoding/decoding libraries.
57
58 %description -n libbrotli -l pl.UTF-8
59 Biblioteki do kodowania/dekodowania kompresji Brotli.
60
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
67
68 %description -n libbrotli-devel
69 Header files for Brotli libraries.
70
71 %description -n libbrotli-devel -l pl.UTF-8
72 Pliki nagłówkowe bibliotek Brotli.
73
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}
79
80 %description -n libbrotli-static
81 Static Brotli libraries.
82
83 %description -n libbrotli-static -l pl.UTF-8
84 Statyczne biblioteki Brotli.
85
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
90
91 %description -n python-brotli
92 Python 2 module for Brotli compression decoding/encoding.
93
94 %description -n python-brotli -l pl.UTF-8
95 Moduł Pythona 2 do kodowania/dekodowania kompresji Brotli.
96
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
101
102 %description -n python3-brotli
103 Python 3 module for Brotli compression decoding/encoding.
104
105 %description -n python3-brotli -l pl.UTF-8
106 Moduł Pythona 3 do kodowania/dekodowania kompresji Brotli.
107
108 %prep
109 %setup -q
110
111 %build
112 install -d build
113 cd build
114 %cmake ..
115
116 %{__make}
117
118 cd ..
119
120 %if %{with python2}
121 %py_build
122 %endif
123 %if %{with python3}
124 %py3_build
125 %endif
126
127 %install
128 rm -rf $RPM_BUILD_ROOT
129
130 %{__make} -C build install \
131         DESTDIR=$RPM_BUILD_ROOT
132
133 %if %{with python2}
134 %py_install
135
136 %py_postclean
137 %endif
138
139 %if %{with python3}
140 %py3_install
141 %endif
142
143 %clean
144 rm -rf $RPM_BUILD_ROOT
145
146 %post -n libbrotli -p /sbin/ldconfig
147 %postun -n libbrotli -p /sbin/ldconfig
148
149 %files
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
153
154 %files -n libbrotli
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
162
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
172
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
178
179 %if %{with python2}
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
185 %endif
186
187 %if %{with python3}
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
194 %endif
This page took 0.123524 seconds and 2 git commands to generate.