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