]>
Commit | Line | Data |
---|---|---|
1 | # TODO: mruby, neverbleed? | |
2 | # | |
3 | # Conditional build: | |
4 | %bcond_without asio # libnghttp2_asio C++ library | |
5 | %bcond_without static_libs # static libraries | |
6 | %bcond_without tests # "make check" call | |
7 | ||
8 | Summary: HTTP/2.0 C library | |
9 | Summary(pl.UTF-8): Biblioteka C HTTP/2.0 | |
10 | Name: nghttp2 | |
11 | Version: 1.37.0 | |
12 | Release: 1 | |
13 | License: MIT | |
14 | Group: Libraries | |
15 | #Source0Download: https://github.com/nghttp2/nghttp2/releases | |
16 | Source0: https://github.com/nghttp2/nghttp2/releases/download/v%{version}/%{name}-%{version}.tar.xz | |
17 | # Source0-md5: dc7536d02aa7d4883c20eaf637747381 | |
18 | Patch0: %{name}-link.patch | |
19 | Patch1: %{name}-python.patch | |
20 | URL: https://nghttp2.org/ | |
21 | %{?with_tests:BuildRequires: CUnit >= 2.1} | |
22 | BuildRequires: autoconf >= 2.61 | |
23 | BuildRequires: automake | |
24 | %{?with_asio:BuildRequires: boost-devel >= 1.54.0} | |
25 | BuildRequires: c-ares-devel >= 1.7.5 | |
26 | BuildRequires: jansson-devel >= 2.5 | |
27 | BuildRequires: libev-devel | |
28 | # for examples | |
29 | BuildRequires: libevent-devel >= 2.0.8 | |
30 | BuildRequires: libstdc++-devel >= 6:4.3 | |
31 | BuildRequires: libtool >= 2:2.2.6 | |
32 | BuildRequires: libxml2-devel >= 1:2.6.26 | |
33 | BuildRequires: openssl-devel >= 1.0.1 | |
34 | BuildRequires: pkgconfig >= 1:0.20 | |
35 | BuildRequires: python >= 1:2.7 | |
36 | BuildRequires: python-Cython >= 0.19 | |
37 | BuildRequires: python-devel >= 1:2.7 | |
38 | BuildRequires: python-setuptools | |
39 | BuildRequires: rpm-pythonprov | |
40 | BuildRequires: rpmbuild(macros) >= 1.734 | |
41 | BuildRequires: sed >= 4.0 | |
42 | BuildRequires: systemd-devel >= 1:209 | |
43 | BuildRequires: tar >= 1:1.22 | |
44 | BuildRequires: xz | |
45 | BuildRequires: zlib-devel >= 1.2.3 | |
46 | Requires: %{name}-libs = %{version}-%{release} | |
47 | Requires: c-ares >= 1.7.5 | |
48 | Requires: jansson >= 2.5 | |
49 | # noinst examples only | |
50 | #Requires: libevent >= 2.0.8 | |
51 | Requires: libxml2 >= 1:2.6.26 | |
52 | Requires: openssl >= 1.0.1 | |
53 | Requires: zlib >= 1.2.3 | |
54 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
55 | ||
56 | %description | |
57 | This is an experimental implementation of Hypertext Transfer Protocol | |
58 | version 2.0. | |
59 | ||
60 | %description -l pl.UTF-8 | |
61 | Ta biblioteka jest eksperymentalną implementacją protokołu HTTP | |
62 | (Hypertext Transfer Protocol) w wersji 2.0. | |
63 | ||
64 | %package libs | |
65 | Summary: A library implementing the HTTP/2 protocol | |
66 | Summary(pl.UTF-8): Biblioteka implementująca protokół HTTP/2 | |
67 | Group: Libraries | |
68 | Conflicts: nghttp2 < 1.11.1-2 | |
69 | ||
70 | %description libs | |
71 | libnghttp2 is a library implementing the Hypertext Transfer Protocol | |
72 | version 2 (HTTP/2) protocol in C. | |
73 | ||
74 | %description libs -l pl.UTF-8 | |
75 | libnghttp2 to napisana w C biblioteka implementująca protokół HTTP/2 | |
76 | (Hypertext Transfer Protocol w wersji 2). | |
77 | ||
78 | %package devel | |
79 | Summary: Files needed for developing with libnghttp2 | |
80 | Summary(pl.UTF-8): Pliki niezbędne do tworzenia aplikacji z użyciem libnghttp2 | |
81 | Group: Development/Libraries | |
82 | Requires: %{name}-libs = %{version}-%{release} | |
83 | ||
84 | %description devel | |
85 | Files needed for building applications with libnghttp2. | |
86 | ||
87 | %description devel -l pl.UTF-8 | |
88 | Pliki niezbędne do tworzenia aplikacji z użyciem libnghttp2. | |
89 | ||
90 | %package static | |
91 | Summary: Static libnghttp2 library | |
92 | Summary(pl.UTF-8): Statyczna biblioteka libnghttp2 | |
93 | Group: Development/Libraries | |
94 | Requires: %{name}-devel = %{version}-%{release} | |
95 | ||
96 | %description static | |
97 | Static libnghttp2 library. | |
98 | ||
99 | %description static -l pl.UTF-8 | |
100 | Statyczna biblioteka libnghttp2. | |
101 | ||
102 | %package -n python-nghttp2 | |
103 | Summary: Python binding to nghttp2 library | |
104 | Summary(pl.UTF-8): Wiązanie Pythona do biblioteki nghttp2 | |
105 | Group: Libraries/Python | |
106 | Requires: %{name} = %{version}-%{release} | |
107 | Requires: python-libs >= 1:2.7 | |
108 | ||
109 | %description -n python-nghttp2 | |
110 | Python binding to nghttp2 library. | |
111 | ||
112 | %description -n python-nghttp2 -l pl.UTF-8 | |
113 | Wiązanie Pythona do biblioteki nghttp2. | |
114 | ||
115 | %package asio | |
116 | Summary: HTTP/2.0 C++ library | |
117 | Summary(pl.UTF-8): Biblioteka C++ HTTP/2.0 | |
118 | Group: Libraries | |
119 | Requires: %{name}-libs = %{version}-%{release} | |
120 | Requires: openssl >= 1.0.1 | |
121 | ||
122 | %description asio | |
123 | HTTP/2.0 C++ library. | |
124 | ||
125 | %description asio -l pl.UTF-8 | |
126 | Biblioteka C++ HTTP/2.0. | |
127 | ||
128 | %package asio-devel | |
129 | Summary: Header file for nghttp2_asio library | |
130 | Summary(pl.UTF-8): Plik nagłówkowy biblioteki nghttp2_asio | |
131 | Group: Development/Libraries | |
132 | Requires: %{name}-asio = %{version}-%{release} | |
133 | Requires: %{name}-devel = %{version}-%{release} | |
134 | Requires: libstdc++-devel | |
135 | ||
136 | %description asio-devel | |
137 | Header file for nghttp2_asio library. | |
138 | ||
139 | %description asio-devel -l pl.UTF-8 | |
140 | Plik nagłówkowy biblioteki nghttp2_asio. | |
141 | ||
142 | %package asio-static | |
143 | Summary: Static libnghttp2_asio library | |
144 | Summary(pl.UTF-8): Statyczna biblioteka libnghttp2_asio | |
145 | Group: Development/Libraries | |
146 | Requires: %{name}-asio-devel = %{version}-%{release} | |
147 | ||
148 | %description asio-static | |
149 | Static libnghttp2_asio library. | |
150 | ||
151 | %description asio-static -l pl.UTF-8 | |
152 | Statyczna biblioteka libnghttp2_asio. | |
153 | ||
154 | %prep | |
155 | %setup -q | |
156 | %patch0 -p1 | |
157 | %patch1 -p1 | |
158 | ||
159 | %{__sed} -i -e '1s,/usr/bin/env python,%{__python},' script/fetch-ocsp-response | |
160 | ||
161 | %build | |
162 | %{__libtoolize} | |
163 | %{__aclocal} -I m4 | |
164 | %{__autoconf} | |
165 | %{__autoheader} | |
166 | %{__automake} | |
167 | %configure \ | |
168 | --enable-app \ | |
169 | %{?with_asio:--enable-asio-lib} \ | |
170 | --enable-hpack-tools \ | |
171 | --enable-python-bindings \ | |
172 | --disable-silent-rules \ | |
173 | %{!?with_static_libs:--disable-static} \ | |
174 | --without-jemalloc | |
175 | ||
176 | %{__make} | |
177 | ||
178 | %if %{with tests} | |
179 | %{__make} check | |
180 | %endif | |
181 | ||
182 | %install | |
183 | rm -rf $RPM_BUILD_ROOT | |
184 | ||
185 | %{__make} install \ | |
186 | DESTDIR=$RPM_BUILD_ROOT | |
187 | ||
188 | # obsoleted by pkg-config | |
189 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/libnghttp2*.la | |
190 | # packaged as %doc | |
191 | %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/nghttp2 | |
192 | ||
193 | %clean | |
194 | rm -rf $RPM_BUILD_ROOT | |
195 | ||
196 | %post libs -p /sbin/ldconfig | |
197 | %postun libs -p /sbin/ldconfig | |
198 | ||
199 | %post asio -p /sbin/ldconfig | |
200 | %postun asio -p /sbin/ldconfig | |
201 | ||
202 | %files | |
203 | %defattr(644,root,root,755) | |
204 | %doc AUTHORS COPYING ChangeLog README.rst | |
205 | %attr(755,root,root) %{_bindir}/deflatehd | |
206 | %attr(755,root,root) %{_bindir}/h2load | |
207 | %attr(755,root,root) %{_bindir}/inflatehd | |
208 | %attr(755,root,root) %{_bindir}/nghttp | |
209 | %attr(755,root,root) %{_bindir}/nghttpd | |
210 | %attr(755,root,root) %{_bindir}/nghttpx | |
211 | %dir %{_datadir}/nghttp2 | |
212 | %attr(755,root,root) %{_datadir}/nghttp2/fetch-ocsp-response | |
213 | %{_mandir}/man1/h2load.1* | |
214 | %{_mandir}/man1/nghttp.1* | |
215 | %{_mandir}/man1/nghttpd.1* | |
216 | %{_mandir}/man1/nghttpx.1* | |
217 | ||
218 | %files libs | |
219 | %defattr(644,root,root,755) | |
220 | %attr(755,root,root) %{_libdir}/libnghttp2.so.*.*.* | |
221 | %attr(755,root,root) %ghost %{_libdir}/libnghttp2.so.14 | |
222 | ||
223 | %files devel | |
224 | %defattr(644,root,root,755) | |
225 | %attr(755,root,root) %{_libdir}/libnghttp2.so | |
226 | %dir %{_includedir}/nghttp2 | |
227 | %{_includedir}/nghttp2/nghttp2*.h | |
228 | %{_pkgconfigdir}/libnghttp2.pc | |
229 | ||
230 | %if %{with static_libs} | |
231 | %files static | |
232 | %defattr(644,root,root,755) | |
233 | %{_libdir}/libnghttp2.a | |
234 | %endif | |
235 | ||
236 | %files -n python-nghttp2 | |
237 | %defattr(644,root,root,755) | |
238 | %attr(755,root,root) %{py_sitedir}/nghttp2.so | |
239 | %{py_sitedir}/python_nghttp2-%{version}-py*.egg-info | |
240 | ||
241 | %if %{with asio} | |
242 | %files asio | |
243 | %defattr(644,root,root,755) | |
244 | %attr(755,root,root) %{_libdir}/libnghttp2_asio.so.*.*.* | |
245 | %attr(755,root,root) %ghost %{_libdir}/libnghttp2_asio.so.1 | |
246 | ||
247 | %files asio-devel | |
248 | %defattr(644,root,root,755) | |
249 | %attr(755,root,root) %{_libdir}/libnghttp2_asio.so | |
250 | %{_includedir}/nghttp2/asio_http2.h | |
251 | %{_includedir}/nghttp2/asio_http2_client.h | |
252 | %{_includedir}/nghttp2/asio_http2_server.h | |
253 | %{_pkgconfigdir}/libnghttp2_asio.pc | |
254 | ||
255 | %if %{with static_libs} | |
256 | %files asio-static | |
257 | %defattr(644,root,root,755) | |
258 | %{_libdir}/libnghttp2_asio.a | |
259 | %endif | |
260 | %endif |