%define pkg_name binary %define ghc_version 6.10.1 %define pkg_libdir %{_libdir}/ghc-%{ghc_version}/%{pkg_name}-%{version} %define pkg_docdir %{_docdir}/ghc/libraries/%{pkg_name}-%{version} %bcond_without prof %bcond_without doc # ghc does not emit debug information %define debug_package %{nil} Name: ghc-%{pkg_name} Version: 0.4.4 Release: 1%{?dist} Summary: Binary serialisation for Haskell values using ByteStrings Group: Development/Libraries License: BSD 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.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Provides: %{name}-devel = %{version}-%{release} # ghc has only been bootstrapped on the following archs: ExclusiveArch: i386 x86_64 ppc BuildRequires: ghc = %{ghc_version} %if %{with prof} BuildRequires: ghc-prof = %{ghc_version} %endif Requires: ghc = %{ghc_version} Requires(post): ghc = %{ghc_version} Requires(preun): ghc = %{ghc_version} %description Efficient, pure binary serialisation using lazy ByteStrings. Haskell values may be encoded to and from binary formats, written to disk as binary, or sent over the network. Serialisation speeds of over 1 G/sec have been observed, so this library should be suitable for high performance scenarios. %if %{with doc} %package doc Summary: Documentation for %{name} Group: Development/Libraries Requires: ghc-doc = %{ghc_version} Requires(postun): ghc-doc = %{ghc_version} %description doc This package contains development documentation files for the %{name} library. %endif %if %{with prof} %package prof Summary: Profiling libraries for %{name} Group: Development/Libraries Requires: %{name} = %{version}-%{release} Requires: ghc-prof = %{ghc_version} %description prof This package contains profiling libraries for %{name}. %endif %prep %setup -q -n %{pkg_name}-%{version} %build %cabal_configure --ghc %{!?without_prof:-p} %cabal build %if %{with doc} %cabal haddock %endif %ghc_gen_scripts %install rm -rf $RPM_BUILD_ROOT %cabal_install %ghc_install_scripts %ghc_gen_filelists %{name} %clean rm -rf $RPM_BUILD_ROOT %post %ghc_register_pkg %if %{with doc} %post doc %ghc_reindex_haddock %endif %preun if [ "$1" -eq 0 ] ; then %ghc_unregister_pkg fi %if %{with doc} %postun doc if [ "$1" -eq 0 ] ; then %ghc_reindex_haddock fi %endif %files -f %{name}.files %defattr(-,root,root,-) %doc LICENSE %if %{with doc} %files doc %defattr(-,root,root,-) %{pkg_docdir} %endif %if %{with prof} %files prof -f %{name}-prof.files %defattr(-,root,root,-) %endif %changelog * Thu Jan 15 2009 Conrad Meyer - 0.4.4-1 - initial packaging for Fedora created by cabal2spec