1 # NOTE: 3.3.x is previous-stable line
2 # - for 3.4.x (current stable) see gnutls-3.4 branch (requires DEVEL p11-kit)
3 # - for 3.5.x (next-stable) see DEVEL branch (requires DEVEL p11-kit)
6 %bcond_without dane # libdane (DANE with DNSSEC certificate verification)
7 %bcond_without openssl # libgnutls-openssl compatibility library
8 %bcond_without tpm # TPM support in gnutls
9 %bcond_without static_libs # static libraries
10 %bcond_without doc # do not generate documentation
12 Summary: The GNU Transport Layer Security Library
13 Summary(pl.UTF-8): Biblioteka GNU TLS (Transport Layer Security)
17 License: LGPL v2.1+ (libgnutls), LGPL v3+ (libdane), GPL v3+ (openssl library and tools)
19 Source0: ftp://ftp.gnutls.org/gcrypt/gnutls/v3.3/%{name}-%{version}.tar.xz
20 # Source0-md5: 00ec77f05cc0b970f44dad0cd0c67fb9
21 Patch0: %{name}-info.patch
22 Patch1: %{name}-link.patch
23 URL: http://www.gnutls.org/
24 BuildRequires: autoconf >= 2.61
25 BuildRequires: autogen
26 BuildRequires: autogen-devel
27 BuildRequires: automake >= 1:1.12.2
28 BuildRequires: gettext-tools >= 0.18
29 BuildRequires: gmp-devel
30 %{?with_doc:BuildRequires: gtk-doc >= 1.1}
31 BuildRequires: guile-devel >= 5:2.0
32 BuildRequires: libcfg+-devel
33 BuildRequires: libidn-devel
34 BuildRequires: libstdc++-devel
35 BuildRequires: libtasn1-devel >= 3.9
36 BuildRequires: libtool >= 2:2
37 BuildRequires: nettle-devel >= 2.7.1
38 # miniopencdk is included in sources and currently maintained
39 # as part of gnutls, not external package
40 #BuildRequires: opencdk-devel >= 0.6.6
41 BuildRequires: p11-kit-devel >= 0.20.7
42 BuildRequires: pkgconfig
43 BuildRequires: readline-devel
44 BuildRequires: rpmbuild(macros) >= 1.383
45 BuildRequires: sed >= 4.0
46 BuildRequires: tar >= 1:1.22
47 %{?with_doc:BuildRequires: texinfo >= 4.8}
48 %{?with_tpm:BuildRequires: trousers-devel >= 0.3.11}
49 %{?with_dane:BuildRequires: unbound-devel}
51 BuildRequires: zlib-devel
52 Requires: %{name}-libs = %{version}-%{release}
53 %{?with_dane:Requires: %{name}-dane = %{version}-%{release}}
54 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
57 GnuTLS is a project that aims to develop a library which provides a
58 secure layer, over a reliable transport layer (ie. TCP/IP). Currently
59 the gnuTLS library implements the proposed standards by the IETF's TLS
62 %description -l pl.UTF-8
63 GnuTLS to projekt mający na celu stworzenie biblioteki udostępniającej
64 powłokę bezpieczeństwa ponad powłoką transportową (np. TCP/IP).
65 Aktualnie biblioteka gnuTLS implementuje standardy proponowane przez
66 grupę roboczą IETF TLS.
69 Summary: GnuTLS shared libraries
70 Summary(pl.UTF-8): Biblioteki współdzielone GnuTLS
72 Requires: libtasn1 >= 3.9
73 Requires: nettle >= 2.7.1
74 #Requires: opencdk >= 0.6.6
75 Requires: p11-kit >= 0.20.7
76 %{?with_tpm:Requires: trousers-libs >= 0.3.11}
77 Conflicts: gnutls < 3.2.0
80 GnuTLS shared libraries.
82 %description libs -l pl.UTF-8
83 Biblioteki współdzielone GnuTLS.
86 Summary: Header files etc to develop gnutls applications
87 Summary(pl.UTF-8): Pliki nagłówkowe i inne do gnutls
88 License: LGPL v2.1+ (libgnutls), GPL v3+ (openssl library)
89 Group: Development/Libraries
90 Requires: %{name}-libs = %{version}-%{release}
91 Requires: libtasn1-devel >= 3.9
92 Requires: nettle-devel >= 2.7.1
93 #Requires: opencdk-devel >= 0.6.6
94 Requires: p11-kit-devel >= 0.20.7
95 %{?with_tpm:Requires: trousers-devel >= 0.3.11}
99 Header files etc to develop gnutls applications.
101 %description devel -l pl.UTF-8
102 Pliki nagłówkowe i inne do gnutls.
105 Summary: Static gnutls library
106 Summary(pl.UTF-8): Biblioteka statyczna gnutls
107 License: LGPL v2.1+ (libgnutls), GPL v3+ (openssl library)
108 Group: Development/Libraries
109 Requires: %{name}-devel = %{version}-%{release}
112 Static gnutls library.
114 %description static -l pl.UTF-8
115 Biblioteka statyczna gnutls.
118 Summary: libgnutlsxx - C++ interface to gnutls library
119 Summary(pl.UTF-8): libgnutlsxx - interfejs C++ do biblioteki gnutls
122 Requires: %{name}-libs = %{version}-%{release}
125 libgnutlsxx - C++ interface to gnutls library.
127 %description c++ -l pl.UTF-8
128 libgnutlsxx - interfejs C++ do biblioteki gnutls.
131 Summary: Header files for libgnutlsxx, a C++ interface to gnutls library
132 Summary(pl.UTF-8): Pliki nagłówkowe libgnutlsxx - interfejsu C++ do biblioteki gnutls
134 Group: Development/Libraries
135 Requires: %{name}-c++ = %{version}-%{release}
136 Requires: %{name}-devel = %{version}-%{release}
137 Requires: libstdc++-devel
139 %description c++-devel
140 Header files for libgnutlsxx, a C++ interface to gnutls library.
142 %description c++-devel -l pl.UTF-8
143 Pliki nagłówkowe libgnutlsxx - interfejsu C++ do biblioteki gnutls.
146 Summary: Static version of libgnutlsxx, a C++ interface to gnutls library
147 Summary(pl.UTF-8): Statyczna wersja libgnutlsxx - interfejsu C++ do biblioteki gnutls
149 Group: Development/Libraries
150 Requires: %{name}-c++-devel = %{version}-%{release}
152 %description c++-static
153 Static version of libgnutlsxx, a C++ interface to gnutls library.
155 %description c++-static -l pl.UTF-8
156 Statyczna wersja libgnutlsxx - interfejsu C++ do biblioteki gnutls.
159 Summary: DANE security library
160 Summary(pl.UTF-8): Biblioteka bezpieczeństwa DANE
162 Requires: %{name}-libs = %{version}-%{release}
165 DANE security library.
167 %description dane -l pl.UTF-8
168 Biblioteka bezpieczeństwa DANE.
171 Summary: Header file for DANE security library
172 Summary(pl.UTF-8): Plik nagłówkowy biblioteki bezpieczeństwa DANE
173 Group: Development/Libraries
174 Requires: %{name}-dane = %{version}-%{release}
175 Requires: %{name}-devel = %{version}-%{release}
176 Requires: unbound-devel
178 %description dane-devel
179 Header file for DANE security library.
181 %description dane-devel -l pl.UTF-8
182 Plik nagłówkowy biblioteki bezpieczeństwa DANE.
185 Summary: Static DANE security library
186 Summary(pl.UTF-8): Statyczna biblioteka bezpieczeństwa DANE
187 Group: Development/Libraries
188 Requires: %{name}-dane-devel = %{version}-%{release}
190 %description dane-static
191 Static DANE security library.
193 %description dane-static -l pl.UTF-8
194 Statyczna biblioteka bezpieczeństwa DANE.
197 Summary: OpenSSL compatibility library for GnuTLS
198 Summary(pl.UTF-8): Biblioteka zgodności z OpenSSL dla GnuTLS
200 Requires: %{name}-libs = %{version}-%{release}
203 OpenSSL compatibility library for GnuTLS.
205 %description openssl -l pl.UTF-8
206 Biblioteka zgodności z OpenSSL dla GnuTLS.
208 %package openssl-devel
209 Summary: Header file for gnutls-openssl library
210 Summary(pl.UTF-8): Plik nagłówkowy biblioteki gnutls-openssl
211 Group: Development/Libraries
212 Requires: %{name}-devel = %{version}-%{release}
213 Requires: %{name}-openssl = %{version}-%{release}
215 %description openssl-devel
216 Header file for gnutls-openssl library.
218 %description openssl-devel -l pl.UTF-8
219 Plik nagłówkowy biblioteki gnutls-openssl.
221 %package openssl-static
222 Summary: Static gnutls-openssl library
223 Summary(pl.UTF-8): Statyczna biblioteka gnutls-openssl
224 Group: Development/Libraries
225 Requires: %{name}-openssl-devel = %{version}-%{release}
227 %description openssl-static
228 Static gnutls-openssl library.
230 %description openssl-static -l pl.UTF-8
231 Statyczna biblioteka gnutls-openssl.
233 %package -n guile-gnutls
234 Summary: Guile bindings for GnuTLS
235 Summary(pl.UTF-8): Wiązania Guile do GnuTLS
237 Group: Development/Languages
238 Requires: %{name}-libs = %{version}-%{release}
239 Requires: guile >= 5:2.0
241 %description -n guile-gnutls
242 Guile bindings for GnuTLS.
244 %description -n guile-gnutls -l pl.UTF-8
245 Wiązania Guile do GnuTLS.
255 %{__mv} build-aux/snippet{,.save}
257 %{__mv} build-aux/snippet{.save,}
258 %{__aclocal} -I m4 -I gl/m4 -I src/libopts/m4 -I src/gl/m4
263 %{!?with_openssl:--disable-openssl-compatibility} \
264 --disable-silent-rules \
265 %{?with_static_libs:--enable-static} \
266 --with-default-trust-store-file=/etc/certs/ca-certificates.crt \
267 %{!?with_tpm:--without-tpm} \
268 %{!?with_doc:--disable-doc}
270 # docs build is broken with -jN
274 rm -rf $RPM_BUILD_ROOT
277 DESTDIR=$RPM_BUILD_ROOT
279 # although libgnutls.la is obsoleted by pkg-config, there is
280 # .pc file missing for libgnutls-openssl, and it needs libgnutls.la
282 # guile module - dynamic only
283 %{__rm} $RPM_BUILD_ROOT%{_libdir}/guile/2.0/guile-gnutls-*.la
284 %if %{with static_libs}
285 %{__rm} $RPM_BUILD_ROOT%{_libdir}/guile/2.0/guile-gnutls-*.a
288 %{__rm} -f $RPM_BUILD_ROOT%{_infodir}/dir
293 rm -rf $RPM_BUILD_ROOT
296 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1
299 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1
301 %post libs -p /sbin/ldconfig
302 %postun libs -p /sbin/ldconfig
304 %post c++ -p /sbin/ldconfig
305 %postun c++ -p /sbin/ldconfig
307 %post dane -p /sbin/ldconfig
308 %postun dane -p /sbin/ldconfig
310 %post openssl -p /sbin/ldconfig
311 %postun openssl -p /sbin/ldconfig
313 %post -n guile-gnutls -p /sbin/ldconfig
314 %postun -n guile-gnutls -p /sbin/ldconfig
316 %files -f %{name}.lang
317 %defattr(644,root,root,755)
318 %doc AUTHORS ChangeLog NEWS README THANKS
319 %attr(755,root,root) %{_bindir}/certtool
320 %attr(755,root,root) %{_bindir}/crywrap
321 %attr(755,root,root) %{_bindir}/gnutls-*
322 %attr(755,root,root) %{_bindir}/ocsptool
323 %attr(755,root,root) %{_bindir}/p11tool
324 %attr(755,root,root) %{_bindir}/psktool
325 %attr(755,root,root) %{_bindir}/srptool
326 %{?with_tpm:%attr(755,root,root) %{_bindir}/tpmtool}
328 %{_mandir}/man1/certtool.1*
329 %{_mandir}/man1/gnutls-*.1*
330 %{_mandir}/man1/ocsptool.1*
331 %{_mandir}/man1/p11tool.1*
332 %{_mandir}/man1/psktool.1*
333 %{_mandir}/man1/srptool.1*
334 %{_mandir}/man1/tpmtool.1*
335 %{_infodir}/gnutls.info*
336 %{_infodir}/gnutls-*.png
337 %{_infodir}/pkcs11-vision.png
341 %defattr(644,root,root,755)
342 %attr(755,root,root) %{_libdir}/libgnutls.so.*.*.*
343 %attr(755,root,root) %ghost %{_libdir}/libgnutls.so.28
346 %defattr(644,root,root,755)
347 %attr(755,root,root) %{_libdir}/libgnutls.so
348 %{_libdir}/libgnutls.la
349 %{_includedir}/gnutls
350 %{?with_dane:%exclude %{_includedir}/gnutls/dane.h}
351 %exclude %{_includedir}/gnutls/gnutlsxx.h
352 %{?with_openssl:%exclude %{_includedir}/gnutls/openssl.h}
353 %{_pkgconfigdir}/gnutls.pc
354 %{?with_doc:%{_mandir}/man3/gnutls_*.3*}
356 %if %{with static_libs}
358 %defattr(644,root,root,755)
359 %{_libdir}/libgnutls.a
363 %defattr(644,root,root,755)
364 %attr(755,root,root) %{_libdir}/libgnutlsxx.so.*.*.*
365 %attr(755,root,root) %ghost %{_libdir}/libgnutlsxx.so.28
368 %defattr(644,root,root,755)
369 %attr(755,root,root) %{_libdir}/libgnutlsxx.so
370 %{_libdir}/libgnutlsxx.la
371 %{_includedir}/gnutls/gnutlsxx.h
373 %if %{with static_libs}
375 %defattr(644,root,root,755)
376 %{_libdir}/libgnutlsxx.a
381 %defattr(644,root,root,755)
382 %attr(755,root,root) %{_bindir}/danetool
383 %attr(755,root,root) %{_libdir}/libgnutls-dane.so.*.*.*
384 %attr(755,root,root) %ghost %{_libdir}/libgnutls-dane.so.0
385 %{?with_doc:%{_mandir}/man1/danetool.1*}
388 %defattr(644,root,root,755)
389 %attr(755,root,root) %{_libdir}/libgnutls-dane.so
390 %{_libdir}/libgnutls-dane.la
391 %{_includedir}/gnutls/dane.h
392 %{_pkgconfigdir}/gnutls-dane.pc
394 %if %{with static_libs}
396 %defattr(644,root,root,755)
397 %{_libdir}/libgnutls-dane.a
403 %defattr(644,root,root,755)
404 %attr(755,root,root) %{_libdir}/libgnutls-openssl.so.*.*.*
405 %attr(755,root,root) %ghost %{_libdir}/libgnutls-openssl.so.27
408 %defattr(644,root,root,755)
409 %attr(755,root,root) %{_libdir}/libgnutls-openssl.so
410 %{_libdir}/libgnutls-openssl.la
411 %{_includedir}/gnutls/openssl.h
413 %files openssl-static
414 %defattr(644,root,root,755)
415 %{_libdir}/libgnutls-openssl.a
418 %files -n guile-gnutls
419 %defattr(644,root,root,755)
420 %attr(755,root,root) %{_libdir}/guile/2.0/guile-gnutls-v-2.so*
421 %{_datadir}/guile/site/gnutls.scm
422 %{_datadir}/guile/site/gnutls
423 %{?with_doc:%{_infodir}/gnutls-guile.info*}