3 %bcond_with purify # Compile openssl with \-DPURIFY, useful when one wants to
4 # use valgrind debugger against openssl-linked programs
5 %include /usr/lib/rpm/macros.perl
6 Summary: OpenSSL Toolkit libraries for the "Secure Sockets Layer" (SSL v2/v3)
7 Summary(de): Secure Sockets Layer (SSL)-Kommunikationslibrary
8 Summary(es): Biblioteca C que suministra algoritmos y protocolos criptográficos
9 Summary(fr): Utilitaires de communication SSL (Secure Sockets Layer)
10 Summary(pl): Biblioteki OpenSSL (SSL v2/v3)
11 Summary(pt_BR): Uma biblioteca C que fornece vários algoritmos e protocolos criptográficos
12 Summary(ru): âÉÂÌÉÏÔÅËÉ É ÕÔÉÌÉÔÙ ÄÌÑ ÓÏÅÄÉÎÅÎÉÊ ÞÅÒÅÚ Secure Sockets Layer
13 Summary(uk): â¦Â̦ÏÔÅËÉ ÔÁ ÕÔÉ̦ÔÉ ÄÌÑ Ú'¤ÄÎÁÎØ ÞÅÒÅÚ Secure Sockets Layer
17 License: Apache-style License
19 Source0: ftp://ftp.openssl.org/source/%{name}-%{version}.tar.gz
20 # Source0-md5: 12cedbeb6813a0d7919dbf1f82134b86
21 Source1: %{name}-ca-bundle.crt
23 Source3: %{name}-ssl-certificate.sh
24 Patch0: %{name}-alpha-ccc.patch
25 Patch1: %{name}-optflags.patch
26 Patch2: %{name}-globalCA.diff
27 Patch3: %{name}-include.patch
28 Patch4: %{name}-md5-sparcv9.patch
29 Patch5: %{name}-libvar.patch
30 URL: http://www.openssl.org/
31 BuildRequires: perl-devel >= 1:5.6.1
32 BuildRequires: rpm-perlprov >= 4.1-13
33 BuildRequires: rpmbuild(macros) >= 1.213
34 BuildRequires: sed >= 4.0
36 Obsoletes: SSLeay-devel
37 Obsoletes: SSLeay-perl
38 Obsoletes: libopenssl0
39 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
42 The OpenSSL Project is a collaborative effort to develop a robust,
43 commercial-grade, full-featured, and Open Source toolkit implementing
44 the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS
45 v1) protocols with full-strength cryptography world-wide. The project
46 is managed by a worldwide community of volunteers that use the
47 Internet to communicate, plan, and develop the OpenSSL tookit and its
48 related documentation.
50 OpenSSL is based on the excellent SSLeay library developed by Eric A.
51 Young and Tim J. Hudson. The OpenSSL toolkit is licensed under an
52 Apache-style licence, which basically means that you are free to get
53 and use it for commercial and non-commercial purposes subject to some
54 simple license conditions.
56 This package contains shared libraries only, install openssl-tools if
57 you want to use openssl cmdline tool.
60 Openssl enthält das OpenSSL Zertifikatsmanagementtool und shared
61 libraries, die verschiedene Verschlüsselungs- und
62 Entschlüsselungsalgorithmen und -protokolle, wie DES, RC4, RSA und SSL
63 zur Verfügung stellen.
66 Biblioteca C que suministra algoritmos y protocolos criptográficos.
69 OpenSSL est un outiil de gestion des certificats et les librairies
70 partagees qui fournit plusieurs protocoles et algorithmes de
71 codage/decodage, incluant DES, RC4, RSA et SSL.
74 Implementacja protoko³ów kryptograficznych Secure Socket Layer (SSL)
75 v2/v3 oraz Transport Layer Security (TLS v1).
78 Uma biblioteca C que fornece vários algoritmos e protocolos
79 criptográficos, incluindo DES, RC4, RSA e SSL. Inclui bibliotecas
80 compartilhadas e utilitários.
83 ðÒÏÇÒÁÍÍÁ openssl ÄÌÑ ÒÁÂÏÔÙ Ó ÓÅÒÔÉÆÉËÁÔÁÍÉ É ÒÁÚÄÅÌÑÅÍÙÅ ÂÉÂÌÉÏÔÅËÉ,
84 ËÏÔÏÒÙÅ ÒÅÁÌÉÚÕÀÔ ÍÎÏÖÅÔÓ×Ï ËÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÈ ÁÌÇÏÒÉÔÍÏ×, ×ËÌÀÞÁÑ DES,
88 ðÒÏÇÒÁÍÁ openssl ÄÌÑ ÒÏÂÏÔÉ Ú ÓÅÒÔÉƦËÁÔÁÍÉ ÔÁ ¦Â̦ÏÔÅËÉ ÓЦÌØÎÏÇÏ
89 ËÏÒÉÓÔÕ×ÁÎÎÑ, ÝÏ ÒÅÁ̦ÚÕÀÔØ ×ÅÌÉËÕ Ë¦ÌØ˦ÓÔØ ËÒÉÐÔÏÇÒÁƦÞÎÉÈ
90 ÁÌÇÏÒÉÔͦ×, ×ËÌÀÞÁÀÞÉ DES, RC4, RSA ÔÁ SSL.
93 Summary: OpenSSL command line tool and utilities
94 Summary(pl): Zestaw narzêdzi i skryptów
95 Group: Applications/Communications
96 Requires: %{name} = %{version}-%{release}
99 The OpenSSL Toolkit cmdline tool openssl and utility scripts.
101 %description tools -l pl
102 Zestaw narzêdzi i skryptów wywo³ywanych z linii poleceñ.
105 Summary: OpenSSL utilities written in Perl
106 Summary(pl): Narzêdzia OpenSSL napisane w perlu
107 Group: Applications/Communications
108 Requires: %{name} = %{version}-%{release}
110 %description tools-perl
111 OpenSSL Toolkit tools written in Perl.
113 %description tools-perl -l pl
114 Narzêdzia OpenSSL napisane w perlu.
117 Summary: Development part of OpenSSL Toolkit libraries
118 Summary(de): Secure Sockets Layer Kommunikationslibrary: statische libraries+header
119 Summary(es): Bibliotecas y archivos de inclusión para desarrollo OpenSSL
120 Summary(fr): Librairies statiques, headers et utilitaires pour communication SSL
121 Summary(pl): Czê¶æ bibiloteki OpenSSL przeznaczona dla programistów
122 Summary(pt_BR): Bibliotecas e arquivos de inclusão para desenvolvimento OpenSSL
123 Summary(ru): âÉÂÌÉÏÔÅËÉ, ÈÅÄÅÒÙ É ÕÔÉÌÉÔÙ ÄÌÑ Secure Sockets Layer
124 Summary(uk): â¦Â̦ÏÔÅËÉ, ÈÅÄÅÒÉ ÔÁ ÕÔÉ̦ÔÉ ÄÌÑ Secure Sockets Layer
125 Group: Development/Libraries
126 Requires: %{name} = %{version}-%{release}
127 Obsoletes: libopenssl0-devel
130 Development part of OpenSSL library.
132 %description devel -l es
133 Bibliotecas y archivos de inclusión para desarrollo OpenSSL
135 %description devel -l pl
136 Czê¶æ biblioteki OpenSSL przeznaczona dla programistów.
138 %description devel -l pt_BR
139 Uma biblioteca C que fornece vários algoritmos e protocolos
140 criptográficos, incluindo DES, RC4, RSA e SSL. Inclui bibliotecas e
141 arquivos de inclusão para desenvolvimento.
143 %description devel -l ru
144 ðÒÏÇÒÁÍÍÁ openssl ÄÌÑ ÒÁÂÏÔÙ Ó ÓÅÒÔÉÆÉËÁÔÁÍÉ É ÒÁÚÄÅÌÑÅÍÙÅ ÂÉÂÌÉÏÔÅËÉ,
145 ËÏÔÏÒÙÅ ÒÅÁÌÉÚÕÀÔ ÍÎÏÖÅÔÓ×Ï ËÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÈ ÁÌÇÏÒÉÔÍÏ×, ×ËÌÀÞÁÑ DES,
146 RC4, RSA É SSL. ÷ËÌÀÞÁÅÔ ÂÉÂÌÉÏÔÅËÉ É ÈÅÄÅÒÙ ÄÌÑ ÒÁÚÒÁÂÏÔËÉ ÐÒÉÌÏÖÅÎÉÊ
147 Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ SSL.
149 %description devel -l uk
150 ðÒÏÇÒÁÍÁ openssl ÄÌÑ ÒÏÂÏÔÉ Ú ÓÅÒÔÉƦËÁÔÁÍÉ ÔÁ ¦Â̦ÏÔÅËÉ ÓЦÌØÎÏÇÏ
151 ËÏÒÉÓÔÕ×ÁÎÎÑ, ÝÏ ÒÅÁ̦ÚÕÀÔØ ×ÅÌÉËÕ Ë¦ÌØ˦ÓÔØ ËÒÉÐÔÏÇÒÁƦÞÎÉÈ
152 ÁÌÇÏÒÉÔͦ×, ×ËÌÀÞÁÀÞÉ DES, RC4, RSA ÔÁ SSL. í¦ÓÔÉÔØ Â¦Â̦ÏÔÅËÉ ÔÁ
153 ÈÅÄÅÒÉ ÄÌÑ ÒÏÚÒÏÂËÉ ÐÒÏÇÒÁÍ Ú ×ÉËÏÒÉÓÔÁÎÎÑÍ SSL.
156 Summary: Static OpenSSL libraries
157 Summary(pl): Statyczne wersje bibliotek z OpenSSL
158 Summary(pt_BR): Bibliotecas estáticas para desenvolvimento com openssl
159 Summary(ru): óÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ ÒÁÚÒÁÂÏÔÞÉËÁ ÄÌÑ OpenSSL
160 Summary(uk): óÔÁÔÉÞΦ ¦Â̦ÏÔÅËÉ ÐÒÏÇÒÁͦÓÔÁ ÄÌÑ OpenSSL
161 Group: Development/Libraries
162 Requires: %{name}-devel = %{version}-%{release}
165 Static OpenSSL Toolkit libraries.
167 %description static -l pl
168 Statyczne wersje bibliotek z OpenSSL.
170 %description static -l pt_BR
171 Bibliotecas estáticas para desenvolvimento com openssl.
173 %description static -l ru
174 ðÒÏÇÒÁÍÍÁ openssl ÄÌÑ ÒÁÂÏÔÙ Ó ÓÅÒÔÉÆÉËÁÔÁÍÉ É ÒÁÚÄÅÌÑÅÍÙÅ ÂÉÂÌÉÏÔÅËÉ,
175 ËÏÔÏÒÙÅ ÒÅÁÌÉÚÕÀÔ ÍÎÏÖÅÔÓ×Ï ËÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÈ ÁÌÇÏÒÉÔÍÏ×, ×ËÌÀÞÁÑ DES,
176 RC4, RSA É SSL. ÷ËÌÀÞÁÅÔ ÓÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ ÄÌÑ ÒÁÚÒÁÂÏÔËÉ
177 ÐÒÉÌÏÖÅÎÉÊ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ OpenSSL.
179 %description static -l uk
180 ðÒÏÇÒÁÍÁ openssl ÄÌÑ ÒÏÂÏÔÉ Ú ÓÅÒÔÉƦËÁÔÁÍÉ ÔÁ ¦Â̦ÏÔÅËÉ ÓЦÌØÎÏÇÏ
181 ËÏÒÉÓÔÕ×ÁÎÎÑ, ÝÏ ÒÅÁ̦ÚÕÀÔØ ×ÅÌÉËÕ Ë¦ÌØ˦ÓÔØ ËÒÉÐÔÏÇÒÁƦÞÎÉÈ
182 ÁÌÇÏÒÉÔͦ×, ×ËÌÀÞÁÀÞÉ DES, RC4, RSA ÔÁ SSL. í¦ÓÔÉÔØ ÓÔÁÔÉÞΦ
183 ¦Â̦ÏÔÅËÉ ÄÌÑ ÒÏÚÒÏÂËÉ ÐÒÏÇÒÁÍ Ú ×ÉËÏÒÉÓÔÁÎÎÑÍ SSL.
195 %{__perl} -pi -e 's#%{_prefix}/local/bin/perl#%{__perl}#g' \
196 `grep -l -r "%{_prefix}/local/bin/perl" *`
200 %{__perl} util/perlpath.pl %{__perl}
202 OPTFLAGS="%{rpmcflags} %{?with_purify:-DPURIFY}"
203 LDFLAGS="%{rpmldflags}"
204 export OPTFLAGS LDFLAGS
206 --openssldir=%{_var}/lib/%{name} \
209 enable-mdc2 enable-rc5 \
213 # ^- allow running on 80386 (default code uses bswapl available on i486+)
245 INSTALLTOP=%{_prefix}
247 %{__make} -j1 rehash \
249 INSTALLTOP=%{_prefix}
251 # Conv PODs to man pages. "openssl_" prefix is added to each manpage
252 # to avoid potential conflicts with others packages.
253 center="OpenSSL 0.9.7"
256 cd doc/apps || exit 1
257 %{__perl} -pi -e 's/(\W)((?<!openssl_)\w+)(\(\d\))/$1openssl_$2$3/g; s/openssl_openssl/openssl/g;' *.pod;
260 if [ $pod != "openssl.pod" ]; then
261 mv -f $pod openssl_$pod;
266 if [ $pod = "openssl_config.pod" ]; then
270 manpage=`basename $pod .pod`.$sec;
271 pod2man --section="$sec" --release="$rel" --center="$center" \
278 for dir in ssl crypto; do
280 if [ $dir = "ssl" ]; then
281 rel="OpenSSL SSL/TLS library"
282 elif [ $dir = "crypto" ]; then
283 rel="OpenSSL cryptographic library"
286 %{__perl} -pi -e 's/(\W)((?<!openssl_)\w+)(\(\d\))/$1openssl_$2$3/g; s/openssl_openssl/openssl/g;' *.pod;
289 sec=`[ "$pod" = "des_modes.pod" ] && echo 7 || echo 3`;
290 mv -f $pod openssl_$pod;
292 manpage=`basename $pod .pod`.$sec;
293 pod2man --section="$sec" --release="$rel" --center=" " $pod > $manpage;
300 #%%{__perl} Makefile.PL \
305 rm -rf $RPM_BUILD_ROOT
306 install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_libdir}/%{name}} \
307 $RPM_BUILD_ROOT{%{_mandir}/{pl/man1,man{1,3,5,7}},%{_datadir}/ssl} \
308 $RPM_BUILD_ROOT%{_pkgconfigdir}
312 INSTALLTOP=%{_prefix} \
313 INSTALL_PREFIX=$RPM_BUILD_ROOT \
316 install %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/ssl/ca-bundle.crt
317 install libcrypto.a libssl.a $RPM_BUILD_ROOT%{_libdir}
318 install lib*.so.*.* $RPM_BUILD_ROOT%{_libdir}
319 ln -sf libcrypto.so.*.* $RPM_BUILD_ROOT%{_libdir}/libcrypto.so
320 ln -sf libssl.so.*.* $RPM_BUILD_ROOT%{_libdir}/libssl.so
322 mv -f $RPM_BUILD_ROOT%{_var}/lib/%{name}/openssl.cnf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
323 ln -s %{_sysconfdir}/%{name}/openssl.cnf \
324 $RPM_BUILD_ROOT%{_var}/lib/%{name}/%{name}.cnf
326 mv -f $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc/* $RPM_BUILD_ROOT%{_libdir}/%{name}
327 rm -rf $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc
329 mv -f $RPM_BUILD_ROOT%{_bindir}/c_rehash $RPM_BUILD_ROOT%{_libdir}/%{name}
331 find $RPM_BUILD_ROOT%{_mandir} -type f | xargs rm -f
332 install doc/apps/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
333 install doc/apps/*.5 $RPM_BUILD_ROOT%{_mandir}/man5
334 install doc/ssl/*.3 doc/crypto/*.3 $RPM_BUILD_ROOT%{_mandir}/man3
335 install doc/crypto/*.7 $RPM_BUILD_ROOT%{_mandir}/man7
336 install %{SOURCE2} $RPM_BUILD_ROOT%{_mandir}/pl/man1/openssl.1
337 install %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/ssl-certificate
340 rm -rf $RPM_BUILD_ROOT
342 %post -p /sbin/ldconfig
343 %postun -p /sbin/ldconfig
346 %defattr(644,root,root,755)
347 %attr(755,root,root) %{_libdir}/libcrypto.so.*.*.*
348 %attr(755,root,root) %{_libdir}/libssl.so.*.*.*
349 %doc CHANGES CHANGES.SSLeay LICENSE NEWS README doc/*.txt
350 %doc doc/openssl_button.gif doc/openssl_button.html
351 %dir %{_libdir}/engines
352 %attr(755,root,root) %{_libdir}/engines/*.so
353 %dir %{_var}/lib/%{name}
354 %dir %{_var}/lib/%{name}/certs
355 %dir %{_var}/lib/%{name}/private
357 %verify(not md5 mtime size) %config(noreplace) %{_datadir}/ssl/ca-bundle.crt
360 %defattr(644,root,root,755)
361 %dir %{_sysconfdir}/%{name}
363 %verify(not md5 mtime size) %config(noreplace) %{_sysconfdir}/%{name}/openssl.cnf
364 %verify(not md5 mtime size) %config(noreplace) %{_var}/lib/%{name}/openssl.cnf
366 %attr(755,root,root) %{_bindir}/%{name}
367 %attr(754,root,root) %{_bindir}/ssl-certificate
369 %dir %{_libdir}/%{name}
370 %attr(755,root,root) %{_libdir}/%{name}/CA.sh
371 %attr(755,root,root) %{_libdir}/%{name}/c_hash
372 %attr(755,root,root) %{_libdir}/%{name}/c_info
373 %attr(755,root,root) %{_libdir}/%{name}/c_issuer
374 %attr(755,root,root) %{_libdir}/%{name}/c_name
376 %{_mandir}/man1/openssl.1*
377 %{_mandir}/man1/openssl_asn1parse.1*
378 %{_mandir}/man1/openssl_ca.1*
379 %{_mandir}/man1/openssl_ciphers.1*
380 %{_mandir}/man1/openssl_crl.1*
381 %{_mandir}/man1/openssl_crl2pkcs7.1*
382 %{_mandir}/man1/openssl_dgst.1*
383 %{_mandir}/man1/openssl_dhparam.1*
384 %{_mandir}/man1/openssl_dsa.1*
385 %{_mandir}/man1/openssl_dsaparam.1*
386 %{_mandir}/man1/openssl_ec.1*
387 %{_mandir}/man1/openssl_ecparam.1*
388 %{_mandir}/man1/openssl_enc.1*
389 %{_mandir}/man1/openssl_errstr.1*
390 %{_mandir}/man1/openssl_gendsa.1*
391 %{_mandir}/man1/openssl_genrsa.1*
392 %{_mandir}/man1/openssl_nseq.1*
393 %{_mandir}/man1/openssl_ocsp.1*
394 %{_mandir}/man1/openssl_passwd.1*
395 %{_mandir}/man1/openssl_pkcs12.1*
396 %{_mandir}/man1/openssl_pkcs7.1*
397 %{_mandir}/man1/openssl_pkcs8.1*
398 %{_mandir}/man1/openssl_rand.1*
399 %{_mandir}/man1/openssl_req.1*
400 %{_mandir}/man1/openssl_rsa.1*
401 %{_mandir}/man1/openssl_rsautl.1*
402 %{_mandir}/man1/openssl_s_client.1*
403 %{_mandir}/man1/openssl_s_server.1*
404 %{_mandir}/man1/openssl_s_time.1*
405 %{_mandir}/man1/openssl_sess_id.1*
406 %{_mandir}/man1/openssl_smime.1*
407 %{_mandir}/man1/openssl_speed.1*
408 %{_mandir}/man1/openssl_spkac.1*
409 %{_mandir}/man1/openssl_verify.1*
410 %{_mandir}/man1/openssl_version.1*
411 %{_mandir}/man1/openssl_x509.1*
412 %{_mandir}/man1/openssl_x509v3_config.1*
414 %lang(pl) %{_mandir}/pl/man1/openssl.1*
417 %defattr(644,root,root,755)
418 %attr(755,root,root) %{_libdir}/%{name}/CA.pl
419 %attr(755,root,root) %{_libdir}/%{name}/c_rehash
420 %{_mandir}/man1/openssl_CA.pl.1*
423 %defattr(644,root,root,755)
424 %attr(755,root,root) %{_libdir}/libcrypto.so
425 %attr(755,root,root) %{_libdir}/libssl.so
426 %{_includedir}/%{name}
427 %{_pkgconfigdir}/libcrypto.pc
428 %{_pkgconfigdir}/libssl.pc
429 %{_pkgconfigdir}/openssl.pc
430 %{_mandir}/man3/openssl*.3*
434 %defattr(644,root,root,755)