# 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="A documentation-generation tool for Haskell libraries"
HOMEPAGE="https://www.haskell.org/haddock/"

GIT_REPO="https://gitlab.haskell.org/ghc/haddock"
# pinned commit for haddock submodule in ghc-9.8
GIT_COMMIT="bb7b9480b0825d3fa978e61c7faf25dce718a305"
GIT_P="haddock-${GIT_COMMIT}"

SRC_URI="${GIT_REPO}/-/archive/${GIT_COMMIT}.tar.gz
	-> ${GIT_P}.tar.gz"

S="${WORKDIR}/${GIT_P}/${CABAL_PN}"
CABAL_FILE="${S}/${CABAL_PN}.cabal"

LICENSE="BSD-2"
SLOT="0/${PV}"
KEYWORDS="~amd64"

CABAL_CHDEPS=(
	'ghc             ^>= 9.7' 'ghc ^>=9.8'
	'hspec           ^>= 2.9' 'hspec >=2.9'
	'hspec-discover:hspec-discover ^>= 2.9' 'hspec-discover:hspec-discover >=2.9'
	'QuickCheck      >= 2.11  && ^>= 2.14' 'QuickCheck >=2.14'
)

RDEPEND="
	>=dev-haskell/ghc-paths-0.1.0.12:=[profile?] <dev-haskell/ghc-paths-0.2:=[profile?]
	>=dev-haskell/haddock-library-1.11:=[profile?] <dev-haskell/haddock-library-1.12:=[profile?]
	>=dev-haskell/parsec-3.1.13.0:=[profile?] <dev-haskell/parsec-3.2:=[profile?]
	>=dev-haskell/xhtml-3000.2.2:=[profile?] <dev-haskell/xhtml-3000.3:=[profile?]
	>=dev-lang/ghc-9.8:= <dev-lang/ghc-9.9:=
"
DEPEND="${RDEPEND}
	>=dev-haskell/cabal-3.6.3.0
	test? (
		>=dev-haskell/hspec-2.9
		>=dev-haskell/quickcheck-2.14
	)
"

# Workaround to get haddock for ghc-9.8 and ghc-9.10 to fit into the
# gentoo-haskell versioning scheme
src_prepare() {
	sed -i -e \
		's/^\(version:.*\)2\.30\.0/\1'"${PV}"'/' \
		"${CABAL_FILE}" || die
	haskell-cabal_src_prepare
}