# 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
#hackport: flags: -portable,build-pong:pong-server,build-testserver:test-server,-openssl

CABAL_HACKAGE_REVISION=5

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

DESCRIPTION="A web server for the Snap Framework"
HOMEPAGE="https://snapframework.com/"

LICENSE="BSD"
SLOT="0/${PV}"
KEYWORDS="~amd64"
IUSE="debug pong-server test-server"

RESTRICT=test # depends on broken hsopenssl

RDEPEND=">=dev-haskell/attoparsec-0.12:=[profile?] <dev-haskell/attoparsec-0.15:=[profile?]
	>=dev-haskell/blaze-builder-0.4:=[profile?] <dev-haskell/blaze-builder-0.5:=[profile?]
	>=dev-haskell/case-insensitive-1.1:=[profile?] <dev-haskell/case-insensitive-1.3:=[profile?]
	>=dev-haskell/clock-0.7.1:=[profile?] <dev-haskell/clock-0.9:=[profile?]
	>=dev-haskell/io-streams-1.3:=[profile?] <dev-haskell/io-streams-1.6:=[profile?]
	>=dev-haskell/io-streams-haproxy-1.0:=[profile?] <dev-haskell/io-streams-haproxy-1.1:=[profile?]
	>=dev-haskell/lifted-base-0.1:=[profile?] <dev-haskell/lifted-base-0.3:=[profile?]
	>=dev-haskell/network-2.3:=[profile?] <dev-haskell/network-4:=[profile?]
	>=dev-haskell/old-locale-1.0:=[profile?] <dev-haskell/old-locale-1.1:=[profile?]
	>=dev-haskell/snap-core-1.0:=[profile?] <dev-haskell/snap-core-1.1:=[profile?]
	>=dev-haskell/text-0.11:=[profile?] <dev-haskell/text-2.2:=[profile?]
	>=dev-haskell/unix-compat-0.2:=[profile?] <dev-haskell/unix-compat-0.8:=[profile?]
	>=dev-haskell/vector-0.7:=[profile?] <dev-haskell/vector-0.14:=[profile?]
	>=dev-lang/ghc-9.0.2:=
	pong-server? ( dev-haskell/bytestring-builder:=[profile?] )
	test-server? ( dev-haskell/bytestring-builder:=[profile?] )
"
DEPEND="${RDEPEND}
	>=dev-haskell/cabal-3.4.1.0
"
# test? ( >=dev-haskell/base16-bytestring-0.1 <dev-haskell/base16-bytestring-1.1
# 		>=dev-haskell/http-common-0.7 <dev-haskell/http-common-0.9
# 		>=dev-haskell/http-streams-0.7 <dev-haskell/http-streams-0.9
# 		>=dev-haskell/hunit-1.2 <dev-haskell/hunit-2
# 		>=dev-haskell/monad-control-1.0 <dev-haskell/monad-control-1.1
# 		>=dev-haskell/parallel-3 <dev-haskell/parallel-4
# 		>=dev-haskell/quickcheck-2.3.0.2 <dev-haskell/quickcheck-3
# 		>=dev-haskell/random-1.0 <dev-haskell/random-1.3
# 		>=dev-haskell/test-framework-0.8.0.3 <dev-haskell/test-framework-0.9
# 		>=dev-haskell/test-framework-hunit-0.2.7 <dev-haskell/test-framework-hunit-0.4
# 		>=dev-haskell/test-framework-quickcheck2-0.2.12.1 <dev-haskell/test-framework-quickcheck2-0.4
# 		>=dev-haskell/threads-0.5 <dev-haskell/threads-0.6 )
# "

src_configure() {
	haskell-cabal_src_configure \
		$(cabal_flag pong-server build-pong) \
		$(cabal_flag test-server build-testserver) \
		$(cabal_flag debug debug) \
		--flag=-openssl \
		--flag=-portable
}