Fix buggy if-condition (thomas poindessous <poinde_t@epita.fr>).
[oweals/openssl.git] / openssl.spec
1 %define libmaj 0
2 %define libmin 9
3 %define librel 6
4 %define librev c
5 Release: 1
6
7 %define openssldir /var/ssl
8
9 Summary: Secure Sockets Layer and cryptography libraries and tools
10 Name: openssl
11 #Version: %{libmaj}.%{libmin}.%{librel}
12 Version: %{libmaj}.%{libmin}.%{librel}%{librev}
13 Source0: ftp://ftp.openssl.org/source/%{name}-%{version}.tar.gz
14 Copyright: Freely distributable
15 Group: System Environment/Libraries
16 Provides: SSL
17 URL: http://www.openssl.org/
18 Packager: Damien Miller <djm@mindrot.org>
19 BuildRoot:   /var/tmp/%{name}-%{version}-root
20
21 %description
22 The OpenSSL Project is a collaborative effort to develop a robust,
23 commercial-grade, fully featured, and Open Source toolkit implementing the
24 Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1)
25 protocols as well as a full-strength general purpose cryptography library.
26 The project is managed by a worldwide community of volunteers that use the
27 Internet to communicate, plan, and develop the OpenSSL tookit and its related
28 documentation. 
29
30 OpenSSL is based on the excellent SSLeay library developed from Eric A.
31 Young and Tim J. Hudson.  The OpenSSL toolkit is licensed under an
32 Apache-style licence, which basically means that you are free to get and
33 use it for commercial and non-commercial purposes. 
34
35 This package contains the base OpenSSL cryptography and SSL/TLS 
36 libraries and tools.
37
38 %package devel
39 Summary: Secure Sockets Layer and cryptography static libraries and headers
40 Group: Development/Libraries
41 Requires: openssl
42 %description devel
43 The OpenSSL Project is a collaborative effort to develop a robust,
44 commercial-grade, fully featured, and Open Source toolkit implementing the
45 Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1)
46 protocols as well as a full-strength general purpose cryptography library.
47 The project is managed by a worldwide community of volunteers that use the
48 Internet to communicate, plan, and develop the OpenSSL tookit and its related
49 documentation. 
50
51 OpenSSL is based on the excellent SSLeay library developed from Eric A.
52 Young and Tim J. Hudson.  The OpenSSL toolkit is licensed under an
53 Apache-style licence, which basically means that you are free to get and
54 use it for commercial and non-commercial purposes. 
55
56 This package contains the the OpenSSL cryptography and SSL/TLS 
57 static libraries and header files required when developing applications.
58
59 %package doc
60 Summary: OpenSSL miscellaneous files
61 Group: Documentation
62 Requires: openssl
63 %description doc
64 The OpenSSL Project is a collaborative effort to develop a robust,
65 commercial-grade, fully featured, and Open Source toolkit implementing the
66 Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1)
67 protocols as well as a full-strength general purpose cryptography library.
68 The project is managed by a worldwide community of volunteers that use the
69 Internet to communicate, plan, and develop the OpenSSL tookit and its related
70 documentation. 
71
72 OpenSSL is based on the excellent SSLeay library developed from Eric A.
73 Young and Tim J. Hudson.  The OpenSSL toolkit is licensed under an
74 Apache-style licence, which basically means that you are free to get and
75 use it for commercial and non-commercial purposes. 
76
77 This package contains the the OpenSSL cryptography and SSL/TLS extra
78 documentation and POD files from which the man pages were produced.
79
80 %prep
81
82 %setup -q
83
84 %build 
85
86 %define CONFIG_FLAGS -DSSL_ALLOW_ADH --prefix=/usr 
87
88 perl util/perlpath.pl /usr/bin/perl
89
90 %ifarch i386 i486 i586 i686
91 ./Configure %{CONFIG_FLAGS} --openssldir=%{openssldir} linux-elf shared
92 %endif
93 %ifarch ppc
94 ./Configure %{CONFIG_FLAGS} --openssldir=%{openssldir} linux-ppc shared
95 %endif
96 %ifarch alpha
97 ./Configure %{CONFIG_FLAGS} --openssldir=%{openssldir} linux-alpha shared
98 %endif
99 LD_LIBRARY_PATH=`pwd` make
100 LD_LIBRARY_PATH=`pwd` make rehash
101 LD_LIBRARY_PATH=`pwd` make test
102
103 %install
104 rm -rf $RPM_BUILD_ROOT
105 make MANDIR=/usr/man INSTALL_PREFIX="$RPM_BUILD_ROOT" install
106
107 # Rename manpages
108 for x in $RPM_BUILD_ROOT/usr/man/man*/* 
109         do mv ${x} ${x}ssl
110 done
111
112 # Install RSAref stuff
113 install -m644 rsaref/rsaref.h $RPM_BUILD_ROOT/usr/include/openssl
114 install -m644 libRSAglue.a $RPM_BUILD_ROOT/usr/lib
115
116 # Make backwards-compatibility symlink to ssleay
117 ln -sf /usr/bin/openssl $RPM_BUILD_ROOT/usr/bin/ssleay
118
119 %clean
120 rm -rf $RPM_BUILD_ROOT
121
122 %files 
123 %defattr(0644,root,root,0755)
124 %doc CHANGES CHANGES.SSLeay LICENSE NEWS README
125
126 %attr(0755,root,root) /usr/bin/*
127 %attr(0755,root,root) /usr/lib/*.so*
128 %attr(0755,root,root) %{openssldir}/misc/*
129 %attr(0644,root,root) /usr/man/man[157]/*
130
131 %config %attr(0644,root,root) %{openssldir}/openssl.cnf 
132 %dir %attr(0755,root,root) %{openssldir}/certs
133 %dir %attr(0755,root,root) %{openssldir}/lib
134 %dir %attr(0755,root,root) %{openssldir}/misc
135 %dir %attr(0750,root,root) %{openssldir}/private
136
137 %files devel
138 %defattr(0644,root,root,0755)
139 %doc CHANGES CHANGES.SSLeay LICENSE NEWS README
140
141 %attr(0644,root,root) /usr/lib/*.a
142 %attr(0644,root,root) /usr/include/openssl/*
143 %attr(0644,root,root) /usr/man/man[3]/*
144
145 %files doc
146 %defattr(0644,root,root,0755)
147 %doc CHANGES CHANGES.SSLeay LICENSE NEWS README
148 %doc doc
149
150 %post
151 ldconfig
152
153 %postun
154 ldconfig
155
156 %changelog
157 * Thu Mar 22 2001 Richard Levitte <richard@levitte.org>
158 - Removed redundant subsection that re-installed libcrypto.a and libssl.a
159   as well.
160 * Thu Mar 15 2001 Jeremiah Johnson <jjohnson@penguincomputing.com>
161 - Removed redundant subsection that re-installed libcrypto.so.0.9.6 and
162   libssl.so.0.9.6.  As well as the subsection that created symlinks for
163   these.  make install handles all this.
164 * Sat Oct 21 2000 Horms <horms@vergenet.net>
165 - Make sure symlinks are created by using -f flag to ln.
166   Otherwise some .so libraries are copied rather than
167   linked in the resulting binary RPM. This causes the package
168   to be larger than neccessary and makes ldconfig complain.
169 * Fri Oct 13 2000 Horms <horms@vergenet.net>
170 - Make defattr is set for files in all packages so packages built as
171   non-root will still be installed with files owned by root.
172 * Thu Sep 14 2000 Richard Levitte <richard@levitte.org>
173 - Changed to adapt to the new (supported) way of making shared libraries
174 - Installs all static libraries, not just libRSAglue.a
175 - Extra documents now end up in a separate document package
176 * Sun Feb 27 2000 Damien Miller <djm@mindrot.org>
177 - Merged patches to spec
178 - Updated to 0.9.5beta2 (now with manpages)
179 * Sat Feb  5 2000 Michal Jaegermann <michal@harddata.com>
180 - added 'linux-alpha' to configuration
181 - fixed nasty absolute links
182 * Tue Jan 25 2000 Bennett Todd <bet@rahul.net>
183 - Added -DSSL_ALLOW_ADH, bumped Release to 4
184 * Thu Oct 14 1999 Damien Miller <djm@mindrot.org>
185 - Set default permissions
186 - Removed documentation from devel sub-package
187 * Thu Sep 30 1999 Damien Miller <djm@mindrot.org>
188 - Added "make test" stage
189 - GPG signed
190 * Tue Sep 10 1999 Damien Miller <damien@ibs.com.au>
191 - Updated to version 0.9.4
192 * Tue May 25 1999 Damien Miller <damien@ibs.com.au>
193 - Updated to version 0.9.3
194 - Added attributes for all files
195 - Paramatised openssl directory
196 * Sat Mar 20 1999 Carlo M. Arenas Belon <carenas@jmconsultores.com.pe>
197 - Added "official" bnrec patch and taking other out
198 - making a link from ssleay to openssl binary
199 - putting all changelog together on SPEC file
200 * Fri Mar  5 1999 Henri Gomez <gomez@slib.fr>
201 - Added bnrec patch
202 * Tue Dec 29 1998 Jonathan Ruano <kobalt@james.encomix.es>
203 - minimum spec and patches changes for openssl
204 - modified for openssl sources
205 * Sat Aug  8 1998 Khimenko Victor <khim@sch57.msk.ru>
206 - shared library creating process honours $RPM_OPT_FLAGS
207 - shared libarry supports threads (as well as static library)
208 * Wed Jul 22 1998 Khimenko Victor <khim@sch57.msk.ru>
209 - building of shared library completely reworked
210 * Tue Jul 21 1998 Khimenko Victor <khim@sch57.msk.ru>
211 - RPM is BuildRoot'ed
212 * Tue Feb 10 1998 Khimenko Victor <khim@sch57.msk.ru>
213 - all stuff is moved out of /usr/local