%define opt %(test -x %{_bindir}/ocamlopt && echo 1 || echo 0) %define debug_package %{nil} Name: ocaml-cryptokit Version: 1.3 Release: 8%{?dist} Summary: OCaml library of cryptographic and hash functions Group: Development/Libraries License: LGPLv2 with exceptions URL: http://pauillac.inria.fr/~xleroy/software.html Source0: http://caml.inria.fr/distrib/bazar-ocaml/cryptokit-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) ExcludeArch: sparc64 s390 s390x Source1: cryptokit-META BuildRequires: ocaml, zlib-devel, chrpath %define _use_internal_dependency_generator 0 %define __find_requires /usr/lib/rpm/ocaml-find-requires.sh %define __find_provides /usr/lib/rpm/ocaml-find-provides.sh %description The Cryptokit library for Objective Caml provides a variety of cryptographic primitives that can be used to implement cryptographic protocols in security-sensitive applications. The primitives provided include: * Symmetric-key cryptography: AES, DES, Triple-DES, ARCfour, in ECB, CBC, CFB and OFB modes. * Public-key cryptography: RSA encryption and signature; Diffie-Hellman key agreement. * Hash functions and MACs: SHA-1, SHA-256, RIPEMD-160, MD5, and MACs based on AES and DES. * Random number generation. * Encodings and compression: base 64, hexadecimal, Zlib compression. Additional ciphers and hashes can easily be used in conjunction with the library. In particular, basic mechanisms such as chaining modes, output buffering, and padding are provided by generic classes that can easily be composed with user-provided ciphers. More generally, the library promotes a "Lego"-like style of constructing and composing transformations over character streams. %package devel Summary: Development files for %{name} Group: Development/Libraries Requires: %{name} = %{version}-%{release} %description devel The %{name}-devel package contains libraries and signature files for developing applications that use %{name}. %prep %setup -q -n cryptokit-%{version} rm doc/.cvsignore %build make all %if %opt make allopt %endif chrpath --delete dllcryptokit.so strip dllcryptokit.so %check # This opens /dev/random but never reads from it. make test %install rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT%{_libdir}/ocaml/cryptokit mkdir -p $RPM_BUILD_ROOT%{_libdir}/ocaml/cryptokit/stublibs make INSTALLDIR=$RPM_BUILD_ROOT%{_libdir}/ocaml/cryptokit install mv $RPM_BUILD_ROOT%{_libdir}/ocaml/cryptokit/stublibs \ $RPM_BUILD_ROOT%{_libdir}/ocaml/stublibs sed 's/@VERSION@/%{version}/' < %{SOURCE1} \ > $RPM_BUILD_ROOT%{_libdir}/ocaml/cryptokit/META %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root,-) %doc README LICENSE %{_libdir}/ocaml/cryptokit %if %opt %exclude %{_libdir}/ocaml/cryptokit/*.a %exclude %{_libdir}/ocaml/cryptokit/*.cmxa %exclude %{_libdir}/ocaml/cryptokit/*.cmx %endif %exclude %{_libdir}/ocaml/cryptokit/*.mli %{_libdir}/ocaml/stublibs/*.so %files devel %defattr(-,root,root,-) %doc LICENSE Changes doc %if %opt %{_libdir}/ocaml/cryptokit/*.a %{_libdir}/ocaml/cryptokit/*.cmxa %{_libdir}/ocaml/cryptokit/*.cmx %endif %{_libdir}/ocaml/cryptokit/*.mli %changelog * Thu Apr 16 2009 S390x secondary arch maintainer - ExcludeArch sparc64, s390, s390x as we don't have OCaml on those archs (added sparc64 per request from the sparc maintainer) * Wed Feb 25 2009 Fedora Release Engineering - 1.3-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild * Wed Nov 26 2008 Richard W.M. Jones - 1.3-7 - Rebuild for OCaml 3.11.0+rc1. * Wed Nov 19 2008 Richard W.M. Jones - 1.3-6 - Rebuild for OCaml 3.11.0 * Tue Sep 2 2008 Richard W.M. Jones - 1.3-5 - Install in cryptokit subdirectory. - Include a META file (from Debian) (resolves rhbz#460844). * Wed Apr 23 2008 Richard W.M. Jones - 1.3-4 - Rebuild for OCaml 3.10.2 * Fri Feb 29 2008 David Woodhouse 1.3-3 - Build on PPC64 * Fri Feb 15 2008 Richard W.M. Jones - 1.3-2 - Don't duplicate the README file in both packages. - Change the license to LGPLv2 with exceptions. * Tue Feb 12 2008 Richard W.M. Jones - 1.3-1 - Initial RPM release.