diff --git a/ghc-X11.spec b/ghc-X11.spec
index 3c63a00..15df66a 100644
--- a/ghc-X11.spec
+++ b/ghc-X11.spec
@@ -1,16 +1,22 @@
%global pkg_name X11
-%bcond_without doc
-%bcond_without prof
+%global common_summary Haskell %{pkg_name} library
+
+%global common_description The library consists of bindings to direct translations of the C bindings; for\
+documentation of these calls, refer to "The Xlib Programming\
+Manual", available online at .
+
+%global ghc_pkg_c_deps libXinerama-devel, libX11-devel, libXext-devel
+
%bcond_without shared
-# ghc does not emit debug information
+# debuginfo is not useful for ghc
%global debug_package %{nil}
Name: ghc-%{pkg_name}
Version: 1.5.0.0
-Release: 1%{?dist}
-Summary: Haskell %{pkg_name} library
+Release: 2%{?dist}
+Summary: %{common_summary}
Group: System Environment/Libraries
License: BSD
@@ -18,62 +24,20 @@ URL: http://hackage.haskell.org/cgi-bin/hackage-scripts/package/%{pkg
Source0: http://hackage.haskell.org/packages/archive/%{pkg_name}/%{version}/%{pkg_name}-%{version}.tar.gz
# fedora ghc archs:
ExclusiveArch: %{ix86} x86_64 ppc alpha
-BuildRequires: ghc, ghc-rpm-macros >= 0.3.1
-%if %{with doc}
+BuildRequires: ghc, ghc-rpm-macros >= 0.5.1
BuildRequires: ghc-doc
-%endif
-%if %{with prof}
BuildRequires: ghc-prof
-%endif
-BuildRequires: libXinerama-devel, libX11-devel, libXext-devel
+%{?ghc_pkg_deps:BuildRequires: %{ghc_pkg_deps}, %(echo %{ghc_pkg_deps} | sed -e "s/\(ghc-[^, ]\+\)-devel/\1-doc,\1-prof/g")}
+%{?ghc_pkg_c_deps:BuildRequires: %{ghc_pkg_c_deps}}
%description
-This package provides the Haskell %{pkg_name} library for ghc.
-
-The library consists of bindings to direct translations of the C bindings; for
-documentation of these calls, refer to "The Xlib Programming
-Manual", available online at .
-
-%package devel
-Summary: Haskell %{pkg_name} library development files
-Group: Development/Libraries
-Requires: ghc = %{ghc_version}
-Requires(post): ghc = %{ghc_version}
-Requires(postun): ghc = %{ghc_version}
+%{common_description}
%if %{with shared}
-Requires: %{name} = %{version}-%{release}
+This package provides the shared library.
%endif
-Requires: libXinerama-devel, libX11-devel, libXext-devel
-%description devel
-This package contains the development files for %{name}
-built for ghc-%{ghc_version}.
-
-%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}-devel = %{version}-%{release}
-Requires: ghc-prof = %{ghc_version}
-
-%description prof
-This package contains profiling libraries for %{name}
-built for ghc-%{ghc_version}.
-%endif
+%ghc_lib_package
%prep
@@ -81,73 +45,29 @@ built for ghc-%{ghc_version}.
%build
-%cabal_configure --ghc %{?with_prof:-p}
+%cabal_configure --ghc -p
%cabal build
-%if %{with doc}
%cabal haddock
-%endif
%install
%cabal_install
%cabal_pkg_conf
-%ghc_gen_filelists %{name}
+%ghc_gen_filelists
%clean
rm -rf $RPM_BUILD_ROOT
-%post devel
-ghc-pkg recache
-
-
-%if %{with doc}
-%post doc
-%ghc_reindex_haddock
-%endif
-
-
-%postun devel
-ghc-pkg recache
-
-
-%if %{with doc}
-%postun doc
-if [ "$1" -eq 0 ] ; then
- %ghc_reindex_haddock
-fi
-%endif
-
-
-%if %{with shared}
-%files -f %{name}.files
-%defattr(-,root,root,-)
-%{_docdir}/%{name}-%{version}
-%endif
-
-
-%files devel -f %{name}-devel.files
-%defattr(-,root,root,-)
-%if %{without shared}
-%{_docdir}/%{name}-%{version}
-%endif
-
-
-%if %{with doc}
-%files doc -f %{name}-doc.files
-%defattr(-,root,root,-)
-%endif
-
-
-%if %{with prof}
-%files prof -f %{name}-prof.files
-%defattr(-,root,root,-)
-%endif
-
-
%changelog
+* Mon Jan 11 2010 Jens Petersen - 1.5.0.0-2
+- update to ghc-rpm-macros-0.5.1 and cabal2spec-0.21.1:
+- drop doc and prof bcond
+- use common summary and common_description
+- use ghc_lib_package and ghc_pkg_c_deps
+
* Wed Dec 23 2009 Jens Petersen
- update base Group and devel Summary