Name: libtomcrypt Version: 1.17 Release: 6%{?dist} Summary: a comprehensive, portable cryptographic toolkit Group: System Environment/Libraries License: Public Domain URL: http://www.libtom.org/?page=features&newsitems=5&whatfile=crypt Source0: http://www.libtom.org/files/crypt-%{version}.tar.bz2 Requires: libtommath >= 0.41 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: libtommath-devel >= 0.41, libtool Patch0: libtomcrypt-makefile.patch %description A comprehensive, modular and portable cryptographic toolkit that provides developers with a vast array of well known published block ciphers, one-way hash functions, chaining modes, pseudo-random number generators, public key cryptography and a plethora of other routines. Designed from the ground up to be very simple to use. It has a modular and standard API that allows new ciphers, hashes and PRNGs to be added or removed without change to the overall end application. It features easy to use functions and a complete user manual which has many source snippet examples. %package devel Summary: Development files for %{name} Group: Development/Libraries Requires: %{name} = %{version}-%{release} BuildRequires: tetex-latex, tetex-dvips, ghostscript %description devel The %{name}-devel package contains libraries and header files for developing applications that use %{name}. %prep %setup -q %patch0 -p1 -b .makefile %build # no configure script ships with libtomcrypt. Its only requirement is # ANSI C. And libtommath. Explicitly force it to be built against libtommath export CFLAGS="$RPM_OPT_FLAGS -DLTM_DESC -I%{_includedir}/tommath" # work around bug #239003 %ifarch ppc64 export CFLAGS="$CFLAGS -O0" %endif make %{?_smp_mflags} LIBPATH=%{_libdir} EXTRALIBS="-ltommath" -f makefile.shared make %{?_smp_mflags} LIBPATH=%{_libdir} -f makefile docs %check export CFLAGS="$RPM_OPT_FLAGS -DLTM_DESC -DUSE_LTM -I%{_includedir}/tommath" make %{?_smp_mflags} LIBPATH=%{_libdir} EXTRALIBS="-ltommath" test ./test %install # There is no configure script that ships with libtomcrypt but it does # have understand DESTDIR and its installs via that and the # INSTALL_USER and INSTALL_GROUP environment variables. rm -rf $RPM_BUILD_ROOT export INSTALL_USER=$(id -un) export INSTALL_GROUP=$(id -gn) export CFLAGS="$RPM_OPT_FLAGS -DLTM_DESC -DUSE_LTM" make install INCPATH=%{_includedir}/tomcrypt DESTDIR=$RPM_BUILD_ROOT LIBPATH=%{_libdir} EXTRALIBS="-ltommath" -f makefile.shared find $RPM_BUILD_ROOT -name '*.h' -exec chmod 644 {} ';' # remove unneeded files find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';' find $RPM_BUILD_ROOT -name '*.a' -exec rm -f {} ';' find $RPM_BUILD_ROOT -name 'libtomcrypt_prof*' -exec rm -f {} ';' %clean rm -rf $RPM_BUILD_ROOT %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %defattr(-,root,root,-) %doc LICENSE %{_libdir}/*.so.* %files devel %defattr(-,root,root,-) %doc doc/crypt.pdf %{_includedir}/tomcrypt %{_libdir}/*.so %changelog * Tue Jul 10 2007 Jeremy Hinegardner - 1.17-6 - turn off optimization for ppc64 to work around Bug #239003 * Sat Jun 30 2007 Jeremy Hinegardner - 1.17-5 - removed package name from summary - fixed URL and Source0 links - really fixed linkage flag this time, added it to the build section not just the check. * Fri Jun 29 2007 Jeremy Hinegardner - 1.17-4 - fixed linkage flag with correct tommath name - added check section - removed libtomcrypt_prof libraries from package - remove package name from summary * Wed Jun 27 2007 Jeremy Hinegardner - 1.17-3 - create makefile patch to ensure RPM_OPT_FLAGS is honored - install headers into _includedir/tomcrypt - add location of libtommath headers to CFLAGS * Sat Jun 23 2007 Jeremy Hinegardner - 1.17-2 - update build process to pass LIBPATH to make * Fri Jun 22 2007 Jeremy Hinegardner - 1.17-1 - Initial spec file creation