X-Git-Url: http://git.pld-linux.org/?p=packages%2Fopenssl.git;a=blobdiff_plain;f=openssl.spec;h=8ddbc348b30eec9a8f3742326ba4ff93ffbe06bd;hp=f2a3bdd6e3ce44f0e227081fd97b5cc304e82e68;hb=3b0168a635a29adc92556e2f25a442ebf20ff4b4;hpb=2403ba81605690a860ac189475d8c77dc611fc27 diff --git a/openssl.spec b/openssl.spec index f2a3bdd..8ddbc34 100644 --- a/openssl.spec +++ b/openssl.spec @@ -1,40 +1,61 @@ # +# TODO: consider dropping last optflags.patch hunk and return to SOMAJOR (.so.1) sonames +# # Conditional build: -%bcond_with purify # Compile openssl with \-DPURIFY, usefull when one wants to +%bcond_without tests # don't perform "make tests" +%bcond_with purify # Compile openssl with \-DPURIFY, useful when one wants to # use valgrind debugger against openssl-linked programs + %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(es): Biblioteca C que suministra algoritmos y protocolos criptográficos -Summary(fr): Utilitaires de communication SSL (Secure Sockets Layer) -Summary(pl): Biblioteki OpenSSL (SSL v2/v3) -Summary(pt_BR): Uma biblioteca C que fornece vários algoritmos e protocolos criptográficos -Summary(ru): âÉÂÌÉÏÔÅËÉ É ÕÔÉÌÉÔÙ ÄÌÑ ÓÏÅÄÉÎÅÎÉÊ ÞÅÒÅÚ Secure Sockets Layer -Summary(uk): â¦Â̦ÏÔÅËÉ ÔÁ ÕÔÉ̦ÔÉ ÄÌÑ Ú'¤ÄÎÁÎØ ÞÅÒÅÚ Secure Sockets Layer +Summary(de.UTF-8): Secure Sockets Layer (SSL)-Kommunikationslibrary +Summary(es.UTF-8): Biblioteca C que suministra algoritmos y protocolos criptográficos +Summary(fr.UTF-8): Utilitaires de communication SSL (Secure Sockets Layer) +Summary(pl.UTF-8): Biblioteki OpenSSL (SSL v2/v3) +Summary(pt_BR.UTF-8): Uma biblioteca C que fornece vários algoritmos e protocolos criptográficos +Summary(ru.UTF-8): Библиотеки и утилиты для соединений через Secure Sockets Layer +Summary(uk.UTF-8): Бібліотеки та утиліти для з'єднань через Secure Sockets Layer Name: openssl -Version: 0.9.8b +Version: 1.0.1f Release: 1 -License: Apache-style License +License: Apache-like Group: Libraries Source0: ftp://ftp.openssl.org/source/%{name}-%{version}.tar.gz -# Source0-md5: 12cedbeb6813a0d7919dbf1f82134b86 -Source1: %{name}-ca-bundle.crt +# Source0-md5: f26b09c028a0541cab33da697d522b25 Source2: %{name}.1.pl Source3: %{name}-ssl-certificate.sh +Source4: %{name}-c_rehash.sh Patch0: %{name}-alpha-ccc.patch Patch1: %{name}-optflags.patch Patch2: %{name}-globalCA.diff Patch3: %{name}-include.patch -Patch4: %{name}-md5-sparcv9.patch +Patch4: %{name}-man-namespace.patch +Patch5: %{name}-asflag.patch +Patch6: %{name}-ca-certificates.patch +Patch7: %{name}-ldflags.patch +Patch8: %{name}-find.patch +Patch9: %{name}-pod.patch + +# from debian +Patch10: default_bits.patch +Patch11: pic.patch +Patch12: stddef.patch + URL: http://www.openssl.org/ +BuildRequires: bc BuildRequires: perl-devel >= 1:5.6.1 BuildRequires: rpm-perlprov >= 4.1-13 BuildRequires: rpmbuild(macros) >= 1.213 BuildRequires: sed >= 4.0 +Requires: ca-certificates >= 20080809-4 +Requires: rpm-whiteout >= 1.7 Obsoletes: SSLeay Obsoletes: SSLeay-devel Obsoletes: SSLeay-perl Obsoletes: libopenssl0 +Conflicts: neon < 0.29.6-8 +Conflicts: openssh-clients < 2:6.2p2-3 +Conflicts: openssh-server < 2:6.2p2-3 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description @@ -55,72 +76,115 @@ 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 -Entschlüsselungsalgorithmen und -protokolle, wie DES, RC4, RSA und SSL -zur Verfügung stellen. +%description -l de.UTF-8 +Openssl enthält das OpenSSL Zertifikatsmanagementtool und shared +libraries, die verschiedene Verschlüsselungs- und +Entschlüsselungsalgorithmen und -protokolle, wie DES, RC4, RSA und SSL +zur Verfügung stellen. -%description -l es -Biblioteca C que suministra algoritmos y protocolos criptográficos. +%description -l es.UTF-8 +Biblioteca C que suministra algoritmos y protocolos criptográficos. -%description -l fr +%description -l fr.UTF-8 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. -%description -l pl -Implementacja protoko³ów kryptograficznych Secure Socket Layer (SSL) +%description -l pl.UTF-8 +Implementacja protokołów kryptograficznych Secure Socket Layer (SSL) v2/v3 oraz Transport Layer Security (TLS v1). -%description -l pt_BR -Uma biblioteca C que fornece vários algoritmos e protocolos -criptográficos, incluindo DES, RC4, RSA e SSL. Inclui bibliotecas -compartilhadas e utilitários. +%description -l pt_BR.UTF-8 +Uma biblioteca C que fornece vários algoritmos e protocolos +criptográficos, incluindo DES, RC4, RSA e SSL. Inclui bibliotecas +compartilhadas e utilitários. + +%description -l ru.UTF-8 +Программа openssl для работы с сертификатами и разделяемые библиотеки, +которые реализуют множетсво криптографических алгоритмов, включая DES, +RC4, RSA и SSL. + +%description -l uk.UTF-8 +Програма openssl для роботи з сертифікатами та бібліотеки спільного +користування, що реалізують велику кількість криптографічних +алгоритмів, включаючи DES, RC4, RSA та SSL. -%description -l ru -ðÒÏÇÒÁÍÍÁ openssl ÄÌÑ ÒÁÂÏÔÙ Ó ÓÅÒÔÉÆÉËÁÔÁÍÉ É ÒÁÚÄÅÌÑÅÍÙÅ ÂÉÂÌÉÏÔÅËÉ, -ËÏÔÏÒÙÅ ÒÅÁÌÉÚÕÀÔ ÍÎÏÖÅÔÓ×Ï ËÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÈ ÁÌÇÏÒÉÔÍÏ×, ×ËÌÀÞÁÑ DES, -RC4, RSA É SSL. +%package engines +Summary: OpenSSL optional crypto engines +Summary(pl.UTF-8): Opcjonalne silniki kryptograficzne dla OpenSSL-a +Group: Libraries +Requires: %{name} = %{version}-%{release} -%description -l uk -ðÒÏÇÒÁÍÁ openssl ÄÌÑ ÒÏÂÏÔÉ Ú ÓÅÒÔÉƦËÁÔÁÍÉ ÔÁ ¦Â̦ÏÔÅËÉ ÓЦÌØÎÏÇÏ -ËÏÒÉÓÔÕ×ÁÎÎÑ, ÝÏ ÒÅÁ̦ÚÕÀÔØ ×ÅÌÉËÕ Ë¦ÌØ˦ÓÔØ ËÒÉÐÔÏÇÒÁƦÞÎÉÈ -ÁÌÇÏÒÉÔͦ×, ×ËÌÀÞÁÀÞÉ DES, RC4, RSA ÔÁ SSL. +%description engines +With OpenSSL 0.9.6, a new component was added to support alternative +cryptography implementations, most commonly for interfacing with +external crypto devices (eg. accelerator cards). This component is +called ENGINE. + +There are currently built-in ENGINE implementations for the following +crypto devices: + +- CryptoSwift +- Compaq Atalla +- nCipher CHIL +- Nuron +- Broadcom uBSec + +In addition, dynamic binding to external ENGINE implementations is now +provided by a special ENGINE called "dynamic". + +%description engines -l pl.UTF-8 +Począwszy od OpenSSL-a 0.9.6 został dodany nowy komponent, mający +wspierać alternatywne implementacje kryptografii, przeważnie +współpracujące z zewnętrznymi urządzeniami kryptograficznymi (np. +kartami akceleratorów). Komponent ten jest nazywany SILNIKIEM (ang. +ENGINE). + +Obecnie istnieją wbudowane implementacje silników dla następujących +urządzeń kryptograficznych: +- CryptoSwift +- Compaq Atalla +- nCipher CHIL +- Nuron +- Broadcom uBSec + +Ponadto zapewnione jest dynamiczne wiązanie dla zewnętrznych +implementacji silników poprzez specjalny silnik o nazwie "dynamic". %package tools Summary: OpenSSL command line tool and utilities -Summary(pl): Zestaw narzêdzi i skryptów +Summary(pl.UTF-8): Zestaw narzędzi i skryptów Group: Applications/Communications Requires: %{name} = %{version}-%{release} +Requires: which %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ñ. +%description tools -l pl.UTF-8 +Zestaw narzędzi i skryptów wywoływanych z linii poleceń. %package tools-perl Summary: OpenSSL utilities written in Perl -Summary(pl): Narzêdzia OpenSSL napisane w perlu +Summary(pl.UTF-8): Narzędzia OpenSSL napisane w perlu Group: Applications/Communications Requires: %{name} = %{version}-%{release} %description tools-perl OpenSSL Toolkit tools written in Perl. -%description tools-perl -l pl -Narzêdzia OpenSSL napisane w perlu. +%description tools-perl -l pl.UTF-8 +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(es): Bibliotecas y archivos de inclusión para desarrollo OpenSSL -Summary(fr): Librairies statiques, headers et utilitaires pour communication SSL -Summary(pl): Czê¶æ bibiloteki OpenSSL przeznaczona dla programistów -Summary(pt_BR): Bibliotecas e arquivos de inclusão para desenvolvimento OpenSSL -Summary(ru): âÉÂÌÉÏÔÅËÉ, ÈÅÄÅÒÙ É ÕÔÉÌÉÔÙ ÄÌÑ Secure Sockets Layer -Summary(uk): â¦Â̦ÏÔÅËÉ, ÈÅÄÅÒÉ ÔÁ ÕÔÉ̦ÔÉ ÄÌÑ Secure Sockets Layer +Summary(de.UTF-8): Secure Sockets Layer Kommunikationslibrary: statische libraries+header +Summary(es.UTF-8): Bibliotecas y archivos de inclusión para desarrollo OpenSSL +Summary(fr.UTF-8): Librairies statiques, headers et utilitaires pour communication SSL +Summary(pl.UTF-8): Część bibiloteki OpenSSL przeznaczona dla programistów +Summary(pt_BR.UTF-8): Bibliotecas e arquivos de inclusão para desenvolvimento OpenSSL +Summary(ru.UTF-8): Библиотеки, хедеры и утилиты для Secure Sockets Layer +Summary(uk.UTF-8): Бібліотеки, хедери та утиліти для Secure Sockets Layer Group: Development/Libraries Requires: %{name} = %{version}-%{release} Obsoletes: libopenssl0-devel @@ -128,58 +192,58 @@ Obsoletes: libopenssl0-devel %description devel Development part of OpenSSL library. -%description devel -l es -Bibliotecas y archivos de inclusión para desarrollo OpenSSL +%description devel -l es.UTF-8 +Bibliotecas y archivos de inclusión para desarrollo OpenSSL -%description devel -l pl -Czê¶æ biblioteki OpenSSL przeznaczona dla programistów. +%description devel -l pl.UTF-8 +Część biblioteki OpenSSL przeznaczona dla programistów. -%description devel -l pt_BR -Uma biblioteca C que fornece vários algoritmos e protocolos -criptográficos, incluindo DES, RC4, RSA e SSL. Inclui bibliotecas e -arquivos de inclusão para desenvolvimento. +%description devel -l pt_BR.UTF-8 +Uma biblioteca C que fornece vários algoritmos e protocolos +criptográficos, incluindo DES, RC4, RSA e SSL. Inclui bibliotecas e +arquivos de inclusão para desenvolvimento. -%description devel -l ru -ðÒÏÇÒÁÍÍÁ openssl ÄÌÑ ÒÁÂÏÔÙ Ó ÓÅÒÔÉÆÉËÁÔÁÍÉ É ÒÁÚÄÅÌÑÅÍÙÅ ÂÉÂÌÉÏÔÅËÉ, -ËÏÔÏÒÙÅ ÒÅÁÌÉÚÕÀÔ ÍÎÏÖÅÔÓ×Ï ËÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÈ ÁÌÇÏÒÉÔÍÏ×, ×ËÌÀÞÁÑ DES, -RC4, RSA É SSL. ÷ËÌÀÞÁÅÔ ÂÉÂÌÉÏÔÅËÉ É ÈÅÄÅÒÙ ÄÌÑ ÒÁÚÒÁÂÏÔËÉ ÐÒÉÌÏÖÅÎÉÊ -Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ SSL. +%description devel -l ru.UTF-8 +Программа openssl для работы с сертификатами и разделяемые библиотеки, +которые реализуют множетсво криптографических алгоритмов, включая DES, +RC4, RSA и SSL. Включает библиотеки и хедеры для разработки приложений +с использованием SSL. -%description devel -l uk -ðÒÏÇÒÁÍÁ openssl ÄÌÑ ÒÏÂÏÔÉ Ú ÓÅÒÔÉƦËÁÔÁÍÉ ÔÁ ¦Â̦ÏÔÅËÉ ÓЦÌØÎÏÇÏ -ËÏÒÉÓÔÕ×ÁÎÎÑ, ÝÏ ÒÅÁ̦ÚÕÀÔØ ×ÅÌÉËÕ Ë¦ÌØ˦ÓÔØ ËÒÉÐÔÏÇÒÁƦÞÎÉÈ -ÁÌÇÏÒÉÔͦ×, ×ËÌÀÞÁÀÞÉ DES, RC4, RSA ÔÁ SSL. í¦ÓÔÉÔØ Â¦Â̦ÏÔÅËÉ ÔÁ -ÈÅÄÅÒÉ ÄÌÑ ÒÏÚÒÏÂËÉ ÐÒÏÇÒÁÍ Ú ×ÉËÏÒÉÓÔÁÎÎÑÍ SSL. +%description devel -l uk.UTF-8 +Програма openssl для роботи з сертифікатами та бібліотеки спільного +користування, що реалізують велику кількість криптографічних +алгоритмів, включаючи DES, RC4, RSA та SSL. Містить бібліотеки та +хедери для розробки програм з використанням SSL. %package static Summary: Static OpenSSL libraries -Summary(pl): Statyczne wersje bibliotek z OpenSSL -Summary(pt_BR): Bibliotecas estáticas para desenvolvimento com openssl -Summary(ru): óÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ ÒÁÚÒÁÂÏÔÞÉËÁ ÄÌÑ OpenSSL -Summary(uk): óÔÁÔÉÞΦ ¦Â̦ÏÔÅËÉ ÐÒÏÇÒÁͦÓÔÁ ÄÌÑ OpenSSL +Summary(pl.UTF-8): Statyczne wersje bibliotek z OpenSSL +Summary(pt_BR.UTF-8): Bibliotecas estáticas para desenvolvimento com openssl +Summary(ru.UTF-8): Статические библиотеки разработчика для OpenSSL +Summary(uk.UTF-8): Статичні бібліотеки програміста для OpenSSL Group: Development/Libraries Requires: %{name}-devel = %{version}-%{release} %description static Static OpenSSL Toolkit libraries. -%description static -l pl +%description static -l pl.UTF-8 Statyczne wersje bibliotek z OpenSSL. -%description static -l pt_BR -Bibliotecas estáticas para desenvolvimento com openssl. +%description static -l pt_BR.UTF-8 +Bibliotecas estáticas para desenvolvimento com openssl. -%description static -l ru -ðÒÏÇÒÁÍÍÁ openssl ÄÌÑ ÒÁÂÏÔÙ Ó ÓÅÒÔÉÆÉËÁÔÁÍÉ É ÒÁÚÄÅÌÑÅÍÙÅ ÂÉÂÌÉÏÔÅËÉ, -ËÏÔÏÒÙÅ ÒÅÁÌÉÚÕÀÔ ÍÎÏÖÅÔÓ×Ï ËÒÉÐÔÏÇÒÁÆÉÞÅÓËÉÈ ÁÌÇÏÒÉÔÍÏ×, ×ËÌÀÞÁÑ DES, -RC4, RSA É SSL. ÷ËÌÀÞÁÅÔ ÓÔÁÔÉÞÅÓËÉÅ ÂÉÂÌÉÏÔÅËÉ ÄÌÑ ÒÁÚÒÁÂÏÔËÉ -ÐÒÉÌÏÖÅÎÉÊ Ó ÉÓÐÏÌØÚÏ×ÁÎÉÅÍ OpenSSL. +%description static -l ru.UTF-8 +Программа openssl для работы с сертификатами и разделяемые библиотеки, +которые реализуют множетсво криптографических алгоритмов, включая DES, +RC4, RSA и SSL. Включает статические библиотеки для разработки +приложений с использованием OpenSSL. -%description static -l uk -ðÒÏÇÒÁÍÁ openssl ÄÌÑ ÒÏÂÏÔÉ Ú ÓÅÒÔÉƦËÁÔÁÍÉ ÔÁ ¦Â̦ÏÔÅËÉ ÓЦÌØÎÏÇÏ -ËÏÒÉÓÔÕ×ÁÎÎÑ, ÝÏ ÒÅÁ̦ÚÕÀÔØ ×ÅÌÉËÕ Ë¦ÌØ˦ÓÔØ ËÒÉÐÔÏÇÒÁƦÞÎÉÈ -ÁÌÇÏÒÉÔͦ×, ×ËÌÀÞÁÀÞÉ DES, RC4, RSA ÔÁ SSL. í¦ÓÔÉÔØ ÓÔÁÔÉÞΦ -¦Â̦ÏÔÅËÉ ÄÌÑ ÒÏÚÒÏÂËÉ ÐÒÏÇÒÁÍ Ú ×ÉËÏÒÉÓÔÁÎÎÑÍ SSL. +%description static -l uk.UTF-8 +Програма openssl для роботи з сертифікатами та бібліотеки спільного +користування, що реалізують велику кількість криптографічних +алгоритмів, включаючи DES, RC4, RSA та SSL. Містить статичні +бібліотеки для розробки програм з використанням SSL. %prep %setup -q @@ -188,25 +252,44 @@ RC4, RSA %patch2 -p1 %patch3 -p1 %patch4 -p1 +%patch5 -p1 +%patch6 -p1 +%patch7 -p1 +%patch8 -p1 +%patch9 -p1 -%build -%{__perl} -pi -e 's#%{_prefix}/local/bin/perl#%{__perl}#g' \ - `grep -l -r "%{_prefix}/local/bin/perl" *` +%patch10 -p1 +%patch11 -p1 +%patch12 -p1 +sed -i -e 's|\$prefix/\$libdir/engines|/%{_lib}/engines|g' Configure + +%build touch Makefile.* %{__perl} util/perlpath.pl %{__perl} -OPTFLAGS="%{rpmcflags} %{?with_purify:-DPURIFY}" -export OPTFLAGS -./Configure \ - --openssldir=%{_var}/lib/%{name} \ - shared threads \ - enable-mdc2 enable-rc5 \ +OPTFLAGS="%{rpmcflags} %{rpmcppflags} %{?with_purify:-DPURIFY}" \ +PERL="%{__perl}" \ +%{__perl} ./Configure \ + --openssldir=%{_sysconfdir}/%{name} \ + --libdir=%{_lib} \ + shared \ + threads \ + zlib \ + enable-tlsext \ + enable-seed \ + enable-rfc3779 \ + enable-camelia \ + enable-cms \ + enable-idea \ + enable-mdc2 \ + enable-md2 \ + enable-rc5 \ %ifarch %{ix86} %ifarch i386 -# allow running on 80386 (default code uses bswapl available on i486+) 386 linux-elf +# ^- allow running on 80386 (default code uses bswapl available on i486+) %else linux-elf %endif @@ -235,108 +318,54 @@ export OPTFLAGS %ifarch sparc64 linux64-sparcv9 %endif +%ifarch armv4 armv5 armv5t armv5te armv5tel + linux-armv4 +%endif -%{__make} \ - CC="%{__cc}" \ - INSTALLTOP=%{_prefix} - -%{__make} rehash \ +%{__make} -j1 all rehash %{?with_tests:tests} \ CC="%{__cc}" \ + ASFLAG='$(CFLAG) -Wa,--noexecstack' \ INSTALLTOP=%{_prefix} -# Conv PODs to man pages. "openssl_" prefix is added to each manpage -# to avoid potential conflicts with others packages. -center="OpenSSL 0.9.7" -rel="OpenSSL 0.9.7" - -cd doc/apps || exit 1 -%{__perl} -pi -e 's/(\W)((? $manpage; - echo "$manpage"; -done -cd .. - -sec=3 -for dir in ssl crypto; do +for dir in doc/{apps,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} -pi -e 's/(\W)((? $manpage; - echo "$manpage"; done - cd .. + cd ../.. done -#cd perl -#%%{__perl} Makefile.PL \ -# INSTALLDIRS=vendor -#%{__make} - %install rm -rf $RPM_BUILD_ROOT install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name},%{_libdir}/%{name}} \ $RPM_BUILD_ROOT{%{_mandir}/{pl/man1,man{1,3,5,7}},%{_datadir}/ssl} \ + $RPM_BUILD_ROOT/%{_lib}/engines \ $RPM_BUILD_ROOT%{_pkgconfigdir} -%{__make} install \ - CC="%{__cc}" \ +%{__make} -j1 install \ INSTALLTOP=%{_prefix} \ INSTALL_PREFIX=$RPM_BUILD_ROOT \ MANDIR=%{_mandir} -if [ "%{_prefix}/lib/pkgconfig" != "%{_pkgconfigdir}" ] ; then - mv $RPM_BUILD_ROOT%{_prefix}/lib/pkgconfig/* \ - $RPM_BUILD_ROOT%{_pkgconfigdir} -fi -sed -i -e 's,^libdir=.*,libdir=%{_libdir},' $RPM_BUILD_ROOT%{_pkgconfigdir}/*.pc - -install %{SOURCE1} $RPM_BUILD_ROOT%{_datadir}/ssl/ca-bundle.crt -install 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 - -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 -f $RPM_BUILD_ROOT%{_libdir}/engines/* $RPM_BUILD_ROOT/%{_lib}/engines +mv -f $RPM_BUILD_ROOT%{_libdir}/lib*.so.*.* $RPM_BUILD_ROOT/%{_lib} +ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libcrypto.*.*) $RPM_BUILD_ROOT%{_libdir}/libcrypto.so +ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libssl.*.*) $RPM_BUILD_ROOT%{_libdir}/libssl.so -mv -f $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc/* $RPM_BUILD_ROOT%{_libdir}/%{name} -rm -rf $RPM_BUILD_ROOT%{_var}/lib/%{name}/misc +mv -f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/misc/* $RPM_BUILD_ROOT%{_libdir}/%{name} +rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/misc -mv -f $RPM_BUILD_ROOT%{_bindir}/c_rehash $RPM_BUILD_ROOT%{_libdir}/%{name} +# not installed as individual utilities (see openssl dgst instead) +%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/{md2,md4,md5,mdc2,ripemd160,sha,sha1}.1 -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 -install %{SOURCE2} $RPM_BUILD_ROOT%{_mandir}/pl/man1/openssl.1 -install %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/ssl-certificate +cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_mandir}/pl/man1/openssl.1 +install -p %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/ssl-certificate +install -p %{SOURCE4} $RPM_BUILD_ROOT%{_bindir}/c_rehash.sh %clean rm -rf $RPM_BUILD_ROOT @@ -344,28 +373,50 @@ rm -rf $RPM_BUILD_ROOT %post -p /sbin/ldconfig %postun -p /sbin/ldconfig +%triggerpostun -- %{name}-tools < 1.0.0-5 +# the hashing format has changed in 1.0.0 +[ ! -x %{_sbindir}/update-ca-certificates ] || %{_sbindir}/update-ca-certificates --fresh || : + +%triggerpostun -- %{name} < 0.9.8i-2 +# don't do anything on --downgrade +if [ $1 -le 1 ]; then + exit 0 +fi +if [ -d /var/lib/openssl/certs ] ; then + mv /var/lib/openssl/certs/* %{_sysconfdir}/%{name}/certs 2>/dev/null || : +fi +if [ -d /var/lib/openssl/private ] ; then + mv /var/lib/openssl/private/* %{_sysconfdir}/%{name}/private 2>/dev/null || : +fi +if [ -d /var/lib/openssl ] ; then + for f in /var/lib/openssl/* ; do + [ -f "$f" ] && mv "$f" %{_sysconfdir}/%{name} 2>/dev/null || : + done + rmdir /var/lib/openssl/* 2>/dev/null || : + rmdir /var/lib/openssl 2>/dev/null || : +fi + %files %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libcrypto.so.*.*.* -%attr(755,root,root) %{_libdir}/libssl.so.*.*.* %doc CHANGES CHANGES.SSLeay LICENSE NEWS README doc/*.txt %doc doc/openssl_button.gif doc/openssl_button.html -%dir %{_libdir}/engines -%attr(755,root,root) %{_libdir}/engines/*.so -%dir %{_var}/lib/%{name} -%dir %{_var}/lib/%{name}/certs -%dir %{_var}/lib/%{name}/private +%attr(755,root,root) /%{_lib}/libcrypto.so.*.*.* +%attr(755,root,root) /%{_lib}/libssl.so.*.*.* +%dir %{_sysconfdir}/%{name} +%dir %{_sysconfdir}/%{name}/certs +%dir %{_sysconfdir}/%{name}/private %dir %{_datadir}/ssl -%verify(not md5 mtime size) %config(noreplace) %{_datadir}/ssl/ca-bundle.crt -%files tools +%files engines %defattr(644,root,root,755) -%dir %{_sysconfdir}/%{name} - -%verify(not md5 mtime size) %config(noreplace) %{_sysconfdir}/%{name}/openssl.cnf -%verify(not md5 mtime size) %config(noreplace) %{_var}/lib/%{name}/openssl.cnf +%dir /%{_lib}/engines +%attr(755,root,root) /%{_lib}/engines/*.so -%attr(755,root,root) %{_bindir}/%{name} +%files tools +%defattr(644,root,root,755) +%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/openssl.cnf +%attr(755,root,root) %{_bindir}/c_rehash.sh +%attr(755,root,root) %{_bindir}/openssl %attr(754,root,root) %{_bindir}/ssl-certificate %dir %{_libdir}/%{name} @@ -379,6 +430,7 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man1/openssl_asn1parse.1* %{_mandir}/man1/openssl_ca.1* %{_mandir}/man1/openssl_ciphers.1* +%{_mandir}/man1/openssl_cms.1* %{_mandir}/man1/openssl_crl.1* %{_mandir}/man1/openssl_crl2pkcs7.1* %{_mandir}/man1/openssl_dgst.1* @@ -390,6 +442,7 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man1/openssl_enc.1* %{_mandir}/man1/openssl_errstr.1* %{_mandir}/man1/openssl_gendsa.1* +%{_mandir}/man1/openssl_genpkey.1* %{_mandir}/man1/openssl_genrsa.1* %{_mandir}/man1/openssl_nseq.1* %{_mandir}/man1/openssl_ocsp.1* @@ -397,6 +450,9 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man1/openssl_pkcs12.1* %{_mandir}/man1/openssl_pkcs7.1* %{_mandir}/man1/openssl_pkcs8.1* +%{_mandir}/man1/openssl_pkey.1* +%{_mandir}/man1/openssl_pkeyparam.1* +%{_mandir}/man1/openssl_pkeyutl.1* %{_mandir}/man1/openssl_rand.1* %{_mandir}/man1/openssl_req.1* %{_mandir}/man1/openssl_rsa.1* @@ -408,17 +464,20 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man1/openssl_smime.1* %{_mandir}/man1/openssl_speed.1* %{_mandir}/man1/openssl_spkac.1* +%{_mandir}/man1/openssl_ts.1* +%{_mandir}/man1/openssl_tsget.1* %{_mandir}/man1/openssl_verify.1* %{_mandir}/man1/openssl_version.1* %{_mandir}/man1/openssl_x509.1* -%{_mandir}/man1/openssl_x509v3_config.1* -%{_mandir}/man5/*.5* +%{_mandir}/man5/openssl_config.5* +%{_mandir}/man5/openssl_x509v3_config.5* %lang(pl) %{_mandir}/pl/man1/openssl.1* %files tools-perl %defattr(644,root,root,755) +%attr(755,root,root) %{_bindir}/c_rehash %attr(755,root,root) %{_libdir}/%{name}/CA.pl -%attr(755,root,root) %{_libdir}/%{name}/c_rehash +%attr(755,root,root) %{_libdir}/%{name}/tsget %{_mandir}/man1/openssl_CA.pl.1* %files devel @@ -430,8 +489,9 @@ rm -rf $RPM_BUILD_ROOT %{_pkgconfigdir}/libssl.pc %{_pkgconfigdir}/openssl.pc %{_mandir}/man3/openssl*.3* -%{_mandir}/man7/*.7* +%{_mandir}/man7/openssl_des_modes.7* %files static %defattr(644,root,root,755) -%{_libdir}/lib*.a +%{_libdir}/libcrypto.a +%{_libdir}/libssl.a