commit:     efe8d14608f9b047bf92652c347fe9eb2a775400
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 20 19:30:38 2021 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Tue Apr 20 19:31:21 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=efe8d146

dev-lang/ghc: use ${EPYTHON}

Reported-by: Agostino Sarubbo
Closes: https://bugs.gentoo.org/774141
Package-Manager: Portage-3.0.18, Repoman-3.0.3
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 dev-lang/ghc/ghc-8.10.4.ebuild | 19 +++++++++++++++++--
 dev-lang/ghc/ghc-8.8.4.ebuild  | 22 +++++++++++++++++++---
 dev-lang/ghc/ghc-9.0.1.ebuild  | 19 +++++++++++++++++--
 3 files changed, 53 insertions(+), 7 deletions(-)

diff --git a/dev-lang/ghc/ghc-8.10.4.ebuild b/dev-lang/ghc/ghc-8.10.4.ebuild
index 26565839933..3e4cfb0d0db 100644
--- a/dev-lang/ghc/ghc-8.10.4.ebuild
+++ b/dev-lang/ghc/ghc-8.10.4.ebuild
@@ -13,6 +13,8 @@ if [[ ${CTARGET} = ${CHOST} ]] ; then
        fi
 fi
 
+PYTHON_COMPAT=( python3_{7..9} )
+inherit python-any-r1
 inherit autotools bash-completion-r1 eutils flag-o-matic ghc-package
 inherit multilib multiprocessing pax-utils toolchain-funcs prefix
 inherit check-reqs
@@ -105,14 +107,23 @@ PREBUILT_BINARY_RDEPENDS="${PREBUILT_BINARY_DEPENDS}
 
 RDEPEND+="binary? ( ${PREBUILT_BINARY_RDEPENDS} )"
 
-DEPEND="${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="
        virtual/pkgconfig
        doc? ( app-text/docbook-xml-dtd:4.2
                app-text/docbook-xml-dtd:4.5
                app-text/docbook-xsl-stylesheets
                dev-python/sphinx
                >=dev-libs/libxslt-1.1.2 )
-       !ghcbootstrap? ( ${PREBUILT_BINARY_DEPENDS} )"
+       !ghcbootstrap? ( ${PREBUILT_BINARY_DEPENDS} )
+       test? ( ${PYTHON_DEPS} )
+"
+
+needs_python() {
+       # test driver is written in python
+       use test && return 0
+       return 1
+}
 
 # we build binaries without profiling support
 REQUIRED_USE="
