On Tue, Nov 17, 2020 at 1:18 PM Jose Quaresma <[email protected]> wrote: > > Martin Jansa <[email protected]> escreveu no dia terça, > 17/11/2020 à(s) 20:24: > > > > Then you will need space in: > > EXTRA_PYTHON_DEPENDS_append_class-target = " python3" > > as well. > > right. > > > > > I don't expect EXTRA_PYTHON_DEPENDS to be often (if at all) outside the > > bbclass, but IMHO it's good convention to just use leading space wherever > > you append to space separated list (less surprises for people who might > > eventually set something like EXTRA_PYTHON_DEPENDS in their recipes - even > > from wrong reasons). > >
I think that's fine reason, I am not too hard on it but I have sent a v5 which reverts to original spaces. Hopefully this will be final rev. > > if EXTRA_PYTHON_DEPENDS is don't expect to be often (if at all) > outside the bbclass, a clean solution can be: > > -DEPENDS_append = " python3" > +DEPENDS_append_class-target = " python3" > > > On Tue, Nov 17, 2020 at 9:18 PM Jose Quaresma <[email protected]> > > wrote: > >> > >> Martin, > >> > >> you're right. if EXTRA_PYTHON_DEPENDS is set outside of the bbclass it > >> break the DEPENDS. > >> > >> Sorry Khem for my suggestion, your initial was right. > >> > >> +EXTRA_PYTHON_DEPENDS_class-target = "python3" > >> +DEPENDS_append = " ${EXTRA_PYTHON_DEPENDS}" > >> > >> But in this case (when EXTRA_PYTHON_DEPENDS is set outside of the bbclass) > >> it will don't have any effect for the overwrite class-target because > >> EXTRA_PYTHON_DEPENDS_class-target="python3" always will set > >> EXTRA_PYTHON_DEPENDS="python3" > >> > >> I think I have see another problem now and something like this is better: > >> > >> +EXTRA_PYTHON_DEPENDS_append_class-target = "python3" > >> +DEPENDS_append = " ${EXTRA_PYTHON_DEPENDS}" > >> > >> Martin Jansa <[email protected]> escreveu no dia terça, > >> 17/11/2020 à(s) 19:56: > >> > > >> > I don't mind this change, but why do you think space in the variable is > >> > better in this case (where we don't mind extra space being added for > >> > native/nativesdk case?) > >> > > >> > If someone sets EXTRA_PYTHON_DEPENDS = "foo" for whatever reason in some > >> > recipe, then the space will be missing. > >> > > >> > On Tue, Nov 17, 2020 at 7:36 PM Jose Quaresma <[email protected]> > >> > wrote: > >> >> > >> >> Khem Raj <[email protected]> escreveu no dia terça, 17/11/2020 à(s) > >> >> 18:04: > >> >> > > >> >> > python3targetconfig append target python3 to dependencies > >> >> > unconditionally, and here its inherited unconditionally too but > >> >> > distutils3-base is inherited in BBCLASSEXTEND'ed recipes and other > >> >> > not-target > >> >> > recipes as well. Hence the change added via > >> >> > 9c8f666097802cb594a759989edcf01603a22df3 > >> >> > is now bridging the native dependencies with target python3 and thats > >> >> > resulting all sorts of rebuilds for multimachine builds e.g. > >> >> > > >> >> > MACHINE=qemuarm bitbake python3-scons-native > >> >> > MACHINE=qemumips bitbake python3-scons-native > >> >> > > >> >> > results in rebuilds for python3-scons-native > >> >> > > >> >> > bitbake-diffsigs shows > >> >> > > >> >> > Hash for dependent task > >> >> > python/python3-scons-native_3.1.2.bb:do_populate_sysroot changed from > >> >> > 1cdb93193b416477df6faa137e83a967b433c7aa29033146b405153f73f36933 to > >> >> > 3cea1e7cbedd121ecb768fbc291cc4e4d7d3b5c0442897 > >> >> > 0e3b97bd058d162065 > >> >> > Hash for dependent task > >> >> > python/python3-scons-native_3.1.2.bb:do_install changed from > >> >> > 8d6018fd03ffc6060a04532dc39a5b7ccca1be026a69d069cb4fb11aef86dd89 to > >> >> > c5f1d173596a8e910f45a2b6e0b4dab96cd0102be4d62bd3156 > >> >> > 229cb0f5ebb11 > >> >> > Hash for dependent task > >> >> > python/python3-scons-native_3.1.2.bb:do_compile changed from > >> >> > e3ee4b52a15267e6ae7853ec19a666b2fb62608a597608793336382d1c45f8a0 to > >> >> > 1e582043dfe6b3e00aaa532f363ce6afb37652abe837dac > >> >> > 7cc9769194c43eae1 > >> >> > Hash for dependent task > >> >> > python/python3-scons-native_3.1.2.bb:do_configure changed from > >> >> > 770a4d5a77a96ebd9e1e7368f710bca3f88e3b1266dffa3b2d0360b1e3a81e27 to > >> >> > a366982778b03eee5165c3117ee778f848acdfaa2 > >> >> > b346650fbdf114ac70ab57b > >> >> > Hash for dependent task > >> >> > python/python3-scons-native_3.1.2.bb:do_prepare_recipe_sysroot > >> >> > changed from > >> >> > 958910037856ff5d5eb2b5162b3cdd02a3a710fc543b933cfeba771ee095cb72 to > >> >> > 474333fb565f908992fd3716 > >> >> > 4935aaecf31a79e867826fe634cde4f44171d8e7 > >> >> > Hash for dependent task > >> >> > python/python3_3.9.0.bb:do_populate_sysroot changed from > >> >> > 7ac1c4fcbb2eacf98d2c32d991751bd2f3c7d55e2e32f2c9e485e7f5975fecf8 to > >> >> > 25dcfe74a95af19cce8df7c29311cc5edbbf6ad > >> >> > 08777e46a6fa6e417c0445018 > >> >> > > >> >> > ... > >> >> > > >> >> > Therefore limit effects of this class only for target recipes. > >> >> > > >> >> > Signed-off-by: Khem Raj <[email protected]> > >> >> > Cc: Alexander Kanavin <[email protected]> > >> >> > Cc: Martin Jansa <[email protected]> > >> >> > --- > >> >> > v2: Mark depends conditional instead > >> >> > v3: Export _PYTHON_SYSCONFIGDATA_NAME only for target > >> >> > and mark tasks with target override > >> >> > > >> >> > meta/classes/python3targetconfig.bbclass | 10 ++++++---- > >> >> > 1 file changed, 6 insertions(+), 4 deletions(-) > >> >> > > >> >> > diff --git a/meta/classes/python3targetconfig.bbclass > >> >> > b/meta/classes/python3targetconfig.bbclass > >> >> > index 640d0c97b6..fc1025c207 100644 > >> >> > --- a/meta/classes/python3targetconfig.bbclass > >> >> > +++ b/meta/classes/python3targetconfig.bbclass > >> >> > @@ -1,15 +1,17 @@ > >> >> > inherit python3native > >> >> > > >> >> > -DEPENDS_append = " python3" > >> >> > +EXTRA_PYTHON_DEPENDS ?= "" > >> >> > +EXTRA_PYTHON_DEPENDS_class-target = "python3" > >> >> > +DEPENDS_append = " ${EXTRA_PYTHON_DEPENDS}" > >> >> > >> >> -EXTRA_PYTHON_DEPENDS_class-target = "python3" > >> >> -DEPENDS_append = " ${EXTRA_PYTHON_DEPENDS}" > >> >> +EXTRA_PYTHON_DEPENDS_class-target = " python3" > >> >> +DEPENDS_append = "${EXTRA_PYTHON_DEPENDS}" > >> >> > >> >> add a space before python3 is better than always add it to DEPENDS > >> >> > >> >> > > >> >> > -do_configure_prepend() { > >> >> > +do_configure_prepend_class-target() { > >> >> > export _PYTHON_SYSCONFIGDATA_NAME="_sysconfigdata" > >> >> > } > >> >> > > >> >> > -do_compile_prepend() { > >> >> > +do_compile_prepend_class-target() { > >> >> > export _PYTHON_SYSCONFIGDATA_NAME="_sysconfigdata" > >> >> > } > >> >> > > >> >> > -do_install_prepend() { > >> >> > +do_install_prepend_class-target() { > >> >> > export _PYTHON_SYSCONFIGDATA_NAME="_sysconfigdata" > >> >> > } > >> >> > -- > >> >> > 2.29.2 > >> >> > > >> >> > > >> >> > > >> >> > >> >> > >> >> -- > >> >> best regards, > >> >> José Quaresma > >> > >> > >> > >> -- > >> best regards, > >> José Quaresma > > > > -- > best regards, > José Quaresma
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#144752): https://lists.openembedded.org/g/openembedded-core/message/144752 Mute This Topic: https://lists.openembedded.org/mt/78322110/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
