Gentoo Archives: gentoo-python

From: "Michał Górny" <mgorny@g.o>
To: Mike Gilbert <floppym@g.o>
Cc: gentoo-python <gentoo-python@l.g.o>, Gentoo Python Project <python@g.o>
Subject: Re: [gentoo-python] Re: [PATCH 5/8] distutils-r1: disable sub-root merging.
Date: Sun, 15 Sep 2013 09:04:31
Message-Id: 20130915110431.324d1925@gentoo.org
In Reply to: Re: [gentoo-python] Re: [PATCH 5/8] distutils-r1: disable sub-root merging. by Mike Gilbert
1 Dnia 2013-09-14, o godz. 19:33:04
2 Mike Gilbert <floppym@g.o> napisał(a):
3
4 > On Sat, Sep 14, 2013 at 6:38 PM, Michał Górny <mgorny@g.o> wrote:
5 > > Dnia 2013-09-14, o godz. 18:16:33
6 > > Mike Gilbert <floppym@g.o> napisał(a):
7 > >
8 > >> On Fri, Sep 13, 2013 at 2:58 PM, Michał Górny <mgorny@g.o> wrote:
9 > >> > The sub-roots are no longer necessary since we're installing scripts to
10 > >> > per-impl directories initially.
11 > >> > ---
12 > >> > gx86/eclass/distutils-r1.eclass | 9 +++------
13 > >> > 1 file changed, 3 insertions(+), 6 deletions(-)
14 > >> >
15 > >> > diff --git a/gx86/eclass/distutils-r1.eclass b/gx86/eclass/distutils-r1.eclass
16 > >> > index 7102c58..5fcb55e 100644
17 > >> > --- a/gx86/eclass/distutils-r1.eclass
18 > >> > +++ b/gx86/eclass/distutils-r1.eclass
19 > >> > @@ -476,9 +476,7 @@ distutils-r1_python_install() {
20 > >> > addpredict "$(python_get_sitedir)"
21 > >> > addpredict /usr/lib/portage/pym
22 > >> >
23 > >> > - local root=${D}/_${EPYTHON}
24 > >> > - [[ ${DISTUTILS_SINGLE_IMPL} ]] && root=${D}
25 > >> > - flags+=( --root="${root}" )
26 > >> > + flags+=( --root="${D}" )
27 > >> >
28 > >> > if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then
29 > >> > local PYTHON_SCRIPTDIR
30 > >> > @@ -488,13 +486,12 @@ distutils-r1_python_install() {
31 > >> >
32 > >> > esetup.py install "${flags[@]}" "${@}"
33 > >> >
34 > >> > - if [[ -d ${root}$(python_get_sitedir)/tests ]]; then
35 > >> > + if [[ -d ${D}$(python_get_sitedir)/tests ]]; then
36 > >> > die "Package installs 'tests' package, file collisions likely."
37 > >> > fi
38 > >> >
39 > >> > if [[ ! ${DISTUTILS_SINGLE_IMPL} ]]; then
40 > >> > - _distutils-r1_wrap_scripts "${root}"
41 > >> > - multibuild_merge_root "${root}" "${D}"
42 > >> > + _distutils-r1_wrap_scripts "${D}"
43 > >> > fi
44 > >> > }
45 > >> >
46 > >> > --
47 > >> > 1.8.3.2
48 > >> >
49 > >>
50 > >> I believe this patch causes a race condition which causes
51 > >> java-config's ebuild to fail.
52 > >>
53 > >> running install_data
54 > >> running install_egg_info
55 > >> Writing /tmp/portage/dev-java/java-config-2.2.0/image/usr/lib64/python2.7/site-packages/java_config-
56 > >> 2.2.0-py2.7.egg-info
57 > >> error: /tmp/portage/dev-java/java-config-2.2.0/image//usr/share/java-config-2/config/:
58 > >> File exists
59 > >
60 > > I love when people hack build systems and have no idea about writing
61 > > build systems...
62 > >
63 > > What are you suggesting? Finding all the broken stuff and fixing it, or
64 > > restoring sub-roots?
65 >
66 > This is a well-used package which will be broken if we apply this
67 > patch. I'm not sure we can reliably identify this kind of problem, and
68 > fixing individual packages would be a bit of work in any case..
69 > Keeping the sub-roots code in place seems like the safer course of
70 > action here.
71
72 You're right. Replaced 5-8 with two smaller patches and submitted
73 in a new sub-thread here. You can also find it in -r4 branch.
74
75 --
76 Best regards,
77 Michał Górny

Attachments

File name MIME type
signature.asc application/pgp-signature