]> git.pld-linux.org Git - packages/openssl.git/blobdiff - openssl.spec
- removed all Group fields translations (oure rpm now can handle translating
[packages/openssl.git] / openssl.spec
index f574e021158bf70908f0cadf3278615d78b5f4fd..d2126b53b7807cb2a8f2494a6f95ede647f6cc3f 100644 (file)
@@ -1,23 +1,39 @@
+# conditional build:
+# _without_embed - don't build uClibc version
 %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:       6
+License:       Apache-style License
+Vendor:                The OpenSSL Project
 Group:         Libraries
-Group(de):     Libraries
-Group(fr):     Librairies
-Group(pl):     Biblioteki
 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
+%if %{!?_without_embed:1}%{?_without_embed:0}
+BuildRequires: uClibc-devel
+BuildRequires: uClibc-static
+%endif
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 Obsoletes:     SSLeay
 Obsoletes:     SSLeay-devel
 Obsoletes:     SSLeay-perl
+Obsoletes:     libopenssl0
+
+%define embed_path     /usr/lib/embed
+%define embed_cc       %{_arch}-uclibc-cc
+%define embed_cflags   %{rpmcflags} -Os
+%define uclibc_prefix  /usr/%{_arch}-linux-uclibc
 
 %description
 The OpenSSL Project is a collaborative effort to develop a robust,
@@ -48,37 +64,42 @@ 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)
+v2/v3 oraz Transport Layer Security (TLS v1).
+
 %package tools
 Summary:       OpenSSL command line tool and utilities
+Summary(pl):   Zestaw narzêdzi i skryptów
 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.
 
+%description tools -l pl
+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
 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.
 
+%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(de):     Entwicklung/Libraries
-Group(fr):     Development/Librairies
-Group(pl):     Programowanie/Biblioteki
 Requires:      %{name} = %{version}
+Obsoletes:     libopenssl0-devel
 
 %description devel
 Development part of OpenSSL library.
@@ -86,13 +107,23 @@ 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}
+
+%description devel-embed
+Development part of OpenSSL library for embedded applications.
+
+%description devel-embed -l pl
+Czê¶æ bibiloteki OpenSSL przeznaczona dla programistów aplikacji
+wbudowanych.
+
 %package static
 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
@@ -102,79 +133,95 @@ Static OpenSSL Toolkit libraries.
 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 "/usr/local/bin/perl" . | cut -d":" -f1`; do
+       perl -pi -e 's#/usr/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="%{!?debug:$RPM_OPT_FLAGS}%{?debug:-O -g} -DSSL_ALLOW_DH"
-%{__make} INSTALLTOP=%{_prefix} \
-       OPT_FLAGS="%{!?debug:$RPM_OPT_FLAGS}%{?debug:-O -g}"
+%if %{!?_without_embed:1}%{?_without_embed:0}
+%{__make} CC=%{embed_cc}
+%{__make} rehash CC=%{embed_cc}
+for f in RSAglue crypto ssl ; do
+       mv -f lib$f.a lib$f.a-embed
+done
+%{__make} clean
+%endif
+
+%{__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 -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";
+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 -f $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
@@ -186,25 +233,22 @@ 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}
-
-#cd perl
-#make install DESTDIR=$RPM_BUILD_ROOT
-#cd ..
+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
 
 mv -f $RPM_BUILD_ROOT%{_var}/lib/%{name}/openssl.cnf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
-ln -s ../../../%{_sysconfdir}/%{name}/openssl.cnf \
+ln -s %{_sysconfdir}/%{name}/openssl.cnf \
        $RPM_BUILD_ROOT%{_var}/lib/%{name}/%{name}.cnf
 
-mv -f $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 -f $RPM_BUILD_ROOT%{_bindir}/c_rehash $RPM_BUILD_ROOT%{_libdir}/%{name}
@@ -215,6 +259,15 @@ 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
 
+%if %{!?_without_embed:1}%{?_without_embed:0}
+install -d $RPM_BUILD_ROOT%{uclibc_prefix}/{include,lib}
+for f in RSAglue crypto ssl ; do
+       install lib$f.a-embed $RPM_BUILD_ROOT%{uclibc_prefix}/lib/lib$f.a
+done
+cp -a $RPM_BUILD_ROOT%{_includedir}/%{name} \
+       $RPM_BUILD_ROOT%{uclibc_prefix}/include
+%endif
+
 gzip -9nf CHANGES CHANGES.SSLeay LICENSE NEWS README doc/*.txt
 
 %post   -p /sbin/ldconfig
@@ -242,7 +295,6 @@ rm -rf $RPM_BUILD_ROOT
 %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
@@ -283,6 +335,7 @@ rm -rf $RPM_BUILD_ROOT
 %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
@@ -291,6 +344,13 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/%{name}
 %{_mandir}/man3/*.3*
 
+%if %{!?_without_embed:1}%{?_without_embed:0}
+%files devel-embed
+%defattr(644,root,root,755)
+%{uclibc_prefix}/lib/*
+%{uclibc_prefix}/include/%{name}
+%endif
+
 %files static
 %defattr(644,root,root,755)
 %{_libdir}/lib*.a
This page took 0.147822 seconds and 4 git commands to generate.