[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gentoo-dev
Subject:    Re: [gentoo-dev] ebuild laziness and binpkg overhead
From:       Mike Frysinger <vapier () gentoo ! org>
Date:       2012-06-29 5:34:35
Message-ID: 201206290134.36185.vapier () gentoo ! org
[Download RAW message or body]


On Tuesday 19 June 2012 23:59:02 Mike Gilbert wrote:
> On Tue, Jun 19, 2012 at 11:21 PM, Mike Frysinger <vapier@gentoo.org> wrote:
> > On Tuesday 19 June 2012 17:35:00 Jeroen Roovers wrote:
> >> On Tue, 12 Jun 2012 23:02:40 -0400 Mike Frysinger wrote:
> >> > i've noticed a growing trend where people put setup of variables into
> >> > pkg_setup that only matter to src_* funcs presumably so they don't
> >> > have to call the respective src_* func from an inherited eclass.
> >> > unfortunately this adds pointless overhead to binpkgs.  can we please
> >> > move away from this practice ?
> >> 
> >> Like this?
> > 
> > not quite
> > 
> >>  * ERROR: cat/pkg-version failed (prepare phase):
> >>  *   python_set_active_version() can be used only in pkg_setup() phase
> >>  *
> >>  * Call stack:
> >>  *     ebuild.sh, line   85:  Called src_prepare
> >>  *   environment, line 5885:  Called python_set_active_version '2'
> >>  *   environment, line 5603:  Called die
> >>  * The specific snippet of code:
> >>  *           die "${FUNCNAME}() can be used only in pkg_setup() phase";
> >>  *
> >> 
> >> Shouldn't that be in src_prepare already, or does python.eclass do
> >> something rather important here while installing a binpkg?
> > 
> > Gentoo's python integration is an ugly beast.  in this case, i believe
> > it's screwing with your $ROOT which means it has to be in pkg_* (let's
> > quietly ignore what happens if you try to emerge two ebuilds which need
> > conflicting versions of python active).
> 
> python_set_active_version basically just sets the EPYTHON and
> PYTHON_ABI variables; nothing in ${ROOT} is modified.

good to know

> The variables are used in python_pkg_setup to implement use-flag
> checks for PYTHON_USE_WITH, and also in python_mod_optimize which is
> called in pkg_postinst.

thx for the details
-mike

["signature.asc" (application/pgp-signature)]

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic