]> git.pld-linux.org Git - packages/libgcrypt.git/blobdiff - libgcrypt.spec
- updated to 1.8.4
[packages/libgcrypt.git] / libgcrypt.spec
index 745a4f984f01b70666a3033e2a21e4cefb363524..30c4dc4a33989e62f7c28950fd809160ed8f6a68 100644 (file)
@@ -1,33 +1,39 @@
 #
 # Conditional build:
-%bcond_without static_libs     # don't build static library
+%bcond_with    dietlibc        # don't build static dietlibc library
+%bcond_with    libcap          # Linux capabilities usage
 #
 Summary:       Cryptographic library based on the code from GnuPG
 Summary(es.UTF-8):     Libgcrypt es una biblioteca general de desarrole embasada em GnuPG
 Summary(pl.UTF-8):     Biblioteka kryptograficzna oparta na kodzie GnuPG
 Summary(pt_BR.UTF-8):  libgcrypt é uma biblioteca de criptografia de uso geral baseada no GnuPG
 Name:          libgcrypt
-Version:       1.4.0
+Version:       1.8.4
 Release:       1
 License:       LGPL v2.1+
 Group:         Libraries
-# devel versions:
-#Source0:      ftp://ftp.gnupg.org/gcrypt/alpha/libgcrypt/%{name}-%{version}.tar.gz
 Source0:       ftp://ftp.gnupg.org/gcrypt/libgcrypt/%{name}-%{version}.tar.bz2
-# Source0-md5: b013f798a1088afb07336bce5a9c24c5
+# Source0-md5: fbfdaebbbc6d7e5fbbf6ffdb3e139573
 Patch0:                %{name}-info.patch
-Patch1:                %{name}-sparc64.patch
-Patch2:                %{name}-libgcrypt_config.patch
-URL:           http://www.gnu.org/directory/security/libgcrypt.html
-BuildRequires: autoconf >= 2.59
-BuildRequires: automake >= 1:1.9.3
+Patch1:                %{name}-libgcrypt_config.patch
+Patch2:                %{name}-poll.patch
+URL:           http://directory.fsf.org/wiki/Libgcrypt
+BuildRequires: autoconf >= 2.60
+BuildRequires: automake >= 1:1.14
 BuildRequires: binutils >= 2:2.12
+%{?with_dietlibc:BuildRequires:        dietlibc-static >= 2:0.31-5}
 BuildRequires: gcc >= 5:3.2
-BuildRequires: libgpg-error-devel >= 0.5
-BuildRequires: libtool >= 1:1.4.3
+%{?with_libcap:BuildRequires:  libcap-devel}
+BuildRequires: libgpg-error-devel >= 1.25
+BuildRequires: libtool >= 2:2.2.6
 BuildRequires: texinfo
+Requires:      libgpg-error >= 1.25
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+# for some reason known only to rpm there must be "\\|" not "\|" here
+%define                dietarch        %(echo %{_target_cpu} | sed -e 's/i.86\\|pentium.\\|athlon/i386/;s/amd64/x86_64/;s/armv.*/arm/')
+%define                dietlibdir      %{_prefix}/lib/dietlibc/lib-%{dietarch}
+
 %description
 This is a general purpose cryptographic library based on the code from
 GnuPG. It provides functions for all cryptograhic building blocks:
@@ -50,6 +56,18 @@ pomocniczych.
 Libgcrypt é uma biblioteca de criptografia de uso geral baseada no
 GnuPG.
 
+%package tools
+Summary:       Additional binary tools for libgcrypt
+Summary(pl.UTF-8):     Dodatkowe narzędzia dla biblioteki libgcrypt
+Group:         Development/Libraries
+Requires:      %{name} = %{version}-%{release}
+
+%description tools
+Additional binary tools for libgcrypt.
+
+%description tools -l pl.UTF-8
+Dodatkowe narzędzia dla biblioteki libgcrypt.
+
 %package devel
 Summary:       Header files etc to develop libgcrypt applications
 Summary(es.UTF-8):     Archivos de desarrollo de libgcrypt
@@ -57,7 +75,8 @@ Summary(pl.UTF-8):    Pliki nagłówkowe i inne do libgcrypt
 Summary(pt_BR.UTF-8):  Arquivos de desenvolvimento da libgcrypt
 Group:         Development/Libraries
 Requires:      %{name} = %{version}-%{release}
