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