Blob Blame History Raw
%bcond_without doc
%bcond_without prof

# ghc does not emit debug information
%global debug_package %{nil}

Name:           cpphs
Version:        1.9
Release:        1%{?dist}
Summary:        C pre-processor for Haskell
Group:          Development/Languages
License:        GPL+ and LGPLv2+
URL:            http://hackage.haskell.org/cgi-bin/hackage-scripts/package/%{name}
Source0:        http://hackage.haskell.org/packages/archive/%{name}/%{version}/%{name}-%{version}.tar.gz
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# fedora ghc archs:
ExclusiveArch:  %{ix86} x86_64 ppc alpha
BuildRequires:  ghc, ghc-rpm-macros
%if %{with doc}
BuildRequires:  ghc-doc
%endif
%if %{with prof}
BuildRequires:  ghc-prof
%endif

%description
Cpphs is a re-implementation of the C pre-processor that is both more
compatible with Haskell, and itself written in Haskell so that it can be
distributed with compilers.

This version of the C pre-processor is pretty-much feature-complete and
compatible with traditional (K&R) pre-processors. Additional features
include: a plain-text mode; an option to unlit literate code files; and
an option to turn off macro-expansion.


%package -n ghc-%{name}-devel
Summary:        Haskell library for %{name}
Group:          Development/Libraries
License:        LGPLv2+
Requires:       ghc = %{ghc_version}
Requires(post): ghc = %{ghc_version}
Requires(preun): ghc = %{ghc_version}

%description -n ghc-%{name}-devel
Haskell %{name} library for ghc.


%if %{with doc}
%package -n ghc-%{name}-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 -n ghc-%{name}-doc
This package contains development documentation files for the %{name}
library.
%endif


%if %{with prof}
%package -n ghc-%{name}-prof
Summary:        Profiling libraries for %{name}
Group:          Development/Libraries
License:        LGPLv2+
Requires:       ghc-%{name}-devel = %{version}-%{release}
Requires:       ghc-prof = %{ghc_version}

%description -n ghc-%{name}-prof
This package contains profiling libraries for %{name}.
%endif


%prep
%setup -q


%build
%cabal_configure --ghc %{?with_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 ghc-%{name}


%clean
rm -rf $RPM_BUILD_ROOT


%post -n ghc-%{name}-devel
%ghc_register_pkg


%if %{with doc}
%post -n ghc-%{name}-doc
%ghc_reindex_haddock
%endif


%preun -n ghc-%{name}-devel
if [ "$1" -eq 0 ] ; then
  %ghc_unregister_pkg
fi


%if %{with doc}
%postun -n ghc-%{name}-doc
if [ "$1" -eq 0 ] ; then
  %ghc_reindex_haddock
fi
%endif


%files
%defattr(-,root,root,-)
%doc docs/index.html
%{_bindir}/%{name}


%files -n ghc-%{name}-devel -f ghc-%{name}-devel.files
%defattr(-,root,root,-)
%doc LICENCE-LGPL


%if %{with doc}
%files -n ghc-%{name}-doc -f ghc-%{name}-doc.files
%defattr(-,root,root,-)
%endif


%if %{with prof}
%files -n ghc-%{name}-prof -f ghc-%{name}-prof.files
%defattr(-,root,root,-)
%endif


%changelog
* Fri Sep 18 2009 Jens Petersen <petersen@redhat.com> - 1.9-1
- update to 1.9

* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild

* Sun May 17 2009 Jens Petersen <petersen@redhat.com> - 1.6-8
- buildrequires ghc-rpm-macros (cabal2spec-0.16)

* Fri Apr 24 2009 Jens Petersen <petersen@redhat.com> - 1.6-7
- update to cabal2spec-0.14

* Mon Mar  2 2009 Jens Petersen <petersen@redhat.com> - 1.6-6
- update to cabal2spec-0.12:
  - add devel subpackage
  - use global
  - update archs

* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.6-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild

* Mon Jan 19 2009 Conrad Meyer <konrad@tylerc.org> - 1.6-4
- update to new template (haskell-packaging 0.4-1)

* Wed Jan 14 2009 Jens Petersen <petersen@redhat.com> - 1.6-3
- simplify summaries
- move lgpl license file to ghc-cpphs
- add html doc

* Tue Jan 13 2009 Jens Petersen <petersen@redhat.com> - 1.6-2
- make this a proper binlib package
- use bcond

* Mon Jan 12 2009 Conrad Meyer <konrad@tylerc.org> - 1.6-1
- initial packaging for Fedora created by cabal2spec