]> git.pld-linux.org Git - packages/openssl.git/blame_incremental - openssl.spec
- outdated
[packages/openssl.git] / openssl.spec
... / ...
CommitLineData
1
2# Conditional build:
3%bcond_without 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.8f
18Release: 4
19License: Apache-style License
20Group: Libraries
21Source0: ftp://ftp.openssl.org/source/%{name}-%{version}.tar.gz
22# Source0-md5: 114bf908eb1b293d11d3e6b18a09269f
23Source1: %{name}-ca-bundle.crt
24Source2: %{name}.1.pl
25Source3: %{name}-ssl-certificate.sh
26Patch0: %{name}-alpha-ccc.patch
27Patch1: %{name}-optflags.patch
28Patch2: %{name}-globalCA.diff
29Patch3: %{name}-include.patch
30Patch4: %{name}-md5-sparcv9.patch
31Patch5: %{name}-libvar.patch
32Patch6: %{name}-fix-version.patch
33URL: http://www.openssl.org/
34BuildRequires: bc
35BuildRequires: perl-devel >= 1:5.6.1
36BuildRequires: rpm-perlprov >= 4.1-13
37BuildRequires: rpmbuild(macros) >= 1.213
38BuildRequires: sed >= 4.0
39Obsoletes: SSLeay
40Obsoletes: SSLeay-devel
41Obsoletes: SSLeay-perl
42Obsoletes: libopenssl0
43BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
44
45%description
46The OpenSSL Project is a collaborative effort to develop a robust,
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.
53
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.
59
60This package contains shared libraries only, install openssl-tools if
61you want to use openssl cmdline tool.
62
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.
68
69%description -l es.UTF-8
70Biblioteca C que suministra algoritmos y protocolos criptográficos.
71
72%description -l fr.UTF-8
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.
76
77%description -l pl.UTF-8
78Implementacja protokołów kryptograficznych Secure Socket Layer (SSL)
79v2/v3 oraz Transport Layer Security (TLS v1).
80
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.
85
86%description -l ru.UTF-8
87Программа openssl для работы с сертификатами и разделяемые библиотеки,
88которые реализуют множетсво криптографических алгоритмов, включая DES,
89RC4, RSA и SSL.
90
91%description -l uk.UTF-8
92Програма openssl для роботи з сертифікатами та бібліотеки спільного
93користування, що реалізують велику кількість криптографічних
94алгоритмів, включаючи DES, RC4, RSA та SSL.
95
96%package tools
97Summary: OpenSSL command line tool and utilities
98Summary(pl.UTF-8): Zestaw narzędzi i skryptów
99Group: Applications/Communications
100Requires: %{name} = %{version}-%{release}
101
102%description tools
103The OpenSSL Toolkit cmdline tool openssl and utility scripts.
104
105%description tools -l pl.UTF-8
106Zestaw narzędzi i skryptów wywoływanych z linii poleceń.
107
108%package tools-perl
109Summary: OpenSSL utilities written in Perl
110Summary(pl.UTF-8): Narzędzia OpenSSL napisane w perlu
111Group: Applications/Communications
112Requires: %{name} = %{version}-%{release}
113
114%description tools-perl
115OpenSSL Toolkit tools written in Perl.
116
117%description tools-perl -l pl.UTF-8
118Narzędzia OpenSSL napisane w perlu.
119
120%package devel
121Summary: Development part of OpenSSL Toolkit libraries
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
129Group: Development/Libraries
130Requires: %{name} = %{version}-%{release}
131Obsoletes: libopenssl0-devel
132
133%description devel
134Development part of OpenSSL library.
135
136%description devel -l es.UTF-8
137Bibliotecas y archivos de inclusión para desarrollo OpenSSL
138
139%description devel -l pl.UTF-8
140Część biblioteki OpenSSL przeznaczona dla programistów.
141
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.
146
147%description devel -l ru.UTF-8
148Программа openssl для работы с сертификатами и разделяемые библиотеки,
149которые реализуют множетсво криптографических алгоритмов, включая DES,
150RC4, RSA и SSL. Включает библиотеки и хедеры для разработки приложений
151с использованием SSL.
152
153%description devel -l uk.UTF-8
154Програма openssl для роботи з сертифікатами та бібліотеки спільного
155користування, що реалізують велику кількість криптографічних
156алгоритмів, включаючи DES, RC4, RSA та SSL. Містить бібліотеки та
157хедери для розробки програм з використанням SSL.
158
159%package static
160Summary: Static OpenSSL libraries
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
165Group: Development/Libraries
166Requires: %{name}-devel = %{version}-%{release}
167
168%description static
169Static OpenSSL Toolkit libraries.
170
171%description static -l pl.UTF-8
172Statyczne wersje bibliotek z OpenSSL.
173
174%description static -l pt_BR.UTF-8
175Bibliotecas estáticas para desenvolvimento com openssl.
176
177%description static -l ru.UTF-8
178Программа openssl для работы с сертификатами и разделяемые библиотеки,
179которые реализуют множетсво криптографических алгоритмов, включая DES,
180RC4, RSA и SSL. Включает статические библиотеки для разработки
181приложений с использованием OpenSSL.
182
183%description static -l uk.UTF-8
184Програма openssl для роботи з сертифікатами та бібліотеки спільного
185користування, що реалізують велику кількість криптографічних
186алгоритмів, включаючи DES, RC4, RSA та SSL. Містить статичні
187бібліотеки для розробки програм з використанням SSL.
188
189%prep
190%setup -q
191%patch0 -p1
192%patch1 -p1
193%patch2 -p1
194%patch3 -p1
195%patch4 -p1
196%patch5 -p1
197%patch6 -p1
198
199%build
200%{__perl} -pi -e 's#%{_prefix}/local/bin/perl#%{__perl}#g' \
201 `grep -l -r "%{_prefix}/local/bin/perl" *`
202
203touch Makefile.*
204
205%{__perl} util/perlpath.pl %{__perl}
206
207OPTFLAGS="%{rpmcflags} %{?with_purify:-DPURIFY}"
208LDFLAGS="%{rpmldflags}"
209export OPTFLAGS LDFLAGS
210./Configure \
211 --openssldir=%{_var}/lib/%{name} \
212 --lib=%{_lib} \
213 shared threads \
214 enable-mdc2 enable-rc5 \
215%ifarch %{ix86}
216%ifarch i386
217 386 linux-elf
218# ^- allow running on 80386 (default code uses bswapl available on i486+)
219%else
220 linux-elf
221%endif
222%endif
223%ifarch alpha
224 linux-alpha+bwx-gcc
225%endif
226%ifarch %{x8664}
227 linux-x86_64
228%endif
229%ifarch ia64
230 linux-ia64
231%endif
232%ifarch ppc
233 linux-ppc
234%endif
235%ifarch ppc64
236 linux-ppc64
237%endif
238%ifarch sparc
239 linux-sparcv8
240%endif
241%ifarch sparcv9
242 linux-sparcv9
243%endif
244%ifarch sparc64
245 linux64-sparcv9
246%endif
247
248%{__make} -j1 all rehash %{?with_tests:tests} \
249 CC="%{__cc}" \
250 INSTALLTOP=%{_prefix}
251
252# Conv PODs to man pages. "openssl_" prefix is added to each manpage
253# to avoid potential conflicts with others packages.
254center="OpenSSL 0.9.7"
255rel="OpenSSL 0.9.7"
256
257cd doc/apps || exit 1
258%{__perl} -pi -e 's/(\W)((?<!openssl_)\w+)(\(\d\))/$1openssl_$2$3/g; s/openssl_openssl/openssl/g;' *.pod;
259
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";
275done
276cd ..
277
278sec=3
279for dir in ssl crypto; do
280 cd $dir || exit 1;
281 if [ $dir = "ssl" ]; then
282 rel="OpenSSL SSL/TLS library"
283 elif [ $dir = "crypto" ]; then
284 rel="OpenSSL cryptographic library"
285 fi
286
287 %{__perl} -pi -e 's/(\W)((?<!openssl_)\w+)(\(\d\))/$1openssl_$2$3/g; s/openssl_openssl/openssl/g;' *.pod;
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";
296 done
297 cd ..
298done
299
300#cd perl
301#%%{__perl} Makefile.PL \
302# INSTALLDIRS=vendor
303#%{__make}
304
305%install
306rm -rf $RPM_BUILD_ROOT
307install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_libdir}/%{name}} \
308 $RPM_BUILD_ROOT{%{_mandir}/{pl/man1,man{1,3,5,7}},%{_datadir}/ssl} \
309 $RPM_BUILD_ROOT%{_pkgconfigdir}
310
311%{__make} install \
312 CC="%{__cc}" \
313 INSTALLTOP=%{_prefix} \
314 INSTALL_PREFIX=$RPM_BUILD_ROOT \
315 MANDIR=%{_mandir}
316
317install %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/ssl/ca-bundle.crt
318install libcrypto.a libssl.a $RPM_BUILD_ROOT%{_libdir}
319install lib*.so.*.* $RPM_BUILD_ROOT%{_libdir}
320ln -sf libcrypto.so.*.* $RPM_BUILD_ROOT%{_libdir}/libcrypto.so
321ln -sf libssl.so.*.* $RPM_BUILD_ROOT%{_libdir}/libssl.so
322
323mv -f $RPM_BUILD_ROOT%{_var}/lib/%{name}/openssl.cnf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
324ln -s %{_sysconfdir}/%{name}/openssl.cnf \
325 $RPM_BUILD_ROOT%{_var}/lib/%{name}/%{name}.cnf
326
327mv -f $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc/* $RPM_BUILD_ROOT%{_libdir}/%{name}
328rm -rf $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc
329
330install %{SOURCE2} $RPM_BUILD_ROOT%{_mandir}/pl/man1/openssl.1
331install %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/ssl-certificate
332
333rm $RPM_BUILD_ROOT%{_mandir}{/man7/des_modes.7,/man5/config.5,/man5/x509v3_config.5}
334echo ".so openssl_des_modes.7" > $RPM_BUILD_ROOT%{_mandir}/man7/des_modes.7
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
337
338%clean
339rm -rf $RPM_BUILD_ROOT
340
341%post -p /sbin/ldconfig
342%postun -p /sbin/ldconfig
343
344%files
345%defattr(644,root,root,755)
346%doc CHANGES CHANGES.SSLeay LICENSE NEWS README doc/*.txt
347%doc doc/openssl_button.gif doc/openssl_button.html
348%attr(755,root,root) %{_libdir}/libcrypto.so.*.*.*
349%attr(755,root,root) %{_libdir}/libssl.so.*.*.*
350%dir %{_libdir}/engines
351%attr(755,root,root) %{_libdir}/engines/*.so
352%dir %{_var}/lib/%{name}
353%dir %{_var}/lib/%{name}/certs
354%dir %{_var}/lib/%{name}/private
355%dir %{_datadir}/ssl
356%config(noreplace) %verify(not md5 mtime size) %{_datadir}/ssl/ca-bundle.crt
357
358%files tools
359%defattr(644,root,root,755)
360%dir %{_sysconfdir}/%{name}
361
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
364
365%attr(755,root,root) %{_bindir}/%{name}
366%attr(754,root,root) %{_bindir}/ssl-certificate
367
368%dir %{_libdir}/%{name}
369%attr(755,root,root) %{_libdir}/%{name}/CA.sh
370%attr(755,root,root) %{_libdir}/%{name}/c_hash
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
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*
385%{_mandir}/man1/openssl_ec.1*
386%{_mandir}/man1/openssl_ecparam.1*
387%{_mandir}/man1/openssl_enc.1*
388%{_mandir}/man1/openssl_errstr.1*
389%{_mandir}/man1/openssl_gendsa.1*
390%{_mandir}/man1/openssl_genrsa.1*
391%{_mandir}/man1/openssl_nseq.1*
392%{_mandir}/man1/openssl_ocsp.1*
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*
400%{_mandir}/man1/openssl_rsautl.1*
401%{_mandir}/man1/openssl_s_client.1*
402%{_mandir}/man1/openssl_s_server.1*
403%{_mandir}/man1/openssl_s_time.1*
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*
412%lang(pl) %{_mandir}/pl/man1/openssl.1*
413
414%files tools-perl
415%defattr(644,root,root,755)
416%attr(755,root,root) %{_bindir}/c_rehash
417%attr(755,root,root) %{_libdir}/%{name}/CA.pl
418%{_mandir}/man1/openssl_CA.pl.1*
419
420%files devel
421%defattr(644,root,root,755)
422%attr(755,root,root) %{_libdir}/libcrypto.so
423%attr(755,root,root) %{_libdir}/libssl.so
424%{_includedir}/%{name}
425%{_pkgconfigdir}/libcrypto.pc
426%{_pkgconfigdir}/libssl.pc
427%{_pkgconfigdir}/openssl.pc
428%{_mandir}/man3/openssl*.3*
429%{_mandir}/man7/*.7*
430
431%files static
432%defattr(644,root,root,755)
433%{_libdir}/lib*.a
This page took 0.035737 seconds and 4 git commands to generate.