ghc-auto-update/ghc-auto-update.spec

130 lines
3.0 KiB
RPMSpec
Raw Normal View History

# generated by cabal-rpm-2.1.0
2020-06-04 11:25:15 +00:00
# https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/
2017-10-17 07:18:01 +00:00
%global pkg_name auto-update
%global pkgver %{pkg_name}-%{version}
2021-07-07 16:30:09 +00:00
%bcond_without tests
2017-10-17 07:18:01 +00:00
Name: ghc-%{pkg_name}
2020-02-09 13:54:34 +00:00
Version: 0.1.6
Release: %autorelease
2017-10-17 07:18:01 +00:00
Summary: Efficiently run periodic, on-demand actions
License: MIT
Url: https://hackage.haskell.org/package/%{pkg_name}
2019-02-17 14:43:33 +00:00
# Begin cabal-rpm sources:
2017-10-17 07:18:01 +00:00
Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz
2019-02-17 14:43:33 +00:00
# End cabal-rpm sources
2017-10-17 07:18:01 +00:00
2019-02-17 14:43:33 +00:00
# Begin cabal-rpm deps:
2017-10-17 07:18:01 +00:00
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-rpm-macros
BuildRequires: ghc-base-devel
%if %{with ghc_prof}
BuildRequires: ghc-base-prof
%endif
2021-07-07 16:30:09 +00:00
%if %{with tests}
BuildRequires: ghc-HUnit-devel
BuildRequires: ghc-exceptions-devel
BuildRequires: ghc-hspec-devel
BuildRequires: ghc-retry-devel
%endif
2019-02-17 14:43:33 +00:00
# End cabal-rpm deps
2017-10-17 07:18:01 +00:00
%description
A common problem is the desire to have an action run at a scheduled
interval, but only if it is needed. For example, instead of having
every web request result in a new getCurrentTime call, we'd like to
have a single worker thread run every second, updating an IORef.
However, if the request frequency is less than once per second,
this is a pessimization, and worse, kills idle GC.
This library allows you to define actions which will either be
performed by a dedicated thread or, in times of low volume, will be
executed by the calling thread.
%package devel
Summary: Haskell %{pkg_name} library development files
Provides: %{name}-static = %{version}-%{release}
Provides: %{name}-static%{?_isa} = %{version}-%{release}
2018-01-24 13:10:36 +00:00
%if %{defined ghc_version}
2017-10-17 07:18:01 +00:00
Requires: ghc-compiler = %{ghc_version}
2018-01-24 13:10:36 +00:00
%endif
2017-10-17 07:18:01 +00:00
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
2020-02-08 14:49:00 +00:00
BuildArch: noarch
2021-07-07 16:30:09 +00:00
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}
2020-02-08 14:49:00 +00:00
Supplements: (%{name}-devel and ghc-prof)
%description prof
This package provides the Haskell %{pkg_name} profiling library.
%endif
2017-10-17 07:18:01 +00:00
%prep
2019-02-17 14:43:33 +00:00
# Begin cabal-rpm setup:
2017-10-17 07:18:01 +00:00
%setup -q -n %{pkgver}
2019-02-17 14:43:33 +00:00
# End cabal-rpm setup
2017-10-17 07:18:01 +00:00
%build
2019-02-17 14:43:33 +00:00
# Begin cabal-rpm build:
2017-10-17 07:18:01 +00:00
%ghc_lib_build
2019-02-17 14:43:33 +00:00
# End cabal-rpm build
2017-10-17 07:18:01 +00:00
%install
2019-02-17 14:43:33 +00:00
# Begin cabal-rpm install
2017-10-17 07:18:01 +00:00
%ghc_lib_install
2019-02-17 14:43:33 +00:00
# End cabal-rpm install
2017-10-17 07:18:01 +00:00
2021-07-07 16:30:09 +00:00
%check
%if %{with tests}
%cabal_test
%endif
2017-10-17 07:18:01 +00:00
%files -f %{name}.files
2019-02-17 14:43:33 +00:00
# Begin cabal-rpm files:
2017-10-17 07:18:01 +00:00
%license LICENSE
2019-02-17 14:43:33 +00:00
# End cabal-rpm files
2017-10-17 07:18:01 +00:00
%files devel -f %{name}-devel.files
%doc ChangeLog.md README.md
%if %{with haddock}
%files doc -f %{name}-doc.files
2020-02-08 14:49:00 +00:00
%license LICENSE
%endif
%if %{with ghc_prof}
%files prof -f %{name}-prof.files
%endif
2017-10-17 07:18:01 +00:00
%changelog
%autochangelog