X-Git-Url: http://git.pld-linux.org/?p=packages%2Fopenssl.git;a=blobdiff_plain;f=openssl.spec;h=51979e4446dcd51e62d664c6ec80ba84469d9634;hp=58e78b0a3ae1d2115413e089e03ae20eaa6aa3cf;hb=b31bd83ba041343ab91b34cc14d0f095af2fb1ba;hpb=60c581d043333026784555581d1ab9e666b6121f diff --git a/openssl.spec b/openssl.spec index 58e78b0..51979e4 100644 --- a/openssl.spec +++ b/openssl.spec @@ -1,31 +1,30 @@ %include /usr/lib/rpm/macros.perl -Summary: Library and toolkit for the "Secure Sockets Layer" (SSL v2/v3) -Summary(de): Secure Sockets Layer (SSL)-Kommunikationslibrary & Utilities -Summary(fr): Utilitaires et librairies de communication SSL (Secure Sockets Layer) +Summary: OpenSSL Toolkit libraries for the "Secure Sockets Layer" (SSL v2/v3) +Summary(de): Secure Sockets Layer (SSL)-Kommunikationslibrary +Summary(fr): Utilitaires de communication SSL (Secure Sockets Layer) Name: openssl -Version: 0.9.5a +Version: 0.9.6b Release: 1 +License: Apache-style License +Vendor: The OpenSSL Project Group: Libraries +Group(de): Libraries +Group(es): Bibliotecas Group(fr): Librairies Group(pl): Biblioteki Source0: ftp://ftp.openssl.org/source/%{name}-%{version}.tar.gz -Patch0: openssl-perl.patch -Vendor: The OpenSSL Project -License: Apache-style License -BuildRequires: symlinks -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 +BuildRequires: perl-devel >= 5.6.1 +BuildRequires: textutils BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -Prereq: fileutils -Prereq: sed Obsoletes: SSLeay Obsoletes: SSLeay-devel Obsoletes: SSLeay-perl -%define openssldir /var/lib/openssl -%define _sysconfdir /etc/%{name} -%define _pkglibdir %{_libdir}/%{name} -%define _pkgincludedir %{_includedir}/%{name} - %description The OpenSSL Project is a collaborative effort to develop a robust, commercial-grade, full-featured, and Open Source toolkit implementing @@ -41,6 +40,9 @@ Apache-style licence, which basically means that you are free to get 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. + %description -l de Openssl enthält das OpenSSL Zertifikatsmanagementtool und shared libraries, die verschiedene Verschlüsselungs- und @@ -52,12 +54,34 @@ OpenSSL est un outiil de gestion des certificats et les librairies partagees qui fournit plusieurs protocoles et algorithmes de codage/decodage, incluant DES, RC4, RSA et SSL. +%package tools +Summary: OpenSSL command line tool and utilities +Group: Applications/Communications +Group(de): Applikationen/Kommunikation +Group(pl): Aplikacje/Komunikacja +Requires: %{name} = %{version} + +%description tools +The OpenSSL Toolkit cmdline tool openssl and utility scripts. + +%package tools-perl +Summary: OpenSSL utilities written in Perl +Group: Applications/Communications +Group(de): Applikationen/Kommunikation +Group(fr): Utilitaires +Group(pl): Aplikacje/Komunikacja +Requires: %{name} = %{version} + +%description tools-perl +OpenSSL Toolkit tools written in Perl. + %package devel -Summary: Development part of OpenSSL library -Summary(de): Secure Sockets Layer Kommunikationslibrary: statische libraries+header -Summary(fr): Librairies statiques, headers et utilitaires pour communication SSL (Secure Sockets Layer) +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(de): Entwicklung/Libraries Group(fr): Development/Librairies Group(pl): Programowanie/Biblioteki Requires: %{name} = %{version} @@ -69,75 +93,140 @@ Development part of OpenSSL library. Czê¶æ bibiloteki OpenSSL przeznaczona dla programistów. %package static -Summary: Static OpenSSL library -Summary(pl): Statyczna wersja biblioteki OpenSSL +Summary: Static OpenSSL libraries +Summary(pl): Statyczne wersje bibliotek z OpenSSL Group: Development/Libraries +Group(de): Entwicklung/Libraries Group(fr): Development/Librairies Group(pl): Programowanie/Biblioteki Requires: %{name}-devel = %{version} %description static -Static OpenSSL library. +Static OpenSSL Toolkit libraries. %description static -l pl -Statyczna wersja biblioteki OpenSSL. +Statyczne wersje bibliotek z OpenSSL. %prep %setup -q -%patch -p1 +%patch0 -p1 +%patch1 -p1 +%patch2 -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 "/usr/local/bin/perl" . | cut -d":" -f1`; do + perl -pi -e 's#/usr/local/bin/perl#%{_bindir}/perl#g' $f done -perl util/perlpath.pl %{_bindir} - -./config --openssldir=%{openssldir} +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 +./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} threads linux-alpha+bwx-gcc shared +%endif +%ifarch sparc +./Configure --openssldir=%{_var}/lib/%{name} threads linux-sparcv8 shared +%endif + +%{__make} +%{__make} rehash + +# 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 +perl -pi -e 's/(\W)((? $manpage; + echo "$manpage"; +done +cd .. + +sec=3 +for dir in ssl crypto; do + cd $dir || exit 1; + if [ $dir = "ssl" ]; then + rel="OpenSSL SSL/TLS library" + elif [ $dir = "crypto" ]; then + rel="OpenSSL cryptographic library" + fi + + perl -p -i -e 's/(\W)((? $manpage; + echo "$manpage"; + done + cd .. +done -make OPT_FLAGS="$RPM_OPT_FLAGS" linux-shared -make INSTALLTOP=%{_prefix} OPT_FLAGS="$RPM_OPT_FLAGS" -make rehash #cd perl #perl Makefile.PL #make %install rm -rf $RPM_BUILD_ROOT +install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_libdir}/%{name}} \ + $RPM_BUILD_ROOT%{_mandir}/man{1,3,5,7} -install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_pkglibdir}} - -make install \ +%{__make} install \ INSTALLTOP=%{_prefix} \ INSTALL_PREFIX=$RPM_BUILD_ROOT -install libRSAglue.a $RPM_BUILD_ROOT%{_libdir} +install libRSAglue.a libcrypto.a libssl.a $RPM_BUILD_ROOT%{_libdir} install lib*.so.*.* $RPM_BUILD_ROOT%{_libdir} -cp -d lib*.so $RPM_BUILD_ROOT%{_libdir} - -#cd perl -#make install DESTDIR=$RPM_BUILD_ROOT -#cd .. +ln -sf libcrypto.so.*.* $RPM_BUILD_ROOT%{_libdir}/libcrypto.so +ln -sf libssl.so.*.* $RPM_BUILD_ROOT%{_libdir}/libssl.so -mv $RPM_BUILD_ROOT%{openssldir}/openssl.cnf $RPM_BUILD_ROOT%{_sysconfdir} -ln -s %{_sysconfdir}/openssl.cnf \ - $RPM_BUILD_ROOT%{openssldir}/openssl.cnf -symlinks -cs $RPM_BUILD_ROOT%{openssldir} +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%{openssldir}/misc/* $RPM_BUILD_ROOT%{_pkglibdir} -rm -rf $RPM_BUILD_ROOT%{openssldir}/misc +mv -f $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc/* $RPM_BUILD_ROOT%{_libdir}/%{name} +rm -rf $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc -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} -gzip -9nf CHANGES CHANGES.SSLeay LICENSE NEWS README \ - doc/*.txt doc/*/*pod +find $RPM_BUILD_ROOT%{_mandir} -type f | xargs rm -f +install doc/apps/*.1 $RPM_BUILD_ROOT%{_mandir}/man1 +install doc/apps/*.5 $RPM_BUILD_ROOT%{_mandir}/man5 +install doc/ssl/*.3 doc/crypto/*.3 $RPM_BUILD_ROOT%{_mandir}/man3 +install doc/crypto/*.7 $RPM_BUILD_ROOT%{_mandir}/man7 -%post -%{_bindir}/c_rehash certs -/sbin/ldconfig +gzip -9nf CHANGES CHANGES.SSLeay LICENSE NEWS README doc/*.txt +%post -p /sbin/ldconfig %postun -p /sbin/ldconfig %clean @@ -145,24 +234,71 @@ rm -rf $RPM_BUILD_ROOT %files %defattr(644,root,root,755) -%doc {CHANGES,CHANGES.SSLeay,LICENSE,NEWS,README}.gz -%doc doc/*.txt.gz doc/apps -%doc doc/openssl_button.gif doc/openssl_button.html - -%attr(755,root,root) %{_bindir}/* -%verify(not md5 size mtime) %config(noreplace) %{_sysconfdir}/openssl.cnf -%verify(not md5 size mtime) %config(noreplace) %{openssldir}/openssl.cnf -%{openssldir}/certs -%{openssldir}/private -%dir %{_pkglibdir} -%attr(755,root,root) %{_pkglibdir}/* %attr(755,root,root) %{_libdir}/lib*.so.*.* +%doc {CHANGES,CHANGES.SSLeay,LICENSE,NEWS,README}.gz +%doc doc/*.txt.gz doc/openssl_button.gif doc/openssl_button.html + +%files tools +%defattr(644,root,root,755) +%dir %{_sysconfdir}/%{name} +%dir %{_var}/lib/%{name} +%dir %{_var}/lib/%{name}/private +%dir %{_var}/lib/%{name}/certs +%verify(not md5 size mtime) %config(noreplace) %{_sysconfdir}/%{name}/openssl.cnf +%verify(not md5 size mtime) %config(noreplace) %{_var}/lib/%{name}/openssl.cnf + +%attr(755,root,root) %{_bindir}/%{name} +%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_info +%attr(755,root,root) %{_libdir}/%{name}/c_issuer +%attr(755,root,root) %{_libdir}/%{name}/c_name + +%{_mandir}/man1/openssl.1* +%{_mandir}/man1/openssl_asn1parse.1* +%{_mandir}/man1/openssl_ca.1* +%{_mandir}/man1/openssl_ciphers.1* +%{_mandir}/man1/openssl_crl.1* +%{_mandir}/man1/openssl_crl2pkcs7.1* +%{_mandir}/man1/openssl_dgst.1* +%{_mandir}/man1/openssl_dhparam.1* +%{_mandir}/man1/openssl_dsa.1* +%{_mandir}/man1/openssl_dsaparam.1* +%{_mandir}/man1/openssl_enc.1* +%{_mandir}/man1/openssl_gendsa.1* +%{_mandir}/man1/openssl_genrsa.1* +%{_mandir}/man1/openssl_nseq.1* +%{_mandir}/man1/openssl_passwd.1* +%{_mandir}/man1/openssl_pkcs12.1* +%{_mandir}/man1/openssl_pkcs7.1* +%{_mandir}/man1/openssl_pkcs8.1* +%{_mandir}/man1/openssl_rand.1* +%{_mandir}/man1/openssl_req.1* +%{_mandir}/man1/openssl_rsa.1* +%{_mandir}/man1/openssl_s_client.1* +%{_mandir}/man1/openssl_s_server.1* +%{_mandir}/man1/openssl_sess_id.1* +%{_mandir}/man1/openssl_smime.1* +%{_mandir}/man1/openssl_speed.1* +%{_mandir}/man1/openssl_spkac.1* +%{_mandir}/man1/openssl_verify.1* +%{_mandir}/man1/openssl_version.1* +%{_mandir}/man1/openssl_x509.1* +%{_mandir}/man5/*.5* + +%files tools-perl +%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 %defattr(644,root,root,755) -%doc doc/ssl doc/crypto %attr(755,root,root) %{_libdir}/lib*.so -%{_pkgincludedir} +%{_includedir}/%{name} +%{_mandir}/man3/*.3* %files static %defattr(644,root,root,755)