%define pkg_name digest %define ghc_version %(ghc --numeric-version) %define pkg_libdir %{_libdir}/ghc-%{ghc_version}/%{pkg_name}-%{version} %define pkg_docdir %{_datadir}/doc/ghc/libraries/%{pkg_name}-%{version} # ghc does not emit debug information %define debug_package %{nil} Name: ghc-%{pkg_name} Version: 0.0.0.6 Release: 0 Summary: Various cryptographic hashes for bytestrings; CRC32 and Adler32 for now Group: Development/Libraries License: BSD3 URL: http://hackage.haskell.org/cgi-bin/hackage-scripts/package/%{pkg_name} Source0: http://hackage.haskell.org/packages/archive/%{pkg_name}/%{version}/%{pkg_name}-%{version}.tar.bz2 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: ghc, ghc-doc, ghc-prof BuildRequires: zlib-devel BuildRequires: licenses %description This package provides efficient cryptographic hash implementations for strict and lazy bytestrings. For now, CRC32 and Adler32 are supported; they are implemented as FFI bindings to efficient code from zlib. This package provides the Haskell %{pkg_name} library for ghc. %package devel Summary: Haskell %{pkg_name} library Group: Development/Libraries Requires: ghc = %{ghc_version} Requires(post): ghc = %{ghc_version} Requires(preun): ghc = %{ghc_version} Requires: ghc-bytestring-devel Requires: zlib-devel Requires: licenses %description devel This package provides efficient cryptographic hash implementations for strict and lazy bytestrings. For now, CRC32 and Adler32 are supported; they are implemented as FFI bindings to efficient code from zlib. This package contains the development files for %{name} built for ghc-%{ghc_version}. %package doc Summary: Documentation for %{name} Group: Development/Libraries Requires: ghc-doc = %{ghc_version} Requires(post): ghc-doc = %{ghc_version} Requires(postun): ghc-doc = %{ghc_version} Requires: ghc-bytestring-doc %description doc This package provides efficient cryptographic hash implementations for strict and lazy bytestrings. For now, CRC32 and Adler32 are supported; they are implemented as FFI bindings to efficient code from zlib. This package contains development documentation files for the %{name} library. %package prof Summary: Profiling libraries for %{name} Group: Development/Libraries Requires: %{name}-devel = %{version}-%{release} Requires: ghc-prof = %{ghc_version} Requires: ghc-bytestring-prof Requires: zlib-devel %description prof This package provides efficient cryptographic hash implementations for strict and lazy bytestrings. For now, CRC32 and Adler32 are supported; they are implemented as FFI bindings to efficient code from zlib. This package contains profiling libraries for %{name}. %prep %setup -q -n %{pkg_name}-%{version} %build %cabal_configure --ghc %{!?without_prof:-p} %cabal build %cabal haddock %ghc_gen_scripts %install %cabal_install %ghc_install_scripts %ghc_gen_filelists %{name} for FILE in LICENSE ; do MD5SUM=$(md5sum $FILE | sed 's/ .*//') if test -f /usr/share/doc/licenses/md5/$MD5SUM ; then ln -sf /usr/share/doc/licenses/md5/$MD5SUM $FILE fi done %post devel %ghc_register_pkg %post doc %ghc_reindex_haddock %preun devel if [ "$1" -eq 0 ] ; then %ghc_unregister_pkg fi %postun doc if [ "$1" -eq 0 ] ; then %ghc_reindex_haddock fi %files devel -f %{name}-devel.files %defattr(-,root,root,-) %{_docdir}/%{name}-%{version} %files doc %defattr(-,root,root,-) %{pkg_docdir} %files prof -f %{name}-prof.files %defattr(-,root,root,-) %changelog * Sun Aug 2 2009 Herbert Graeber - 0.0.0.6 - Require zlib-devel * Sat Aug 1 2009 Herbert Graeber - 0.0.0.6 - Require ghc-bytestring instead of ghc-binary * Fri Jul 31 2009 Herbert Graeber - 0.0.0.6 - Initial Package