]> git.pld-linux.org Git - packages/openssl.git/blob - openssl.spec
- upgraded to OpenSSL-0.9.6
[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(fr):    Utilitaires de communication SSL (Secure Sockets Layer)
5 Name:           openssl
6 Version:        0.9.6
7 Release:        1
8 Group:          Libraries
9 Group(pl):      Biblioteki
10 Group(fr):      Librairies
11 Source0:        ftp://ftp.openssl.org/source/%{name}-%{version}.tar.gz
12 Patch0:         %{name}-perl.patch
13 Vendor:         The OpenSSL Project
14 License:        Apache-style License
15 BuildRequires:  symlinks
16 BuildRequires:  perl
17 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
18 Obsoletes:      SSLeay
19 Obsoletes:      SSLeay-devel
20 Obsoletes:      SSLeay-perl
21
22 %description
23 The OpenSSL Project is a collaborative effort to develop a robust,
24 commercial-grade, full-featured, and Open Source toolkit implementing
25 the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS
26 v1) protocols with full-strength cryptography world-wide. The project
27 is managed by a worldwide community of volunteers that use the
28 Internet to communicate, plan, and develop the OpenSSL tookit and its
29 related documentation.
30
31 OpenSSL is based on the excellent SSLeay library developed by Eric A.
32 Young and Tim J. Hudson. The OpenSSL toolkit is licensed under an
33 Apache-style licence, which basically means that you are free to get
34 and use it for commercial and non-commercial purposes subject to some
35 simple license conditions.
36
37 This package contains shared libraries only, install openssl-tools
38 if you want to use openssl cmdline tool.
39
40 %description -l de
41 Openssl enthält das OpenSSL Zertifikatsmanagementtool und shared
42 libraries, die verschiedene Verschlüsselungs- und
43 Entschlüsselungsalgorithmen und
44 - -protokolle, wie DES, RC4, RSA und SSL zur Verfügung stellen.
45
46 %description -l fr
47 OpenSSL est un outiil de gestion des certificats et les librairies
48 partagees qui fournit plusieurs protocoles et algorithmes de
49 codage/decodage, incluant DES, RC4, RSA et SSL.
50
51 %package tools
52 Summary:        OpenSSL command line tool and utilities
53 Group:          Utilities
54 Group(pl):      Narzêdzia
55 Group(fr):      Utilitaires
56 Requires:       %{name} = %{version}
57
58 %description tools
59 The OpenSSL Toolkit cmdline tool openssl and utility scripts.
60
61 %package tools-perl
62 Summary:        OpenSSL utilities written in Perl
63 Group:          Utilities
64 Group(pl):      Narzêdzia
65 Group(fr):      Utilitaires
66 Requires:       %{name} = %{version}
67
68 %description tools-perl
69 OpenSSL Toolkit tools written in Perl.
70
71 %package devel
72 Summary:        Development part of OpenSSL Toolkit libraries
73 Summary(de):    Secure Sockets Layer Kommunikationslibrary: statische libraries+header
74 Summary(fr):    Librairies statiques, headers et utilitaires pour communication SSL
75 Summary(pl):    Czê¶æ bibiloteki OpenSSL przeznaczona dla programistów
76 Group:          Development/Libraries
77 Group(pl):      Programowanie/Biblioteki
78 Group(fr):      Development/Librairies
79 Requires:       %{name} = %{version}
80
81 %description devel
82 Development part of OpenSSL library.
83
84 %description devel -l pl
85 Czê¶æ bibiloteki OpenSSL przeznaczona dla programistów.
86
87 %package static
88 Summary:        Static OpenSSL libraries
89 Summary(pl):    Statyczne wersje bibliotek z OpenSSL
90 Group:          Development/Libraries
91 Group(pl):      Programowanie/Biblioteki
92 Group(fr):      Development/Librairies
93 Requires:       %{name}-devel = %{version}
94
95 %description static
96 Static OpenSSL Toolkit libraries.
97
98 %description static -l pl
99 Statyczne wersje bibliotek z OpenSSL.
100
101 %prep
102 %setup -q 
103 %patch -p1
104
105 %build
106 for i in Configure Makefile.org ; do
107         perl -pi -e 's#-m486##g' $i
108         perl -pi -e 's#-O3 -fomit-frame-pointer#%{optflags}#g' $i
109 done
110
111 perl util/perlpath.pl %{_bindir}/perl
112
113
114 %ifarch i386 i486 i586 i686
115 ./Configure --openssldir=%{_var}/lib/%{name} linux-elf shared
116 %endif
117 %ifarch ppc
118 ./Configure --openssldir=%{_var}/lib/%{name} linux-ppc shared
119 %endif
120 %ifarch alpha
121 ./Configure --openssldir=%{_var}/lib/%{name} linux-alpha shared
122 %endif
123
124 %{__make} OPT_FLAGS="$RPM_OPT_FLAGS -DSSL_ALLOW_DH"
125 %{__make} INSTALLTOP=%{_prefix} OPT_FLAGS="$RPM_OPT_FLAGS"
126 %{__make} rehash
127
128 # Conv PODs to man pages. "openssl_" prefix is added to each manpage 
129 # to avoid potential conflicts with others packages.
130 center="OpenSSL 0.9.6"
131 rel="OpenSSL 0.9.6"
132
133 cd doc/apps || exit 1 
134 perl -pi -e 's/(\W)((?<!openssl_)\w+)(\(\d\))/$1openssl_$2$3/g; s/openssl_openssl/openssl/g;' *.pod;
135
136 for pod in *.pod; do 
137     if [ $pod != "openssl.pod" ]; then
138         mv $pod openssl_$pod;
139         pod=openssl_$pod;
140     fi
141
142     sec=1
143     if [ $pod = "openssl_config.pod" ]; then
144         sec=5
145     fi
146
147     manpage=`basename $pod .pod`.$sec;      
148     pod2man --section="$sec" --release="$rel" --center="$center" \
149             $pod > $manpage;
150     echo "$manpage";
151 done
152 cd ..
153
154 sec=3
155 for dir in ssl crypto; do 
156         cd $dir || exit 1;
157         if [ $dir = "ssl" ]; then
158                 rel="OpenSSL SSL/TLS library"
159         elif [ $dir = "crypto" ]; then 
160                 rel="OpenSSL cryptographic library"
161         fi
162         
163         perl -p -i -e 's/(\W)((?<!openssl_)\w+)(\(\d\))/$1openssl_$2$3/g; s/openssl_openssl/openssl/g;' *.pod;
164         
165         for pod in *.pod; do 
166             sec=`[ "$pod" = "des_modes.pod" ] && echo 7 || echo 3`;     
167             mv $pod openssl_$pod;
168             pod=openssl_$pod;
169             manpage=`basename $pod .pod`.$sec;
170             pod2man --section="$sec" --release="$rel" --center=" " $pod > $manpage;
171             echo "$manpage";
172         done
173         cd ..
174 done
175
176 #cd perl
177 #perl Makefile.PL
178 #make
179
180 %install
181 rm -rf $RPM_BUILD_ROOT
182 install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_libdir}/%{name}} \
183            $RPM_BUILD_ROOT%{_mandir}/man{1,3,5,7}
184
185 %{__make} install \
186         INSTALLTOP=%{_prefix} \
187         INSTALL_PREFIX=$RPM_BUILD_ROOT
188
189 install libRSAglue.a    $RPM_BUILD_ROOT%{_libdir}
190 install lib*.so.*.*     $RPM_BUILD_ROOT%{_libdir}
191 cp -d   lib*.so         $RPM_BUILD_ROOT%{_libdir}
192
193 #cd perl
194 #make install DESTDIR=$RPM_BUILD_ROOT
195 #cd ..
196
197 mv $RPM_BUILD_ROOT%{_var}/lib/%{name}/openssl.cnf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
198 ln -s %{_sysconfdir}/%{name}/openssl.cnf \
199         $RPM_BUILD_ROOT%{_var}/lib/%{name}/%{name}.cnf
200 symlinks -cs $RPM_BUILD_ROOT%{_var}/lib/%{name}
201
202 mv $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc/*  $RPM_BUILD_ROOT%{_libdir}/%{name}
203 rm -rf $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc
204
205 mv $RPM_BUILD_ROOT%{_bindir}/c_rehash $RPM_BUILD_ROOT%{_libdir}/%{name}
206
207 strip $RPM_BUILD_ROOT%{_bindir}/* || :
208 strip --strip-unneeded $RPM_BUILD_ROOT%{_libdir}/lib*.so.*.*
209
210 find $RPM_BUILD_ROOT%{_mandir} -type f | xargs rm -f
211 install doc/apps/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
212 install doc/apps/*.5 $RPM_BUILD_ROOT%{_mandir}/man5
213 install doc/ssl/*.3 doc/crypto/*.3 $RPM_BUILD_ROOT%{_mandir}/man3
214 install doc/crypto/*.7 $RPM_BUILD_ROOT%{_mandir}/man7
215
216 gzip -9nf {CHANGES,CHANGES.SSLeay,LICENSE,NEWS,README,doc/*.txt} \
217         $RPM_BUILD_ROOT%{_mandir}/man?/*
218
219 %post   -p /sbin/ldconfig
220 %postun -p /sbin/ldconfig
221
222 %clean
223 rm -rf $RPM_BUILD_ROOT
224
225 %files
226 %defattr(644,root,root,755)
227 %attr(755,root,root) %{_libdir}/lib*.so.*.*
228 %doc {CHANGES,CHANGES.SSLeay,LICENSE,NEWS,README}.gz
229 %doc doc/*.txt.gz doc/openssl_button.gif doc/openssl_button.html
230
231 %files tools
232 %defattr(644,root,root,755)
233 %dir %{_sysconfdir}/%{name}
234 %dir %{_var}/lib/%{name}
235 %dir %{_var}/lib/%{name}/private
236 %dir %{_var}/lib/%{name}/certs
237 %verify(not md5 size mtime) %config(noreplace) %{_sysconfdir}/%{name}/openssl.cnf
238 %verify(not md5 size mtime) %config(noreplace) %{_var}/lib/%{name}/openssl.cnf
239
240 %attr(755,root,root) %{_bindir}/%{name}
241 %dir %{_libdir}/%{name}
242 %attr(755,root,root) %{_libdir}/%{name}/CA.sh
243 %attr(755,root,root) %{_libdir}/%{name}/c_hash
244 %attr(755,root,root) %{_libdir}/%{name}/c_rehash
245 %attr(755,root,root) %{_libdir}/%{name}/c_info
246 %attr(755,root,root) %{_libdir}/%{name}/c_issuer
247 %attr(755,root,root) %{_libdir}/%{name}/c_name
248
249 %{_mandir}/man1/openssl.1*
250 %{_mandir}/man1/openssl_asn1parse.1*
251 %{_mandir}/man1/openssl_ca.1*
252 %{_mandir}/man1/openssl_ciphers.1*
253 %{_mandir}/man1/openssl_crl.1*
254 %{_mandir}/man1/openssl_crl2pkcs7.1*
255 %{_mandir}/man1/openssl_dgst.1*
256 %{_mandir}/man1/openssl_dhparam.1*
257 %{_mandir}/man1/openssl_dsa.1*
258 %{_mandir}/man1/openssl_dsaparam.1*
259 %{_mandir}/man1/openssl_enc.1*
260 %{_mandir}/man1/openssl_gendsa.1*
261 %{_mandir}/man1/openssl_genrsa.1*
262 %{_mandir}/man1/openssl_nseq.1*
263 %{_mandir}/man1/openssl_passwd.1*
264 %{_mandir}/man1/openssl_pkcs12.1*
265 %{_mandir}/man1/openssl_pkcs7.1*
266 %{_mandir}/man1/openssl_pkcs8.1*
267 %{_mandir}/man1/openssl_rand.1*
268 %{_mandir}/man1/openssl_req.1*
269 %{_mandir}/man1/openssl_rsa.1*
270 %{_mandir}/man1/openssl_s_client.1*
271 %{_mandir}/man1/openssl_s_server.1*
272 %{_mandir}/man1/openssl_sess_id.1*
273 %{_mandir}/man1/openssl_smime.1*
274 %{_mandir}/man1/openssl_speed.1*
275 %{_mandir}/man1/openssl_spkac.1*
276 %{_mandir}/man1/openssl_verify.1*
277 %{_mandir}/man1/openssl_version.1*
278 %{_mandir}/man1/openssl_x509.1*
279 %{_mandir}/man5/*.5*
280
281 %files tools-perl
282 %defattr(644,root,root,755)
283 %attr(755,root,root) %{_libdir}/%{name}/CA.pl
284 %attr(755,root,root) %{_libdir}/%{name}/der_chop
285 %{_mandir}/man1/openssl_CA.pl.1*
286
287 %files devel
288 %defattr(644,root,root,755)
289 %attr(755,root,root) %{_libdir}/lib*.so
290 %{_includedir}/%{name}
291 %{_mandir}/man3/*.3*
292
293 %files static
294 %defattr(644,root,root,755)
295 %{_libdir}/lib*.a
This page took 0.045612 seconds and 3 git commands to generate.