Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev <gentoo-dev@l.g.o>
Subject: [gentoo-dev] [RFC] dev-util/scons-3.0.1+: the big plan
Date: Thu, 10 May 2018 18:45:33
Message-Id: 1525977919.2052.11.camel@gentoo.org
1 Hi,
2
3 Yesterday I've finally found time to bump SCons to 3.0.1. Unlike
4 the original non-maintainer bump which caused huge breakage followed
5 by completely ignoring the problem, I've chosen to go more conservative
6 way. That's why 3.0.1 does not declare support for Python 3 yet.
7
8 At the same time, I've decided there's really no point in further
9 agreeing with the breakage caused by bad design of SCons, and expecting
10 developers to work around all of it. Instead, the followup revisions
11 of dev-util/scons introduce Gentoo-specific patches that -- through
12 GENTOO_SCONS_ENV_PASSTHROUGH=1 envvar set by scons-utils -- override
13 the problematic details of SCons as outlined below.
14
15 The current plan for 3.0.1 ebuilds is:
16
17 3.0.1 -- 'vanilla' release
18 3.0.1-r1 -- passes environment through (instead of wiping it)
19 3.0.1-r2 -- tries to respect CC/CXX/CFLAGS/...
20 3.0.1-r100 -- will introduce Python 3 support (not committed yet)
21
22 Note that the -r1/-r2 changes are only applicable with
23 GENTOO_SCONS_ENV_PASSTHROUGH=1. Otherwise, the vanilla upstream
24 behavior is preserved.
25
26 I personally don't think that the -r1/-r2 changes are likely to break
27 anything. However, if you experience any unexpected breakage which
28 doesn't happen without the patches, please report a bug to me. If no
29 issues are reported a while, I think it'd be reasonable to start
30 actively depending on those versions and remove some of the Gentoo
31 patches to various SCons* files.
32
33 Furthermore, if you have any other suggestions about reasonable default
34 changes, I'm open to them. I think we've already spent too much time
35 trying to fix individual SCons build systems, and it's time to focus
36 on applying a global SCons-fix instead.
37
38 As for -r100+, the Python 3 support is going to cause breakage. I've
39 submitted scons-utils patches today that integrate it with python-r1
40 suite of eclasses (alike waf-utils). If those are accepted
41 and committed, we will be able to work on enabling Python 3 support
42 through SCons consumers.
43
44 --
45 Best regards,
46 Michał Górny