# generated by cabal-rpm-2.2.1 # https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/ %global pkg_name safe-exceptions %global pkgver %{pkg_name}-%{version} %{?haskell_setup} # testsuite missing deps: hspec void Name: ghc-%{pkg_name} Version: 0.1.7.4 Release: 1%{?dist} Summary: Safe, consistent, and easy exception handling License: MIT Url: https://hackage.haskell.org/package/%{pkg_name} # Begin cabal-rpm sources: Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz Source1: https://hackage.haskell.org/package/%{pkgver}/%{pkg_name}.cabal#/%{pkgver}.cabal # End cabal-rpm sources # Begin cabal-rpm deps: BuildRequires: ghc-Cabal-devel BuildRequires: ghc-rpm-macros BuildRequires: ghc-base-devel BuildRequires: ghc-deepseq-devel BuildRequires: ghc-exceptions-devel BuildRequires: ghc-transformers-devel %if %{with ghc_prof} BuildRequires: ghc-base-prof BuildRequires: ghc-deepseq-prof BuildRequires: ghc-exceptions-prof BuildRequires: ghc-transformers-prof %endif # End cabal-rpm deps %description This package provides additional safety and simplicity versus `Control.Exception` by having its functions recognize the difference between synchronous and asynchronous exceptions. As described below, synchronous exceptions are treated as _recoverable_, allowing you to catch and handle them as well as clean up after them, whereas asynchronous exceptions can only be cleaned up after. In particular, this library prevents you from making the following mistakes: * Catching and swallowing an asynchronous exception * Throwing an asynchronous exception synchronously * Throwing a synchronous exception asynchronously * Swallowing asynchronous exceptions via failing cleanup handlers %package devel Summary: Haskell %{pkg_name} library development files Provides: %{name}-static = %{version}-%{release} Provides: %{name}-static%{?_isa} = %{version}-%{release} %if %{defined ghc_version} Requires: ghc-compiler = %{ghc_version} %endif Requires: %{name}%{?_isa} = %{version}-%{release} %description devel This package provides the Haskell %{pkg_name} library development files. %if %{with haddock} %package doc Summary: Haskell %{pkg_name} library documentation BuildArch: noarch Requires: ghc-filesystem %description doc This package provides the Haskell %{pkg_name} library documentation. %endif %if %{with ghc_prof} %package prof Summary: Haskell %{pkg_name} profiling library Requires: %{name}-devel%{?_isa} = %{version}-%{release} Supplements: (%{name}-devel and ghc-prof) %description prof This package provides the Haskell %{pkg_name} profiling library. %endif %prep # Begin cabal-rpm setup: %setup -q -n %{pkgver} cp -bp %{SOURCE1} %{pkg_name}.cabal # End cabal-rpm setup %build # Begin cabal-rpm build: %ghc_lib_build # End cabal-rpm build %install # Begin cabal-rpm install %ghc_lib_install # End cabal-rpm install %files -f %{name}.files # Begin cabal-rpm files: %license LICENSE # End cabal-rpm files %files devel -f %{name}-devel.files %doc ChangeLog.md README.md %if %{with haddock} %files doc -f %{name}-doc.files %license LICENSE %endif %if %{with ghc_prof} %files prof -f %{name}-prof.files %endif %changelog * Sun Jul 21 2024 Jens Petersen - 0.1.7.4-1 - spec file generated by cabal-rpm-2.2.1