# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

# ebuild generated by hackport 0.7.3.0
#hackport: flags: -devel

CABAL_FEATURES="lib profile haddock hoogle hscolour test-suite"
inherit haskell-cabal optfeature

DESCRIPTION="Predicate Abstraction-based Horn-Clause/Implication Constraint Solver"
HOMEPAGE="https://github.com/ucsd-progsys/liquid-fixpoint#readme"

REPO_URI="https://github.com/ucsd-progsys/${PN}"
COMMIT="a63a20e8e73f2a3c214a874cc6b2da0f76a57318"
BRANCH="develop"
SRC_URI="${REPO_URI}/archive/${COMMIT}.tar.gz -> ${PN}-${COMMIT}.tar.gz"
S="${WORKDIR}/${PN}-${COMMIT}"
CABAL_FILE="${S}/${PN}.cabal"

LICENSE="BSD"
SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE="executable"

PATCHES=(
	"${FILESDIR}/${PN}-0.8.10.7.1_pre20220624-executable-flag.patch"
	"${FILESDIR}/${PN}-0.8.10.7.1_pre20220624-disable-git-tests.patch"
)

RDEPEND="
	dev-haskell/aeson:=[profile?]
	dev-haskell/ansi-terminal:=[profile?]
	>=dev-haskell/ascii-progress-0.3:=[profile?]
	dev-haskell/async:=[profile?]
	dev-haskell/attoparsec:=[profile?]
	dev-haskell/boxes:=[profile?]
	dev-haskell/cereal:=[profile?]
	dev-haskell/cmdargs:=[profile?]
	dev-haskell/fgl:=[profile?]
	dev-haskell/hashable:=[profile?]
	dev-haskell/intern:=[profile?]
	dev-haskell/lens-family:=[profile?]
	>=dev-haskell/megaparsec-7.0.0:=[profile?] <dev-haskell/megaparsec-10:=[profile?]
	dev-haskell/parallel:=[profile?]
	dev-haskell/parser-combinators:=[profile?]
	>=dev-haskell/rest-rewrite-0.3.0:=[profile?]
	dev-haskell/stm:=[profile?]
	dev-haskell/store:=[profile?]
	dev-haskell/syb:=[profile?]
	dev-haskell/unordered-containers:=[profile?]
	>=dev-lang/ghc-8.4.3:=
"
DEPEND="${RDEPEND}
	>=dev-haskell/cabal-2.4
	test? (
		>=dev-haskell/tasty-0.10
		>=dev-haskell/tasty-hunit-0.9
		dev-haskell/tasty-quickcheck
	)
"

src_configure() {
	haskell-cabal_src_configure \
		--flag=-devel \
		$(cabal_flag executable executable)
}

pkg_postinst() {
	optfeature "Required SMTLIB2 compatible solver" sci-mathematics/z3 sci-mathematics/cvc4
}