]> git.pld-linux.org Git - packages/openssl.git/blame_incremental - openssl.spec
- handle directories with spaces
[packages/openssl.git] / openssl.spec
... / ...
CommitLineData
1#
2# Conditional build:
3%bcond_without tests # don't perform "make tests"
4%bcond_with purify # Compile openssl with \-DPURIFY, useful when one wants to
5 # use valgrind debugger against openssl-linked programs
6#
7%include /usr/lib/rpm/macros.perl
8Summary: OpenSSL Toolkit libraries for the "Secure Sockets Layer" (SSL v2/v3)
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
16Name: openssl
17Version: 0.9.8i
18Release: 2
19License: Apache-like
20Group: Libraries
21Source0: ftp://ftp.openssl.org/source/%{name}-%{version}.tar.gz
22# Source0-md5: 561e00f18821c74b2b86c8c7786f9d8b
23Source2: %{name}.1.pl
24Source3: %{name}-ssl-certificate.sh
25Patch0: %{name}-alpha-ccc.patch
26Patch1: %{name}-optflags.patch
27Patch2: %{name}-globalCA.diff
28Patch3: %{name}-include.patch
29Patch4: %{name}-libvar.patch
30Patch5: %{name}-man-namespace.patch
31Patch6: %{name}-asflag.patch
32URL: http://www.openssl.org/
33BuildRequires: bc
34BuildRequires: perl-devel >= 1:5.6.1
35BuildRequires: rpm-perlprov >= 4.1-13
36BuildRequires: rpmbuild(macros) >= 1.213
37BuildRequires: sed >= 4.0
38Obsoletes: SSLeay
39Obsoletes: SSLeay-devel
40Obsoletes: SSLeay-perl
41Obsoletes: libopenssl0
42Requires: ca-certificates >= 20080809-1
43Requires: rpm-whiteout >= 1.7
44BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
45
46%description
47The OpenSSL Project is a collaborative effort to develop a robust,
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.
54
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.
60
61This package contains shared libraries only, install openssl-tools if
62you want to use openssl cmdline tool.
63
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.
69
70%description -l es.UTF-8
71Biblioteca C que suministra algoritmos y protocolos criptográficos.
72
73%description -l fr.UTF-8
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.
77
78%description -l pl.UTF-8
79Implementacja protokołów kryptograficznych Secure Socket Layer (SSL)
80v2/v3 oraz Transport Layer Security (TLS v1).
81
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.
86
87%description -l ru.UTF-8
88Программа openssl для работы с сертификатами и разделяемые библиотеки,
89которые реализуют множетсво криптографических алгоритмов, включая DES,
90RC4, RSA и SSL.
91
92%description -l uk.UTF-8
93Програма openssl для роботи з сертифікатами та бібліотеки спільного
94користування, що реалізують велику кількість криптографічних
95алгоритмів, включаючи DES, RC4, RSA та SSL.
96
97%package tools
98Summary: OpenSSL command line tool and utilities
99Summary(pl.UTF-8): Zestaw narzędzi i skryptów
100Group: Applications/Communications
101Requires: %{name} = %{version}-%{release}
102
103%description tools
104The OpenSSL Toolkit cmdline tool openssl and utility scripts.
105
106%description tools -l pl.UTF-8
107Zestaw narzędzi i skryptów wywoływanych z linii poleceń.
108
109%package tools-perl
110Summary: OpenSSL utilities written in Perl
111Summary(pl.UTF-8): Narzędzia OpenSSL napisane w perlu
112Group: Applications/Communications
113Requires: %{name} = %{version}-%{release}
114
115%description tools-perl
116OpenSSL Toolkit tools written in Perl.
117
118%description tools-perl -l pl.UTF-8
119Narzędzia OpenSSL napisane w perlu.
120
121%package devel
122Summary: Development part of OpenSSL Toolkit libraries
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
130Group: Development/Libraries
131Requires: %{name} = %{version}-%{release}
132Obsoletes: libopenssl0-devel
133
134%description devel
135Development part of OpenSSL library.
136
137%description devel -l es.UTF-8
138Bibliotecas y archivos de inclusión para desarrollo OpenSSL
139
140%description devel -l pl.UTF-8
141Część biblioteki OpenSSL przeznaczona dla programistów.
142
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.
147
148%description devel -l ru.UTF-8
149Программа openssl для работы с сертификатами и разделяемые библиотеки,
150которые реализуют множетсво криптографических алгоритмов, включая DES,
151RC4, RSA и SSL. Включает библиотеки и хедеры для разработки приложений
152с использованием SSL.
153
154%description devel -l uk.UTF-8
155Програма openssl для роботи з сертифікатами та бібліотеки спільного
156користування, що реалізують велику кількість криптографічних
157алгоритмів, включаючи DES, RC4, RSA та SSL. Містить бібліотеки та
158хедери для розробки програм з використанням SSL.
159
160%package static
161Summary: Static OpenSSL libraries
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
166Group: Development/Libraries
167Requires: %{name}-devel = %{version}-%{release}
168
169%description static
170Static OpenSSL Toolkit libraries.
171
172%description static -l pl.UTF-8
173Statyczne wersje bibliotek z OpenSSL.
174
175%description static -l pt_BR.UTF-8
176Bibliotecas estáticas para desenvolvimento com openssl.
177
178%description static -l ru.UTF-8
179Программа openssl для работы с сертификатами и разделяемые библиотеки,
180которые реализуют множетсво криптографических алгоритмов, включая DES,
181RC4, RSA и SSL. Включает статические библиотеки для разработки
182приложений с использованием OpenSSL.
183
184%description static -l uk.UTF-8
185Програма openssl для роботи з сертифікатами та бібліотеки спільного
186користування, що реалізують велику кількість криптографічних
187алгоритмів, включаючи DES, RC4, RSA та SSL. Містить статичні
188бібліотеки для розробки програм з використанням SSL.
189
190%prep
191%setup -q
192%patch0 -p1
193%patch1 -p1
194%patch2 -p1
195%patch3 -p1
196%patch4 -p1
197%patch5 -p1
198%patch6 -p1
199
200%{__perl} -pi -e 's#%{_prefix}/local/bin/perl#%{__perl}#g' \
201 `grep -l -r "%{_prefix}/local/bin/perl" *`
202
203%build
204touch Makefile.*
205
206%{__perl} util/perlpath.pl %{__perl}
207
208OPTFLAGS="%{rpmcflags} %{?with_purify:-DPURIFY}" \
209./Configure \
210 --openssldir=%{_sysconfdir}/%{name} \
211 --lib=%{_lib} \
212 shared threads \
213 enable-mdc2 enable-rc5 \
214%ifarch %{ix86}
215%ifarch i386
216 386 linux-elf
217# ^- allow running on 80386 (default code uses bswapl available on i486+)
218%else
219 linux-elf
220%endif
221%endif
222%ifarch alpha
223 linux-alpha+bwx-gcc
224%endif
225%ifarch %{x8664}
226 linux-x86_64
227%endif
228%ifarch ia64
229 linux-ia64
230%endif
231%ifarch ppc
232 linux-ppc
233%endif
234%ifarch ppc64
235 linux-ppc64
236%endif
237%ifarch sparc
238 linux-sparcv8
239%endif
240%ifarch sparcv9
241 linux-sparcv9
242%endif
243%ifarch sparc64
244 linux64-sparcv9
245%endif
246
247%{__make} -j1 all rehash %{?with_tests:tests} \
248 CC="%{__cc}" \
249 ASFLAG='$(CFLAG) -Wa,--noexecstack' \
250 INSTALLTOP=%{_prefix}
251
252# Rename POD sources of man pages. "openssl_" prefix is added to each
253# manpage to avoid potential conflicts with other packages.
254
255for dir in doc/{apps,ssl,crypto}; do
256 cd $dir || exit 1;
257 %{__perl} -pi -e 's/(\W)((?<!openssl_)\w+)(\(\d\))/$1openssl_$2$3/g; s/openssl_openssl/openssl/g;' *.pod;
258
259 for pod in !(openssl*).pod; do
260 mv -f $pod openssl_$pod;
261 done
262 cd ../..
263done
264
265%install
266rm -rf $RPM_BUILD_ROOT
267install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_libdir}/%{name}} \
268 $RPM_BUILD_ROOT{%{_mandir}/{pl/man1,man{1,3,5,7}},%{_datadir}/ssl} \
269 $RPM_BUILD_ROOT%{_pkgconfigdir}
270
271%{__make} install \
272 INSTALLTOP=%{_prefix} \
273 INSTALL_PREFIX=$RPM_BUILD_ROOT \
274 MANDIR=%{_mandir}
275
276install libcrypto.a libssl.a $RPM_BUILD_ROOT%{_libdir}
277install lib*.so.*.* $RPM_BUILD_ROOT%{_libdir}
278ln -sf libcrypto.so.*.* $RPM_BUILD_ROOT%{_libdir}/libcrypto.so
279ln -sf libssl.so.*.* $RPM_BUILD_ROOT%{_libdir}/libssl.so
280
281mv -f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/misc/* $RPM_BUILD_ROOT%{_libdir}/%{name}
282rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/misc
283
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
287install %{SOURCE2} $RPM_BUILD_ROOT%{_mandir}/pl/man1/openssl.1
288install %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/ssl-certificate
289
290%clean
291rm -rf $RPM_BUILD_ROOT
292
293%post -p /sbin/ldconfig
294%postun -p /sbin/ldconfig
295
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
309%files
310%defattr(644,root,root,755)
311%doc CHANGES CHANGES.SSLeay LICENSE NEWS README doc/*.txt
312%doc doc/openssl_button.gif doc/openssl_button.html
313%attr(755,root,root) %{_libdir}/libcrypto.so.*.*.*
314%attr(755,root,root) %{_libdir}/libssl.so.*.*.*
315%dir %{_libdir}/engines
316%attr(755,root,root) %{_libdir}/engines/*.so
317%dir %{_sysconfdir}/%{name}
318%dir %{_sysconfdir}/%{name}/certs
319%dir %{_sysconfdir}/%{name}/private
320%dir %{_datadir}/ssl
321
322%files tools
323%defattr(644,root,root,755)
324%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/openssl.cnf
325%attr(755,root,root) %{_bindir}/%{name}
326%attr(754,root,root) %{_bindir}/ssl-certificate
327
328%dir %{_libdir}/%{name}
329%attr(755,root,root) %{_libdir}/%{name}/CA.sh
330%attr(755,root,root) %{_libdir}/%{name}/c_hash
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
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*
345%{_mandir}/man1/openssl_ec.1*
346%{_mandir}/man1/openssl_ecparam.1*
347%{_mandir}/man1/openssl_enc.1*
348%{_mandir}/man1/openssl_errstr.1*
349%{_mandir}/man1/openssl_gendsa.1*
350%{_mandir}/man1/openssl_genrsa.1*
351%{_mandir}/man1/openssl_nseq.1*
352%{_mandir}/man1/openssl_ocsp.1*
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*
360%{_mandir}/man1/openssl_rsautl.1*
361%{_mandir}/man1/openssl_s_client.1*
362%{_mandir}/man1/openssl_s_server.1*
363%{_mandir}/man1/openssl_s_time.1*
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*
371%{_mandir}/man5/openssl_config.5*
372%{_mandir}/man5/openssl_x509v3_config.5*
373%lang(pl) %{_mandir}/pl/man1/openssl.1*
374
375%files tools-perl
376%defattr(644,root,root,755)
377%attr(755,root,root) %{_bindir}/c_rehash
378%attr(755,root,root) %{_libdir}/%{name}/CA.pl
379%{_mandir}/man1/openssl_CA.pl.1*
380
381%files devel
382%defattr(644,root,root,755)
383%attr(755,root,root) %{_libdir}/libcrypto.so
384%attr(755,root,root) %{_libdir}/libssl.so
385%{_includedir}/%{name}
386%{_pkgconfigdir}/libcrypto.pc
387%{_pkgconfigdir}/libssl.pc
388%{_pkgconfigdir}/openssl.pc
389%{_mandir}/man3/openssl*.3*
390%{_mandir}/man7/openssl_des_modes.7*
391
392%files static
393%defattr(644,root,root,755)
394%{_libdir}/lib*.a
This page took 0.026344 seconds and 4 git commands to generate.