commit:     a2cb4f6a8da80865a65bbebd5cf749e4cab8ae62
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 18 07:54:48 2020 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Aug 18 08:03:54 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a2cb4f6a

dev-lang/python: Respect MAKEOPTS throughout the build

Closes: https://bugs.gentoo.org/737660
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-lang/python/python-3.6.11-r2.ebuild | 14 +++++++++++---
 dev-lang/python/python-3.7.8-r2.ebuild  | 14 +++++++++++---
 dev-lang/python/python-3.8.5.ebuild     | 15 ++++++++++++---
 dev-lang/python/python-3.9.0_rc1.ebuild | 16 ++++++++++++----
 4 files changed, 46 insertions(+), 13 deletions(-)

diff --git a/dev-lang/python/python-3.6.11-r2.ebuild 
b/dev-lang/python/python-3.6.11-r2.ebuild
index 1fb0d08c949..ea7d7c2ab71 100644
--- a/dev-lang/python/python-3.6.11-r2.ebuild
+++ b/dev-lang/python/python-3.6.11-r2.ebuild
@@ -4,7 +4,8 @@
 EAPI="7"
 WANT_LIBTOOL="none"
 
-inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
+inherit autotools flag-o-matic multiprocessing pax-utils \
+       python-utils-r1 toolchain-funcs
 
 MY_P="Python-${PV}"
 PYVER=$(ver_cut 1-2)
@@ -81,6 +82,11 @@ src_prepare() {
                configure.ac \
                setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
 
+       # force correct number of jobs
+       # https://bugs.gentoo.org/737660
+       local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
+       sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
+
        eautoreconf
 }
 
@@ -193,10 +199,12 @@ src_test() {
 
        # bug 660358
        local -x COLUMNS=80
-
        local -x PYTHONDONTWRITEBYTECODE=
 
-       emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < 
/dev/tty
+       local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
+
+       emake test EXTRATESTOPTS="-u-network -j${jobs}" \
+               CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
        local result=$?
 
        for test in ${skipped_tests}; do

diff --git a/dev-lang/python/python-3.7.8-r2.ebuild 
b/dev-lang/python/python-3.7.8-r2.ebuild
index a2b8b787199..0daef877b50 100644
--- a/dev-lang/python/python-3.7.8-r2.ebuild
+++ b/dev-lang/python/python-3.7.8-r2.ebuild
@@ -4,7 +4,8 @@
 EAPI="7"
 WANT_LIBTOOL="none"
 
-inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
+inherit autotools flag-o-matic multiprocessing pax-utils \
+       python-utils-r1 toolchain-funcs
 
 MY_P="Python-${PV}"
 PYVER=$(ver_cut 1-2)
@@ -73,6 +74,11 @@ src_prepare() {
        sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
                setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
 
+       # force correct number of jobs
+       # https://bugs.gentoo.org/737660
+       local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
+       sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
+
        eautoreconf
 }
 
@@ -180,10 +186,12 @@ src_test() {
 
        # bug 660358
        local -x COLUMNS=80
-
        local -x PYTHONDONTWRITEBYTECODE=
 
-       emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < 
/dev/tty
+       local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
+
+       emake test EXTRATESTOPTS="-u-network -j${jobs}" \
+               CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
        local result=$?
 
        for test in ${skipped_tests}; do

diff --git a/dev-lang/python/python-3.8.5.ebuild 
b/dev-lang/python/python-3.8.5.ebuild
index c2a10d03855..df05aaedef1 100644
--- a/dev-lang/python/python-3.8.5.ebuild
+++ b/dev-lang/python/python-3.8.5.ebuild
@@ -4,7 +4,8 @@
 EAPI="7"
 WANT_LIBTOOL="none"
 
-inherit autotools flag-o-matic pax-utils python-utils-r1 toolchain-funcs
+inherit autotools flag-o-matic multiprocessing pax-utils \
+       python-utils-r1 toolchain-funcs
 
 MY_P="Python-${PV}"
 PYVER=$(ver_cut 1-2)
@@ -73,6 +74,12 @@ src_prepare() {
        sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
                setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
 
+       # force correct number of jobs
+       # https://bugs.gentoo.org/737660
+       local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
+       sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
+       sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
+
        eautoreconf
 }
 
@@ -185,10 +192,12 @@ src_test() {
 
        # bug 660358
        local -x COLUMNS=80
-
        local -x PYTHONDONTWRITEBYTECODE=
 
-       emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < 
/dev/tty
+       local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
+
+       emake test EXTRATESTOPTS="-u-network -j${jobs}" \
+               CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
        local result=$?
 
        for test in ${skipped_tests}; do

diff --git a/dev-lang/python/python-3.9.0_rc1.ebuild 
b/dev-lang/python/python-3.9.0_rc1.ebuild
index 461adca3a23..6bf6b905d71 100644
--- a/dev-lang/python/python-3.9.0_rc1.ebuild
+++ b/dev-lang/python/python-3.9.0_rc1.ebuild
@@ -4,8 +4,8 @@
 EAPI="7"
 WANT_LIBTOOL="none"
 
-inherit autotools check-reqs flag-o-matic pax-utils python-utils-r1 \
-       toolchain-funcs
+inherit autotools check-reqs flag-o-matic multiprocessing pax-utils \
+       python-utils-r1 toolchain-funcs
 
 MY_P="Python-${PV/_/}"
 PYVER=$(ver_cut 1-2)
@@ -85,6 +85,12 @@ src_prepare() {
        sed -i -e "s:@@GENTOO_LIBDIR@@:$(get_libdir):g" \
                setup.py || die "sed failed to replace @@GENTOO_LIBDIR@@"
 
+       # force correct number of jobs
+       # https://bugs.gentoo.org/737660
+       local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
+       sed -i -e "s:-j0:-j${jobs}:" Makefile.pre.in || die
+       sed -i -e "/self\.parallel/s:True:${jobs}:" setup.py || die
+
        eautoreconf
 }
 
@@ -197,10 +203,12 @@ src_test() {
 
        # bug 660358
        local -x COLUMNS=80
-
        local -x PYTHONDONTWRITEBYTECODE=
 
-       emake test EXTRATESTOPTS="-u-network" CPPFLAGS= CFLAGS= LDFLAGS= < 
/dev/tty
+       local jobs=$(makeopts_jobs "${MAKEOPTS}" "$(get_nproc)")
+
+       emake test EXTRATESTOPTS="-u-network -j${jobs}" \
+               CPPFLAGS= CFLAGS= LDFLAGS= < /dev/tty
        local result=$?
 
        for test in ${skipped_tests}; do

Reply via email to