1 # NOTE: 3.3.x is previous-stable line
2 # - for 3.5.x (current stable) see DEVEL branch (requires DEVEL p11-kit)
5 %bcond_without dane # libdane (DANE with DNSSEC certificate verification)
6 %bcond_without openssl # libgnutls-openssl compatibility library
7 %bcond_without tpm # TPM support in gnutls
8 %bcond_without static_libs # static libraries
9 %bcond_without doc # do not generate documentation
11 Summary: The GNU Transport Layer Security Library
12 Summary(pl.UTF-8): Biblioteka GNU TLS (Transport Layer Security)
16 License: LGPL v2.1+ (libgnutls), LGPL v3+ (libdane), GPL v3+ (openssl library and tools)
18 Source0: ftp://ftp.gnutls.org/gcrypt/gnutls/v3.4/%{name}-%{version}.tar.xz
19 # Source0-md5: 4da148b5a0048aaac4961e2d9ba95798
20 Patch0: %{name}-info.patch
21 Patch1: %{name}-link.patch
22 URL: http://www.gnutls.org/
23 BuildRequires: autoconf >= 2.61
24 BuildRequires: autogen
25 BuildRequires: autogen-devel
26 BuildRequires: automake >= 1:1.12.2
27 BuildRequires: gettext-tools >= 0.18
28 BuildRequires: gmp-devel
29 %{?with_doc:BuildRequires: gtk-doc >= 1.1}
30 BuildRequires: guile-devel >= 5:2.0
31 BuildRequires: libcfg+-devel
32 BuildRequires: libidn-devel >= 0.5.6
33 BuildRequires: libstdc++-devel
34 BuildRequires: libtasn1-devel >= 4.3
35 BuildRequires: libtool >= 2:2
36 BuildRequires: nettle-devel >= 3.1
37 # miniopencdk is included in sources and currently maintained
38 # as part of gnutls, not external package
39 #BuildRequires: opencdk-devel >= 0.6.6
40 BuildRequires: p11-kit-devel >= 0.23.1
41 BuildRequires: pkgconfig
42 BuildRequires: readline-devel
43 BuildRequires: rpmbuild(macros) >= 1.383
44 BuildRequires: sed >= 4.0
45 BuildRequires: tar >= 1:1.22
46 %{?with_doc:BuildRequires: texinfo >= 4.8}
47 %{?with_tpm:BuildRequires: trousers-devel >= 0.3.11}
48 %{?with_dane:BuildRequires: unbound-devel}
50 BuildRequires: zlib-devel
51 Requires: %{name}-libs = %{version}-%{release}
52 %{?with_dane:Requires: %{name}-dane = %{version}-%{release}}
53 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
56 GnuTLS is a project that aims to develop a library which provides a
57 secure layer, over a reliable transport layer (ie. TCP/IP). Currently
58 the gnuTLS library implements the proposed standards by the IETF's TLS
61 %description -l pl.UTF-8
62 GnuTLS to projekt mający na celu stworzenie biblioteki udostępniającej
63 powłokę bezpieczeństwa ponad powłoką transportową (np. TCP/IP).
64 Aktualnie biblioteka gnuTLS implementuje standardy proponowane przez
65 grupę roboczą IETF TLS.
68 Summary: GnuTLS shared libraries
69 Summary(pl.UTF-8): Biblioteki współdzielone GnuTLS
71 Requires: libidn >= 0.5.6
72 Requires: libtasn1 >= 4.3
73 Requires: nettle >= 3.1
74 #Requires: opencdk >= 0.6.6
75 Requires: p11-kit >= 0.23.1
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: libidn-devel >= 0.5.6
92 Requires: libtasn1-devel >= 4.3
93 Requires: nettle-devel >= 3.1
94 #Requires: opencdk-devel >= 0.6.6
95 Requires: p11-kit-devel >= 0.23.1
96 %{?with_tpm:Requires: trousers-devel >= 0.3.11}
100 Header files etc to develop gnutls applications.
102 %description devel -l pl.UTF-8
103 Pliki nagłówkowe i inne do gnutls.
106 Summary: Static gnutls library
107 Summary(pl.UTF-8): Biblioteka statyczna gnutls
108 License: LGPL v2.1+ (libgnutls), GPL v3+ (openssl library)
109 Group: Development/Libraries
110 Requires: %{name}-devel = %{version}-%{release}
113 Static gnutls library.
115 %description static -l pl.UTF-8
116 Biblioteka statyczna gnutls.
119 Summary: libgnutlsxx - C++ interface to gnutls library
120 Summary(pl.UTF-8): libgnutlsxx - interfejs C++ do biblioteki gnutls
123 Requires: %{name}-libs = %{version}-%{release}
126 libgnutlsxx - C++ interface to gnutls library.
128 %description c++ -l pl.UTF-8
129 libgnutlsxx - interfejs C++ do biblioteki gnutls.
132 Summary: Header files for libgnutlsxx, a C++ interface to gnutls library
133 Summary(pl.UTF-8): Pliki nagłówkowe libgnutlsxx - interfejsu C++ do biblioteki gnutls
135 Group: Development/Libraries
136 Requires: %{name}-c++ = %{version}-%{release}
137 Requires: %{name}-devel = %{version}-%{release}
138 Requires: libstdc++-devel
140 %description c++-devel
141 Header files for libgnutlsxx, a C++ interface to gnutls library.
143 %description c++-devel -l pl.UTF-8
144 Pliki nagłówkowe libgnutlsxx - interfejsu C++ do biblioteki gnutls.
147 Summary: Static version of libgnutlsxx, a C++ interface to gnutls library
148 Summary(pl.UTF-8): Statyczna wersja libgnutlsxx - interfejsu C++ do biblioteki gnutls
150 Group: Development/Libraries
151 Requires: %{name}-c++-devel = %{version}-%{release}
153 %description c++-static
154 Static version of libgnutlsxx, a C++ interface to gnutls library.
156 %description c++-static -l pl.UTF-8
157 Statyczna wersja libgnutlsxx - interfejsu C++ do biblioteki gnutls.
160 Summary: DANE security library
161 Summary(pl.UTF-8): Biblioteka bezpieczeństwa DANE
163 Requires: %{name}-libs = %{version}-%{release}
166 DANE security library.
168 %description dane -l pl.UTF-8
169 Biblioteka bezpieczeństwa DANE.
172 Summary: Header file for DANE security library
173 Summary(pl.UTF-8): Plik nagłówkowy biblioteki bezpieczeństwa DANE
174 Group: Development/Libraries
175 Requires: %{name}-dane = %{version}-%{release}
176 Requires: %{name}-devel = %{version}-%{release}
177 Requires: unbound-devel
179 %description dane-devel
180 Header file for DANE security library.
182 %description dane-devel -l pl.UTF-8
183 Plik nagłówkowy biblioteki bezpieczeństwa DANE.
186 Summary: Static DANE security library
187 Summary(pl.UTF-8): Statyczna biblioteka bezpieczeństwa DANE
188 Group: Development/Libraries
189 Requires: %{name}-dane-devel = %{version}-%{release}
191 %description dane-static
192 Static DANE security library.
194 %description dane-static -l pl.UTF-8
195 Statyczna biblioteka bezpieczeństwa DANE.
198 Summary: OpenSSL compatibility library for GnuTLS
199 Summary(pl.UTF-8): Biblioteka zgodności z OpenSSL dla GnuTLS
201 Requires: %{name}-libs = %{version}-%{release}
204 OpenSSL compatibility library for GnuTLS.
206 %description openssl -l pl.UTF-8
207 Biblioteka zgodności z OpenSSL dla GnuTLS.
209 %package openssl-devel
210 Summary: Header file for gnutls-openssl library
211 Summary(pl.UTF-8): Plik nagłówkowy biblioteki gnutls-openssl
212 Group: Development/Libraries
213 Requires: %{name}-devel = %{version}-%{release}
214 Requires: %{name}-openssl = %{version}-%{release}
216 %description openssl-devel
217 Header file for gnutls-openssl library.
219 %description openssl-devel -l pl.UTF-8
220 Plik nagłówkowy biblioteki gnutls-openssl.
222 %package openssl-static
223 Summary: Static gnutls-openssl library
224 Summary(pl.UTF-8): Statyczna biblioteka gnutls-openssl
225 Group: Development/Libraries
226 Requires: %{name}-openssl-devel = %{version}-%{release}
228 %description openssl-static
229 Static gnutls-openssl library.
231 %description openssl-static -l pl.UTF-8
232 Statyczna biblioteka gnutls-openssl.
234 %package -n guile-gnutls
235 Summary: Guile bindings for GnuTLS
236 Summary(pl.UTF-8): Wiązania Guile do GnuTLS
238 Group: Development/Languages
239 Requires: %{name}-libs = %{version}-%{release}
240 Requires: guile >= 5:2.0
242 %description -n guile-gnutls
243 Guile bindings for GnuTLS.
245 %description -n guile-gnutls -l pl.UTF-8
246 Wiązania Guile do GnuTLS.
256 %{__mv} build-aux/snippet{,.save}
258 %{__mv} build-aux/snippet{.save,}
259 %{__aclocal} -I m4 -I gl/m4 -I src/libopts/m4 -I src/gl/m4
264 %{?with_openssl:--enable-openssl-compatibility} \
265 --disable-silent-rules \
266 %{?with_static_libs:--enable-static} \
267 --with-default-trust-store-file=/etc/certs/ca-certificates.crt \
268 %{!?with_tpm:--without-tpm} \
269 --with-trousers-lib=%{_libdir}/libtspi.so.1 \
270 %{!?with_doc:--disable-doc}
272 # docs build is broken with -jN
276 rm -rf $RPM_BUILD_ROOT
279 DESTDIR=$RPM_BUILD_ROOT
281 # although libgnutls.la is obsoleted by pkg-config, there is
282 # .pc file missing for libgnutls-openssl, and it needs libgnutls.la
284 # guile module - dynamic only
285 %{__rm} $RPM_BUILD_ROOT%{_libdir}/guile/2.0/guile-gnutls-*.la
286 %if %{with static_libs}
287 %{__rm} $RPM_BUILD_ROOT%{_libdir}/guile/2.0/guile-gnutls-*.a
290 %{__rm} -f $RPM_BUILD_ROOT%{_infodir}/dir
295 rm -rf $RPM_BUILD_ROOT
298 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1
301 [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1
303 %post libs -p /sbin/ldconfig
304 %postun libs -p /sbin/ldconfig
306 %post c++ -p /sbin/ldconfig
307 %postun c++ -p /sbin/ldconfig
309 %post dane -p /sbin/ldconfig
310 %postun dane -p /sbin/ldconfig
312 %post openssl -p /sbin/ldconfig
313 %postun openssl -p /sbin/ldconfig
315 %post -n guile-gnutls -p /sbin/ldconfig
316 %postun -n guile-gnutls -p /sbin/ldconfig
318 %files -f %{name}.lang
319 %defattr(644,root,root,755)
320 %doc AUTHORS ChangeLog NEWS README THANKS
321 %attr(755,root,root) %{_bindir}/certtool
322 %attr(755,root,root) %{_bindir}/crywrap
323 %attr(755,root,root) %{_bindir}/gnutls-*
324 %attr(755,root,root) %{_bindir}/ocsptool
325 %attr(755,root,root) %{_bindir}/p11tool
326 %attr(755,root,root) %{_bindir}/psktool
327 %attr(755,root,root) %{_bindir}/srptool
328 %{?with_tpm:%attr(755,root,root) %{_bindir}/tpmtool}
330 %{_mandir}/man1/certtool.1*
331 %{_mandir}/man1/gnutls-*.1*
332 %{_mandir}/man1/ocsptool.1*
333 %{_mandir}/man1/p11tool.1*
334 %{_mandir}/man1/psktool.1*
335 %{_mandir}/man1/srptool.1*
336 %{_mandir}/man1/tpmtool.1*
337 %{_infodir}/gnutls.info*
338 %{_infodir}/gnutls-*.png
339 %{_infodir}/pkcs11-vision.png
343 %defattr(644,root,root,755)
344 %attr(755,root,root) %{_libdir}/libgnutls.so.*.*.*
345 %attr(755,root,root) %ghost %{_libdir}/libgnutls.so.30
348 %defattr(644,root,root,755)
349 %attr(755,root,root) %{_libdir}/libgnutls.so
350 %{_libdir}/libgnutls.la
351 %{_includedir}/gnutls
352 %{?with_dane:%exclude %{_includedir}/gnutls/dane.h}
353 %exclude %{_includedir}/gnutls/gnutlsxx.h
354 %{?with_openssl:%exclude %{_includedir}/gnutls/openssl.h}
355 %{_pkgconfigdir}/gnutls.pc
356 %{?with_doc:%{_mandir}/man3/gnutls_*.3*}
358 %if %{with static_libs}
360 %defattr(644,root,root,755)
361 %{_libdir}/libgnutls.a
365 %defattr(644,root,root,755)
366 %attr(755,root,root) %{_libdir}/libgnutlsxx.so.*.*.*
367 %attr(755,root,root) %ghost %{_libdir}/libgnutlsxx.so.28
370 %defattr(644,root,root,755)
371 %attr(755,root,root) %{_libdir}/libgnutlsxx.so
372 %{_libdir}/libgnutlsxx.la
373 %{_includedir}/gnutls/gnutlsxx.h
375 %if %{with static_libs}
377 %defattr(644,root,root,755)
378 %{_libdir}/libgnutlsxx.a
383 %defattr(644,root,root,755)
384 %attr(755,root,root) %{_bindir}/danetool
385 %attr(755,root,root) %{_libdir}/libgnutls-dane.so.*.*.*
386 %attr(755,root,root) %ghost %{_libdir}/libgnutls-dane.so.0
387 %{?with_doc:%{_mandir}/man1/danetool.1*}
390 %defattr(644,root,root,755)
391 %attr(755,root,root) %{_libdir}/libgnutls-dane.so
392 %{_libdir}/libgnutls-dane.la
393 %{_includedir}/gnutls/dane.h
394 %{_pkgconfigdir}/gnutls-dane.pc
396 %if %{with static_libs}
398 %defattr(644,root,root,755)
399 %{_libdir}/libgnutls-dane.a
405 %defattr(644,root,root,755)
406 %attr(755,root,root) %{_libdir}/libgnutls-openssl.so.*.*.*
407 %attr(755,root,root) %ghost %{_libdir}/libgnutls-openssl.so.27
410 %defattr(644,root,root,755)
411 %attr(755,root,root) %{_libdir}/libgnutls-openssl.so
412 %{_libdir}/libgnutls-openssl.la
413 %{_includedir}/gnutls/openssl.h
415 %files openssl-static
416 %defattr(644,root,root,755)
417 %{_libdir}/libgnutls-openssl.a
420 %files -n guile-gnutls
421 %defattr(644,root,root,755)
422 %attr(755,root,root) %{_libdir}/guile/2.0/guile-gnutls-v-2.so*
423 %{_datadir}/guile/site/gnutls.scm
424 %{_datadir}/guile/site/gnutls
425 %{?with_doc:%{_infodir}/gnutls-guile.info*}