On Thu, Feb 13, 2020 at 1:39 PM <zhe...@windriver.com> wrote: > > From: He Zhe <zhe...@windriver.com> > > To make the native python3 are always used, > > - Move the substitution of /usr/bin/python3 to first, otherwise the > possible original /usr/bin/python3 would be changed to > /usr/bin/env python33. > - Add substitution for ${S}/scripts/ > > Signed-off-by: He Zhe <zhe...@windriver.com> > --- > meta/recipes-kernel/perf/perf.bb | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/meta/recipes-kernel/perf/perf.bb > b/meta/recipes-kernel/perf/perf.bb > index 6d1b066..14a9090 100644 > --- a/meta/recipes-kernel/perf/perf.bb > +++ b/meta/recipes-kernel/perf/perf.bb > @@ -240,10 +240,17 @@ do_configure_prepend () { > > # use /usr/bin/env instead of version specific python > for s in `find ${S}/tools/perf/ -name '*.py'`; do > + sed -i 's,/usr/bin/python3,/usr/bin/env python3,' "${s}"
Rather than messing around with the order of these, we should just combine them into a single sed invocation. When I started those substitutions, there weren't so many. As was mentioned in the other perf patch and review: sed -i -e "1s,#!.*python.*,#!${USRBINPATH}/env python3," ${s} or some variant of the regex should fix them all. > sed -i 's,/usr/bin/python,/usr/bin/env python3,' "${s}" > sed -i 's,/usr/bin/python2,/usr/bin/env python3,' "${s}" > sed -i 's,/usr/bin/env python2,/usr/bin/env python3,' "${s}" > + done > + > + for s in `find ${S}/scripts/ -name '*.py'`; do It would be better to not have two loops doing the same thing, why not combine the two ? In the other review, the single script that was causing the problem was specifically pointed out .. and while I also agree that we can just substitute them all, technically, if we haven't run them, we don't know they are py3 safe. But minimally, getting them into a single for loop is something we should do (also part of that other patch/review). Bruce > sed -i 's,/usr/bin/python3,/usr/bin/env python3,' "${s}" > + sed -i 's,/usr/bin/python,/usr/bin/env python3,' "${s}" > + sed -i 's,/usr/bin/python2,/usr/bin/env python3,' "${s}" > + sed -i 's,/usr/bin/env python2,/usr/bin/env python3,' "${s}" > done > > # unistd.h can be out of sync between libc-headers and the captured > version in the perf source > -- > 2.7.4 > > -- > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-core -- - Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end - "Use the force Harry" - Gandalf, Star Trek II -- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core