[OE-core] [PATCH] gdb-cross-canadian: fix enabling of Python support

Richard Purdie richard.purdie at linuxfoundation.org
Fri Mar 25 10:34:07 UTC 2016


On Fri, 2016-03-25 at 21:29 +1100, Jonathan Liu wrote:
> Hi Richard,
> 
> On 25 March 2016 at 20:26, Richard Purdie
> <richard.purdie at linuxfoundation.org> wrote:
> > On Fri, 2016-03-25 at 19:58 +1100, Jonathan Liu wrote:
> > > Hi Richard,
> > > 
> > > On 25 March 2016 at 19:54, Richard Purdie
> > > <richard.purdie at linuxfoundation.org> wrote:
> > > > On Fri, 2016-03-25 at 17:25 +1100, Jonathan Liu wrote:
> > > > > Python support was not being enabled because of a conflicting
> > > > > --without-python configure argument in OE_EXTRACONF.
> > > > > 
> > > > > Signed-off-by: Jonathan Liu <net147 at gmail.com>
> > > > > ---
> > > > >  meta/recipes-devtools/gdb/gdb-cross-canadian.inc | 1 +
> > > > >  1 file changed, 1 insertion(+)
> > > > > 
> > > > > diff --git a/meta/recipes-devtools/gdb/gdb-cross-canadian.inc
> > > > > b/meta/recipes-devtools/gdb/gdb-cross-canadian.inc
> > > > > index ae97759..6fd3e3e 100644
> > > > > --- a/meta/recipes-devtools/gdb/gdb-cross-canadian.inc
> > > > > +++ b/meta/recipes-devtools/gdb/gdb-cross-canadian.inc
> > > > > @@ -13,6 +13,7 @@ RDEPENDS_${PN} += "nativesdk-python-core
> > > > > nativesdk
> > > > > -python-lang nativesdk-python-
> > > > > 
> > > > >  GDBPROPREFIX = "--program-prefix='${TARGET_PREFIX}'"
> > > > > 
> > > > > +EXTRA_OECONF_remove = "--without-python"
> > > > >  EXTRA_OECONF_append = " --with-python=${WORKDIR}/python"
> > > > 
> > > > Would a PACKAGECONFIG += "python" have the same effect?
> > > > 
> > > > Cheers,
> > > > 
> > > > Richard
> > > > 
> > > > 
> > > > 
> > > 
> > > No, it wouldn't. It would depend on python and python-codecs then
> > > fail
> > > when building SDK.
> > 
> > Ok, I still don't think the above is the right fix though as it
> > still
> > leaves things fragile, if for example I try and enable python for
> > gdb
> > by default on target.
> > 
> > I think we may need to do something like:
> > 
> > -PACKAGECONFIG[python] = "--with-python=${WORKDIR}/python,--without
> > -python,python,python python-codecs"
> > + PACKAGECONFIG[python] = "--with-python=${WORKDIR}/python,-
> > -without
> > -python,python,${GDBPYTHON_RDEPENDS}"
> > 
> > +GDBPYTHON_RDEPENDS = "python python-codecs"
> > 
> > and then set:
> > 
> > GDBPYTHON_RDEPENDS = ""
> > PACKAGECONFIG += "python"
> > 
> > in the cross recipes.
> > 
> > Would that work?
> > 
> > Cheers,
> > 
> > Richard
> 
> The path to python is different too.
> gdb-cross.inc: EXTRA_OECONF +=
> "--with-python=${STAGING_BINDIR_NATIVE}/python-native/python"
> gdb-cross-canadian.inc: EXTRA_OECONF_append = " --with
> -python=${WORKDIR}/python"
> 
> Does it really make sense to have these PACKAGECONFIG options in a
> common include?
> babeltrace for example doesn't have have BBCLASSEXTEND for native and
> nativesdk.
> 
> I wonder if the commit should just be reverted.

The original code had other bugs and was very confused about other
options which should have been enabled or not enabled in various
combinations. So whilst we could revert it, it just swaps this issue
for others.

Given your comments above, I think the best option might be to set:

PACKAGECONFIG += "python"
PACKAGECONFIG[python] = "--with-python=${STAGING_BINDIR_NATIVE}/python-native/python,--without-python,python"

in gcc-cross-canadian since that should correctly override the problem
cases yet make it clearer what is going on. A comment about it would
also likely be good.

Cheers,

Richard




More information about the Openembedded-core mailing list