3 %bcond_without dane # libdane (DANE with DNSSEC certificate verification)
4 %bcond_without openssl # libgnutls-openssl compatibility library
5 %bcond_without tpm # TPM support in gnutls
6 %bcond_without static_libs # static libraries
7 %bcond_without doc # do not generate documentation
9 Summary: The GNU Transport Layer Security Library
10 Summary(pl.UTF-8): Biblioteka GNU TLS (Transport Layer Security)
14 License: LGPL v2.1+ (libgnutls), LGPL v3+ (libdane), GPL v3+ (openssl library and tools)
16 Source0: ftp://ftp.gnutls.org/gcrypt/gnutls/v3.3/%{name}-%{version}.tar.xz
17 # Source0-md5: b698ee3814ff0d4415e9a60e99656204
18 Patch0: %{name}-info.patch
19 Patch1: %{name}-link.patch
20 URL: http://www.gnutls.org/
21 BuildRequires: autoconf >= 2.61
22 BuildRequires: autogen
23 BuildRequires: autogen-devel
24 BuildRequires: automake >= 1:1.12.2
25 BuildRequires: gettext-tools >= 0.18
26 BuildRequires: gmp-devel
27 %{?with_doc:BuildRequires: gtk-doc >= 1.1}
28 BuildRequires: guile-devel >= 5:2.0
29 BuildRequires: libcfg+-devel
30 BuildRequires: libidn-devel
31 BuildRequires: libstdc++-devel
32 BuildRequires: libtasn1-devel >= 3.9
33 BuildRequires: libtool >= 2:2
34 BuildRequires: nettle-devel >= 2.7.1
35 # miniopencdk is included in sources and currently maintained
36 # as part of gnutls, not external package
37 #BuildRequires: opencdk-devel >= 0.6.6
38 BuildRequires: p11-kit-devel >= 0.20.7
39 BuildRequires: pkgconfig
40 BuildRequires: readline-devel
41 BuildRequires: rpmbuild(macros) >= 1.383
42 BuildRequires: sed >= 4.0
43 BuildRequires: tar >= 1:1.22
44 %{?with_doc:BuildRequires: texinfo >= 4.8}
45 %{?with_tpm:BuildRequires: trousers-devel >= 0.3.11}
46 %{?with_dane:BuildRequires: unbound-devel}
48 BuildRequires: zlib-devel
49 Requires: %{name}-libs = %{version}-%{release}
50 %{?with_dane:Requires: %{name}-dane = %{version}-%{release}}
51 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
54 GnuTLS is a project that aims to develop a library which provides a
55 secure layer, over a reliable transport layer (ie. TCP/IP). Currently
56 the gnuTLS library implements the proposed standards by the IETF's TLS
59 %description -l pl.UTF-8
60 GnuTLS to projekt mający na celu stworzenie biblioteki udostępniającej
61 powłokę bezpieczeństwa ponad powłoką transportową (np. TCP/IP).
62 Aktualnie biblioteka gnuTLS implementuje standardy proponowane przez
63 grupę roboczą IETF TLS.
66 Summary: GnuTLS shared libraries
67 Summary(pl.UTF-8): Biblioteki współdzielone GnuTLS
69 Requires: libtasn1 >= 3.9
70 Requires: nettle >= 2.7.1
71 #Requires: opencdk >= 0.6.6
72 Requires: p11-kit >= 0.20.7
73 %{?with_tpm:Requires: trousers-libs >= 0.3.11}
74 Conflicts: gnutls < 3.2.0
77 GnuTLS shared libraries.
79 %description libs -l pl.UTF-8
80 Biblioteki współdzielone GnuTLS.
83 Summary: Header files etc to develop gnutls applications
84 Summary(pl.UTF-8): Pliki nagłówkowe i inne do gnutls
85 License: LGPL v2.1+ (libgnutls), GPL v3+ (openssl library)
86 Group: Development/Libraries
87 Requires: %{name}-libs = %{version}-%{release}
88 Requires: libtasn1-devel >= 3.9
89 Requires: nettle-devel >= 2.7.1
90 #Requires: opencdk-devel >= 0.6.6
91 Requires: p11-kit-devel >= 0.20.7
92 %{?with_tpm:Requires: trousers-devel >= 0.3.11}
96 Header files etc to develop gnutls applications.
98 %description devel -l pl.UTF-8
99 Pliki nagłówkowe i inne do gnutls.
102 Summary: Static gnutls library
103 Summary(pl.UTF-8): Biblioteka statyczna gnutls
104 License: LGPL v2.1+ (libgnutls), GPL v3+ (openssl library)
105 Group: Development/Libraries
106 Requires: %{name}-devel = %{version}-%{release}
109 Static gnutls library.
111 %description static -l pl.UTF-8
112 Biblioteka statyczna gnutls.
115 Summary: libgnutlsxx - C++ interface to gnutls library
116 Summary(pl.UTF-8): libgnutlsxx - interfejs C++ do biblioteki gnutls
119 Requires: %{name}-libs = %{version}-%{release}
122 libgnutlsxx - C++ interface to gnutls library.
124 %description c++ -l pl.UTF-8
125 libgnutlsxx - interfejs C++ do biblioteki gnutls.
128 Summary: Header files for libgnutlsxx, a C++ interface to gnutls library
129 Summary(pl.UTF-8): Pliki nagłówkowe libgnutlsxx - interfejsu C++ do biblioteki gnutls
131 Group: Development/Libraries
132 Requires: %{name}-c++ = %{version}-%{release}
133 Requires: %{name}-devel = %{version}-%{release}
134 Requires: libstdc++-devel
136 %description c++-devel
137 Header files for libgnutlsxx, a C++ interface to gnutls library.
139 %description c++-devel -l pl.UTF-8
140 Pliki nagłówkowe libgnutlsxx - interfejsu C++ do biblioteki gnutls.
143 Summary: Static version of libgnutlsxx, a C++ interface to gnutls library
144 Summary(pl.UTF-8): Statyczna wersja libgnutlsxx - interfejsu C++ do biblioteki gnutls
146 Group: Development/Libraries
147 Requires: %{name}-c++-devel = %{version}-%{release}
149 %description c++-static
150 Static version of libgnutlsxx, a C++ interface to gnutls library.
152 %description c++-static -l pl.UTF-8
153 Statyczna wersja libgnutlsxx - interfejsu C++ do biblioteki gnutls.
156 Summary: DANE security library
157 Summary(pl.UTF-8): Biblioteka bezpieczeństwa DANE
159 Requires: %{name}-libs = %{version}-%{release}
162 DANE security library.
164 %description dane -l pl.UTF-8
165 Biblioteka bezpieczeństwa DANE.
168 Summary: Header file for DANE security library
169 Summary(pl.UTF-8): Plik nagłówkowy biblioteki bezpieczeństwa DANE
170 Group: Development/Libraries
171 Requires: %{name}-dane = %{version}-%{release}
172 Requires: %{name}-devel = %{version}-%{release}
173 Requires: unbound-devel
175 %description dane-devel
176 Header file for DANE security library.
178 %description dane-devel -l pl.UTF-8
179 Plik nagłówkowy biblioteki bezpieczeństwa DANE.
182 Summary: Static DANE security library
183 Summary(pl.UTF-8): Statyczna biblioteka bezpieczeństwa DANE
184 Group: Development/Libraries
185 Requires: %{name}-dane-devel = %{version}-%{release}
187 %description dane-static
188 Static DANE security library.
190 %description dane-static -l pl.UTF-8
191 Statyczna biblioteka bezpieczeństwa DANE.
194 Summary: OpenSSL compatibility library for GnuTLS
195 Summary(pl.UTF-8): Biblioteka zgodności z OpenSSL dla GnuTLS
197 Requires: %{name}-libs = %{version}-%{release}
200 OpenSSL compatibility library for GnuTLS.
202 %description openssl -l pl.UTF-8
203 Biblioteka zgodności z OpenSSL dla GnuTLS.
205 %package openssl-devel
206 Summary: Header file for gnutls-openssl library
207 Summary(pl.UTF-8): Plik nagłówkowy biblioteki gnutls-openssl
208 Group: Development/Libraries
209 Requires: %{name}-devel = %{version}-%{release}
210 Requires: %{name}-openssl = %{version}-%{release}
212 %description openssl-devel
213 Header file for gnutls-openssl library.
215 %description openssl-devel -l pl.UTF-8
216 Plik nagłówkowy biblioteki gnutls-openssl.
218 %package openssl-static
219 Summary: Static gnutls-openssl library
220 Summary(pl.UTF-8): Statyczna biblioteka gnutls-openssl
221 Group: Development/Libraries
222 Requires: %{name}-openssl-devel = %{version}-%{release}
224 %description openssl-static
225 Static gnutls-openssl library.
227 %description openssl-static -l pl.UTF-8
228 Statyczna biblioteka gnutls-openssl.
230 %package -n guile-gnutls
231 Summary: Guile bindings for GnuTLS
232 Summary(pl.UTF-8): Wiązania Guile do GnuTLS
234 Group: Development/Languages
235 Requires: %{name}-libs = %{version}-%{release}
236 Requires: guile >= 5:2.0
238 %description -n guile-gnutls
239 Guile bindings for GnuTLS.
241 %description -n guile-gnutls -l pl.UTF-8
242 Wiązania Guile do GnuTLS.
252 %{__mv} build-aux/snippet{,.save}
254 %{__mv} build-aux/snippet{.save,}
255 %{__aclocal} -I m4 -I gl/m4 -I src/libopts/m4 -I src/gl/m4
260 %{!?with_openssl:--disable-openssl-compatibility} \
261 --disable-silent-rules \
262 %{?with_static_libs:--enable-static} \
263 --with-default-trust-store-file=/etc/certs/ca-certificates.crt \
264 %{!?with_tpm:--without-tpm} \
265 %{!?with_doc:--disable-doc}
267 # docs build is broken with -jN
271 rm -rf $RPM_BUILD_ROOT
274 DESTDIR=$RPM_BUILD_ROOT
276 # although libgnutls.la is obsoleted by pkg-config, there is
277 # .pc file missing for libgnutls-openssl, and it needs libgnutls.la
279 # guile module - dynamic only
280 %{__rm} $RPM_BUILD_ROOT%{_libdir}/guile/2.0/guile-gnutls-*.la
281 %if %{with static_libs}
282 %{__rm} $RPM_BUILD_ROOT%{_libdir}/guile/2.0/guile-gnutls-*.a
285 %{__rm} -f $RPM_BUILD_ROOT%{_infodir}/dir
290 rm -rf $RPM_BUILD_ROOT
293 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1
296 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1
298 %post libs -p /sbin/ldconfig
299 %postun libs -p /sbin/ldconfig
301 %post c++ -p /sbin/ldconfig
302 %postun c++ -p /sbin/ldconfig
304 %post dane -p /sbin/ldconfig
305 %postun dane -p /sbin/ldconfig
307 %post openssl -p /sbin/ldconfig
308 %postun openssl -p /sbin/ldconfig
310 %post -n guile-gnutls -p /sbin/ldconfig
311 %postun -n guile-gnutls -p /sbin/ldconfig
313 %files -f %{name}.lang
314 %defattr(644,root,root,755)
315 %doc AUTHORS ChangeLog NEWS README THANKS
316 %attr(755,root,root) %{_bindir}/certtool
317 %attr(755,root,root) %{_bindir}/crywrap
318 %attr(755,root,root) %{_bindir}/gnutls-*
319 %attr(755,root,root) %{_bindir}/ocsptool
320 %attr(755,root,root) %{_bindir}/p11tool
321 %attr(755,root,root) %{_bindir}/psktool
322 %attr(755,root,root) %{_bindir}/srptool
323 %{?with_tpm:%attr(755,root,root) %{_bindir}/tpmtool}
325 %{_mandir}/man1/certtool.1*
326 %{_mandir}/man1/gnutls-*.1*
327 %{_mandir}/man1/ocsptool.1*
328 %{_mandir}/man1/p11tool.1*
329 %{_mandir}/man1/psktool.1*
330 %{_mandir}/man1/srptool.1*
331 %{_mandir}/man1/tpmtool.1*
332 %{_infodir}/gnutls.info*
333 %{_infodir}/gnutls-*.png
334 %{_infodir}/pkcs11-vision.png
338 %defattr(644,root,root,755)
339 %attr(755,root,root) %{_libdir}/libgnutls.so.*.*.*
340 %attr(755,root,root) %ghost %{_libdir}/libgnutls.so.28
343 %defattr(644,root,root,755)
344 %attr(755,root,root) %{_libdir}/libgnutls.so
345 %{_libdir}/libgnutls.la
346 %{_includedir}/gnutls
347 %{?with_dane:%exclude %{_includedir}/gnutls/dane.h}
348 %exclude %{_includedir}/gnutls/gnutlsxx.h
349 %{?with_openssl:%exclude %{_includedir}/gnutls/openssl.h}
350 %{_pkgconfigdir}/gnutls.pc
351 %{?with_doc:%{_mandir}/man3/gnutls_*.3*}
353 %if %{with static_libs}
355 %defattr(644,root,root,755)
356 %{_libdir}/libgnutls.a
360 %defattr(644,root,root,755)
361 %attr(755,root,root) %{_libdir}/libgnutlsxx.so.*.*.*
362 %attr(755,root,root) %ghost %{_libdir}/libgnutlsxx.so.28
365 %defattr(644,root,root,755)
366 %attr(755,root,root) %{_libdir}/libgnutlsxx.so
367 %{_libdir}/libgnutlsxx.la
368 %{_includedir}/gnutls/gnutlsxx.h
370 %if %{with static_libs}
372 %defattr(644,root,root,755)
373 %{_libdir}/libgnutlsxx.a
378 %defattr(644,root,root,755)
379 %attr(755,root,root) %{_bindir}/danetool
380 %attr(755,root,root) %{_libdir}/libgnutls-dane.so.*.*.*
381 %attr(755,root,root) %ghost %{_libdir}/libgnutls-dane.so.0
382 %{?with_doc:%{_mandir}/man1/danetool.1*}
385 %defattr(644,root,root,755)
386 %attr(755,root,root) %{_libdir}/libgnutls-dane.so
387 %{_libdir}/libgnutls-dane.la
388 %{_includedir}/gnutls/dane.h
389 %{_pkgconfigdir}/gnutls-dane.pc
391 %if %{with static_libs}
393 %defattr(644,root,root,755)
394 %{_libdir}/libgnutls-dane.a
400 %defattr(644,root,root,755)
401 %attr(755,root,root) %{_libdir}/libgnutls-openssl.so.*.*.*
402 %attr(755,root,root) %ghost %{_libdir}/libgnutls-openssl.so.27
405 %defattr(644,root,root,755)
406 %attr(755,root,root) %{_libdir}/libgnutls-openssl.so
407 %{_libdir}/libgnutls-openssl.la
408 %{_includedir}/gnutls/openssl.h
410 %files openssl-static
411 %defattr(644,root,root,755)
412 %{_libdir}/libgnutls-openssl.a
415 %files -n guile-gnutls
416 %defattr(644,root,root,755)
417 %attr(755,root,root) %{_libdir}/guile/2.0/guile-gnutls-v-2.so*
418 %{_datadir}/guile/site/gnutls.scm
419 %{_datadir}/guile/site/gnutls
420 %{?with_doc:%{_infodir}/gnutls-guile.info*}