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