]> git.pld-linux.org Git - packages/gnutls.git/blame - gnutls.spec
up to 3.7.4 (new libgnutlsxx soname)
[packages/gnutls.git] / gnutls.spec
CommitLineData
547ca217
JB
1#
2# Conditional build:
63178e7f 3%bcond_without dane # libdane (DANE with DNSSEC certificate verification)
49d0f281 4%bcond_without openssl # libgnutls-openssl compatibility library
63178e7f 5%bcond_without tpm # TPM support in gnutls
3a6f7fd8 6%bcond_without tpm2 # TPM2 support in gnutls
63178e7f 7%bcond_without static_libs # static libraries
12f86e92 8%bcond_without doc # do not generate documentation
0255a2d6 9%bcond_without guile # Guile binding
b5c41c44 10%bcond_with af_alg # Linux kernel AF_ALG based acceleration
3a6f7fd8
JP
11%bcond_with ktls # Kernel TLS support
12
6d7519d8 13Summary: The GNU Transport Layer Security Library
7b093bb5 14Summary(pl.UTF-8): Biblioteka GNU TLS (Transport Layer Security)
6d7519d8 15Name: gnutls
688f68e9
JP
16Version: 3.7.4
17Release: 1
4df2ddc1 18License: LGPL v2.1+ (libgnutls), LGPL v3+ (libdane), GPL v3+ (openssl library and tools)
6d7519d8 19Group: Libraries
d57a2cd4 20Source0: ftp://ftp.gnutls.org/gcrypt/gnutls/v3.7/%{name}-%{version}.tar.xz
688f68e9 21# Source0-md5: 4bce06332c525eae540bb237433d4225
bf6baa77 22Patch0: %{name}-info.patch
4d87caea 23Patch1: %{name}-link.patch
d477527f 24Patch2: %{name}-pl.po-update.patch
688f68e9 25Patch3: zstd.patch
866922ba 26URL: https://www.gnutls.org/
d477527f 27BuildRequires: autoconf >= 2.63
59d25b4c 28BuildRequires: automake >= 1:1.12.2
d477527f 29BuildRequires: gcc >= 5:3.2
b0199314 30BuildRequires: gettext-tools >= 0.19
63178e7f 31BuildRequires: gmp-devel
800f463c 32%{?with_doc:BuildRequires: gtk-doc >= 1.14}
a0012bde 33%{?with_guile:BuildRequires: guile-devel >= 5:2.2.0}
15bbc850 34BuildRequires: libidn2-devel >= 2.0.0
688f68e9 35BuildRequires: libbrotli-devel >= 1.0.0
b5c41c44 36%{?with_af_alg:BuildRequires: libkcapi-devel >= 1.3.0}
71cef829 37BuildRequires: libstdc++-devel
a6d06b1c 38BuildRequires: libtasn1-devel >= 4.11
0381cb26 39BuildRequires: libunistring-devel
0d6c279f 40BuildRequires: libtool >= 2:2
3a6f7fd8 41%{?with_ktls:BuildRequires: linux-libc-headers >= 7:4.13}
d57a2cd4 42BuildRequires: nettle-devel >= 3.6
17285f2a
JB
43# miniopencdk is included in sources and currently maintained
44# as part of gnutls, not external package
45#BuildRequires: opencdk-devel >= 0.6.6
f72ee18c 46BuildRequires: p11-kit-devel >= 0.23.1
6c4df057 47BuildRequires: pkgconfig
e5ea410a 48BuildRequires: readline-devel
3a6f7fd8 49BuildRequires: rpmbuild(macros) >= 1.527
cf0a9984 50BuildRequires: sed >= 4.0
547ca217 51BuildRequires: tar >= 1:1.22
12f86e92 52%{?with_doc:BuildRequires: texinfo >= 4.8}
3a6f7fd8 53%{?with_tpm2:BuildRequires: tpm2-tss-devel}
06e5a035 54%{?with_tpm:BuildRequires: trousers-devel >= 0.3.11}
83ed044d 55%{?with_dane:BuildRequires: unbound-devel}
e44a8860 56BuildRequires: xz
5a115208 57BuildRequires: zlib-devel
688f68e9 58BuildRequires: zstd-devel >= 1.3.0
dd155803
JB
59Requires: %{name}-libs = %{version}-%{release}
60%{?with_dane:Requires: %{name}-dane = %{version}-%{release}}
6d7519d8
AM
61BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
62
df3400fb
AM
63%define _noautostrip .*\.go
64
6d7519d8
AM
65%description
66GnuTLS is a project that aims to develop a library which provides a
67secure layer, over a reliable transport layer (ie. TCP/IP). Currently
68the gnuTLS library implements the proposed standards by the IETF's TLS
69working group.
70
fc7e37b3
JR
71%description -l pl.UTF-8
72GnuTLS to projekt mający na celu stworzenie biblioteki udostępniającej
73powłokę bezpieczeństwa ponad powłoką transportową (np. TCP/IP).
6d7519d8 74Aktualnie biblioteka gnuTLS implementuje standardy proponowane przez
fc7e37b3 75grupę roboczą IETF TLS.
6d7519d8 76
dd155803
JB
77%package libs
78Summary: GnuTLS shared libraries
79Summary(pl.UTF-8): Biblioteki współdzielone GnuTLS
80Group: Libraries
688f68e9 81Requires: libbrotli >= 1.0.0
15bbc850 82Requires: libidn2 >= 2.0.0
b5c41c44 83%{?with_af_alg:Requires: libkcapi >= 1.3.0}
a6d06b1c 84Requires: libtasn1 >= 4.11
d57a2cd4 85Requires: nettle >= 3.6
dd155803 86#Requires: opencdk >= 0.6.6
f72ee18c 87Requires: p11-kit >= 0.23.1
688f68e9
JP
88Requires: zstd >= 1.3.0
89# dlopened libtss2-*
90%{?with_tpm2:Suggests: tpm2-tss}
91# dlopened libtspi
92%{?with_tpm:Suggests: trousers-libs >= 0.3.11}
dd155803
JB
93Conflicts: gnutls < 3.2.0
94
95%description libs
96GnuTLS shared libraries.
97
98%description libs -l pl.UTF-8
99Biblioteki współdzielone GnuTLS.
100
6d7519d8
AM
101%package devel
102Summary: Header files etc to develop gnutls applications
7b093bb5 103Summary(pl.UTF-8): Pliki nagłówkowe i inne do gnutls
fdd1e702 104License: LGPL v2.1+ (libgnutls), GPL v3+ (openssl library)
6d7519d8 105Group: Development/Libraries
dd155803 106Requires: %{name}-libs = %{version}-%{release}
d84852d5 107Requires: gmp-devel
688f68e9 108Requires: libbrotli-devel >= 1.0.0
3504caa7 109Requires: libidn2-devel
a6d06b1c 110Requires: libtasn1-devel >= 4.11
0381cb26 111Requires: libunistring-devel
d57a2cd4 112Requires: nettle-devel >= 3.6
17285f2a 113#Requires: opencdk-devel >= 0.6.6
f72ee18c 114Requires: p11-kit-devel >= 0.23.1
06e5a035 115%{?with_tpm:Requires: trousers-devel >= 0.3.11}
74be7fb4 116Requires: zlib-devel
688f68e9 117Requires: zstd-devel >= 1.3.0
6d7519d8
AM
118
119%description devel
120Header files etc to develop gnutls applications.
121
fc7e37b3
JR
122%description devel -l pl.UTF-8
123Pliki nagłówkowe i inne do gnutls.
6d7519d8
AM
124
125%package static
126Summary: Static gnutls library
7b093bb5 127Summary(pl.UTF-8): Biblioteka statyczna gnutls
fdd1e702 128License: LGPL v2.1+ (libgnutls), GPL v3+ (openssl library)
6d7519d8 129Group: Development/Libraries
72115ddc 130Requires: %{name}-devel = %{version}-%{release}
6d7519d8
AM
131
132%description static
133Static gnutls library.
134
fc7e37b3 135%description static -l pl.UTF-8
6d7519d8
AM
136Biblioteka statyczna gnutls.
137
71cef829
JB
138%package c++
139Summary: libgnutlsxx - C++ interface to gnutls library
7b093bb5 140Summary(pl.UTF-8): libgnutlsxx - interfejs C++ do biblioteki gnutls
24cf4cad 141License: LGPL v2.1+
71cef829 142Group: Libraries
dd155803 143Requires: %{name}-libs = %{version}-%{release}
71cef829
JB
144
145%description c++
146libgnutlsxx - C++ interface to gnutls library.
147
fc7e37b3 148%description c++ -l pl.UTF-8
71cef829
JB
149libgnutlsxx - interfejs C++ do biblioteki gnutls.
150
151%package c++-devel
152Summary: Header files for libgnutlsxx, a C++ interface to gnutls library
7b093bb5 153Summary(pl.UTF-8): Pliki nagłówkowe libgnutlsxx - interfejsu C++ do biblioteki gnutls
24cf4cad 154License: LGPL v2.1+
71cef829
JB
155Group: Development/Libraries
156Requires: %{name}-c++ = %{version}-%{release}
157Requires: %{name}-devel = %{version}-%{release}
158Requires: libstdc++-devel
159
160%description c++-devel
161Header files for libgnutlsxx, a C++ interface to gnutls library.
162
fc7e37b3
JR
163%description c++-devel -l pl.UTF-8
164Pliki nagłówkowe libgnutlsxx - interfejsu C++ do biblioteki gnutls.
71cef829
JB
165
166%package c++-static
167Summary: Static version of libgnutlsxx, a C++ interface to gnutls library
7b093bb5 168Summary(pl.UTF-8): Statyczna wersja libgnutlsxx - interfejsu C++ do biblioteki gnutls
24cf4cad 169License: LGPL v2.1+
71cef829
JB
170Group: Development/Libraries
171Requires: %{name}-c++-devel = %{version}-%{release}
172
173%description c++-static
174Static version of libgnutlsxx, a C++ interface to gnutls library.
175
fc7e37b3 176%description c++-static -l pl.UTF-8
71cef829
JB
177Statyczna wersja libgnutlsxx - interfejsu C++ do biblioteki gnutls.
178
aeb71b0b
JB
179%package dane
180Summary: DANE security library
181Summary(pl.UTF-8): Biblioteka bezpieczeństwa DANE
182Group: Libraries
dd155803 183Requires: %{name}-libs = %{version}-%{release}
aeb71b0b
JB
184
185%description dane
186DANE security library.
187
188%description dane -l pl.UTF-8
189Biblioteka bezpieczeństwa DANE.
190
191%package dane-devel
192Summary: Header file for DANE security library
193Summary(pl.UTF-8): Plik nagłówkowy biblioteki bezpieczeństwa DANE
194Group: Development/Libraries
195Requires: %{name}-dane = %{version}-%{release}
196Requires: %{name}-devel = %{version}-%{release}
197Requires: unbound-devel
198
199%description dane-devel
200Header file for DANE security library.
201
202%description dane-devel -l pl.UTF-8
203Plik nagłówkowy biblioteki bezpieczeństwa DANE.
204
205%package dane-static
206Summary: Static DANE security library
207Summary(pl.UTF-8): Statyczna biblioteka bezpieczeństwa DANE
208Group: Development/Libraries
209Requires: %{name}-dane-devel = %{version}-%{release}
210
211%description dane-static
212Static DANE security library.
213
214%description dane-static -l pl.UTF-8
215Statyczna biblioteka bezpieczeństwa DANE.
216
49d0f281
JB
217%package openssl
218Summary: OpenSSL compatibility library for GnuTLS
219Summary(pl.UTF-8): Biblioteka zgodności z OpenSSL dla GnuTLS
220Group: Libraries
221Requires: %{name}-libs = %{version}-%{release}
222
223%description openssl
224OpenSSL compatibility library for GnuTLS.
225
226%description openssl -l pl.UTF-8
227Biblioteka zgodności z OpenSSL dla GnuTLS.
228
229%package openssl-devel
230Summary: Header file for gnutls-openssl library
231Summary(pl.UTF-8): Plik nagłówkowy biblioteki gnutls-openssl
232Group: Development/Libraries
233Requires: %{name}-devel = %{version}-%{release}
234Requires: %{name}-openssl = %{version}-%{release}
235
236%description openssl-devel
237Header file for gnutls-openssl library.
238
239%description openssl-devel -l pl.UTF-8
240Plik nagłówkowy biblioteki gnutls-openssl.
241
242%package openssl-static
243Summary: Static gnutls-openssl library
244Summary(pl.UTF-8): Statyczna biblioteka gnutls-openssl
245Group: Development/Libraries
246Requires: %{name}-openssl-devel = %{version}-%{release}
247
248%description openssl-static
249Static gnutls-openssl library.
250
251%description openssl-static -l pl.UTF-8
252Statyczna biblioteka gnutls-openssl.
253
3c916209
JB
254%package -n guile-gnutls
255Summary: Guile bindings for GnuTLS
256Summary(pl.UTF-8): Wiązania Guile do GnuTLS
fdd1e702 257License: LGPL v2.1+
3c916209 258Group: Development/Languages
dd155803 259Requires: %{name}-libs = %{version}-%{release}
a0012bde 260Requires: guile >= 5:2.2.0
3c916209
JB
261
262%description -n guile-gnutls
263Guile bindings for GnuTLS.
264
265%description -n guile-gnutls -l pl.UTF-8
266Wiązania Guile do GnuTLS.
267
6d7519d8 268%prep
0e82351f 269%setup -q
67b46ca6 270%patch0 -p1
4d87caea 271%patch1 -p1
d477527f 272%patch2 -p1
211a7d4b 273%patch3 -p1
547ca217
JB
274
275%{__rm} po/stamp-po
6d7519d8
AM
276
277%build
5a115208 278%{__libtoolize}
3a6f7fd8 279%{__aclocal} -I m4 -I src/gl/m4 -I lib/unistring/m4
d6e4f2bd
JB
280%{__autoconf}
281%{__autoheader}
282%{__automake}
6d7519d8 283%configure \
b5c41c44 284 %{?with_af_alg:--enable-afalg} \
0255a2d6
JB
285 %{!?with_doc:--disable-doc} \
286 %{!?with_guile:--disable-guile} \
3a6f7fd8 287 %{__enable_disable ktls} \
9f330a0f 288 %{?with_openssl:--enable-openssl-compatibility} \
41fffb0a 289 --disable-silent-rules \
63178e7f 290 %{?with_static_libs:--enable-static} \
0089fafa 291 --with-default-trust-store-file=/etc/certs/ca-certificates.crt \
12f86e92 292 %{!?with_tpm:--without-tpm} \
3a6f7fd8 293 %{__with_without tpm2} \
0255a2d6 294 --with-trousers-lib=%{_libdir}/libtspi.so.1
5a115208 295
e3a4b513 296%{__make}
6d7519d8
AM
297
298%install
299rm -rf $RPM_BUILD_ROOT
300
301%{__make} install \
d711a6c0 302 DESTDIR=$RPM_BUILD_ROOT
6d7519d8 303
fdd1e702
JB
304# although libgnutls.la is obsoleted by pkg-config, there is
305# .pc file missing for libgnutls-openssl, and it needs libgnutls.la
8e4a1eaa 306
a0012bde 307%if %{with guile}
8e4a1eaa 308# guile module - dynamic only
fe90b820 309%{__rm} $RPM_BUILD_ROOT%{_libdir}/guile/3.*/extensions/guile-gnutls-*.la
63178e7f 310%if %{with static_libs}
fe90b820 311%{__rm} $RPM_BUILD_ROOT%{_libdir}/guile/3.*/extensions/guile-gnutls-*.a
63178e7f 312%endif
a0012bde 313%endif
8e4a1eaa 314
3504caa7 315# images for (not installed) htmlized infos - already packaged with infos
5f4f75f8 316%if %{with doc}
3504caa7 317%{__rm} $RPM_BUILD_ROOT%{_docdir}/gnutls/*.png
5f4f75f8 318%endif
3504caa7 319
63178e7f 320%{__rm} -f $RPM_BUILD_ROOT%{_infodir}/dir
3c916209 321
547ca217 322%find_lang %{name}
b5ab22ee 323
6d7519d8
AM
324%clean
325rm -rf $RPM_BUILD_ROOT
326
10899c2c 327%post
10899c2c
JB
328[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1
329
330%postun
10899c2c 331[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1
0522b080 332
dd155803
JB
333%post libs -p /sbin/ldconfig
334%postun libs -p /sbin/ldconfig
335
71cef829
JB
336%post c++ -p /sbin/ldconfig
337%postun c++ -p /sbin/ldconfig
338
49d0f281
JB
339%post dane -p /sbin/ldconfig
340%postun dane -p /sbin/ldconfig
341
342%post openssl -p /sbin/ldconfig
343%postun openssl -p /sbin/ldconfig
344
3c916209
JB
345%post -n guile-gnutls -p /sbin/ldconfig
346%postun -n guile-gnutls -p /sbin/ldconfig
347
547ca217 348%files -f %{name}.lang
6d7519d8 349%defattr(644,root,root,755)
b0199314 350%doc AUTHORS ChangeLog NEWS README.md THANKS
d191db7f 351%attr(755,root,root) %{_bindir}/certtool
71cef829 352%attr(755,root,root) %{_bindir}/gnutls-*
9dc804da 353%attr(755,root,root) %{_bindir}/ocsptool
41fffb0a 354%attr(755,root,root) %{_bindir}/p11tool
2637a2e1 355%attr(755,root,root) %{_bindir}/psktool
62c2e78b 356%attr(755,root,root) %{_bindir}/srptool
cc933e6a 357%{?with_tpm:%attr(755,root,root) %{_bindir}/tpmtool}
12f86e92 358%if %{with doc}
584b5346 359%{_mandir}/man1/certtool.1*
71cef829 360%{_mandir}/man1/gnutls-*.1*
f2e1d83e 361%{_mandir}/man1/ocsptool.1*
41fffb0a 362%{_mandir}/man1/p11tool.1*
2637a2e1 363%{_mandir}/man1/psktool.1*
62c2e78b 364%{_mandir}/man1/srptool.1*
0089fafa 365%{_mandir}/man1/tpmtool.1*
71cef829 366%{_infodir}/gnutls.info*
24cf4cad 367%{_infodir}/gnutls-*.png
41fffb0a 368%{_infodir}/pkcs11-vision.png
12f86e92 369%endif
6d7519d8 370
dd155803
JB
371%files libs
372%defattr(644,root,root,755)
373%attr(755,root,root) %{_libdir}/libgnutls.so.*.*.*
f72ee18c 374%attr(755,root,root) %ghost %{_libdir}/libgnutls.so.30
dd155803 375
6d7519d8
AM
376%files devel
377%defattr(644,root,root,755)
71cef829 378%attr(755,root,root) %{_libdir}/libgnutls.so
71cef829 379%{_libdir}/libgnutls.la
07a67478 380%{_includedir}/gnutls
aeb71b0b 381%{?with_dane:%exclude %{_includedir}/gnutls/dane.h}
71cef829 382%exclude %{_includedir}/gnutls/gnutlsxx.h
49d0f281 383%{?with_openssl:%exclude %{_includedir}/gnutls/openssl.h}
71cef829 384%{_pkgconfigdir}/gnutls.pc
12f86e92 385%{?with_doc:%{_mandir}/man3/gnutls_*.3*}
6d7519d8 386
63178e7f 387%if %{with static_libs}
6d7519d8
AM
388%files static
389%defattr(644,root,root,755)
71cef829 390%{_libdir}/libgnutls.a
63178e7f 391%endif
71cef829
JB
392
393%files c++
394%defattr(644,root,root,755)
395%attr(755,root,root) %{_libdir}/libgnutlsxx.so.*.*.*
688f68e9 396%attr(755,root,root) %ghost %{_libdir}/libgnutlsxx.so.30
71cef829
JB
397
398%files c++-devel
399%defattr(644,root,root,755)
400%attr(755,root,root) %{_libdir}/libgnutlsxx.so
401%{_libdir}/libgnutlsxx.la
402%{_includedir}/gnutls/gnutlsxx.h
403
63178e7f 404%if %{with static_libs}
71cef829
JB
405%files c++-static
406%defattr(644,root,root,755)
407%{_libdir}/libgnutlsxx.a
63178e7f 408%endif
3c916209 409
aeb71b0b
JB
410%if %{with dane}
411%files dane
412%defattr(644,root,root,755)
413%attr(755,root,root) %{_bindir}/danetool
414%attr(755,root,root) %{_libdir}/libgnutls-dane.so.*.*.*
415%attr(755,root,root) %ghost %{_libdir}/libgnutls-dane.so.0
12f86e92 416%{?with_doc:%{_mandir}/man1/danetool.1*}
aeb71b0b
JB
417
418%files dane-devel
419%defattr(644,root,root,755)
420%attr(755,root,root) %{_libdir}/libgnutls-dane.so
421%{_libdir}/libgnutls-dane.la
422%{_includedir}/gnutls/dane.h
423%{_pkgconfigdir}/gnutls-dane.pc
5f4f75f8 424%if %{with doc}
fb8445d7 425%{_mandir}/man3/dane_*.3*
5f4f75f8 426%endif
aeb71b0b 427
63178e7f 428%if %{with static_libs}
aeb71b0b
JB
429%files dane-static
430%defattr(644,root,root,755)
431%{_libdir}/libgnutls-dane.a
432%endif
63178e7f 433%endif
aeb71b0b 434
49d0f281
JB
435%if %{with openssl}
436%files openssl
437%defattr(644,root,root,755)
438%attr(755,root,root) %{_libdir}/libgnutls-openssl.so.*.*.*
439%attr(755,root,root) %ghost %{_libdir}/libgnutls-openssl.so.27
440
441%files openssl-devel
442%defattr(644,root,root,755)
443%attr(755,root,root) %{_libdir}/libgnutls-openssl.so
444%{_libdir}/libgnutls-openssl.la
445%{_includedir}/gnutls/openssl.h
446
5f4f75f8 447%if %{with static_libs}
49d0f281
JB
448%files openssl-static
449%defattr(644,root,root,755)
450%{_libdir}/libgnutls-openssl.a
451%endif
5f4f75f8 452%endif
49d0f281 453
a0012bde 454%if %{with guile}
3c916209
JB
455%files -n guile-gnutls
456%defattr(644,root,root,755)
fe90b820
JR
457%attr(755,root,root) %{_libdir}/guile/3.*/extensions/guile-gnutls-v-2.so*
458%{_libdir}/guile/3.*/site-ccache/gnutls.go
459%{_libdir}/guile/3.*/site-ccache/gnutls
460%{_datadir}/guile/site/3.*/gnutls.scm
461%{_datadir}/guile/site/3.*/gnutls
5f4f75f8 462%if %{with doc}
b0199314 463%{_infodir}/gnutls-guile.info*
a0012bde 464%endif
5f4f75f8 465%endif
This page took 0.134527 seconds and 4 git commands to generate.