ghc-digest/ghc-digest.spec

148 lines
3.9 KiB
RPMSpec
Raw Normal View History

%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 <herbert@graeber-clan.de> - 0.0.0.6
- Require zlib-devel
* Sat Aug 1 2009 Herbert Graeber <herbert@graeber-clan.de> - 0.0.0.6
- Require ghc-bytestring instead of ghc-binary
* Fri Jul 31 2009 Herbert Graeber <herbert@graeber-clan.de> - 0.0.0.6
- Initial Package