- handle directories with spaces
[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
0fdaa4e3 18Release: 2
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
0d1c50df 25Patch0: %{name}-alpha-ccc.patch
e106ff02
TO
26Patch1: %{name}-optflags.patch
27Patch2: %{name}-globalCA.diff
c0cc4a35 28Patch3: %{name}-include.patch
d76d59fa 29Patch4: %{name}-libvar.patch
1c008d35
JB
30Patch5: %{name}-man-namespace.patch
31Patch6: %{name}-asflag.patch
bd7f0ef1 32URL: http://www.openssl.org/
741aa025 33BuildRequires: bc
9edbb66f 34BuildRequires: perl-devel >= 1:5.6.1
35BuildRequires: rpm-perlprov >= 4.1-13
20bc1dd7 36BuildRequires: rpmbuild(macros) >= 1.213
31b28434 37BuildRequires: sed >= 4.0
04a5ad1f
AF
38Obsoletes: SSLeay
39Obsoletes: SSLeay-devel
40Obsoletes: SSLeay-perl
a280467c 41Obsoletes: libopenssl0
e9565643 42Requires: ca-certificates >= 20080809-1
8d44b43f 43Requires: rpm-whiteout >= 1.7
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 209./Configure \
0fdaa4e3 210 --openssldir=%{_sysconfdir}/%{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
027a4889 276install libcrypto.a libssl.a $RPM_BUILD_ROOT%{_libdir}
78b5e413 277install lib*.so.*.* $RPM_BUILD_ROOT%{_libdir}
77dadeb8
JR
278ln -sf libcrypto.so.*.* $RPM_BUILD_ROOT%{_libdir}/libcrypto.so
279ln -sf libssl.so.*.* $RPM_BUILD_ROOT%{_libdir}/libssl.so
04a5ad1f 280
0fdaa4e3
JR
281mv -f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/misc/* $RPM_BUILD_ROOT%{_libdir}/%{name}
282rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/misc
04a5ad1f 283
1c008d35
JB
284# not installed as individual utilities (see openssl dgst instead)
285%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/{md2,md4,md5,mdc2,ripemd160,sha,sha1}.1
286
62382817 287install %{SOURCE2} $RPM_BUILD_ROOT%{_mandir}/pl/man1/openssl.1
ea55f735 288install %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/ssl-certificate
9fc51b3c 289
57dc6058
JB
290%clean
291rm -rf $RPM_BUILD_ROOT
61a04a63 292
d86c2c8b 293%post -p /sbin/ldconfig
ce2ff00e 294%postun -p /sbin/ldconfig
04a5ad1f 295
0fdaa4e3
JR
296%triggerpostun -- %{name} < 0.9.8i-2
297if [ -d /var/lib/openssl/certs ] ; then
298 mv /var/lib/openssl/certs/* %{_sysconfdir}/%{name}/certs 2>/dev/null || :
299fi
300if [ -d /var/lib/openssl/private ] ; then
301 mv /var/lib/openssl/private/* %{_sysconfdir}/%{name}/private 2>/dev/null || :
302fi
303if [ -d /var/lib/openssl ] ; then
304 for f in /var/lib/openssl/* ; do
305 [ -f "$f" ] && mv "$f" %{_sysconfdir}/%{name} 2>/dev/null || :
306 done
307fi
308
21ac4f86 309%files
04a5ad1f 310%defattr(644,root,root,755)
57dc6058
JB
311%doc CHANGES CHANGES.SSLeay LICENSE NEWS README doc/*.txt
312%doc doc/openssl_button.gif doc/openssl_button.html
623d135e
JB
313%attr(755,root,root) %{_libdir}/libcrypto.so.*.*.*
314%attr(755,root,root) %{_libdir}/libssl.so.*.*.*
9fc51b3c
JB
315%dir %{_libdir}/engines
316%attr(755,root,root) %{_libdir}/engines/*.so
0fdaa4e3
JR
317%dir %{_sysconfdir}/%{name}
318%dir %{_sysconfdir}/%{name}/certs
319%dir %{_sysconfdir}/%{name}/private
b87437db 320%dir %{_datadir}/ssl
ce2ff00e 321
322%files tools
323%defattr(644,root,root,755)
623d135e 324%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/openssl.cnf
ce2ff00e 325%attr(755,root,root) %{_bindir}/%{name}
ea55f735 326%attr(754,root,root) %{_bindir}/ssl-certificate
17a30265 327
ce2ff00e 328%dir %{_libdir}/%{name}
329%attr(755,root,root) %{_libdir}/%{name}/CA.sh
330%attr(755,root,root) %{_libdir}/%{name}/c_hash
ce2ff00e 331%attr(755,root,root) %{_libdir}/%{name}/c_info
332%attr(755,root,root) %{_libdir}/%{name}/c_issuer
333%attr(755,root,root) %{_libdir}/%{name}/c_name
334
d86c2c8b 335%{_mandir}/man1/openssl.1*
336%{_mandir}/man1/openssl_asn1parse.1*
337%{_mandir}/man1/openssl_ca.1*
338%{_mandir}/man1/openssl_ciphers.1*
339%{_mandir}/man1/openssl_crl.1*
340%{_mandir}/man1/openssl_crl2pkcs7.1*
341%{_mandir}/man1/openssl_dgst.1*
342%{_mandir}/man1/openssl_dhparam.1*
343%{_mandir}/man1/openssl_dsa.1*
344%{_mandir}/man1/openssl_dsaparam.1*
9fc51b3c
JB
345%{_mandir}/man1/openssl_ec.1*
346%{_mandir}/man1/openssl_ecparam.1*
d86c2c8b 347%{_mandir}/man1/openssl_enc.1*
5d088344 348%{_mandir}/man1/openssl_errstr.1*
d86c2c8b 349%{_mandir}/man1/openssl_gendsa.1*
350%{_mandir}/man1/openssl_genrsa.1*
351%{_mandir}/man1/openssl_nseq.1*
027a4889 352%{_mandir}/man1/openssl_ocsp.1*
d86c2c8b 353%{_mandir}/man1/openssl_passwd.1*
354%{_mandir}/man1/openssl_pkcs12.1*
355%{_mandir}/man1/openssl_pkcs7.1*
356%{_mandir}/man1/openssl_pkcs8.1*
357%{_mandir}/man1/openssl_rand.1*
358%{_mandir}/man1/openssl_req.1*
359%{_mandir}/man1/openssl_rsa.1*
57dc6058 360%{_mandir}/man1/openssl_rsautl.1*
d86c2c8b 361%{_mandir}/man1/openssl_s_client.1*
362%{_mandir}/man1/openssl_s_server.1*
c0cc4a35 363%{_mandir}/man1/openssl_s_time.1*
d86c2c8b 364%{_mandir}/man1/openssl_sess_id.1*
365%{_mandir}/man1/openssl_smime.1*
366%{_mandir}/man1/openssl_speed.1*
367%{_mandir}/man1/openssl_spkac.1*
368%{_mandir}/man1/openssl_verify.1*
369%{_mandir}/man1/openssl_version.1*
370%{_mandir}/man1/openssl_x509.1*
1c008d35
JB
371%{_mandir}/man5/openssl_config.5*
372%{_mandir}/man5/openssl_x509v3_config.5*
62382817 373%lang(pl) %{_mandir}/pl/man1/openssl.1*
ce2ff00e 374
375%files tools-perl
376%defattr(644,root,root,755)
62313b5e 377%attr(755,root,root) %{_bindir}/c_rehash
ce2ff00e 378%attr(755,root,root) %{_libdir}/%{name}/CA.pl
d86c2c8b 379%{_mandir}/man1/openssl_CA.pl.1*
faddd309
AF
380
381%files devel
382%defattr(644,root,root,755)
f4434df9
PS
383%attr(755,root,root) %{_libdir}/libcrypto.so
384%attr(755,root,root) %{_libdir}/libssl.so
ce2ff00e 385%{_includedir}/%{name}
9fc51b3c
JB
386%{_pkgconfigdir}/libcrypto.pc
387%{_pkgconfigdir}/libssl.pc
8c362d23 388%{_pkgconfigdir}/openssl.pc
027a4889 389%{_mandir}/man3/openssl*.3*
1c008d35 390%{_mandir}/man7/openssl_des_modes.7*
faddd309
AF
391
392%files static
393%defattr(644,root,root,755)
48e547a4 394%{_libdir}/lib*.a
This page took 0.142429 seconds and 4 git commands to generate.