From: Jan Rękorajski Date: Sat, 30 May 2020 18:55:17 +0000 (+0200) Subject: - new X-Git-Tag: auto/th/ghc-async-2.2.2-1 X-Git-Url: http://git.pld-linux.org/gitweb.cgi?a=commitdiff_plain;h=d4354649dcc4e52b2388f9f0f907ace55146032b;p=packages%2Fghc-async.git - new --- d4354649dcc4e52b2388f9f0f907ace55146032b diff --git a/ghc-8.10.patch b/ghc-8.10.patch new file mode 100644 index 0000000..3fab93c --- /dev/null +++ b/ghc-8.10.patch @@ -0,0 +1,11 @@ +--- async-2.2.2/async.cabal~ 2019-06-06 09:11:39.000000000 +0200 ++++ async-2.2.2/async.cabal 2020-05-30 20:53:48.127170136 +0200 +@@ -50,7 +50,7 @@ + if impl(ghc>=7.1) + other-extensions: Trustworthy + exposed-modules: Control.Concurrent.Async +- build-depends: base >= 4.3 && < 4.14, hashable >= 1.1.2.0 && < 1.4, stm >= 2.2 && < 2.6 ++ build-depends: base >= 4.3, hashable >= 1.1.2.0 && < 1.4, stm >= 2.2 && < 2.6 + + test-suite test-async + default-language: Haskell2010 diff --git a/ghc-async.spec b/ghc-async.spec new file mode 100644 index 0000000..f0fe133 --- /dev/null +++ b/ghc-async.spec @@ -0,0 +1,109 @@ +# +# Conditional build: +%bcond_without prof # profiling library +# +%define pkgname async +Summary: Run IO operations asynchronously and wait for their results +Name: ghc-%{pkgname} +Version: 2.2.2 +Release: 1 +License: BSD +Group: Development/Languages +#Source0Download: http://hackage.haskell.org/package/async +Source0: http://hackage.haskell.org/package/%{pkgname}-%{version}/%{pkgname}-%{version}.tar.gz +# Source0-md5: fd7d08448469e87939ebdea392e1783d +Patch0: ghc-8.10.patch +URL: http://hackage.haskell.org/package/async +BuildRequires: ghc >= 6.12.3 +BuildRequires: ghc-hashable +%if %{with prof} +BuildRequires: ghc-prof +BuildRequires: ghc-hashable-prof +%endif +BuildRequires: rpmbuild(macros) >= 1.608 +%requires_eq ghc +Requires(post,postun): /usr/bin/ghc-pkg +Requires: ghc-hashable +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 + +%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} +Requires: ghc-hashable-prof + +%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 changelog.md %{name}-%{version}-doc/* +%{_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/Concurrent +%{_libdir}/%{ghcdir}/%{pkgname}-%{version}/Control/Concurrent/*.hi +%{_libdir}/%{ghcdir}/%{pkgname}-%{version}/Control/Concurrent/*.dyn_hi + +%if %{with prof} +%files prof +%defattr(644,root,root,755) +%{_libdir}/%{ghcdir}/%{pkgname}-%{version}/*_p.a +%{_libdir}/%{ghcdir}/%{pkgname}-%{version}/Control/Concurrent/*.p_hi +%endif