@ -1,17 +1,20 @@
%global pkg_name HUnit
%bcond_without doc
%bcond_without prof
%global common_summary Haskell %{pkg_name} library
%global common_description HUnit is a unit testing framework for Haskell, inspired by the JUnit tool\
for Java.
%bcond_without shared
# ghc does not emit debug information
# debuginfo is not useful for ghc
%global debug_package %{nil}
Name: ghc-%{pkg_name}
# part of haskell-platform-2009.2.0.2 and ghc-6.10.x extralibs!
Version: 1.2.0.3
Release: 2 %{?dist}
Summary: Haskell %{pkg_name} library
# part of haskell-platform-2009.3.1 and ghc-6.10.x extralibs!
Version: 1.2.2.1
Release: 1 %{?dist}
Summary: %{common_summary}
Group: System Environment/Libraries
License: BSD
@ -19,59 +22,19 @@ URL: http://hunit.sourceforge.net/
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
%{?ghc_pkg_deps:BuildRequires: %{ghc_pkg_deps}, %(echo %{ghc_pkg_deps} | sed -e "s/\(ghc-[^, ]\+\)-devel/\1-doc,\1-prof/g")}
%description
This package provides the Haskell %{pkg_name} library for ghc. HUnit
is a unit testing framework for Haskell, inspired by the JUnit tool
for Java.
%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
%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
@ -79,73 +42,40 @@ 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}
%clean
rm -rf $RPM_BUILD_ROOT
%ghc_gen_filelists
rm $RPM_BUILD_ROOT%{_bindir}/*-tests
mv $RPM_BUILD_ROOT%{_datadir}/%{pkg_name}-%{version}/* $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
%post devel
ghc-pkg recache
%check
dist/build/basic-tests/basic-tests
dist/build/extended-tests/extended-tests
dist/build/terminal-tests/terminal-tests
%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
%clean
rm -rf $RPM_BUILD_ROOT
%changelog
* Mon Jan 11 2010 Jens Petersen <petersen@redhat.com> - 1.2.2.1-1
- update 1.2.2.1 (current haskell-platform-2009.3.1)
- remove test programs and move doc files to docdir
- 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
- drop redundant buildroot and its install cleaning
* Wed Dec 23 2009 Jens Petersen <petersen@redhat.com> - 1.2.0.3-2
- update packaging for ghc-6.12.1
- added shared library support: needs ghc-rpm-macros 0.3.1