1 # TODO: mruby, neverbleed?
4 %bcond_without asio # libnghttp2_asio C++ library
5 %bcond_without static_libs # static libraries
6 %bcond_without tests # "make check" call
8 Summary: HTTP/2.0 C library
9 Summary(pl.UTF-8): Biblioteka C HTTP/2.0
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: c1d607bf3830000acd7a51f0058f4bd2
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
29 BuildRequires: libevent-devel >= 2.0.8
30 BuildRequires: libstdc++-devel >= 6:4.7
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: python3 >= 1:3.8
36 BuildRequires: python3-Cython >= 0.19
37 BuildRequires: python3-devel >= 1:3.8
38 BuildRequires: python3-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
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)
57 This is an experimental implementation of Hypertext Transfer Protocol
60 %description -l pl.UTF-8
61 Ta biblioteka jest eksperymentalną implementacją protokołu HTTP
62 (Hypertext Transfer Protocol) w wersji 2.0.
65 Summary: A library implementing the HTTP/2 protocol
66 Summary(pl.UTF-8): Biblioteka implementująca protokół HTTP/2
68 Conflicts: nghttp2 < 1.11.1-2
71 libnghttp2 is a library implementing the Hypertext Transfer Protocol
72 version 2 (HTTP/2) protocol in C.
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).
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}
85 Files needed for building applications with libnghttp2.
87 %description devel -l pl.UTF-8
88 Pliki niezbędne do tworzenia aplikacji z użyciem libnghttp2.
91 Summary: Static libnghttp2 library
92 Summary(pl.UTF-8): Statyczna biblioteka libnghttp2
93 Group: Development/Libraries
94 Requires: %{name}-devel = %{version}-%{release}
97 Static libnghttp2 library.
99 %description static -l pl.UTF-8
100 Statyczna biblioteka libnghttp2.
102 %package -n python3-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: python3-libs >= 1:3.8
108 Obsoletes: python-nghttp2 < 1.43.0
110 %description -n python3-nghttp2
111 Python binding to nghttp2 library.
113 %description -n python3-nghttp2 -l pl.UTF-8
114 Wiązanie Pythona do biblioteki nghttp2.
117 Summary: HTTP/2.0 C++ library
118 Summary(pl.UTF-8): Biblioteka C++ HTTP/2.0
120 Requires: %{name}-libs = %{version}-%{release}
121 Requires: openssl >= 1.0.1
124 HTTP/2.0 C++ library.
126 %description asio -l pl.UTF-8
127 Biblioteka C++ HTTP/2.0.
130 Summary: Header file for nghttp2_asio library
131 Summary(pl.UTF-8): Plik nagłówkowy biblioteki nghttp2_asio
132 Group: Development/Libraries
133 Requires: %{name}-asio = %{version}-%{release}
134 Requires: %{name}-devel = %{version}-%{release}
135 Requires: libstdc++-devel >= 6:4.7
137 %description asio-devel
138 Header file for nghttp2_asio library.
140 %description asio-devel -l pl.UTF-8
141 Plik nagłówkowy biblioteki nghttp2_asio.
144 Summary: Static libnghttp2_asio library
145 Summary(pl.UTF-8): Statyczna biblioteka libnghttp2_asio
146 Group: Development/Libraries
147 Requires: %{name}-asio-devel = %{version}-%{release}
149 %description asio-static
150 Static libnghttp2_asio library.
152 %description asio-static -l pl.UTF-8
153 Statyczna biblioteka libnghttp2_asio.
160 %{__sed} -i -e '1s,/usr/bin/env python3,%{__python3},' script/fetch-ocsp-response
170 %{?with_asio:--enable-asio-lib} \
171 --enable-hpack-tools \
172 --enable-python-bindings \
173 --disable-silent-rules \
174 %{!?with_static_libs:--disable-static} \
184 rm -rf $RPM_BUILD_ROOT
187 DESTDIR=$RPM_BUILD_ROOT
189 # obsoleted by pkg-config
190 %{__rm} $RPM_BUILD_ROOT%{_libdir}/libnghttp2*.la
192 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/nghttp2
195 rm -rf $RPM_BUILD_ROOT
197 %post libs -p /sbin/ldconfig
198 %postun libs -p /sbin/ldconfig
200 %post asio -p /sbin/ldconfig
201 %postun asio -p /sbin/ldconfig
204 %defattr(644,root,root,755)
205 %doc AUTHORS COPYING ChangeLog README.rst
206 %attr(755,root,root) %{_bindir}/deflatehd
207 %attr(755,root,root) %{_bindir}/h2load
208 %attr(755,root,root) %{_bindir}/inflatehd
209 %attr(755,root,root) %{_bindir}/nghttp
210 %attr(755,root,root) %{_bindir}/nghttpd
211 %attr(755,root,root) %{_bindir}/nghttpx
212 %dir %{_datadir}/nghttp2
213 %attr(755,root,root) %{_datadir}/nghttp2/fetch-ocsp-response
214 %{_mandir}/man1/h2load.1*
215 %{_mandir}/man1/nghttp.1*
216 %{_mandir}/man1/nghttpd.1*
217 %{_mandir}/man1/nghttpx.1*
220 %defattr(644,root,root,755)
221 %attr(755,root,root) %{_libdir}/libnghttp2.so.*.*.*
222 %attr(755,root,root) %ghost %{_libdir}/libnghttp2.so.14
225 %defattr(644,root,root,755)
226 %attr(755,root,root) %{_libdir}/libnghttp2.so
227 %dir %{_includedir}/nghttp2
228 %{_includedir}/nghttp2/nghttp2*.h
229 %{_pkgconfigdir}/libnghttp2.pc
231 %if %{with static_libs}
233 %defattr(644,root,root,755)
234 %{_libdir}/libnghttp2.a
237 %files -n python3-nghttp2
238 %defattr(644,root,root,755)
239 %attr(755,root,root) %{py3_sitedir}/nghttp2.cpython-*.so
240 %{py3_sitedir}/python_nghttp2-%{version}-py*.egg-info
244 %defattr(644,root,root,755)
245 %attr(755,root,root) %{_libdir}/libnghttp2_asio.so.*.*.*
246 %attr(755,root,root) %ghost %{_libdir}/libnghttp2_asio.so.1
249 %defattr(644,root,root,755)
250 %attr(755,root,root) %{_libdir}/libnghttp2_asio.so
251 %{_includedir}/nghttp2/asio_http2.h
252 %{_includedir}/nghttp2/asio_http2_client.h
253 %{_includedir}/nghttp2/asio_http2_server.h
254 %{_pkgconfigdir}/libnghttp2_asio.pc
256 %if %{with static_libs}
258 %defattr(644,root,root,755)
259 %{_libdir}/libnghttp2_asio.a