| # Copyright 1999-2022 Gentoo Authors |
| # Distributed under the terms of the GNU General Public License v2 |
| |
| EAPI=7 |
| |
| # ebuild generated by hackport 0.6.7.9999 |
| #hackport: flags: -bundled-binary-generic |
| |
| # Drop test-suite due to "circular" dependencies with quickcheck |
| CABAL_FEATURES="lib profile haddock hoogle hscolour" |
| CABAL_FEATURES+=" nocabaldep" # in case installed Cabal is broken |
| inherit haskell-cabal |
| |
| MY_PN="Cabal" |
| MY_P="${MY_PN}-${PV}" |
| |
| DESCRIPTION="A framework for packaging Haskell software" |
| HOMEPAGE="https://www.haskell.org/cabal/" |
| SRC_URI="https://hackage.haskell.org/package/${MY_P}/${MY_P}.tar.gz" |
| |
| LICENSE="BSD" |
| SLOT="0/${PV}" |
| # keep in sync with ghc-8.10 |
| KEYWORDS="*" |
| IUSE="" |
| |
| RESTRICT=test # circular deps: cabal -> quickcheck -> cabal |
| |
| # GHC lower bound set to 8.0 to remove semigroups and fail dependencies. |
| RDEPEND=" >=dev-haskell/mtl-2.1:=[profile?] <dev-haskell/mtl-2.3:=[profile?] |
| >=dev-haskell/parsec-3.1.13.0:=[profile?] <dev-haskell/parsec-3.2:=[profile?] |
| >=dev-haskell/text-1.2.3.0:=[profile?] <dev-haskell/text-1.3:=[profile?] |
| >=dev-lang/ghc-8.0:= |
| " |
| DEPEND="${RDEPEND}" |
| |
| S="${WORKDIR}/${MY_P}" |
| |
| src_prepare() { |
| default |
| |
| # Cabal bootstraps with 'ghc --make' without package cleanup in environment. |
| # That causes module collisions at build: |
| # - pulseaudio: Distribution/Utils/Structured.hs:98:1: error: Ambiguous module name ‘Data.Time’: it was found in multiple packages: pulseaudio-0.0.2.1 time-1.9.3 |
| # - kinds: Distribution/Utils/Structured.hs:106:1: error: Ambiguous module name ‘Data.Kind’: it was found in multiple packages: base-4.14.1.0 kinds-0.0.1.5 |
| HCFLAGS="${HCFLAGS} -ignore-package=pulseaudio" |
| HCFLAGS="${HCFLAGS} -ignore-package=kinds" |
| } |
| |
| src_configure() { |
| haskell-cabal_src_configure \ |
| --flag=-bundled-binary-generic |
| } |
| |
| CABAL_CORE_LIB_GHC_PV="8.10.6 8.10.7" |