Project:Python/scons-utils integration

As of package version 3.0.1-r100, multiple implementations of Python are supported. Since SConstruct and SConscript files are written in Python, this raised the problem of compatibility of those files with new versions of Python. As a result, scons-utils now requires using appropriate Python eclass.

Requirements for using scons-utils
Any ebuild using scons-utils needs to:


 * 1) Set a proper value of PYTHON_COMPAT being the intersection of Python implementations supported by build system scripts and the package (if applicable).
 * 2) Inherit a proper Python eclass (python-any-r1, python-single-r1 or python-r1).

Which eclass to use?
The usual rules for choosing the eclass apply. That is:


 * 1) If the package installs Python modules that need to be installed for multiple Python implementations, use python-r1 and remember to call python_setup if you want to use SCons outside of python_foreach_impl,
 * 2) If the package installs Python modules or scripts, use python-single-r1,
 * 3) Otherwise, use python-any-r1 to express purely build-time dependency on Python.

Purely build-time dependency
Assumes that only SCons (and possibly some other build/test scripts) require Python.

Simple run-time dependency + scons
A package that installs some Python scripts/modules and uses scons.

Conditional run-time dependency + scons
A package that installs some Python scripts/modules conditionally and uses scons (unconditionally).