- rel 6 for th
[packages/openssl.git] / openssl.spec
1 %include        /usr/lib/rpm/macros.perl
2 Summary:        OpenSSL Toolkit libraries for the "Secure Sockets Layer" (SSL v2/v3)
3 Summary(de):    Secure Sockets Layer (SSL)-Kommunikationslibrary
4 Summary(es):    Biblioteca C que suministra algoritmos y protocolos criptográficos
5 Summary(fr):    Utilitaires de communication SSL (Secure Sockets Layer)
6 Summary(pl):    Biblioteki OpenSSL (SSL v2/v3)
7 Summary(pt_BR): Uma biblioteca C que fornece vários algoritmos e protocolos criptográficos
8 Summary(ru):    âÉÂÌÉÏÔÅËÉ É ÕÔÉÌÉÔÙ ÄÌÑ ÓÏÅÄÉÎÅÎÉÊ ÞÅÒÅÚ Secure Sockets Layer
9 Summary(uk):    â¦Â̦ÏÔÅËÉ ÔÁ ÕÔÉ̦ÔÉ ÄÌÑ Ú'¤ÄÎÁÎØ ÞÅÒÅÚ Secure Sockets Layer
10 Name:           openssl
11 Version:        0.9.7d
12 Release:        6
13 License:        Apache-style License
14 Group:          Libraries
15 Source0:        ftp://ftp.openssl.org/source/%{name}-%{version}.tar.gz
16 # Source0-md5:  1b49e90fc8a75c3a507c0a624529aca5
17 Source1:        %{name}-ca-bundle.crt
18 Source2:        %{name}.1.pl
19 Source3:        %{name}-ssl-certificate.sh
20 Patch0:         %{name}-alpha-ccc.patch
21 Patch1:         %{name}-optflags.patch
22 Patch2:         %{name}-globalCA.diff
23 Patch3:         %{name}-include.patch
24 Patch4:         %{name}-smime.patch
25 URL:            http://www.openssl.org/
26 BuildRequires:  perl-devel >= 1:5.6.1
27 BuildRequires:  rpm-perlprov >= 4.1-13
28 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
29 Obsoletes:      SSLeay
30 Obsoletes:      SSLeay-devel
31 Obsoletes:      SSLeay-perl
32 Obsoletes:      libopenssl0
33
34 %description
35 The OpenSSL Project is a collaborative effort to develop a robust,
36 commercial-grade, full-featured, and Open Source toolkit implementing
37 the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS
38 v1) protocols with full-strength cryptography world-wide. The project
39 is managed by a worldwide community of volunteers that use the
40 Internet to communicate, plan, and develop the OpenSSL tookit and its
41 related documentation.
42
43 OpenSSL is based on the excellent SSLeay library developed by Eric A.
44 Young and Tim J. Hudson. The OpenSSL toolkit is licensed under an
45 Apache-style licence, which basically means that you are free to get
46 and use it for commercial and non-commercial purposes subject to some
47 simple license conditions.
48
49 This package contains shared libraries only, install openssl-tools if
50 you want to use openssl cmdline tool.
51
52 %description -l de
53 Openssl enthält das OpenSSL Zertifikatsmanagementtool und shared
54 libraries, die verschiedene Verschlüsselungs- und
55 Entschlüsselungsalgorithmen und -protokolle, wie DES, RC4, RSA und SSL
56 zur Verfügung stellen.
57
58 %description -l es
59 Biblioteca C que suministra algoritmos y protocolos criptográficos.
60
61 %description -l fr
62 OpenSSL est un outiil de gestion des certificats et les librairies
63 partagees qui fournit plusieurs protocoles et algorithmes de
64 codage/decodage, incluant DES, RC4, RSA et SSL.
65
66 %description -l pl
67 Implementacja protoko³ów kryptograficznych Secure Socket Layer (SSL)
68 v2/v3 oraz Transport Layer Security (TLS v1).
69
70 %description -l pt_BR
71 Uma biblioteca C que fornece vários algoritmos e protocolos
72 criptográficos, incluindo DES, RC4, RSA e SSL. Inclui bibliotecas
73 compartilhadas e utilitários.
74
75 %description -l ru
76 ðÒÏÇÒÁÍÍÁ openssl ÄÌÑ ÒÁÂÏÔÙ Ó ÓÅÒÔÉÆÉËÁÔÁÍÉ É ÒÁÚÄÅÌÑÅÍÙÅ ÂÉÂÌÉÏÔÅËÉ,
77 ËÏÔÏÒÙÅ ÒÅÁÌÉÚÕÀÔ ÍÎÏÖÅÔÓ×Ï ËÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÈ ÁÌÇÏÒÉÔÍÏ×, ×ËÌÀÞÁÑ DES,
78 RC4, RSA É SSL.
79
80 %description -l uk
81 ðÒÏÇÒÁÍÁ openssl ÄÌÑ ÒÏÂÏÔÉ Ú ÓÅÒÔÉƦËÁÔÁÍÉ ÔÁ Â¦Â̦ÏÔÅËÉ ÓЦÌØÎÏÇÏ
82 ËÏÒÉÓÔÕ×ÁÎÎÑ, ÝÏ ÒÅÁ̦ÚÕÀÔØ ×ÅÌÉËՠ˦ÌØ˦ÓÔØ ËÒÉÐÔÏÇÒÁƦÞÎÉÈ
83 ÁÌÇÏÒÉÔͦ×, ×ËÌÀÞÁÀÞÉ DES, RC4, RSA ÔÁ SSL.
84
85 %package tools
86 Summary:        OpenSSL command line tool and utilities
87 Summary(pl):    Zestaw narzêdzi i skryptów
88 Group:          Applications/Communications
89 Requires:       %{name} = %{version}-%{release}
90
91 %description tools
92 The OpenSSL Toolkit cmdline tool openssl and utility scripts.
93
94 %description tools -l pl
95 Zestaw narzêdzi i skryptów wywo³ywanych z linii poleceñ.
96
97 %package tools-perl
98 Summary:        OpenSSL utilities written in Perl
99 Summary(pl):    Narzêdzia OpenSSL napisane w perlu
100 Group:          Applications/Communications
101 Requires:       %{name} = %{version}-%{release}
102
103 %description tools-perl
104 OpenSSL Toolkit tools written in Perl.
105
106 %description tools-perl -l pl
107 Narzêdzia OpenSSL napisane w perlu.
108
109 %package devel
110 Summary:        Development part of OpenSSL Toolkit libraries
111 Summary(de):    Secure Sockets Layer Kommunikationslibrary: statische libraries+header
112 Summary(es):    Bibliotecas y archivos de inclusión para desarrollo OpenSSL
113 Summary(fr):    Librairies statiques, headers et utilitaires pour communication SSL
114 Summary(pl):    Czê¶æ bibiloteki OpenSSL przeznaczona dla programistów
115 Summary(pt_BR): Bibliotecas e arquivos de inclusão para desenvolvimento OpenSSL
116 Summary(ru):    âÉÂÌÉÏÔÅËÉ, ÈÅÄÅÒÙ É ÕÔÉÌÉÔÙ ÄÌÑ Secure Sockets Layer
117 Summary(uk):    â¦Â̦ÏÔÅËÉ, ÈÅÄÅÒÉ ÔÁ ÕÔÉ̦ÔÉ ÄÌÑ Secure Sockets Layer
118 Group:          Development/Libraries
119 Requires:       %{name} = %{version}-%{release}
120 Obsoletes:      libopenssl0-devel
121
122 %description devel
123 Development part of OpenSSL library.
124
125 %description devel -l es
126 Bibliotecas y archivos de inclusión para desarrollo OpenSSL
127
128 %description devel -l pl
129 Czê¶æ biblioteki OpenSSL przeznaczona dla programistów.
130
131 %description devel -l pt_BR
132 Uma biblioteca C que fornece vários algoritmos e protocolos
133 criptográficos, incluindo DES, RC4, RSA e SSL. Inclui bibliotecas e
134 arquivos de inclusão para desenvolvimento.
135
136 %description devel -l ru
137 ðÒÏÇÒÁÍÍÁ openssl ÄÌÑ ÒÁÂÏÔÙ Ó ÓÅÒÔÉÆÉËÁÔÁÍÉ É ÒÁÚÄÅÌÑÅÍÙÅ ÂÉÂÌÉÏÔÅËÉ,
138 ËÏÔÏÒÙÅ ÒÅÁÌÉÚÕÀÔ ÍÎÏÖÅÔÓ×Ï ËÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÈ ÁÌÇÏÒÉÔÍÏ×, ×ËÌÀÞÁÑ DES,
139 RC4, RSA É SSL. ÷ËÌÀÞÁÅÔ ÂÉÂÌÉÏÔÅËÉ É ÈÅÄÅÒÙ ÄÌÑ ÒÁÚÒÁÂÏÔËÉ ÐÒÉÌÏÖÅÎÉÊ
140 Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ SSL.
141
142 %description devel -l uk
143 ðÒÏÇÒÁÍÁ openssl ÄÌÑ ÒÏÂÏÔÉ Ú ÓÅÒÔÉƦËÁÔÁÍÉ ÔÁ Â¦Â̦ÏÔÅËÉ ÓЦÌØÎÏÇÏ
144 ËÏÒÉÓÔÕ×ÁÎÎÑ, ÝÏ ÒÅÁ̦ÚÕÀÔØ ×ÅÌÉËՠ˦ÌØ˦ÓÔØ ËÒÉÐÔÏÇÒÁƦÞÎÉÈ
145 ÁÌÇÏÒÉÔͦ×, ×ËÌÀÞÁÀÞÉ DES, RC4, RSA ÔÁ SSL. í¦ÓÔÉÔؠ¦Â̦ÏÔÅËÉ ÔÁ
146 ÈÅÄÅÒÉ ÄÌÑ ÒÏÚÒÏÂËÉ ÐÒÏÇÒÁÍ Ú ×ÉËÏÒÉÓÔÁÎÎÑÍ SSL.
147
148 %package static
149 Summary:        Static OpenSSL libraries
150 Summary(pl):    Statyczne wersje bibliotek z OpenSSL
151 Summary(pt_BR): Bibliotecas estáticas para desenvolvimento com openssl
152 Summary(ru):    óÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ ÒÁÚÒÁÂÏÔÞÉËÁ ÄÌÑ OpenSSL
153 Summary(uk):    óÔÁÔÉÞΦ Â¦Â̦ÏÔÅËÉ ÐÒÏÇÒÁͦÓÔÁ ÄÌÑ OpenSSL
154 Group:          Development/Libraries
155 Requires:       %{name}-devel = %{version}-%{release}
156
157 %description static
158 Static OpenSSL Toolkit libraries.
159
160 %description static -l pl
161 Statyczne wersje bibliotek z OpenSSL.
162
163 %description static -l pt_BR
164 Bibliotecas estáticas para desenvolvimento com openssl.
165
166 %description static -l ru
167 ðÒÏÇÒÁÍÍÁ openssl ÄÌÑ ÒÁÂÏÔÙ Ó ÓÅÒÔÉÆÉËÁÔÁÍÉ É ÒÁÚÄÅÌÑÅÍÙÅ ÂÉÂÌÉÏÔÅËÉ,
168 ËÏÔÏÒÙÅ ÒÅÁÌÉÚÕÀÔ ÍÎÏÖÅÔÓ×Ï ËÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÈ ÁÌÇÏÒÉÔÍÏ×, ×ËÌÀÞÁÑ DES,
169 RC4, RSA É SSL. ÷ËÌÀÞÁÅÔ ÓÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ ÄÌÑ ÒÁÚÒÁÂÏÔËÉ
170 ÐÒÉÌÏÖÅÎÉÊ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ OpenSSL.
171
172 %description static -l uk
173 ðÒÏÇÒÁÍÁ openssl ÄÌÑ ÒÏÂÏÔÉ Ú ÓÅÒÔÉƦËÁÔÁÍÉ ÔÁ Â¦Â̦ÏÔÅËÉ ÓЦÌØÎÏÇÏ
174 ËÏÒÉÓÔÕ×ÁÎÎÑ, ÝÏ ÒÅÁ̦ÚÕÀÔØ ×ÅÌÉËՠ˦ÌØ˦ÓÔØ ËÒÉÐÔÏÇÒÁƦÞÎÉÈ
175 ÁÌÇÏÒÉÔͦ×, ×ËÌÀÞÁÀÞÉ DES, RC4, RSA ÔÁ SSL. í¦ÓÔÉÔØ ÓÔÁÔÉÞΦ
176 ¦Â̦ÏÔÅËÉ ÄÌÑ ÒÏÚÒÏÂËÉ ÐÒÏÇÒÁÍ Ú ×ÉËÏÒÉÓÔÁÎÎÑÍ SSL.
177
178 %prep
179 %setup -q
180 %patch0 -p1
181 %patch1 -p1
182 %patch2 -p1
183 %patch3 -p1
184 %patch4 -p1
185
186 %build
187 %{__perl} -pi -e 's#%{_prefix}/local/bin/perl#%{__perl}#g' \
188         `grep -l -r "%{_prefix}/local/bin/perl" *`
189
190 touch Makefile.*
191
192 %{__perl} util/perlpath.pl %{__perl}
193
194 OPTFLAGS="%{rpmcflags}"
195 export OPTFLAGS
196 %ifarch %{ix86}
197 %ifarch i386 i486
198 ./Configure --openssldir=%{_var}/lib/%{name} linux-elf shared 386
199 %else
200 ./Configure --openssldir=%{_var}/lib/%{name} linux-elf shared
201 %endif
202 %endif
203 %ifarch alpha
204 ./Configure --openssldir=%{_var}/lib/%{name} threads linux-alpha+bwx-gcc shared
205 %endif
206 %ifarch amd64
207 ./Configure --openssldir=%{_var}/lib/%{name} linux-x86_64 shared
208 %endif
209 %ifarch ia64
210 ./Configure --openssldir=%{_var}/lib/%{name} linux-ia64 shared
211 %endif
212 %ifarch ppc
213 ./Configure --openssldir=%{_var}/lib/%{name} linux-ppc shared
214 %endif
215 %ifarch sparc
216 ./Configure --openssldir=%{_var}/lib/%{name} threads linux-sparcv8 shared
217 %endif
218 %ifarch sparcv9
219 ./Configure --openssldir=%{_var}/lib/%{name} threads linux-sparcv9 shared
220 %endif
221 %ifarch sparc64
222 ./Configure --openssldir=%{_var}/lib/%{name} threads linux64-sparcv9 shared
223 %endif
224
225 %{__make} \
226         CC="%{__cc}" \
227         INSTALLTOP=%{_prefix}
228
229 %{__make} rehash \
230         CC="%{__cc}" \
231         INSTALLTOP=%{_prefix}
232
233 # Conv PODs to man pages. "openssl_" prefix is added to each manpage
234 # to avoid potential conflicts with others packages.
235 center="OpenSSL 0.9.7"
236 rel="OpenSSL 0.9.7"
237
238 cd doc/apps || exit 1
239 %{__perl} -pi -e 's/(\W)((?<!openssl_)\w+)(\(\d\))/$1openssl_$2$3/g; s/openssl_openssl/openssl/g;' *.pod;
240
241 for pod in *.pod; do
242         if [ $pod != "openssl.pod" ]; then
243                 mv -f $pod openssl_$pod;
244                 pod=openssl_$pod;
245         fi
246
247         sec=1
248         if [ $pod = "openssl_config.pod" ]; then
249                 sec=5
250         fi
251
252         manpage=`basename $pod .pod`.$sec;
253         pod2man --section="$sec" --release="$rel" --center="$center" \
254                 $pod > $manpage;
255         echo "$manpage";
256 done
257 cd ..
258
259 sec=3
260 for dir in ssl crypto; do
261         cd $dir || exit 1;
262         if [ $dir = "ssl" ]; then
263                 rel="OpenSSL SSL/TLS library"
264         elif [ $dir = "crypto" ]; then
265                 rel="OpenSSL cryptographic library"
266         fi
267
268         %{__perl} -pi -e 's/(\W)((?<!openssl_)\w+)(\(\d\))/$1openssl_$2$3/g; s/openssl_openssl/openssl/g;' *.pod;
269
270         for pod in *.pod; do
271                 sec=`[ "$pod" = "des_modes.pod" ] && echo 7 || echo 3`;
272                 mv -f $pod openssl_$pod;
273                 pod=openssl_$pod;
274                 manpage=`basename $pod .pod`.$sec;
275                 pod2man --section="$sec" --release="$rel" --center=" " $pod > $manpage;
276                 echo "$manpage";
277         done
278         cd ..
279 done
280
281 #cd perl
282 #%%{__perl} Makefile.PL \
283 #       INSTALLDIRS=vendor
284 #%{__make}
285
286 %install
287 rm -rf $RPM_BUILD_ROOT
288 install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_libdir}/%{name}} \
289         $RPM_BUILD_ROOT{%{_mandir}/{pl/man1,man{1,3,5,7}},%{_datadir}/ssl} \
290         $RPM_BUILD_ROOT%{_pkgconfigdir}
291
292 %{__make} install \
293         CC="%{__cc}" \
294         INSTALLTOP=%{_prefix} \
295         INSTALL_PREFIX=$RPM_BUILD_ROOT \
296         MANDIR=%{_mandir}
297
298 if [ "%{_prefix}/lib/pkgconfig" != "%{_pkgconfigdir}" ] ; then
299         mv $RPM_BUILD_ROOT%{_prefix}/lib/pkgconfig/* \
300                 $RPM_BUILD_ROOT%{_pkgconfigdir}
301 fi
302
303 install %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/ssl/ca-bundle.crt
304 install libcrypto.a libssl.a $RPM_BUILD_ROOT%{_libdir}
305 install lib*.so.*.* $RPM_BUILD_ROOT%{_libdir}
306 ln -sf libcrypto.so.*.* $RPM_BUILD_ROOT%{_libdir}/libcrypto.so
307 ln -sf libssl.so.*.* $RPM_BUILD_ROOT%{_libdir}/libssl.so
308
309 mv -f $RPM_BUILD_ROOT%{_var}/lib/%{name}/openssl.cnf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
310 ln -s %{_sysconfdir}/%{name}/openssl.cnf \
311         $RPM_BUILD_ROOT%{_var}/lib/%{name}/%{name}.cnf
312
313 mv -f $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc/* $RPM_BUILD_ROOT%{_libdir}/%{name}
314 rm -rf $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc
315
316 mv -f $RPM_BUILD_ROOT%{_bindir}/c_rehash $RPM_BUILD_ROOT%{_libdir}/%{name}
317
318 find $RPM_BUILD_ROOT%{_mandir} -type f | xargs rm -f
319 install doc/apps/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
320 install doc/apps/*.5 $RPM_BUILD_ROOT%{_mandir}/man5
321 install doc/ssl/*.3 doc/crypto/*.3 $RPM_BUILD_ROOT%{_mandir}/man3
322 install doc/crypto/*.7 $RPM_BUILD_ROOT%{_mandir}/man7
323 install %{SOURCE2} $RPM_BUILD_ROOT%{_mandir}/pl/man1/openssl.1
324 install %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/ssl-certificate
325
326 %clean
327 rm -rf $RPM_BUILD_ROOT
328
329 %post   -p /sbin/ldconfig
330 %postun -p /sbin/ldconfig
331
332 %files
333 %defattr(644,root,root,755)
334 %attr(755,root,root) %{_libdir}/lib*.so.*.*
335 %doc CHANGES CHANGES.SSLeay LICENSE NEWS README doc/*.txt
336 %doc doc/openssl_button.gif doc/openssl_button.html
337 %dir %{_var}/lib/%{name}
338 %dir %{_var}/lib/%{name}/certs
339 %dir %{_var}/lib/%{name}/private
340
341 %files tools
342 %defattr(644,root,root,755)
343 %dir %{_sysconfdir}/%{name}
344
345 %verify(not md5 size mtime) %config(noreplace) %{_sysconfdir}/%{name}/openssl.cnf
346 %verify(not md5 size mtime) %config(noreplace) %{_var}/lib/%{name}/openssl.cnf
347 %dir %{_datadir}/ssl
348 %verify(not md5 size mtime) %config(noreplace) %{_datadir}/ssl/ca-bundle.crt
349
350 %attr(755,root,root) %{_bindir}/%{name}
351 %attr(754,root,root) %{_bindir}/ssl-certificate
352 %dir %{_libdir}/%{name}
353 %attr(755,root,root) %{_libdir}/%{name}/CA.sh
354 %attr(755,root,root) %{_libdir}/%{name}/c_hash
355 %attr(755,root,root) %{_libdir}/%{name}/c_info
356 %attr(755,root,root) %{_libdir}/%{name}/c_issuer
357 %attr(755,root,root) %{_libdir}/%{name}/c_name
358
359 %{_mandir}/man1/openssl.1*
360 %{_mandir}/man1/openssl_asn1parse.1*
361 %{_mandir}/man1/openssl_ca.1*
362 %{_mandir}/man1/openssl_ciphers.1*
363 %{_mandir}/man1/openssl_crl.1*
364 %{_mandir}/man1/openssl_crl2pkcs7.1*
365 %{_mandir}/man1/openssl_dgst.1*
366 %{_mandir}/man1/openssl_dhparam.1*
367 %{_mandir}/man1/openssl_dsa.1*
368 %{_mandir}/man1/openssl_dsaparam.1*
369 %{_mandir}/man1/openssl_enc.1*
370 %{_mandir}/man1/openssl_gendsa.1*
371 %{_mandir}/man1/openssl_genrsa.1*
372 %{_mandir}/man1/openssl_nseq.1*
373 %{_mandir}/man1/openssl_ocsp.1*
374 %{_mandir}/man1/openssl_passwd.1*
375 %{_mandir}/man1/openssl_pkcs12.1*
376 %{_mandir}/man1/openssl_pkcs7.1*
377 %{_mandir}/man1/openssl_pkcs8.1*
378 %{_mandir}/man1/openssl_rand.1*
379 %{_mandir}/man1/openssl_req.1*
380 %{_mandir}/man1/openssl_rsa.1*
381 %{_mandir}/man1/openssl_rsautl.1*
382 %{_mandir}/man1/openssl_s_client.1*
383 %{_mandir}/man1/openssl_s_server.1*
384 %{_mandir}/man1/openssl_s_time.1*
385 %{_mandir}/man1/openssl_sess_id.1*
386 %{_mandir}/man1/openssl_smime.1*
387 %{_mandir}/man1/openssl_speed.1*
388 %{_mandir}/man1/openssl_spkac.1*
389 %{_mandir}/man1/openssl_verify.1*
390 %{_mandir}/man1/openssl_version.1*
391 %{_mandir}/man1/openssl_x509.1*
392 %{_mandir}/man5/*.5*
393 %lang(pl) %{_mandir}/pl/man1/openssl.1*
394
395 %files tools-perl
396 %defattr(644,root,root,755)
397 %attr(755,root,root) %{_libdir}/%{name}/CA.pl
398 %attr(755,root,root) %{_libdir}/%{name}/der_chop
399 %attr(755,root,root) %{_libdir}/%{name}/c_rehash
400 %{_mandir}/man1/openssl_CA.pl.1*
401
402 %files devel
403 %defattr(644,root,root,755)
404 %attr(755,root,root) %{_libdir}/lib*.so
405 %{_includedir}/%{name}
406 %{_pkgconfigdir}/openssl.pc
407 %{_mandir}/man3/openssl*.3*
408 %{_mandir}/man7/*.7*
409
410 %files static
411 %defattr(644,root,root,755)
412 %{_libdir}/lib*.a
This page took 0.072614 seconds and 3 git commands to generate.