]> git.pld-linux.org Git - packages/ghc-safe-exceptions.git/commitdiff
- new auto/th/ghc-safe-exceptions-0.1.7.0-1
authorJan Rękorajski <baggins@pld-linux.org>
Tue, 26 May 2020 22:15:49 +0000 (00:15 +0200)
committerJan Rękorajski <baggins@pld-linux.org>
Tue, 26 May 2020 22:15:49 +0000 (00:15 +0200)
ghc-8.10.patch [new file with mode: 0644]
ghc-safe-exceptions.spec [new file with mode: 0644]

diff --git a/ghc-8.10.patch b/ghc-8.10.patch
new file mode 100644 (file)
index 0000000..6ca138a
--- /dev/null
@@ -0,0 +1,17 @@
+--- safe-exceptions-0.1.7.0/safe-exceptions.cabal~     2018-01-18 16:32:22.000000000 +0100
++++ safe-exceptions-0.1.7.0/safe-exceptions.cabal      2020-05-27 00:09:09.907669342 +0200
+@@ -16,10 +16,10 @@
+ library
+   hs-source-dirs:      src
+   exposed-modules:     Control.Exception.Safe
+-  build-depends:       base >= 4.7 && < 4.11
+-                     , deepseq >= 1.2 && < 1.5
+-                     , exceptions >= 0.8 && < 0.9
+-                     , transformers >= 0.2 && < 0.6
++  build-depends:       base >= 4.7
++                     , deepseq >= 1.2
++                     , exceptions >= 0.8
++                     , transformers >= 0.2
+   default-language:    Haskell2010
+ test-suite safe-exceptions-test
diff --git a/ghc-safe-exceptions.spec b/ghc-safe-exceptions.spec
new file mode 100644 (file)
index 0000000..c142684
--- /dev/null
@@ -0,0 +1,115 @@
+#
+# Conditional build:
+%bcond_without prof    # profiling library
+#
+%define                pkgname safe-exceptions
+Summary:       Safe, consistent, and easy exception handling
+Name:          ghc-%{pkgname}
+Version:       0.1.7.0
+Release:       1
+License:       MIT
+Group:         Development/Languages
+#Source0Download: http://hackage.haskell.org/package/safe-exceptions
+Source0:       http://hackage.haskell.org/package/%{pkgname}-%{version}/%{pkgname}-%{version}.tar.gz
+# Source0-md5: a1ef100de8fcb54a3d7b5564fa295f1a
+Patch0:                ghc-8.10.patch
+URL:           http://hackage.haskell.org/package/safe-exceptions
+BuildRequires: ghc >= 6.12.3
+%if %{with prof}
+BuildRequires: ghc-prof
+%endif
+BuildRequires: rpmbuild(macros) >= 1.608
+%requires_eq   ghc
+Requires(post,postun): /usr/bin/ghc-pkg
+BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+
+# debuginfo is not useful for ghc
+%define                _enable_debug_packages  0
+
+# don't compress haddock files
+%define                _noautocompressdoc      *.haddock
+
+%description
+Runtime exceptions - as exposed in base by the Control.Exception
+module - have long been an intimidating part of the Haskell ecosystem.
+This package, and this README for the package, are intended to
+overcome this. It provides a safe and simple API on top of the
+existing exception handling machinery. The API is equivalent to
+the underlying implementation in terms of power but encourages best
+practices to minimize the chances of getting the exception handling
+wrong. By doing so and explaining the corner cases clearly, the hope
+is to turn what was previously something scary into an aspect of
+Haskell everyone feels safe using.
+
+%package prof
+Summary:       Profiling %{pkgname} library for GHC
+Summary(pl.UTF-8):     Biblioteka profilująca %{pkgname} dla GHC
+Group:         Development/Libraries
+Requires:      %{name} = %{version}-%{release}
+
+%description prof
+Profiling %{pkgname} library for GHC.  Should be installed when
+GHC's profiling subsystem is needed.
+
+%description prof -l pl.UTF-8
+Biblioteka profilująca %{pkgname} dla GHC. Powinna być zainstalowana
+kiedy potrzebujemy systemu profilującego z GHC.
+
+%prep
+%setup -q -n %{pkgname}-%{version}
+%patch0 -p1
+
+%build
+runhaskell Setup.hs configure -v2 \
+       %{?with_prof:--enable-library-profiling} \
+       --prefix=%{_prefix} \
+       --libdir=%{_libdir} \
+       --libexecdir=%{_libexecdir} \
+       --docdir=%{_docdir}/%{name}-%{version}
+
+runhaskell Setup.hs build
+runhaskell Setup.hs haddock --executables
+
+%install
+rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT%{_libdir}/%{ghcdir}/package.conf.d
+
+runhaskell Setup.hs copy --destdir=$RPM_BUILD_ROOT
+
+# work around automatic haddock docs installation
+%{__rm} -rf %{name}-%{version}-doc
+cp -a $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version} %{name}-%{version}-doc
+%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
+
+runhaskell Setup.hs register \
+       --gen-pkg-config=$RPM_BUILD_ROOT%{_libdir}/%{ghcdir}/package.conf.d/%{pkgname}.conf
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%post
+%ghc_pkg_recache
+
+%postun
+%ghc_pkg_recache
+
+%files
+%defattr(644,root,root,755)
+%doc COOKBOOK.md ChangeLog.md LICENSE README.md %{name}-%{version}-doc/html
+%{_libdir}/%{ghcdir}/package.conf.d/%{pkgname}.conf
+%dir %{_libdir}/%{ghcdir}/%{pkgname}-%{version}
+%{_libdir}/%{ghcdir}/%{pkgname}-%{version}/*.so
+%{_libdir}/%{ghcdir}/%{pkgname}-%{version}/*.a
+%exclude %{_libdir}/%{ghcdir}/%{pkgname}-%{version}/*_p.a
+
+%dir %{_libdir}/%{ghcdir}/%{pkgname}-%{version}/Control
+%dir %{_libdir}/%{ghcdir}/%{pkgname}-%{version}/Control/Exception
+%{_libdir}/%{ghcdir}/%{pkgname}-%{version}/Control/Exception/*.hi
+%{_libdir}/%{ghcdir}/%{pkgname}-%{version}/Control/Exception/*.dyn_hi
+
+%if %{with prof}
+%files prof
+%defattr(644,root,root,755)
+%{_libdir}/%{ghcdir}/%{pkgname}-%{version}/*_p.a
+%{_libdir}/%{ghcdir}/%{pkgname}-%{version}/Control/Exception/*.p_hi
+%endif
This page took 0.061156 seconds and 4 git commands to generate.