]> git.pld-linux.org Git - packages/openssl.git/blame_incremental - openssl.spec
update source url to github
[packages/openssl.git] / openssl.spec
... / ...
CommitLineData
1#
2# Conditional build:
3%bcond_without tests # don't perform "make tests"
4%bcond_without zlib # zlib: note - enables CVE-2012-4929 vulnerability
5%bcond_with sslv3 # SSLv3: note - enables CVE-2014-3566 vulnerability
6
7Summary: OpenSSL Toolkit libraries for the "Secure Sockets Layer" (SSL v2/v3)
8Summary(de.UTF-8): Secure Sockets Layer (SSL)-Kommunikationslibrary
9Summary(es.UTF-8): Biblioteca C que suministra algoritmos y protocolos criptográficos
10Summary(fr.UTF-8): Utilitaires de communication SSL (Secure Sockets Layer)
11Summary(pl.UTF-8): Biblioteki OpenSSL (SSL v2/v3)
12Summary(pt_BR.UTF-8): Uma biblioteca C que fornece vários algoritmos e protocolos criptográficos
13Summary(ru.UTF-8): Библиотеки и утилиты для соединений через Secure Sockets Layer
14Summary(uk.UTF-8): Бібліотеки та утиліти для з'єднань через Secure Sockets Layer
15Name: openssl
16Version: 3.2.1
17Release: 1
18License: Apache v2.0
19Group: Libraries
20Source0: https://www.openssl.org/source/%{name}-%{version}.tar.gz
21# Source0-md5: c239213887804ba00654884918b37441
22Source2: %{name}.1.pl
23Source3: %{name}-ssl-certificate.sh
24Source4: %{name}-c_rehash.sh
25Patch0: %{name}-optflags.patch
26Patch1: %{name}-ca-certificates.patch
27Patch2: %{name}-find.patch
28Patch3: pic.patch
29Patch4: engines-dir.patch
30URL: http://www.openssl.org/
31%ifarch %{arm} ppc mips sparc sparcv9
32BuildRequires: libatomic-devel
33%endif
34BuildRequires: libbrotli-devel
35BuildRequires: libsctp-devel
36BuildRequires: linux-libc-headers >= 7:4.13
37BuildRequires: perl-devel >= 1:5.10.0
38BuildRequires: pkgconfig
39BuildRequires: rpm-perlprov >= 4.1-13
40BuildRequires: rpmbuild(macros) >= 1.745
41BuildRequires: sed >= 4.0
42BuildRequires: zlib-devel
43BuildRequires: zstd-devel
44Requires: ca-certificates >= 20141019-3
45Requires: rpm-whiteout >= 1.7
46Obsoletes: SSLeay < 0.9.3
47Obsoletes: SSLeay-devel < 0.9.3
48Obsoletes: SSLeay-perl < 0.9.3
49Obsoletes: libopenssl0 < 1
50Obsoletes: openssl-engines < 3.0.0-2
51%if "%{pld_release}" == "ac"
52Conflicts: neon < 0.26.3-3
53Conflicts: ntpd < 4.2.4p8-10
54Conflicts: openssh-clients < 2:5.8p1-9
55Conflicts: openssh-server < 2:5.8p1-9
56%else
57Conflicts: neon < 0.29.6-8
58Conflicts: openssh-clients < 2:6.2p2-3
59Conflicts: openssh-server < 2:6.2p2-3
60%endif
61BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
62
63%description
64The OpenSSL Project is a collaborative effort to develop a robust,
65commercial-grade, full-featured, and Open Source toolkit implementing
66the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS
67v1) protocols with full-strength cryptography world-wide. The project
68is managed by a worldwide community of volunteers that use the
69Internet to communicate, plan, and develop the OpenSSL tookit and its
70related documentation.
71
72OpenSSL is based on the excellent SSLeay library developed by Eric A.
73Young and Tim J. Hudson. The OpenSSL toolkit is licensed under an
74Apache-style licence, which basically means that you are free to get
75and use it for commercial and non-commercial purposes subject to some
76simple license conditions.
77
78This package contains shared libraries only, install openssl-tools if
79you want to use openssl cmdline tool.
80
81%description -l de.UTF-8
82Openssl enthält das OpenSSL Zertifikatsmanagementtool und shared
83libraries, die verschiedene Verschlüsselungs- und
84Entschlüsselungsalgorithmen und -protokolle, wie DES, RC4, RSA und SSL
85zur Verfügung stellen.
86
87%description -l es.UTF-8
88Biblioteca C que suministra algoritmos y protocolos criptográficos.
89
90%description -l fr.UTF-8
91OpenSSL est un outiil de gestion des certificats et les librairies
92partagees qui fournit plusieurs protocoles et algorithmes de
93codage/decodage, incluant DES, RC4, RSA et SSL.
94
95%description -l pl.UTF-8
96Implementacja protokołów kryptograficznych Secure Socket Layer (SSL)
97v2/v3 oraz Transport Layer Security (TLS v1).
98
99%description -l pt_BR.UTF-8
100Uma biblioteca C que fornece vários algoritmos e protocolos
101criptográficos, incluindo DES, RC4, RSA e SSL. Inclui bibliotecas
102compartilhadas e utilitários.
103
104%description -l ru.UTF-8
105Программа openssl для работы с сертификатами и разделяемые библиотеки,
106которые реализуют множетсво криптографических алгоритмов, включая DES,
107RC4, RSA и SSL.
108
109%description -l uk.UTF-8
110Програма openssl для роботи з сертифікатами та бібліотеки спільного
111користування, що реалізують велику кількість криптографічних
112алгоритмів, включаючи DES, RC4, RSA та SSL.
113
114%package tools
115Summary: OpenSSL command line tool and utilities
116Summary(pl.UTF-8): Zestaw narzędzi i skryptów
117Group: Applications/Communications
118Requires: %{name}%{?_isa} = %{version}-%{release}
119Requires: which
120
121%description tools
122The OpenSSL Toolkit cmdline tool openssl and utility scripts.
123
124%description tools -l pl.UTF-8
125Zestaw narzędzi i skryptów wywoływanych z linii poleceń.
126
127%package tools-perl
128Summary: OpenSSL utilities written in Perl
129Summary(pl.UTF-8): Narzędzia OpenSSL napisane w perlu
130Group: Applications/Communications
131Requires: %{name} = %{version}-%{release}
132
133%description tools-perl
134OpenSSL Toolkit tools written in Perl.
135
136%description tools-perl -l pl.UTF-8
137Narzędzia OpenSSL napisane w perlu.
138
139%package devel
140Summary: Development part of OpenSSL Toolkit libraries
141Summary(de.UTF-8): Secure Sockets Layer Kommunikationslibrary: statische libraries+header
142Summary(es.UTF-8): Bibliotecas y archivos de inclusión para desarrollo OpenSSL
143Summary(fr.UTF-8): Librairies statiques, headers et utilitaires pour communication SSL
144Summary(pl.UTF-8): Część bibiloteki OpenSSL przeznaczona dla programistów
145Summary(pt_BR.UTF-8): Bibliotecas e arquivos de inclusão para desenvolvimento OpenSSL
146Summary(ru.UTF-8): Библиотеки, хедеры и утилиты для Secure Sockets Layer
147Summary(uk.UTF-8): Бібліотеки, хедери та утиліти для Secure Sockets Layer
148Group: Development/Libraries
149Requires: %{name}%{?_isa} = %{version}-%{release}
150Obsoletes: libopenssl0-devel < 1
151
152%description devel
153Development part of OpenSSL library.
154
155%description devel -l es.UTF-8
156Bibliotecas y archivos de inclusión para desarrollo OpenSSL
157
158%description devel -l pl.UTF-8
159Część biblioteki OpenSSL przeznaczona dla programistów.
160
161%description devel -l pt_BR.UTF-8
162Uma biblioteca C que fornece vários algoritmos e protocolos
163criptográficos, incluindo DES, RC4, RSA e SSL. Inclui bibliotecas e
164arquivos de inclusão para desenvolvimento.
165
166%description devel -l ru.UTF-8
167Программа openssl для работы с сертификатами и разделяемые библиотеки,
168которые реализуют множетсво криптографических алгоритмов, включая DES,
169RC4, RSA и SSL. Включает библиотеки и хедеры для разработки приложений
170с использованием SSL.
171
172%description devel -l uk.UTF-8
173Програма openssl для роботи з сертифікатами та бібліотеки спільного
174користування, що реалізують велику кількість криптографічних
175алгоритмів, включаючи DES, RC4, RSA та SSL. Містить бібліотеки та
176хедери для розробки програм з використанням SSL.
177
178%package static
179Summary: Static OpenSSL libraries
180Summary(pl.UTF-8): Statyczne wersje bibliotek z OpenSSL
181Summary(pt_BR.UTF-8): Bibliotecas estáticas para desenvolvimento com openssl
182Summary(ru.UTF-8): Статические библиотеки разработчика для OpenSSL
183Summary(uk.UTF-8): Статичні бібліотеки програміста для OpenSSL
184Group: Development/Libraries
185Requires: %{name}-devel = %{version}-%{release}
186
187%description static
188Static OpenSSL Toolkit libraries.
189
190%description static -l pl.UTF-8
191Statyczne wersje bibliotek z OpenSSL.
192
193%description static -l pt_BR.UTF-8
194Bibliotecas estáticas para desenvolvimento com openssl.
195
196%description static -l ru.UTF-8
197Программа openssl для работы с сертификатами и разделяемые библиотеки,
198которые реализуют множетсво криптографических алгоритмов, включая DES,
199RC4, RSA и SSL. Включает статические библиотеки для разработки
200приложений с использованием OpenSSL.
201
202%description static -l uk.UTF-8
203Програма openssl для роботи з сертифікатами та бібліотеки спільного
204користування, що реалізують велику кількість криптографічних
205алгоритмів, включаючи DES, RC4, RSA та SSL. Містить статичні
206бібліотеки для розробки програм з використанням SSL.
207
208%prep
209%setup -q
210%patch0 -p1
211%patch1 -p1
212%patch2 -p1
213%patch3 -p1
214%patch4 -p1
215
216# fails with enable-sctp as of 1.1.1
217%{__rm} test/recipes/80-test_ssl_new.t
218
219%build
220touch Makefile.*
221
222PERL="%{__perl}" \
223%{__perl} ./Configure \
224 --prefix=%{_prefix} \
225 --openssldir=%{_sysconfdir}/%{name} \
226 --libdir=%{_lib} \
227 -Wa,--noexecstack \
228 shared \
229 threads \
230 %{?with_sslv3:enable-ssl3}%{!?with_sslv3:no-ssl3} \
231 %{!?with_zlib:no-}zlib \
232 enable-brotli \
233 enable-cms \
234 enable-idea \
235 enable-md2 \
236 enable-mdc2 \
237 enable-rc5 \
238 enable-rfc3779 \
239 enable-sctp \
240 enable-seed \
241 enable-camellia \
242 enable-ktls \
243 enable-fips \
244 enable-zstd \
245%ifarch %{x8664}
246 enable-ec_nistp_64_gcc_128 \
247%endif
248%ifarch %{ix86}
249%ifarch i386
250 386 linux-elf
251# ^- allow running on 80386 (default code uses bswapl available on i486+)
252%else
253 linux-elf
254%endif
255%endif
256%ifarch alpha
257 linux-alpha-gcc
258%endif
259%ifarch %{x8664}
260 linux-x86_64
261%endif
262%ifarch x32
263 linux-x32
264%endif
265%ifarch ia64
266 linux-ia64
267%endif
268%ifarch ppc
269 linux-ppc
270%endif
271%ifarch ppc64
272 linux-ppc64
273%endif
274%ifarch sparc
275 linux-sparcv8
276%endif
277%ifarch sparcv9
278 linux-sparcv9
279%endif
280%ifarch sparc64
281 linux64-sparcv9
282%endif
283%ifarch %{arm}
284 linux-armv4
285%endif
286%ifarch aarch64
287 linux-aarch64
288%endif
289
290v=$(awk -F= '/^VERSION=/{print $2}' Makefile)
291test "$v" = %{version}
292
293%{__make} all \
294 CC="%{__cc}" \
295 OPTFLAGS="%{rpmcflags} %{rpmcppflags}" \
296 INSTALLTOP=%{_prefix}
297
298%if %{with tests}
299%{__make} -j1 tests \
300 CC="%{__cc}" \
301 OPTFLAGS="%{rpmcflags} %{rpmcppflags}" \
302 INSTALLTOP=%{_prefix}
303%endif
304
305%install
306rm -rf $RPM_BUILD_ROOT
307install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_libdir}/%{name}} \
308 $RPM_BUILD_ROOT{%{_mandir}/{pl/man1,man{1,3,5,7}},%{_datadir}/ssl} \
309 $RPM_BUILD_ROOT%{_pkgconfigdir}
310
311%{__make} install \
312 CC="%{__cc}" \
313 DESTDIR=$RPM_BUILD_ROOT
314
315%{__mv} $RPM_BUILD_ROOT%{_libdir}/lib*.so.* $RPM_BUILD_ROOT/%{_lib}
316ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libcrypto.*) $RPM_BUILD_ROOT%{_libdir}/libcrypto.so
317ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libssl.*) $RPM_BUILD_ROOT%{_libdir}/libssl.so
318
319%{__mv} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/misc/* $RPM_BUILD_ROOT%{_libdir}/%{name}
320%{__rm} -r $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/misc
321
322# html version of man pages - not packaged
323%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}/html/man[1357]
324
325cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_mandir}/pl/man1/openssl.1
326install -p %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/ssl-certificate
327install -p %{SOURCE4} $RPM_BUILD_ROOT%{_bindir}/c_rehash.sh
328
329%clean
330rm -rf $RPM_BUILD_ROOT
331
332%post -p /sbin/ldconfig
333%postun -p /sbin/ldconfig
334
335%triggerpostun -- %{name}-tools < 1.0.0-5
336# the hashing format has changed in 1.0.0
337[ ! -x %{_sbindir}/update-ca-certificates ] || %{_sbindir}/update-ca-certificates --fresh || :
338
339%triggerpostun -- %{name} < 0.9.8i-2
340# don't do anything on --downgrade
341if [ $1 -le 1 ]; then
342 exit 0
343fi
344if [ -d /var/lib/openssl/certs ] ; then
345 mv /var/lib/openssl/certs/* %{_sysconfdir}/%{name}/certs 2>/dev/null || :
346fi
347if [ -d /var/lib/openssl/private ] ; then
348 mv /var/lib/openssl/private/* %{_sysconfdir}/%{name}/private 2>/dev/null || :
349fi
350if [ -d /var/lib/openssl ] ; then
351 for f in /var/lib/openssl/* ; do
352 [ -f "$f" ] && mv "$f" %{_sysconfdir}/%{name} 2>/dev/null || :
353 done
354 rmdir /var/lib/openssl/* 2>/dev/null || :
355 rmdir /var/lib/openssl 2>/dev/null || :
356fi
357
358%files
359%defattr(644,root,root,755)
360%doc CHANGES.md NEWS.md README.md doc/*.txt
361%attr(755,root,root) /%{_lib}/libcrypto.so.*
362%attr(755,root,root) /%{_lib}/libssl.so.*
363%dir /%{_lib}/engines-3
364%attr(755,root,root) /%{_lib}/engines-3/*.so
365%dir /%{_lib}/ossl-modules
366%attr(755,root,root) /%{_lib}/ossl-modules/fips.so
367%attr(755,root,root) /%{_lib}/ossl-modules/legacy.so
368%dir %{_sysconfdir}/%{name}
369%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/ct_log_list.cnf
370%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/fipsmodule.cnf
371%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/openssl.cnf
372%dir %{_sysconfdir}/%{name}/certs
373%dir %attr(700,root,root) %{_sysconfdir}/%{name}/private
374%dir %{_datadir}/ssl
375%{_mandir}/man5/config.5ossl*
376
377%files tools
378%defattr(644,root,root,755)
379%attr(755,root,root) %{_bindir}/c_rehash.sh
380%attr(755,root,root) %{_bindir}/openssl
381%attr(754,root,root) %{_bindir}/ssl-certificate
382%{_mandir}/man1/asn1parse.1ossl*
383%{_mandir}/man1/ca.1ossl*
384%{_mandir}/man1/ciphers.1ossl*
385%{_mandir}/man1/cmp.1ossl*
386%{_mandir}/man1/cms.1ossl*
387%{_mandir}/man1/crl.1ossl*
388%{_mandir}/man1/crl2pkcs7.1ossl*
389%{_mandir}/man1/dgst.1ossl*
390%{_mandir}/man1/dhparam.1ossl*
391%{_mandir}/man1/dsa.1ossl*
392%{_mandir}/man1/dsaparam.1ossl*
393%{_mandir}/man1/ec.1ossl*
394%{_mandir}/man1/ecparam.1ossl*
395%{_mandir}/man1/enc.1ossl*
396%{_mandir}/man1/engine.1ossl*
397%{_mandir}/man1/errstr.1ossl*
398%{_mandir}/man1/gendsa.1ossl*
399%{_mandir}/man1/genpkey.1ossl*
400%{_mandir}/man1/genrsa.1ossl*
401%{_mandir}/man1/info.1ossl*
402%{_mandir}/man1/kdf.1ossl*
403%{_mandir}/man1/mac.1ossl*
404%{_mandir}/man1/nseq.1ossl*
405%{_mandir}/man1/ocsp.1ossl*
406%{_mandir}/man1/openssl.1*
407%{_mandir}/man1/openssl-*.1*
408%{_mandir}/man1/passwd.1ossl*
409%{_mandir}/man1/pkcs12.1ossl*
410%{_mandir}/man1/pkcs7.1ossl*
411%{_mandir}/man1/pkcs8.1ossl*
412%{_mandir}/man1/pkey.1ossl*
413%{_mandir}/man1/pkeyparam.1ossl*
414%{_mandir}/man1/pkeyutl.1ossl*
415%{_mandir}/man1/prime.1ossl*
416%{_mandir}/man1/rand.1ossl*
417%{_mandir}/man1/rehash.1ossl*
418%{_mandir}/man1/req.1ossl*
419%{_mandir}/man1/rsa.1ossl*
420%{_mandir}/man1/rsautl.1ossl*
421%{_mandir}/man1/s_client.1ossl*
422%{_mandir}/man1/sess_id.1ossl*
423%{_mandir}/man1/smime.1ossl*
424%{_mandir}/man1/speed.1ossl*
425%{_mandir}/man1/spkac.1ossl*
426%{_mandir}/man1/srp.1ossl*
427%{_mandir}/man1/s_server.1ossl*
428%{_mandir}/man1/s_time.1ossl*
429%{_mandir}/man1/storeutl.1ossl*
430%{_mandir}/man1/ts.1ossl*
431%{_mandir}/man1/verify.1ossl*
432%{_mandir}/man1/version.1ossl*
433%{_mandir}/man1/x509.1ossl*
434%{_mandir}/man5/fips_config.5ossl*
435%{_mandir}/man5/x509v3_config.5ossl*
436%lang(pl) %{_mandir}/pl/man1/openssl.1*
437
438%files tools-perl
439%defattr(644,root,root,755)
440%attr(755,root,root) %{_bindir}/c_rehash
441%dir %{_libdir}/%{name}
442%attr(755,root,root) %{_libdir}/%{name}/CA.pl
443%attr(755,root,root) %{_libdir}/%{name}/tsget
444%attr(755,root,root) %{_libdir}/%{name}/tsget.pl
445%{_mandir}/man1/CA.pl.1ossl*
446%{_mandir}/man1/c_rehash.1ossl*
447%{_mandir}/man1/tsget.1ossl*
448
449%files devel
450%defattr(644,root,root,755)
451%attr(755,root,root) %{_libdir}/libcrypto.so
452%attr(755,root,root) %{_libdir}/libssl.so
453%{_includedir}/%{name}
454%{_pkgconfigdir}/libcrypto.pc
455%{_pkgconfigdir}/libssl.pc
456%{_pkgconfigdir}/openssl.pc
457%{_mandir}/man3/*.3ossl*
458%{_mandir}/man7/*.7ossl*
459
460%files static
461%defattr(644,root,root,755)
462%{_libdir}/libcrypto.a
463%{_libdir}/libssl.a
This page took 1.767656 seconds and 4 git commands to generate.