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