public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Michał Górny" <mgorny@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Cc: "Michał Górny" <mgorny@gentoo.org>
Subject: [gentoo-dev] [PATCH 00/15] scons-utils.eclass: EAPI 6, better docs and cleanup
Date: Fri,  1 Jan 2016 17:41:06 +0100	[thread overview]
Message-ID: <1451666481-22145-1-git-send-email-mgorny@gentoo.org> (raw)

Hello, everyone.

Here's a bunch of scons-utils.eclass patches for review. This includes
EAPI 6 support with some API changes, MAKEOPTS parsing cleanup
and improved documentation.

Fighting dev-db/mongodb lately, I've decided to explain a few common
issues with SCons in the eclass. This will hopefully help developers
noticing common QA issues like complete disrespect of CC, CXX or PATH,
turning distcc setup into a dumb OOM-killer.

EAPI 6 simplifies the eclass API and makes it more explicit.

The confusing myesconsargs variable is no longer used in EAPI 6 and all
custom arguments need to passed explicitly to each escons call. This
makes it more consistent with emake. And like emake, escons starts truly
respecting nonfatal in EAPI 6.

The use_scons function is completely banned in EAPI 6. Already since
EAPI 5, usex was a cleaner alternative. As a result, USE_SCONS_TRUE
and USE_SCONS_FALSE variables are no longer used (not that anybody used
them anyway).

Finally, the MAKEOPTS parsing and transforming has been improved a bit.
It has been redesigned so that the caching mechanism could actually
work. --jobs lacking argument are now replaced by no-of-cpus+1
(obtained using nproc or python) rather than random, fixed number.

Please review.


Michał Górny (15):
  scons-utils.eclass: Modernize the example not to rely on myescons...
  scons-utils.eclass: Modernize the example to use usex
  scons-utils.eclass: Describe common issues with scons
  scons-utils.eclass: escons doc, 'die' does not respect nonfatal
  scons-utils.eclass: escons, invert EAPI check to cover future EAPIs
  scons-utils.eclass: escons, respect nonfatal in EAPI 6
  scons-utils.eclass: Deprecate myesconsargs, and kill it in EAPI 6
  scons-utils.eclass: Deprecate use_scons, ban it in EAPI 6
  scons-utils.eclass: tests, be more verbose on tests being performed
  scons-utils.eclass: scons_clean_makeopts, mark internal
  scons-utils.eclass: _scons_clean_makeopts, fix result caching
  scons-utils.eclass: _scons_clean_makeopts, stop exporting cache vars
  scons-utils.eclass: _scons_clean_makeopts, clean up and simplify
  scons-utils.eclass: Use nproc when --jobs is used without an argument
  scons-utils.eclass: Enable EAPI 6

 eclass/scons-utils.eclass   | 138 +++++++++++++++++++++++++++++++++-----------
 eclass/tests/scons-utils.sh |  21 ++++---
 2 files changed, 114 insertions(+), 45 deletions(-)

-- 
2.6.4



             reply	other threads:[~2016-01-01 16:41 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-01 16:41 Michał Górny [this message]
2016-01-01 16:41 ` [gentoo-dev] [PATCH 01/15] scons-utils.eclass: Modernize the example not to rely on myescons Michał Górny
2016-01-01 16:57   ` [gentoo-dev] " Michael Palimaka
2016-01-01 17:15     ` Michał Górny
2016-01-01 17:42       ` Michael Palimaka
2016-01-02 13:38         ` Michael Orlitzky
2016-01-01 16:41 ` [gentoo-dev] [PATCH 02/15] scons-utils.eclass: Modernize the example to use usex Michał Górny
2016-01-01 16:41 ` [gentoo-dev] [PATCH 03/15] scons-utils.eclass: Describe common issues with scons Michał Górny
2016-01-01 16:41 ` [gentoo-dev] [PATCH 04/15] scons-utils.eclass: escons doc, 'die' does not respect nonfatal Michał Górny
2016-01-01 16:41 ` [gentoo-dev] [PATCH 05/15] scons-utils.eclass: escons, invert EAPI check to cover future EAPIs Michał Górny
2016-01-01 16:41 ` [gentoo-dev] [PATCH 06/15] scons-utils.eclass: escons, respect nonfatal in EAPI 6 Michał Górny
2016-01-01 16:41 ` [gentoo-dev] [PATCH 07/15] scons-utils.eclass: Deprecate myesconsargs, and kill it " Michał Górny
2016-01-01 16:41 ` [gentoo-dev] [PATCH 08/15] scons-utils.eclass: Deprecate use_scons, ban " Michał Górny
2016-01-01 16:41 ` [gentoo-dev] [PATCH 09/15] scons-utils.eclass: tests, be more verbose on tests being performed Michał Górny
2016-01-01 16:41 ` [gentoo-dev] [PATCH 10/15] scons-utils.eclass: scons_clean_makeopts, mark internal Michał Górny
2016-01-01 16:41 ` [gentoo-dev] [PATCH 11/15] scons-utils.eclass: _scons_clean_makeopts, fix result caching Michał Górny
2016-01-01 16:41 ` [gentoo-dev] [PATCH 12/15] scons-utils.eclass: _scons_clean_makeopts, stop exporting cache vars Michał Górny
2016-01-01 16:41 ` [gentoo-dev] [PATCH 13/15] scons-utils.eclass: _scons_clean_makeopts, clean up and simplify Michał Górny
2016-01-01 16:41 ` [gentoo-dev] [PATCH 14/15] scons-utils.eclass: Use nproc when --jobs is used without an argument Michał Górny
2016-01-01 16:41 ` [gentoo-dev] [PATCH 15/15] scons-utils.eclass: Enable EAPI 6 Michał Górny
2016-01-08  5:15 ` [gentoo-dev] [PATCH 00/15] scons-utils.eclass: EAPI 6, better docs and cleanup Michał Górny

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1451666481-22145-1-git-send-email-mgorny@gentoo.org \
    --to=mgorny@gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox