]> git.pld-linux.org Git - packages/openssl.git/blame_incremental - openssl.spec
- updated to 0.9.8m
[packages/openssl.git] / openssl.spec
... / ...
CommitLineData
1#
2# Conditional build:
3%bcond_without tests # don't perform "make tests"
4%bcond_with purify # Compile openssl with \-DPURIFY, useful when one wants to
5 # use valgrind debugger against openssl-linked programs
6#
7%include /usr/lib/rpm/macros.perl
8Summary: OpenSSL Toolkit libraries for the "Secure Sockets Layer" (SSL v2/v3)
9Summary(de.UTF-8): Secure Sockets Layer (SSL)-Kommunikationslibrary
10Summary(es.UTF-8): Biblioteca C que suministra algoritmos y protocolos criptográficos
11Summary(fr.UTF-8): Utilitaires de communication SSL (Secure Sockets Layer)
12Summary(pl.UTF-8): Biblioteki OpenSSL (SSL v2/v3)
13Summary(pt_BR.UTF-8): Uma biblioteca C que fornece vários algoritmos e protocolos criptográficos
14Summary(ru.UTF-8): Библиотеки и утилиты для соединений через Secure Sockets Layer
15Summary(uk.UTF-8): Бібліотеки та утиліти для з'єднань через Secure Sockets Layer
16Name: openssl
17Version: 0.9.8m
18Release: 1
19License: Apache-like
20Group: Libraries
21Source0: ftp://ftp.openssl.org/source/%{name}-%{version}.tar.gz
22# Source0-md5: 898bf125370926d5f692a2201124f8ec
23Source2: %{name}.1.pl
24Source3: %{name}-ssl-certificate.sh
25Source4: %{name}-c_rehash.sh
26Patch0: %{name}-alpha-ccc.patch
27Patch1: %{name}-optflags.patch
28Patch2: %{name}-globalCA.diff
29Patch3: %{name}-include.patch
30Patch4: %{name}-man-namespace.patch
31Patch5: %{name}-asflag.patch
32Patch6: %{name}-ca-certificates.patch
33Patch7: %{name}-fips_install.patch
34Patch8: %{name}-ldflags.patch
35URL: http://www.openssl.org/
36BuildRequires: bc
37BuildRequires: perl-devel >= 1:5.6.1
38BuildRequires: rpm-perlprov >= 4.1-13
39BuildRequires: rpmbuild(macros) >= 1.213
40BuildRequires: sed >= 4.0
41Obsoletes: SSLeay
42Obsoletes: SSLeay-devel
43Obsoletes: SSLeay-perl
44Obsoletes: libopenssl0
45Requires: ca-certificates >= 20080809-4
46Requires: rpm-whiteout >= 1.7
47BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
48
49%description
50The OpenSSL Project is a collaborative effort to develop a robust,
51commercial-grade, full-featured, and Open Source toolkit implementing
52the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS
53v1) protocols with full-strength cryptography world-wide. The project
54is managed by a worldwide community of volunteers that use the
55Internet to communicate, plan, and develop the OpenSSL tookit and its
56related documentation.
57
58OpenSSL is based on the excellent SSLeay library developed by Eric A.
59Young and Tim J. Hudson. The OpenSSL toolkit is licensed under an
60Apache-style licence, which basically means that you are free to get
61and use it for commercial and non-commercial purposes subject to some
62simple license conditions.
63
64This package contains shared libraries only, install openssl-tools if
65you want to use openssl cmdline tool.
66
67%description -l de.UTF-8
68Openssl enthält das OpenSSL Zertifikatsmanagementtool und shared
69libraries, die verschiedene Verschlüsselungs- und
70Entschlüsselungsalgorithmen und -protokolle, wie DES, RC4, RSA und SSL
71zur Verfügung stellen.
72
73%description -l es.UTF-8
74Biblioteca C que suministra algoritmos y protocolos criptográficos.
75
76%description -l fr.UTF-8
77OpenSSL est un outiil de gestion des certificats et les librairies
78partagees qui fournit plusieurs protocoles et algorithmes de
79codage/decodage, incluant DES, RC4, RSA et SSL.
80
81%description -l pl.UTF-8
82Implementacja protokołów kryptograficznych Secure Socket Layer (SSL)
83v2/v3 oraz Transport Layer Security (TLS v1).
84
85%description -l pt_BR.UTF-8
86Uma biblioteca C que fornece vários algoritmos e protocolos
87criptográficos, incluindo DES, RC4, RSA e SSL. Inclui bibliotecas
88compartilhadas e utilitários.
89
90%description -l ru.UTF-8
91Программа openssl для работы с сертификатами и разделяемые библиотеки,
92которые реализуют множетсво криптографических алгоритмов, включая DES,
93RC4, RSA и SSL.
94
95%description -l uk.UTF-8
96Програма openssl для роботи з сертифікатами та бібліотеки спільного
97користування, що реалізують велику кількість криптографічних
98алгоритмів, включаючи DES, RC4, RSA та SSL.
99
100%package tools
101Summary: OpenSSL command line tool and utilities
102Summary(pl.UTF-8): Zestaw narzędzi i skryptów
103Group: Applications/Communications
104Requires: %{name} = %{version}-%{release}
105
106%description tools
107The OpenSSL Toolkit cmdline tool openssl and utility scripts.
108
109%description tools -l pl.UTF-8
110Zestaw narzędzi i skryptów wywoływanych z linii poleceń.
111
112%package tools-perl
113Summary: OpenSSL utilities written in Perl
114Summary(pl.UTF-8): Narzędzia OpenSSL napisane w perlu
115Group: Applications/Communications
116Requires: %{name} = %{version}-%{release}
117
118%description tools-perl
119OpenSSL Toolkit tools written in Perl.
120
121%description tools-perl -l pl.UTF-8
122Narzędzia OpenSSL napisane w perlu.
123
124%package devel
125Summary: Development part of OpenSSL Toolkit libraries
126Summary(de.UTF-8): Secure Sockets Layer Kommunikationslibrary: statische libraries+header
127Summary(es.UTF-8): Bibliotecas y archivos de inclusión para desarrollo OpenSSL
128Summary(fr.UTF-8): Librairies statiques, headers et utilitaires pour communication SSL
129Summary(pl.UTF-8): Część bibiloteki OpenSSL przeznaczona dla programistów
130Summary(pt_BR.UTF-8): Bibliotecas e arquivos de inclusão para desenvolvimento OpenSSL
131Summary(ru.UTF-8): Библиотеки, хедеры и утилиты для Secure Sockets Layer
132Summary(uk.UTF-8): Бібліотеки, хедери та утиліти для Secure Sockets Layer
133Group: Development/Libraries
134Requires: %{name} = %{version}-%{release}
135Obsoletes: libopenssl0-devel
136
137%description devel
138Development part of OpenSSL library.
139
140%description devel -l es.UTF-8
141Bibliotecas y archivos de inclusión para desarrollo OpenSSL
142
143%description devel -l pl.UTF-8
144Część biblioteki OpenSSL przeznaczona dla programistów.
145
146%description devel -l pt_BR.UTF-8
147Uma biblioteca C que fornece vários algoritmos e protocolos
148criptográficos, incluindo DES, RC4, RSA e SSL. Inclui bibliotecas e
149arquivos de inclusão para desenvolvimento.
150
151%description devel -l ru.UTF-8
152Программа openssl для работы с сертификатами и разделяемые библиотеки,
153которые реализуют множетсво криптографических алгоритмов, включая DES,
154RC4, RSA и SSL. Включает библиотеки и хедеры для разработки приложений
155с использованием SSL.
156
157%description devel -l uk.UTF-8
158Програма openssl для роботи з сертифікатами та бібліотеки спільного
159користування, що реалізують велику кількість криптографічних
160алгоритмів, включаючи DES, RC4, RSA та SSL. Містить бібліотеки та
161хедери для розробки програм з використанням SSL.
162
163%package static
164Summary: Static OpenSSL libraries
165Summary(pl.UTF-8): Statyczne wersje bibliotek z OpenSSL
166Summary(pt_BR.UTF-8): Bibliotecas estáticas para desenvolvimento com openssl
167Summary(ru.UTF-8): Статические библиотеки разработчика для OpenSSL
168Summary(uk.UTF-8): Статичні бібліотеки програміста для OpenSSL
169Group: Development/Libraries
170Requires: %{name}-devel = %{version}-%{release}
171
172%description static
173Static OpenSSL Toolkit libraries.
174
175%description static -l pl.UTF-8
176Statyczne wersje bibliotek z OpenSSL.
177
178%description static -l pt_BR.UTF-8
179Bibliotecas estáticas para desenvolvimento com openssl.
180
181%description static -l ru.UTF-8
182Программа openssl для работы с сертификатами и разделяемые библиотеки,
183которые реализуют множетсво криптографических алгоритмов, включая DES,
184RC4, RSA и SSL. Включает статические библиотеки для разработки
185приложений с использованием OpenSSL.
186
187%description static -l uk.UTF-8
188Програма openssl для роботи з сертифікатами та бібліотеки спільного
189користування, що реалізують велику кількість криптографічних
190алгоритмів, включаючи DES, RC4, RSA та SSL. Містить статичні
191бібліотеки для розробки програм з використанням SSL.
192
193%prep
194%setup -q
195%patch0 -p1
196%patch1 -p1
197%patch2 -p1
198%patch3 -p1
199%patch4 -p1
200%patch5 -p1
201%patch6 -p1
202%patch7 -p1
203%patch8 -p1
204
205%{__perl} -pi -e 's#%{_prefix}/local/bin/perl#%{__perl}#g' \
206 `grep -l -r "%{_prefix}/local/bin/perl" *`
207
208sed -i -e 's|$prefix/lib/engines|/%{_lib}/engines|g' Configure
209
210%build
211touch Makefile.*
212
213%{__perl} util/perlpath.pl %{__perl}
214
215OPTFLAGS="%{rpmcflags} %{?with_purify:-DPURIFY}" \
216./Configure \
217%if "%{pld_release}" == "ti"
218 --openssldir=%{_var}/lib/%{name} \
219%else
220 --openssldir=%{_sysconfdir}/%{name} \
221%endif
222 --libdir=%{_lib} \
223 shared threads \
224 enable-tlsext \
225 enable-seed \
226 enable-rfc3779 \
227 enable-cms \
228 enable-idea \
229 enable-mdc2 \
230 enable-rc5 \
231%ifarch %{ix86}
232%ifarch i386
233 386 linux-elf
234# ^- allow running on 80386 (default code uses bswapl available on i486+)
235%else
236 linux-elf
237%endif
238%endif
239%ifarch alpha
240 linux-alpha+bwx-gcc
241%endif
242%ifarch %{x8664}
243 linux-x86_64
244%endif
245%ifarch ia64
246 linux-ia64
247%endif
248%ifarch ppc
249 linux-ppc
250%endif
251%ifarch ppc64
252 linux-ppc64
253%endif
254%ifarch sparc
255 linux-sparcv8
256%endif
257%ifarch sparcv9
258 linux-sparcv9
259%endif
260%ifarch sparc64
261 linux64-sparcv9
262%endif
263
264%{__make} -j1 all rehash %{?with_tests:tests} \
265 CC="%{__cc}" \
266 ASFLAG='$(CFLAG) -Wa,--noexecstack' \
267 INSTALLTOP=%{_prefix}
268
269# Rename POD sources of man pages. "openssl_" prefix is added to each
270# manpage to avoid potential conflicts with other packages.
271
272for dir in doc/{apps,ssl,crypto}; do
273 cd $dir || exit 1;
274 %{__perl} -pi -e 's/(\W)((?<!openssl_)\w+)(\(\d\))/$1openssl_$2$3/g; s/openssl_openssl/openssl/g;' *.pod;
275
276 for pod in !(openssl*).pod; do
277 mv -f $pod openssl_$pod;
278 done
279 cd ../..
280done
281
282%install
283rm -rf $RPM_BUILD_ROOT
284install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_libdir}/%{name}} \
285 $RPM_BUILD_ROOT{%{_mandir}/{pl/man1,man{1,3,5,7}},%{_datadir}/ssl} \
286 $RPM_BUILD_ROOT/%{_lib}/engines \
287 $RPM_BUILD_ROOT%{_pkgconfigdir}
288
289%{__make} install \
290 INSTALLTOP=%{_prefix} \
291 INSTALL_PREFIX=$RPM_BUILD_ROOT \
292 MANDIR=%{_mandir}
293
294mv -f $RPM_BUILD_ROOT/%{_libdir}/engines/* $RPM_BUILD_ROOT/%{_lib}/engines
295mv -f $RPM_BUILD_ROOT/%{_libdir}/lib*.so.*.* $RPM_BUILD_ROOT/%{_lib}
296ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libcrypto.*.*) $RPM_BUILD_ROOT%{_libdir}/libcrypto.so
297ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libssl.*.*) $RPM_BUILD_ROOT%{_libdir}/libssl.so
298
299%if "%{pld_release}" == "ti"
300ln -sf %{_var}/lib/%{name}/%{name}.cnf \
301 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/openssl.cnf
302ln -sf %{_var}/lib/%{name}/certs \
303 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/certs
304ln -sf %{_var}/lib/%{name}/private \
305 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/private
306mv -f $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc/* $RPM_BUILD_ROOT%{_libdir}/%{name}
307rm -rf $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc
308%else
309mv -f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/misc/* $RPM_BUILD_ROOT%{_libdir}/%{name}
310rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/misc
311%endif
312
313# not installed as individual utilities (see openssl dgst instead)
314%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/{md2,md4,md5,mdc2,ripemd160,sha,sha1}.1
315
316install %{SOURCE2} $RPM_BUILD_ROOT%{_mandir}/pl/man1/openssl.1
317install %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/ssl-certificate
318install %{SOURCE4} $RPM_BUILD_ROOT%{_bindir}/c_rehash.sh
319
320%clean
321rm -rf $RPM_BUILD_ROOT
322
323%post -p /sbin/ldconfig
324%postun -p /sbin/ldconfig
325
326%if "%{pld_release}" == "ti"
327%triggerin -- %{name}-tools < 0.9.8i-2
328if [ -L /var/lib/openssl/openssl.cnf ] ; then
329 echo "Saving old configuration as /var/lib/openssl/openssl.cnf.rpmsave"
330 rm /var/lib/openssl/openssl.cnf
331 mv %{_sysconfdir}/%{name}/openssl.cnf /var/lib/openssl/openssl.cnf.rpmsave 2>/dev/null || :
332fi
333%else
334%triggerpostun -- %{name} < 0.9.8i-2
335if [ -d /var/lib/openssl/certs ] ; then
336 mv /var/lib/openssl/certs/* %{_sysconfdir}/%{name}/certs 2>/dev/null || :
337fi
338if [ -d /var/lib/openssl/private ] ; then
339 mv /var/lib/openssl/private/* %{_sysconfdir}/%{name}/private 2>/dev/null || :
340fi
341if [ -d /var/lib/openssl ] ; then
342 for f in /var/lib/openssl/* ; do
343 [ -f "$f" ] && mv "$f" %{_sysconfdir}/%{name} 2>/dev/null || :
344 done
345fi
346%endif
347
348%files
349%defattr(644,root,root,755)
350%doc CHANGES CHANGES.SSLeay LICENSE NEWS README doc/*.txt
351%doc doc/openssl_button.gif doc/openssl_button.html
352%attr(755,root,root) /%{_lib}/libcrypto.so.*.*.*
353%attr(755,root,root) /%{_lib}/libssl.so.*.*.*
354%dir /%{_lib}/engines
355%attr(755,root,root) /%{_lib}/engines/*.so
356%if "%{pld_release}" == "ti"
357%dir %{_var}/lib/%{name}
358%dir %{_var}/lib/%{name}/certs
359%dir %{_var}/lib/%{name}/private
360%dir %{_sysconfdir}/%{name}
361%attr(755,root,root) %{_sysconfdir}/%{name}/certs
362%attr(755,root,root) %{_sysconfdir}/%{name}/private
363%else
364%dir %{_sysconfdir}/%{name}
365%dir %{_sysconfdir}/%{name}/certs
366%dir %{_sysconfdir}/%{name}/private
367%endif
368%dir %{_datadir}/ssl
369
370%files tools
371%defattr(644,root,root,755)
372%if "%{pld_release}" == "ti"
373%{_sysconfdir}/%{name}/openssl.cnf
374%config(noreplace) %verify(not md5 mtime size) %{_var}/lib/%{name}/openssl.cnf
375%else
376%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/openssl.cnf
377%endif
378%attr(755,root,root) %{_bindir}/%{name}
379%attr(755,root,root) %{_bindir}/c_rehash.sh
380%attr(754,root,root) %{_bindir}/ssl-certificate
381
382%dir %{_libdir}/%{name}
383%attr(755,root,root) %{_libdir}/%{name}/CA.sh
384%attr(755,root,root) %{_libdir}/%{name}/c_hash
385%attr(755,root,root) %{_libdir}/%{name}/c_info
386%attr(755,root,root) %{_libdir}/%{name}/c_issuer
387%attr(755,root,root) %{_libdir}/%{name}/c_name
388
389%{_mandir}/man1/openssl.1*
390%{_mandir}/man1/openssl_asn1parse.1*
391%{_mandir}/man1/openssl_ca.1*
392%{_mandir}/man1/openssl_ciphers.1*
393%{_mandir}/man1/openssl_crl.1*
394%{_mandir}/man1/openssl_crl2pkcs7.1*
395%{_mandir}/man1/openssl_dgst.1*
396%{_mandir}/man1/openssl_dhparam.1*
397%{_mandir}/man1/openssl_dsa.1*
398%{_mandir}/man1/openssl_dsaparam.1*
399%{_mandir}/man1/openssl_ec.1*
400%{_mandir}/man1/openssl_ecparam.1*
401%{_mandir}/man1/openssl_enc.1*
402%{_mandir}/man1/openssl_errstr.1*
403%{_mandir}/man1/openssl_gendsa.1*
404%{_mandir}/man1/openssl_genrsa.1*
405%{_mandir}/man1/openssl_nseq.1*
406%{_mandir}/man1/openssl_ocsp.1*
407%{_mandir}/man1/openssl_passwd.1*
408%{_mandir}/man1/openssl_pkcs12.1*
409%{_mandir}/man1/openssl_pkcs7.1*
410%{_mandir}/man1/openssl_pkcs8.1*
411%{_mandir}/man1/openssl_rand.1*
412%{_mandir}/man1/openssl_req.1*
413%{_mandir}/man1/openssl_rsa.1*
414%{_mandir}/man1/openssl_rsautl.1*
415%{_mandir}/man1/openssl_s_client.1*
416%{_mandir}/man1/openssl_s_server.1*
417%{_mandir}/man1/openssl_s_time.1*
418%{_mandir}/man1/openssl_sess_id.1*
419%{_mandir}/man1/openssl_smime.1*
420%{_mandir}/man1/openssl_speed.1*
421%{_mandir}/man1/openssl_spkac.1*
422%{_mandir}/man1/openssl_verify.1*
423%{_mandir}/man1/openssl_version.1*
424%{_mandir}/man1/openssl_x509.1*
425%{_mandir}/man5/openssl_config.5*
426%{_mandir}/man5/openssl_x509v3_config.5*
427%lang(pl) %{_mandir}/pl/man1/openssl.1*
428
429%files tools-perl
430%defattr(644,root,root,755)
431%attr(755,root,root) %{_bindir}/c_rehash
432%attr(755,root,root) %{_libdir}/%{name}/CA.pl
433%{_mandir}/man1/openssl_CA.pl.1*
434
435%files devel
436%defattr(644,root,root,755)
437%attr(755,root,root) %{_libdir}/libcrypto.so
438%attr(755,root,root) %{_libdir}/libssl.so
439%{_includedir}/%{name}
440%{_pkgconfigdir}/libcrypto.pc
441%{_pkgconfigdir}/libssl.pc
442%{_pkgconfigdir}/openssl.pc
443%{_mandir}/man3/openssl*.3*
444%{_mandir}/man7/openssl_des_modes.7*
445
446%files static
447%defattr(644,root,root,755)
448%{_libdir}/lib*.a
This page took 0.06992 seconds and 4 git commands to generate.