-Requires:      libgpg-error-devel >= 0.5
+%{?with_libcap:Requires:       libcap-devel}
+Requires:      libgpg-error-devel >= 1.25
 
 %description devel
 Header files etc to develop libgcrypt applications.
@@ -85,6 +104,18 @@ Biblioteka statyczna libgcrypt.
 %description static -l pt_BR.UTF-8
 Bibliotecas de desenvolvimento para libgcrypt - estático.
 
+%package dietlibc
+Summary:       Static dietlibc libgcrypt library
+Summary(pl.UTF-8):     Biblioteka statyczna dietlibc libgcrypt
+Group:         Development/Libraries
+Requires:      %{name}-devel = %{version}-%{release}
+
+%description dietlibc
+Static dietlibc libgcrypt library.
+
+%description dietlibc -l pl.UTF-8
+Biblioteka statyczna dietlibc libgcrypt.
+
 %prep
 %setup -q
 %patch0 -p1
@@ -92,19 +123,38 @@ Bibliotecas de desenvolvimento para libgcrypt - estático.
 %patch2 -p1
 
 %build
-rm -f m4/libtool.m4
+%{__rm} m4/libtool.m4
 %{__libtoolize}
 %{__aclocal} -I m4
 %{__autoconf}
 %{__automake}
+
+%if %{with dietlibc}
+%configure \
+       CC="diet %{__cc} %{rpmcflags} %{rpmldflags} -Os" \
+       --enable-static \
+       --disable-shared
+
+# libtool sucks, build just the libs
+%{__make} -C compat
+%{__make} -C cipher
+%{__make} -C mpi
+%{__make} -C random
+%{__make} -C src \
+       PROGRAMS=
+mv src/.libs/libgcrypt.a diet-libgcrypt.a
+%{__make} clean
+%endif
+
 %configure \
        --enable-static \
-       %{!?with_static_libs:--disable-static}
+       %{?with_libcap:--with-capabilities}
 
 %{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
+%{?with_dietlibc:install -d $RPM_BUILD_ROOT%{dietlibdir}}
 
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT \
@@ -115,23 +165,32 @@ mv -f $RPM_BUILD_ROOT%{_libdir}/libgcrypt.so.* $RPM_BUILD_ROOT/%{_lib}
 ln -sf /%{_lib}/$(basename $RPM_BUILD_ROOT/%{_lib}/libgcrypt.so.*.*.*) \
        $RPM_BUILD_ROOT%{_libdir}/libgcrypt.so
 
+%{?with_dietlibc:install diet-libgcrypt.a $RPM_BUILD_ROOT%{dietlibdir}/libgcrypt.a}
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %post   -p /sbin/ldconfig
 %postun -p /sbin/ldconfig
 
-%post devel
-[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1
+%post  devel -p /sbin/postshell
+-/usr/sbin/fix-info-dir -c %{_infodir}
 
-%postun devel
-[ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir %{_infodir} >/dev/null 2>&1
+%postun        devel -p /sbin/postshell
+-/usr/sbin/fix-info-dir -c %{_infodir}
 
 %files
 %defattr(644,root,root,755)
 %doc AUTHORS ChangeLog NEWS README THANKS TODO
 %attr(755,root,root) /%{_lib}/libgcrypt.so.*.*.*
-%attr(755,root,root) %ghost /%{_lib}/libgcrypt.so.11
+%attr(755,root,root) %ghost /%{_lib}/libgcrypt.so.20
+
+%files tools
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/dumpsexp
+%attr(755,root,root) %{_bindir}/hmac256
+%attr(755,root,root) %{_bindir}/mpicalc
+%{_mandir}/man1/hmac256.1*
 
 %files devel
 %defattr(644,root,root,755)
@@ -142,8 +201,12 @@ rm -rf $RPM_BUILD_ROOT
 %{_includedir}/gcrypt*.h
 %{_aclocaldir}/libgcrypt.m4
 
-%if %{with static_libs}
 %files static
 %defattr(644,root,root,755)
 %{_libdir}/libgcrypt.a
+
+%if %{with dietlibc}
+%files dietlibc
+%defattr(644,root,root,755)
+%{dietlibdir}/libgcrypt.a
 %endif
This page took 0.09773 seconds and 4 git commands to generate.