cabal2spec-2.6.2: test/golden-test-cases/algebraic-graphs.spec.golden
#
# spec file for package algebraic-graphs
#
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%global pkg_name algebraic-graphs
%bcond_with tests
Name: %{pkg_name}
Version: 0.0.5
Release: 0
Summary: A library for algebraic graph construction and transformation
License: MIT
URL: https://hackage.haskell.org/package/%{name}
Source0: https://hackage.haskell.org/package/%{name}-%{version}/%{name}-%{version}.tar.gz
BuildRequires: ghc-Cabal-devel
BuildRequires: ghc-array-devel
BuildRequires: ghc-containers-devel
BuildRequires: ghc-rpm-macros
%if %{with tests}
BuildRequires: ghc-QuickCheck-devel
BuildRequires: ghc-extra-devel
%endif
%description
<https://github.com/snowleopard/alga Alga> is a library for algebraic
construction and manipulation of graphs in Haskell. See
<https://github.com/snowleopard/alga-paper this paper> for the motivation
behind the library, the underlying theory and implementation details.
The top-level module
<http://hackage.haskell.org/package/algebraic-graphs/docs/Algebra-Graph.html
Algebra.Graph> defines the core data type
<http://hackage.haskell.org/package/algebraic-graphs/docs/Algebra-Graph.html#t:Graph
Graph>, which is a deep embedding of four graph construction primitives
/empty/, /vertex/, /overlay/ and /connect/. More conventional graph
representations can be found in
<http://hackage.haskell.org/package/algebraic-graphs/docs/Algebra-Graph-AdjacencyMap.html
Algebra.Graph.AdjacencyMap> and
<http://hackage.haskell.org/package/algebraic-graphs/docs/Algebra-Graph-Relation.html
Algebra.Graph.Relation>.
The type classes defined in
<http://hackage.haskell.org/package/algebraic-graphs/docs/Algebra-Graph-Class.html
Algebra.Graph.Class> and
<http://hackage.haskell.org/package/algebraic-graphs/docs/Algebra-Graph-HigherKinded-Class.html
Algebra.Graph.HigherKinded.Class> can be used for polymorphic graph
construction and manipulation. Also see
<http://hackage.haskell.org/package/algebraic-graphs/docs/Algebra-Graph-Fold.html
Algebra.Graph.Fold> that defines the Boehm-Berarducci encoding of algebraic
graphs and provides additional flexibility for polymorphic graph manipulation.
This is an experimental library and the API will be unstable until version
1.0.0. Please consider contributing to the on-going
<https://github.com/snowleopard/alga/issues discussions on the library API>.
%package -n ghc-%{name}
Summary: Haskell %{name} library
%description -n ghc-%{name}
This package provides the Haskell %{name} shared library.
%package -n ghc-%{name}-devel
Summary: Haskell %{name} library development files
Requires: ghc-%{name} = %{version}-%{release}
Requires: ghc-compiler = %{ghc_version}
Requires(post): ghc-compiler = %{ghc_version}
Requires(postun): ghc-compiler = %{ghc_version}
%description -n ghc-%{name}-devel
This package provides the Haskell %{name} library development files.
%prep
%autosetup
%build
%ghc_lib_build
%install
%ghc_lib_install
%check
%cabal_test
%post -n ghc-%{name}-devel
%ghc_pkg_recache
%postun -n ghc-%{name}-devel
%ghc_pkg_recache
%files
%license LICENSE
%doc CHANGES.md README.md
%files -n ghc-%{name} -f ghc-%{name}.files
%license LICENSE
%files -n ghc-%{name}-devel -f ghc-%{name}-devel.files
%doc CHANGES.md README.md
%changelog