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