make update
[openssl.git] / openssl.spec
1 %define libmaj 0
2 %define libmin 9
3 %define librel 6
4 #%define librev 
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 with full-strength cryptography world-wide. The project is
26 managed by a worldwide community of volunteers that use the Internet to
27 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 with full-strength cryptography world-wide. The project is
47 managed by a worldwide community of volunteers that use the Internet to
48 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 with full-strength cryptography world-wide. The project is
68 managed by a worldwide community of volunteers that use the Internet to
69 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 install MANDIR=/usr/man INSTALL_PREFIX="$RPM_BUILD_ROOT"
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 -s /usr/bin/openssl $RPM_BUILD_ROOT/usr/bin/ssleay
118
119 # Install shared libs
120 install -m644 libcrypto.a $RPM_BUILD_ROOT/usr/lib
121 install -m755 libcrypto.so.%{libmaj}.%{libmin}.%{librel} $RPM_BUILD_ROOT/usr/lib
122 install -m644 libssl.a $RPM_BUILD_ROOT/usr/lib
123 install -m755 libssl.so.%{libmaj}.%{libmin}.%{librel} $RPM_BUILD_ROOT/usr/lib
124 (
125         cd $RPM_BUILD_ROOT/usr/lib
126         ln -s libcrypto.so.%{libmaj}.%{libmin}.%{librel} libcrypto.so.%{libmaj}
127         ln -s libcrypto.so.%{libmaj}.%{libmin}.%{librel} libcrypto.so
128         ln -s libssl.so.%{libmaj}.%{libmin}.%{librel} libssl.so.%{libmaj}
129         ln -s libssl.so.%{libmaj}.%{libmin}.%{librel} libssl.so
130 )
131
132 %clean
133 rm -rf $RPM_BUILD_ROOT
134
135 %files 
136 %defattr(0644,root,root,0755)
137 %doc CHANGES CHANGES.SSLeay LICENSE NEWS README
138
139 %attr(0755,root,root) /usr/bin/*
140 %attr(0755,root,root) /usr/lib/*.so*
141 %attr(0755,root,root) %{openssldir}/misc/*
142 %attr(0644,root,root) /usr/man/man[157]/*
143
144 %config %attr(0644,root,root) %{openssldir}/openssl.cnf 
145 %dir %attr(0755,root,root) %{openssldir}/certs
146 %dir %attr(0755,root,root) %{openssldir}/lib
147 %dir %attr(0755,root,root) %{openssldir}/misc
148 %dir %attr(0750,root,root) %{openssldir}/private
149
150 %files devel
151 %doc CHANGES CHANGES.SSLeay LICENSE NEWS README
152
153 %defattr(0644,root,root,0755)
154 %attr(0644,root,root) /usr/lib/*.a
155 %attr(0644,root,root) /usr/include/openssl/*
156 %attr(0644,root,root) /usr/man/man[3]/*
157
158 %files doc
159 %doc CHANGES CHANGES.SSLeay LICENSE NEWS README
160 %doc doc
161
162 %post
163 ldconfig
164
165 %postun
166 ldconfig
167
168 %changelog
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