%define pkg_name zlib %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.5.0.0 Release: 5%{?dist} License: BSD Group: Development/Libraries URL: http://hackage.haskell.org/cgi-bin/hackage-scripts/package/%{pkg_name} Source: http://hackage.haskell.org/packages/archive/%{pkg_name}/%{version}/%{pkg_name}-%{version}.tar.gz Summary: Haskell compression and decompression library binding Provides: %{name}-devel = %{version}-%{release} BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) ExclusiveArch: i386 x86_64 ppc BuildRequires: ghc = %{ghc_version} %if %{with doc} BuildRequires: ghc-doc = %{ghc_version} %endif %if %{with prof} BuildRequires: ghc-prof = %{ghc_version} %endif BuildRequires: zlib-devel Requires: zlib-devel Requires: ghc = %{ghc_version} Requires(post): ghc = %{ghc_version} Requires(preun): ghc = %{ghc_version} %description This package provides a pure Haskell interface for compressing and decompressing streams of data represented as lazy ByteStrings. It uses the zlib C library so it has high performance. It supports the "zlib", "gzip" and "raw" compression formats. It provides a convenient high level API suitable for most tasks. For the few cases where more control is needed, it provides access to the full zlib feature set. %if %{with doc} %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} %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 * Mon Feb 9 2009 Jens Petersen - 0.5.0.0-5 - rebuild to fix unexpanded post preun macros - add doc subpackage and BR ghc-doc - add doc requires(post) ghc-doc * Mon Dec 22 2008 Jens Petersen - 0.5.0.0-4 - use bcond for doc and prof build flags (Till Maas, #426751) * Mon Dec 1 2008 Jens Petersen - 0.5.0.0-3 - sync with lib template: - add build_prof and build_doc - prof requires main package - update scriptlet macro names * Tue Nov 25 2008 Jens Petersen - 0.5.0.0-2 - build with ghc-6.10.1 - no longer buildrequire haddock09 - provide devel - add exclusivearch for current ghc archs - reindex haddock docs only when uninstalling in postun * Tue Nov 11 2008 Bryan O'Sullivan - 0.5.0.0-1 - Update to 0.5.0.0 * Thu Oct 23 2008 Jens Petersen - 0.4.0.4-2 - update for current rawhide - add pkg_docdir and remove hsc_name - use haddock09 * Tue Oct 14 2008 Bryan O'Sullivan - 0.4.0.4-1 - Revised to follow Haskell packaging guidelines * Sun Feb 17 2008 Yaakov Nemoy - 0.4.0.2-1 - added in url * Sun Feb 17 2008 cabal-rpm - 0.4.0.2-1 - spec file autogenerated by cabal-rpm