@@ -380,6 +391,10 @@ pkg_setup() {
                        die "No binary available for '${ARCH}' arch yet, 
USE=ghcbootstrap"
                fi
        fi
+
+       if needs_python; then
+               python-any-r1_pkg_setup
+       fi
 }
 
 src_unpack() {

diff --git a/dev-lang/ghc/ghc-8.8.4.ebuild b/dev-lang/ghc/ghc-8.8.4.ebuild
index 2b7cd22116b..8bf1fa84bbb 100644
--- a/dev-lang/ghc/ghc-8.8.4.ebuild
+++ b/dev-lang/ghc/ghc-8.8.4.ebuild
@@ -13,6 +13,8 @@ if [[ ${CTARGET} = ${CHOST} ]] ; then
        fi
 fi
 
+PYTHON_COMPAT=( python3_{7..9} )
+inherit python-any-r1
 inherit autotools bash-completion-r1 eutils flag-o-matic ghc-package
 inherit multilib multiprocessing pax-utils toolchain-funcs prefix
 inherit check-reqs
@@ -104,14 +106,23 @@ PREBUILT_BINARY_RDEPENDS="${PREBUILT_BINARY_DEPENDS}
 
 RDEPEND+="binary? ( ${PREBUILT_BINARY_RDEPENDS} )"
 
-DEPEND="${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="
        virtual/pkgconfig
        doc? ( app-text/docbook-xml-dtd:4.2
                app-text/docbook-xml-dtd:4.5
                app-text/docbook-xsl-stylesheets
                dev-python/sphinx
                >=dev-libs/libxslt-1.1.2 )
-       !ghcbootstrap? ( ${PREBUILT_BINARY_DEPENDS} )"
+       !ghcbootstrap? ( ${PREBUILT_BINARY_DEPENDS} )
+       test? ( ${PYTHON_DEPS} )
+"
+
+needs_python() {
+       # test driver is written in python
+       use test && return 0
+       return 1
+}
 
 # we build binaries without profiling support
 REQUIRED_USE="
@@ -389,6 +400,10 @@ pkg_setup() {
                        die "No binary available for '${ARCH}' arch yet, 
USE=ghcbootstrap"
                fi
        fi
+
+       if needs_python; then
+               python-any-r1_pkg_setup
+       fi
 }
 
 src_unpack() {
@@ -436,6 +451,7 @@ src_prepare() {
                                pushd "${WORKDIR}"/ghc-bin-installer > 
/dev/null || die
                                use sparc-solaris && unpack 
ghc-6.10.4-sparc-sun-solaris2.tar.bz2
                                use x86-solaris && unpack 
ghc-7.0.3-i386-unknown-solaris2.tar.bz2
+                               use x86-macos && unpack 
ghc-7.4.1-i386-apple-darwin.tar.bz2
                                use x64-macos && unpack 
ghc-7.4.1-x86_64-apple-darwin.tar.bz2
                                popd > /dev/null
 
@@ -640,7 +656,7 @@ src_configure() {
                        # using ${GTARGET}'s libffi is not supported yet:
                        # GHC embeds full path for ffi includes without 
/usr/${CTARGET} account.
                        econf_args+=(--with-system-libffi)
-                       econf_args+=(--with-ffi-includes=$($(tc-getPKG_CONFIG) 
libffi --cflags-only-I | sed -e 's@^-I@@'))
+                       econf_args+=(--with-ffi-includes=$(pkg-config libffi 
--cflags-only-I | sed -e 's@^-I@@'))
                fi
 
                einfo "Final mk/build.mk:"

diff --git a/dev-lang/ghc/ghc-9.0.1.ebuild b/dev-lang/ghc/ghc-9.0.1.ebuild
index 3a1b5e9d9a8..9f33f2d0b49 100644
--- a/dev-lang/ghc/ghc-9.0.1.ebuild
+++ b/dev-lang/ghc/ghc-9.0.1.ebuild
@@ -13,6 +13,8 @@ if [[ ${CTARGET} = ${CHOST} ]] ; then
        fi
 fi
 
+PYTHON_COMPAT=( python3_{7..9} )
+inherit python-any-r1
 inherit autotools bash-completion-r1 eutils flag-o-matic ghc-package
 inherit multilib multiprocessing pax-utils toolchain-funcs prefix
 inherit check-reqs
@@ -105,14 +107,23 @@ PREBUILT_BINARY_RDEPENDS="${PREBUILT_BINARY_DEPENDS}
 
 RDEPEND+="binary? ( ${PREBUILT_BINARY_RDEPENDS} )"
 
-DEPEND="${RDEPEND}
+DEPEND="${RDEPEND}"
+BDEPEND="
        virtual/pkgconfig
        doc? ( app-text/docbook-xml-dtd:4.2
                app-text/docbook-xml-dtd:4.5
                app-text/docbook-xsl-stylesheets
                dev-python/sphinx
                >=dev-libs/libxslt-1.1.2 )
-       !ghcbootstrap? ( ${PREBUILT_BINARY_DEPENDS} )"
+       !ghcbootstrap? ( ${PREBUILT_BINARY_DEPENDS} )
+       test? ( ${PYTHON_DEPS} )
+"
+
+needs_python() {
+       # test driver is written in python
+       use test && return 0
+       return 1
+}
 
 # we build binaries without profiling support
 REQUIRED_USE="
@@ -380,6 +391,10 @@ pkg_setup() {
                        die "No binary available for '${ARCH}' arch yet, 
USE=ghcbootstrap"
                fi
        fi
+
+       if needs_python; then
+               python-any-r1_pkg_setup
+       fi
 }
 
 src_unpack() {

Reply via email to