diff --git a/README.md b/README.md index 46afd01..b20e901 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,5 @@ # ghc-enclosed-exceptions +Catching all exceptions raised within an enclosed computation, while remaining responsive to (external) asynchronous exceptions. +For more information on the technique, please see: https://www.fpcomplete.com/user/snoyberg/general-haskell/exceptions/catching-all-exceptions. + diff --git a/ghc-enclosed-exceptions.spec b/ghc-enclosed-exceptions.spec new file mode 100644 index 0000000..97e0cc1 --- /dev/null +++ b/ghc-enclosed-exceptions.spec @@ -0,0 +1,63 @@ +%define ghc_ver %(ghc --numeric-version) +%define pkgname enclosed-exceptions + +Name: ghc-enclosed-exceptions +Version: 1.0.1.1 +Release: 1mamba +Summary: GHC library: Catching all exceptions from within an enclosed computation +Group: Development/Libraries +Vendor: openmamba +Distribution: openmamba +Packager: Davide Madrisan +URL: http://hackage.haskell.org/package/%{pkgname} +Source: http://hackage.haskell.org/package/enclosed-exceptions-%{version}/enclosed-exceptions-%{version}.tar.gz +License: BSD +## AUTOBUILDREQ-BEGIN +## AUTOBUILDREQ-END +BuildRequires: ghc +BuildRequires: hscolour +Requires: ghc = %{ghc_ver} +BuildRoot: %{_tmppath}/%{name}-%{version}-root + +%description +Catching all exceptions raised within an enclosed computation, while remaining responsive to (external) asynchronous exceptions. +For more information on the technique, please see: https://www.fpcomplete.com/user/snoyberg/general-haskell/exceptions/catching-all-exceptions. + +%prep +%setup -q -n enclosed-exceptions-%{version} + +%build +runghc Setup.hs configure -v2 \ + --prefix=%{_prefix} \ + --libdir=%{_libdir} \ + --libexecdir=%{_libexecdir} \ + --docdir=%{_docdir}/%{name}-%{version} + +runghc Setup.hs build +runghc Setup.hs haddock --executable --html-location=URL --hyperlink-source + +%install +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" +runghc Setup.hs copy --destdir=%{buildroot} +runghc Setup.hs register \ + --gen-pkg-config="%{buildroot}%{_libdir}/ghc-%{ghc_ver}/%{pkgname}-%{version}/%{pkgname}-%{version}.conf" + +%clean +[ "%{buildroot}" != / ] && rm -rf "%{buildroot}" + +%post +ghc-pkg register %{_libdir}/ghc-%{ghc_ver}/%{pkgname}-%{version}/%{pkgname}-%{version}.conf &>/dev/null || : + +%preun +ghc-pkg unregister %{pkgname}-%{version} &>/dev/null || : + +%files +%defattr(-,root,root) +%{_libdir}/ghc-%{ghc_ver}/%{pkgname}-%{version} +%dir %{_docdir}/%{name}-%{version} +%{_docdir}/%{name}-%{version}/LICENSE +%{_docdir}/%{name}-%{version}/html + +%changelog +* Mon Apr 13 2015 Davide Madrisan 1.0.1.1-1mamba +- package created by autospec