X-Git-Url: http://git.pld-linux.org/?p=packages%2Fopenssl.git;a=blobdiff_plain;f=openssl.spec;h=68711b4737ac43426db2f5c2e90f3ff07250e59c;hp=63f53bbeec87c0bd854a0d65b7a9ebe9dba11a07;hb=e8819ff6ddc2d9f50f529110aafe7db8c4d0ffb6;hpb=93d4e2cc34bfece7e258ba1791c0d54ec48e9ad8 diff --git a/openssl.spec b/openssl.spec index 63f53bb..68711b4 100644 --- a/openssl.spec +++ b/openssl.spec @@ -1,24 +1,45 @@ +# 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(fr): Utilitaires de communication SSL (Secure Sockets Layer) Name: openssl -Version: 0.9.6a -Release: 1 +Version: 0.9.6b +Release: 6 +License: Apache-style License +Vendor: The OpenSSL Project Group: Libraries Group(de): Libraries +Group(es): Bibliotecas Group(fr): Librairies Group(pl): Biblioteki +Group(pt_BR): Bibliotecas +Group(ru): âÉÂÌÉÏÔÅËÉ +Group(uk): â¦Â̦ÏÔÅËÉ Source0: ftp://ftp.openssl.org/source/%{name}-%{version}.tar.gz Patch0: %{name}-alpha-ccc.patch -Vendor: The OpenSSL Project -License: Apache-style License -BuildRequires: perl +# 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, @@ -63,7 +84,6 @@ The OpenSSL Toolkit cmdline tool openssl and utility scripts. Summary: OpenSSL utilities written in Perl Group: Applications/Communications Group(de): Applikationen/Kommunikation -Group(fr): Utilitaires Group(pl): Aplikacje/Komunikacja Requires: %{name} = %{version} @@ -80,6 +100,7 @@ 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. @@ -87,6 +108,22 @@ 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 +Group(de): Entwicklung/Libraries +Group(fr): Development/Librairies +Group(pl): Programowanie/Biblioteki +Requires: %{name} = %{version} + +%description devel-embed +Development part of OpenSSL library for embedded applications. + +%description -l pl devel-embed +Czê¶æ bibiloteki OpenSSL przeznaczona dla programistów aplikacji +wbudowanych. + %package static Summary: Static OpenSSL libraries Summary(pl): Statyczne wersje bibliotek z OpenSSL @@ -105,40 +142,47 @@ Statyczne wersje bibliotek z OpenSSL. %prep %setup -q %patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 %build 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 -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 - perl -pi -e 's#-mcpu=ultrasparc#%{optflags}#g' $i -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} threads linux-alpha+bwx-gcc +./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="%{rpmcflags} -DSSL_ALLOW_DH" -%{__make} INSTALLTOP=%{_prefix} \ - OPT_FLAGS="%{rpmcflags}" -%ifarch alpha -%{__make} linux-shared +%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 @@ -207,12 +251,8 @@ 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 -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} @@ -226,6 +266,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 @@ -302,6 +351,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