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