diff mbox series

[v2] perf: make scripting depend on setuptools3

Message ID 20221006164944.52304-1-bruce.ashfield@gmail.com
State New
Headers show
Series [v2] perf: make scripting depend on setuptools3 | expand

Commit Message

Bruce Ashfield Oct. 6, 2022, 4:49 p.m. UTC
From: Bruce Ashfield <bruce.ashfield@gmail.com>

It looks like this should have been an error for a while, but it
only started showing up in my 6.x linux-yocto-dev testing.

Without the inherit of setuptool3, we get a module missing error
during configure and the build obviously fails.

Tested against 5.x and 6.x kernels.

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
---

v2: as suggested by Ross, we remove the perf dependency on python that
    is picked up from the inherited setuptools3.

Test build and target runs, everything works as expected.

 meta/recipes-kernel/perf/perf.bb | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

Comments

Luca Ceresoli Oct. 7, 2022, 10:48 a.m. UTC | #1
Hi Bruce,

On Thu,  6 Oct 2022 12:49:44 -0400
"Bruce Ashfield" <bruce.ashfield@gmail.com> wrote:

> From: Bruce Ashfield <bruce.ashfield@gmail.com>
> 
> It looks like this should have been an error for a while, but it
> only started showing up in my 6.x linux-yocto-dev testing.
> 
> Without the inherit of setuptool3, we get a module missing error
> during configure and the build obviously fails.
> 
> Tested against 5.x and 6.x kernels.
> 
> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>

This patch triggers a warning:

WARNING: perf-1.0-r9 do_package_qa: QA Issue: File /usr/lib/python3.10/site-packages/perf-0.1-py3.10-linux-x86_64.egg/EGG-INFO/SOURCES.txt in package perf-python contains reference to TMPDIR

https://autobuilder.yoctoproject.org/typhoon/#/builders/100/builds/3499/steps/13/logs/stdio
Bruce Ashfield Oct. 7, 2022, 1:59 p.m. UTC | #2
On Fri, Oct 7, 2022 at 6:48 AM Luca Ceresoli <luca.ceresoli@bootlin.com> wrote:
>
> Hi Bruce,
>
> On Thu,  6 Oct 2022 12:49:44 -0400
> "Bruce Ashfield" <bruce.ashfield@gmail.com> wrote:
>
> > From: Bruce Ashfield <bruce.ashfield@gmail.com>
> >
> > It looks like this should have been an error for a while, but it
> > only started showing up in my 6.x linux-yocto-dev testing.
> >
> > Without the inherit of setuptool3, we get a module missing error
> > during configure and the build obviously fails.
> >
> > Tested against 5.x and 6.x kernels.
> >
> > Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
>
> This patch triggers a warning:
>
> WARNING: perf-1.0-r9 do_package_qa: QA Issue: File /usr/lib/python3.10/site-packages/perf-0.1-py3.10-linux-x86_64.egg/EGG-INFO/SOURCES.txt in package perf-python contains reference to TMPDIR
>
> https://autobuilder.yoctoproject.org/typhoon/#/builders/100/builds/3499/steps/13/logs/stdio

Interesting. I just built both linux-yocto-dev and linux-yocto against
the patch, and no such warning here .. otherwise, I never would have
sent it along.

If v1 was run through the AB and passed, I suggest we go back to it,
and deal with the packaging after. I'd rather have perf building
against 6.x, than wait to sort out why I'm not seeing the QA warnings
here.

Bruce


>
> --
> Luca Ceresoli, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com



--
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
diff mbox series

Patch

diff --git a/meta/recipes-kernel/perf/perf.bb b/meta/recipes-kernel/perf/perf.bb
index 31bc04635d..7629423cb4 100644
--- a/meta/recipes-kernel/perf/perf.bb
+++ b/meta/recipes-kernel/perf/perf.bb
@@ -48,7 +48,7 @@  PROVIDES = "virtual/perf"
 inherit linux-kernel-base kernel-arch manpages
 
 # needed for building the tools/perf Python bindings
-inherit ${@bb.utils.contains('PACKAGECONFIG', 'scripting', 'python3targetconfig', '', d)}
+inherit ${@bb.utils.contains('PACKAGECONFIG', 'scripting', 'python3targetconfig setuptools3', '', d)}
 inherit python3-dir
 export PYTHON_SITEPACKAGES_DIR
 
@@ -338,6 +338,10 @@  PACKAGE_ARCH = "${MACHINE_ARCH}"
 PACKAGES =+ "${PN}-archive ${PN}-tests ${PN}-perl ${PN}-python"
 
 RDEPENDS:${PN} += "elfutils bash"
+# PN picks up a python3-core RDEPENDS, due to needing setuptool3 as a build
+# dependency, we remove it from the package, as PN-python is where the scripting
+# is packaged.
+RDEPENDS:${PN}:remove = "python3-core"
 RDEPENDS:${PN}-archive =+ "bash"
 RDEPENDS:${PN}-python =+ "bash python3 python3-modules ${@bb.utils.contains('PACKAGECONFIG', 'audit', 'audit-python', '', d)}"
 RDEPENDS:${PN}-perl =+ "bash perl perl-modules"