]> git.pld-linux.org Git - packages/brotli.git/blob - brotli.spec
952cb2075c555242dea49735d034368fa918e25a
[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:        0.6.0
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:  1dcdcda924ab0c232ce54fa9f2b02624
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 Obsoletes:      libbrotli-static
68
69 %description -n libbrotli-devel
70 Header files for Brotli libraries.
71
72 %description -n libbrotli-devel -l pl.UTF-8
73 Pliki nagłówkowe bibliotek Brotli.
74
75 %package -n python-brotli
76 Summary:        Python 2 module for Brotli compression decoding/encoding
77 Summary(pl.UTF-8):      Moduł Pythona 2 do kodowania/dekodowania kompresji Brotli
78 Group:          Libraries/Python
79
80 %description -n python-brotli
81 Python 2 module for Brotli compression decoding/encoding.
82
83 %description -n python-brotli -l pl.UTF-8
84 Moduł Pythona 2 do kodowania/dekodowania kompresji Brotli.
85
86 %package -n python3-brotli
87 Summary:        Python 3 module for Brotli compression decoding/encoding
88 Summary(pl.UTF-8):      Moduł Pythona 3 do kodowania/dekodowania kompresji Brotli
89 Group:          Libraries/Python
90
91 %description -n python3-brotli
92 Python 3 module for Brotli compression decoding/encoding.
93
94 %description -n python3-brotli -l pl.UTF-8
95 Moduł Pythona 3 do kodowania/dekodowania kompresji Brotli.
96
97 %prep
98 %setup -q
99
100 %build
101 install -d build
102 cd build
103 %cmake ..
104
105 %{__make}
106
107 cd ..
108
109 %if %{with python2}
110 %py_build
111 %endif
112 %if %{with python3}
113 %py3_build
114 %endif
115
116 %install
117 rm -rf $RPM_BUILD_ROOT
118
119 %{__make} -C build install \
120         DESTDIR=$RPM_BUILD_ROOT
121
122 %if %{with python2}
123 %py_install
124
125 %py_postclean
126 %endif
127
128 %if %{with python3}
129 %py3_install
130 %endif
131
132 %clean
133 rm -rf $RPM_BUILD_ROOT
134
135 %post   -p /sbin/ldconfig
136 %postun -p /sbin/ldconfig
137
138 %files
139 %defattr(644,root,root,755)
140 %doc README.md docs/brotli-comparison-study-2015-09-22.pdf
141 %attr(755,root,root) %{_bindir}/bro
142
143 %files -n libbrotli
144 %defattr(644,root,root,755)
145 %attr(755,root,root) %{_libdir}/libbrotlicommon.so.0.6.0
146 %attr(755,root,root) %{_libdir}/libbrotlidec.so.0.6.0
147 %attr(755,root,root) %{_libdir}/libbrotlienc.so.0.6.0
148
149 %files -n libbrotli-devel
150 %defattr(644,root,root,755)
151 %attr(755,root,root) %{_libdir}/libbrotlicommon.so
152 %attr(755,root,root) %{_libdir}/libbrotlidec.so
153 %attr(755,root,root) %{_libdir}/libbrotlienc.so
154 %{_includedir}/brotli
155 %{_pkgconfigdir}/libbrotlicommon.pc
156 %{_pkgconfigdir}/libbrotlidec.pc
157 %{_pkgconfigdir}/libbrotlienc.pc
158
159 %if %{with python2}
160 %files -n python-brotli
161 %defattr(644,root,root,755)
162 %attr(755,root,root) %{py_sitedir}/_brotli.so
163 %{py_sitedir}/brotli.py[co]
164 %{py_sitedir}/Brotli-%{version}-py*.egg-info
165 %endif
166
167 %if %{with python3}
168 %files -n python3-brotli
169 %defattr(644,root,root,755)
170 %attr(755,root,root) %{py3_sitedir}/_brotli.cpython-*.so
171 %{py3_sitedir}/brotli.py
172 %{py3_sitedir}/__pycache__/brotli.cpython-*.py[co]
173 %{py3_sitedir}/Brotli-%{version}-py*.egg-info
174 %endif
This page took 0.106336 seconds and 2 git commands to generate.