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

EAPI=8

# ebuild generated by hackport 0.9.0.0.9999

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

DESCRIPTION="Hashing and checking of passwords"
HOMEPAGE="https://github.com/cdepillabout/password/tree/master/password#readme"

GHC_BOOTSTRAP_PACKAGES=(
	cabal-doctest
	)

LICENSE="BSD"
SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE="+argon2 +bcrypt crypton cryptonite +pbkdf2 +scrypt"

RDEPEND=">=dev-haskell/base64-0.3:=[profile?] <dev-haskell/base64-1.1:=[profile?]
	<dev-haskell/memory-1:=[profile?]
	<dev-haskell/password-types-2:=[profile?]
	>=dev-haskell/text-1.2.2:=[profile?] <dev-haskell/text-3:=[profile?]
	>=dev-lang/ghc-9.0.2:=
	cryptonite? ( >=dev-haskell/cryptonite-0.15.1:=[profile?] <dev-haskell/cryptonite-0.31:=[profile?] )
	!cryptonite? ( >=dev-haskell/crypton-0.31:=[profile?] <dev-haskell/crypton-1.1:=[profile?] )
"
DEPEND="${RDEPEND}
	>=dev-haskell/cabal-3.4.1.0 <dev-haskell/cabal-4
	>=dev-haskell/cabal-doctest-1.0.6 <dev-haskell/cabal-doctest-1.1
	test? ( dev-haskell/base-compat
		dev-haskell/doctest
		dev-haskell/quickcheck
		dev-haskell/quickcheck-instances
		dev-haskell/tasty
		dev-haskell/tasty-golden
		dev-haskell/tasty-hunit
		dev-haskell/tasty-quickcheck
		scrypt? ( dev-haskell/scrypt ) )
"

src_configure() {
	haskell-cabal_src_configure \
		$(cabal_flag argon2 argon2) \
		$(cabal_flag bcrypt bcrypt) \
		$(cabal_flag crypton crypton) \
		$(cabal_flag cryptonite cryptonite) \
		$(cabal_flag pbkdf2 pbkdf2) \
		$(cabal_flag scrypt scrypt)
}