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