%include /usr/lib/rpm/macros.perl
Summary: OpenSSL Toolkit libraries for the "Secure Sockets Layer" (SSL v2/v3)
Summary(de): Secure Sockets Layer (SSL)-Kommunikationslibrary
+Summary(pl): Biblioteki OpenSSL (SSL v2/v3)
Summary(fr): Utilitaires de communication SSL (Secure Sockets Layer)
Name: openssl
-Version: 0.9.6
-Release: 2
+Version: 0.9.6b
+Release: 7
+License: Apache-style License
+Vendor: The OpenSSL Project
Group: Libraries
-Group(pl): Biblioteki
-Group(fr): Librairies
Source0: ftp://ftp.openssl.org/source/%{name}-%{version}.tar.gz
-Patch0: %{name}-perl.patch
-Vendor: The OpenSSL Project
-License: Apache-style License
-BuildRequires: perl
+Patch0: %{name}-alpha-ccc.patch
+# patch1 is only for 0.9.6a version. This version isn't binary
+# compatibile with 0.9.6 but have this same soname.
+Patch1: %{name}-soname.patch
+Patch2: %{name}-optflags.patch
+Patch3: %{name}-nocrypt.patch
+BuildRequires: perl-devel >= 5.6.1
+BuildRequires: textutils
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
Obsoletes: SSLeay
Obsoletes: SSLeay-devel
Obsoletes: SSLeay-perl
+Obsoletes: libopenssl0
%description
The OpenSSL Project is a collaborative effort to develop a robust,
and use it for commercial and non-commercial purposes subject to some
simple license conditions.
-This package contains shared libraries only, install openssl-tools
-if you want to use openssl cmdline tool.
+This package contains shared libraries only, install openssl-tools if
+you want to use openssl cmdline tool.
%description -l de
Openssl enthält das OpenSSL Zertifikatsmanagementtool und shared
partagees qui fournit plusieurs protocoles et algorithmes de
codage/decodage, incluant DES, RC4, RSA et SSL.
+%description -l pl
+Implementacja protoko³ów kryptograficznych Secure Socket Layer (SSL)
+v2/v3 oraz Transport Layer Security (TLS v1).
+
%package tools
Summary: OpenSSL command line tool and utilities
-Group: Utilities
-Group(pl): Narzêdzia
-Group(fr): Utilitaires
+Summary(pl): Zestaw narzêdzi i skryptów
+Group: Applications/Communications
Requires: %{name} = %{version}
%description tools
The OpenSSL Toolkit cmdline tool openssl and utility scripts.
+%description tools -l pl
+Zestaw narzêdzi i skryptów wywo³ywanych z linii poleceñ.
+
%package tools-perl
Summary: OpenSSL utilities written in Perl
-Group: Utilities
-Group(pl): Narzêdzia
-Group(fr): Utilitaires
+Summary(pl): Narzêdzia OpenSSL napisane w perlu
+Group: Applications/Communications
Requires: %{name} = %{version}
%description tools-perl
OpenSSL Toolkit tools written in Perl.
+%description tools-perl -l pl
+Narzêdzia OpenSSL napisane w perlu.
+
%package devel
Summary: Development part of OpenSSL Toolkit libraries
Summary(de): Secure Sockets Layer Kommunikationslibrary: statische libraries+header
Summary(fr): Librairies statiques, headers et utilitaires pour communication SSL
Summary(pl): Czê¶æ bibiloteki OpenSSL przeznaczona dla programistów
Group: Development/Libraries
-Group(pl): Programowanie/Biblioteki
-Group(fr): Development/Librairies
Requires: %{name} = %{version}
+Obsoletes: libopenssl0-devel
%description devel
Development part of OpenSSL library.
%description devel -l pl
Czê¶æ bibiloteki OpenSSL przeznaczona dla programistów.
+%package devel-embed
+Summary: Development part of OpenSSL Toolkit embedded libraries
+Summary(pl): Czê¶æ bibiloteki OpenSSL przeznaczona dla aplikacji wbudowanych
+Group: Development/Libraries
+Requires: %{name} = %{version}
+
%package static
Summary: Static OpenSSL libraries
Summary(pl): Statyczne wersje bibliotek z OpenSSL
Group: Development/Libraries
-Group(pl): Programowanie/Biblioteki
-Group(fr): Development/Librairies
Requires: %{name}-devel = %{version}
%description static
Statyczne wersje bibliotek z OpenSSL.
%prep
-%setup -q
-%patch -p1
+%setup -q
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
%build
-for i in Configure Makefile.org ; do
- perl -pi -e 's#-m486##g' $i
- perl -pi -e 's#-O3 -fomit-frame-pointer#%{optflags}#g' $i
+for f in ` grep -r "%{_prefix}/local/bin/perl" . | cut -d":" -f1`; do
+perl -pi -e 's#%{_prefix}/local/bin/perl#%{_bindir}/perl#g' $f
done
+touch Makefile.*
+
perl util/perlpath.pl %{_bindir}/perl
+OPTFLAGS="%{rpmcflags}"
+export OPTFLAGS
%ifarch i386 i486
./Configure --openssldir=%{_var}/lib/%{name} linux-elf shared 386
%endif
-%ifarch i586 i686
+%ifarch i586 i686 athlon
./Configure --openssldir=%{_var}/lib/%{name} linux-elf shared
%endif
%ifarch ppc
./Configure --openssldir=%{_var}/lib/%{name} linux-ppc shared
%endif
%ifarch alpha
-./Configure --openssldir=%{_var}/lib/%{name} linux-alpha shared
+./Configure --openssldir=%{_var}/lib/%{name} threads linux-alpha+bwx-gcc shared
+%endif
+%ifarch sparc
+./Configure --openssldir=%{_var}/lib/%{name} threads linux-sparcv8 shared
%endif
-%{__make} OPT_FLAGS="$RPM_OPT_FLAGS -DSSL_ALLOW_DH"
-%{__make} INSTALLTOP=%{_prefix} OPT_FLAGS="$RPM_OPT_FLAGS"
+%{__make}
%{__make} rehash
-# Conv PODs to man pages. "openssl_" prefix is added to each manpage
+# Conv PODs to man pages. "openssl_" prefix is added to each manpage
# to avoid potential conflicts with others packages.
center="OpenSSL 0.9.6"
rel="OpenSSL 0.9.6"
-cd doc/apps || exit 1
+cd doc/apps || exit 1
perl -pi -e 's/(\W)((?<!openssl_)\w+)(\(\d\))/$1openssl_$2$3/g; s/openssl_openssl/openssl/g;' *.pod;
-for pod in *.pod; do
- if [ $pod != "openssl.pod" ]; then
- mv $pod openssl_$pod;
- pod=openssl_$pod;
- fi
-
- sec=1
- if [ $pod = "openssl_config.pod" ]; then
- sec=5
- fi
-
- manpage=`basename $pod .pod`.$sec;
- pod2man --section="$sec" --release="$rel" --center="$center" \
- $pod > $manpage;
- echo "$manpage";
+for pod in *.pod; do
+ if [ $pod != "openssl.pod" ]; then
+ mv -f $pod openssl_$pod;
+ pod=openssl_$pod;
+ fi
+
+ sec=1
+ if [ $pod = "openssl_config.pod" ]; then
+ sec=5
+ fi
+
+ manpage=`basename $pod .pod`.$sec;
+ pod2man --section="$sec" --release="$rel" --center="$center" \
+ $pod > $manpage;
+ echo "$manpage";
done
cd ..
sec=3
-for dir in ssl crypto; do
+for dir in ssl crypto; do
cd $dir || exit 1;
if [ $dir = "ssl" ]; then
rel="OpenSSL SSL/TLS library"
- elif [ $dir = "crypto" ]; then
+ elif [ $dir = "crypto" ]; then
rel="OpenSSL cryptographic library"
fi
-
+
perl -p -i -e 's/(\W)((?<!openssl_)\w+)(\(\d\))/$1openssl_$2$3/g; s/openssl_openssl/openssl/g;' *.pod;
-
- for pod in *.pod; do
- sec=`[ "$pod" = "des_modes.pod" ] && echo 7 || echo 3`;
- mv $pod openssl_$pod;
- pod=openssl_$pod;
- manpage=`basename $pod .pod`.$sec;
- pod2man --section="$sec" --release="$rel" --center=" " $pod > $manpage;
- echo "$manpage";
+
+ for pod in *.pod; do
+ sec=`[ "$pod" = "des_modes.pod" ] && echo 7 || echo 3`;
+ mv -f $pod openssl_$pod;
+ pod=openssl_$pod;
+ manpage=`basename $pod .pod`.$sec;
+ pod2man --section="$sec" --release="$rel" --center=" " $pod > $manpage;
+ echo "$manpage";
done
cd ..
done
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_libdir}/%{name}} \
- $RPM_BUILD_ROOT%{_mandir}/man{1,3,5,7}
+ $RPM_BUILD_ROOT%{_mandir}/man{1,3,5,7}
%{__make} install \
INSTALLTOP=%{_prefix} \
INSTALL_PREFIX=$RPM_BUILD_ROOT
-install libRSAglue.a libcrypto.a libssl.a $RPM_BUILD_ROOT%{_libdir}
-install lib*.so.*.* $RPM_BUILD_ROOT%{_libdir}
-cp -df lib*.so $RPM_BUILD_ROOT%{_libdir}
+install libRSAglue.a libcrypto.a libssl.a $RPM_BUILD_ROOT%{_libdir}
+install lib*.so.*.* $RPM_BUILD_ROOT%{_libdir}
+ln -sf libcrypto.so.*.* $RPM_BUILD_ROOT%{_libdir}/libcrypto.so
+ln -sf libssl.so.*.* $RPM_BUILD_ROOT%{_libdir}/libssl.so
-#cd perl
-#make install DESTDIR=$RPM_BUILD_ROOT
-#cd ..
-
-mv $RPM_BUILD_ROOT%{_var}/lib/%{name}/openssl.cnf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
-ln -s ../../../%{_sysconfdir}/%{name}/openssl.cnf \
+mv -f $RPM_BUILD_ROOT%{_var}/lib/%{name}/openssl.cnf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
+ln -s %{_sysconfdir}/%{name}/openssl.cnf \
$RPM_BUILD_ROOT%{_var}/lib/%{name}/%{name}.cnf
-mv $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc/* $RPM_BUILD_ROOT%{_libdir}/%{name}
+mv -f $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc/* $RPM_BUILD_ROOT%{_libdir}/%{name}
rm -rf $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc
-mv $RPM_BUILD_ROOT%{_bindir}/c_rehash $RPM_BUILD_ROOT%{_libdir}/%{name}
-
-strip $RPM_BUILD_ROOT%{_bindir}/* || :
-strip --strip-unneeded $RPM_BUILD_ROOT%{_libdir}/lib*.so.*.*
+mv -f $RPM_BUILD_ROOT%{_bindir}/c_rehash $RPM_BUILD_ROOT%{_libdir}/%{name}
find $RPM_BUILD_ROOT%{_mandir} -type f | xargs rm -f
install doc/apps/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
install doc/ssl/*.3 doc/crypto/*.3 $RPM_BUILD_ROOT%{_mandir}/man3
install doc/crypto/*.7 $RPM_BUILD_ROOT%{_mandir}/man7
-gzip -9nf {CHANGES,CHANGES.SSLeay,LICENSE,NEWS,README,doc/*.txt}
+gzip -9nf CHANGES CHANGES.SSLeay LICENSE NEWS README doc/*.txt
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%dir %{_libdir}/%{name}
%attr(755,root,root) %{_libdir}/%{name}/CA.sh
%attr(755,root,root) %{_libdir}/%{name}/c_hash
-%attr(755,root,root) %{_libdir}/%{name}/c_rehash
%attr(755,root,root) %{_libdir}/%{name}/c_info
%attr(755,root,root) %{_libdir}/%{name}/c_issuer
%attr(755,root,root) %{_libdir}/%{name}/c_name
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/%{name}/CA.pl
%attr(755,root,root) %{_libdir}/%{name}/der_chop
+%attr(755,root,root) %{_libdir}/%{name}/c_rehash
%{_mandir}/man1/openssl_CA.pl.1*
%files devel