diff --git a/ghc-xmonad-contrib.spec b/ghc-xmonad-contrib.spec index f8f7c1e..a5c37ed 100644 --- a/ghc-xmonad-contrib.spec +++ b/ghc-xmonad-contrib.spec @@ -1,101 +1,49 @@ %global pkg_name xmonad-contrib -%bcond_without doc -%bcond_without prof +%global common_summary Third party extensions for xmonad -# ghc does not emit debug information +%global common_description Third party tiling algorithms, configurations and scripts to xmonad,\ +a tiling window manager for X.\ +\ +For an introduction to building, configuring and using xmonad\ +extensions, see "XMonad.Doc". In particular:\ +\ +"XMonad.Doc.Configuring", a guide to configuring xmonad\ +"XMonad.Doc.Extending", using the contributed extensions library\ +"XMonad.Doc.Developing", introduction to xmonad internals and writing\ +your own extensions. + +%global ghc_pkg_deps ghc-utf8-string-devel, ghc-X11-xft-devel, ghc-xmonad-devel + +%bcond_without shared + +# debuginfo is not useful for ghc %global debug_package %{nil} Name: ghc-%{pkg_name} -Version: 0.9 +Version: 0.9.1 Release: 1%{?dist} -Summary: Third party extensions for xmonad +Summary: %{common_summary} -Group: Development/Libraries -License: BSD3 +Group: System Environment/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) # fedora ghc archs: ExclusiveArch: %{ix86} x86_64 ppc alpha -BuildRequires: ghc-xmonad-devel = %{version} -BuildRequires: ghc-utf8-string-devel -BuildRequires: ghc-X11-xft-devel -BuildRequires: ghc, ghc-rpm-macros -%if %{with doc} +BuildRequires: ghc, ghc-rpm-macros >= 0.5.1 BuildRequires: ghc-doc -BuildRequires: ghc-utf8-string-doc -BuildRequires: ghc-X11-xft-doc -BuildRequires: ghc-xmonad-doc -%endif -%if %{with prof} BuildRequires: ghc-prof -BuildRequires: ghc-xmonad-prof = %{version} -BuildRequires: ghc-utf8-string-prof -BuildRequires: ghc-X11-xft-prof -%endif +%{?ghc_pkg_deps:BuildRequires: %{ghc_pkg_deps}, %(echo %{ghc_pkg_deps} | sed -e "s/\(ghc-[^, ]\+\)-devel/\1-doc,\1-prof/g")} %description -Haskell %{pkg_name} library for ghc-%{ghc_version}. - -Third party tiling algorithms, configurations and scripts to xmonad, -a tiling window manager for X. - -For an introduction to building, configuring and using xmonad -extensions, see "XMonad.Doc". In particular: - -"XMonad.Doc.Configuring", a guide to configuring xmonad - -"XMonad.Doc.Extending", using the contributed extensions library - -"XMonad.Doc.Developing", introduction to xmonad internals and writing -your own extensions. - -%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-xmonad-devel = %ghc_pkg_ver xmonad -Requires: ghc-utf8-string-devel = %ghc_pkg_ver utf8-string -Requires: ghc-X11-xft-devel = %ghc_pkg_ver X11-xft - -%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} -Requires: ghc-xmonad-doc = %ghc_pkg_ver xmonad -Requires: ghc-utf8-string-doc = %ghc_pkg_ver utf8-string -Requires: ghc-X11-xft-doc = %ghc_pkg_ver X11-xft - -%description doc -This package contains development documentation files for the %{name} library. +%{common_description} +%if %{with shared} +This package provides the shared 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} -Requires: ghc-xmonad-prof = %ghc_pkg_ver xmonad -Requires: ghc-utf8-string-prof = %ghc_pkg_ver utf8-string -Requires: ghc-X11-xft-prof = %ghc_pkg_ver X11-xft - -%description prof -This package contains profiling libraries for %{name} -built for ghc-%{ghc_version}. -%endif +%ghc_lib_package %prep @@ -103,67 +51,32 @@ built for ghc-%{ghc_version}. %build -%cabal_configure --ghc %{?with_prof:-p} +%cabal_configure --ghc -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} +%cabal_pkg_conf + +%ghc_gen_filelists %clean rm -rf $RPM_BUILD_ROOT -%post devel -%ghc_register_pkg - - -%if %{with doc} -%post doc -%ghc_reindex_haddock -%endif - - -%preun devel -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 devel -f %{name}-devel.files -%defattr(-,root,root,-) -%{_docdir}/%{name}-%{version} - - -%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 - 0.9.1-1 +- update to 0.9.1 +- 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_deps +- build shared library +- drop redundant buildroot and its install cleaning + * Tue Nov 17 2009 Jens Petersen - 0.9-1 - update to 0.9 - use %%ghc_pkg_ver for dep requires versions