ghc-safe/ghc-safe.spec

144 lines
3.3 KiB
RPMSpec
Raw Permalink Normal View History

# generated by cabal-rpm-2.1.0
2020-06-04 11:28:03 +00:00
# https://docs.fedoraproject.org/en-US/packaging-guidelines/Haskell/
2011-07-09 05:40:34 +00:00
2011-01-15 18:25:24 +00:00
%global pkg_name safe
2017-02-23 06:17:53 +00:00
%global pkgver %{pkg_name}-%{version}
# disable temporarily to build with just ghc
%bcond_with tests
2011-01-15 18:25:24 +00:00
Name: ghc-%{pkg_name}
2020-06-10 03:46:32 +00:00
Version: 0.3.19
Release: %autorelease
2015-08-08 04:06:48 +00:00
Summary: Library of safe (exception free) functions
2011-01-15 18:25:24 +00:00
License: BSD-3-Clause
2015-01-20 09:43:50 +00:00
Url: https://hackage.haskell.org/package/%{pkg_name}
2019-02-17 14:46:56 +00:00
# Begin cabal-rpm sources:
2017-02-23 06:17:53 +00:00
Source0: https://hackage.haskell.org/package/%{pkgver}/%{pkgver}.tar.gz
2019-02-17 14:46:56 +00:00
# End cabal-rpm sources
2012-11-17 16:28:16 +00:00
2019-02-17 14:46:56 +00:00
# Begin cabal-rpm deps:
BuildRequires: ghc-Cabal-devel
2012-11-17 16:28:16 +00:00
BuildRequires: ghc-rpm-macros
BuildRequires: ghc-base-devel
%if %{with ghc_prof}
BuildRequires: ghc-base-prof
%endif
2017-02-23 06:17:53 +00:00
%if %{with tests}
BuildRequires: ghc-QuickCheck-devel
BuildRequires: ghc-deepseq-devel
%endif
# End cabal-rpm deps
2011-01-15 18:25:24 +00:00
%description
2015-01-20 09:43:50 +00:00
A library wrapping 'Prelude'/'Data.List' functions that can throw exceptions,
such as 'head' and '!!'. Each unsafe function has up to four variants, e.g.
with 'tail':
* 'tail :: [a] -> [a]', raises an error on 'tail []'.
* 'tailMay :: [a] -> /Maybe/ [a]', turns errors into 'Nothing'.
* 'tailDef :: /[a]/ -> [a] -> [a]', takes a default to return on errors.
* 'tailNote :: /String/ -> [a] -> [a]', takes an extra argument which
supplements the error message.
* 'tailSafe :: [a] -> [a]', returns some sensible default if possible, '[]' in
the case of 'tail'.
This package is divided into three modules:
* "Safe" contains safe variants of 'Prelude' and 'Data.List' functions.
* "Safe.Foldable" contains safe variants of 'Foldable' functions.
* "Safe.Exact" creates crashing versions of functions like 'zip' (errors if the
lists are not equal) and 'take' (errors if there are not enough elements), then
wraps them to provide safe variants.
%package devel
Summary: Haskell %{pkg_name} library development files
2015-01-20 09:43:50 +00:00
Provides: %{name}-static = %{version}-%{release}
Provides: %{name}-static%{?_isa} = %{version}-%{release}
2018-01-24 13:11:53 +00:00
%if %{defined ghc_version}
Requires: ghc-compiler = %{ghc_version}
2018-01-24 13:11:53 +00:00
%endif
2015-01-20 09:43:50 +00:00
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
This package provides the Haskell %{pkg_name} library development files.
2011-01-15 18:25:24 +00:00
%if %{with haddock}
%package doc
Summary: Haskell %{pkg_name} library documentation
2020-02-08 14:51:50 +00:00
BuildArch: noarch
2021-07-07 16:30:13 +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:51:50 +00:00
Supplements: (%{name}-devel and ghc-prof)
%description prof
This package provides the Haskell %{pkg_name} profiling library.
%endif
2011-01-15 18:25:24 +00:00
%prep
2019-02-17 14:46:56 +00:00
# Begin cabal-rpm setup:
2017-02-23 06:17:53 +00:00
%setup -q -n %{pkgver}
2019-02-17 14:46:56 +00:00
# End cabal-rpm setup
2011-01-15 18:25:24 +00:00
%build
2019-02-17 14:46:56 +00:00
# Begin cabal-rpm build:
2011-01-15 18:25:24 +00:00
%ghc_lib_build
2019-02-17 14:46:56 +00:00
# End cabal-rpm build
2011-01-15 18:25:24 +00:00
%install
2019-02-17 14:46:56 +00:00
# Begin cabal-rpm install
2011-01-15 18:25:24 +00:00
%ghc_lib_install
2019-02-17 14:46:56 +00:00
# End cabal-rpm install
2011-01-15 18:25:24 +00:00
2017-02-23 06:17:53 +00:00
%check
2021-07-07 16:30:13 +00:00
%if %{with tests}
2017-02-23 06:17:53 +00:00
%cabal_test
2021-07-07 16:30:13 +00:00
%endif
2017-02-23 06:17:53 +00:00
%files -f %{name}.files
2019-02-17 14:46:56 +00:00
# Begin cabal-rpm files:
2016-09-28 09:32:25 +00:00
%license LICENSE
2019-02-17 14:46:56 +00:00
# End cabal-rpm files
2011-07-09 05:40:34 +00:00
%files devel -f %{name}-devel.files
2017-02-23 06:17:53 +00:00
%doc CHANGES.txt README.md
2011-01-15 18:25:24 +00:00
%if %{with haddock}
%files doc -f %{name}-doc.files
2020-02-08 14:51:50 +00:00
%license LICENSE
%endif
%if %{with ghc_prof}
%files prof -f %{name}-prof.files
%endif
2011-01-15 18:25:24 +00:00
%changelog
%autochangelog