| Summary: | cpan_build.bbclass is broken (no dependency Module::Build) | ||||||
|---|---|---|---|---|---|---|---|
| Product: | [Build System, Metadata & Runtime] OE-Core | Reporter: | Pau Espin Pedrol <pespin.shar> | ||||
| Component: | devtools / tool chain | Assignee: | Tim Orling <tim.orling> | ||||
| Status: | RESOLVED FIXED | QA Contact: | |||||
| Severity: | normal | ||||||
| Priority: | Medium+ | CC: | liezhi.yang, meta.mr.watcher, meta.watcher, pespin.shar, randy.macleod, richard.purdie, tim.orling | ||||
| Version: | 2.3.5 | ||||||
| Target Milestone: | 2.8 M2 | ||||||
| Hardware: | x86 | ||||||
| OS: | x86_64 | ||||||
| Whiteboard: | Backport to 2.6.x, 2.7.x | ||||||
| OS type for building Yocto: | --- | Type of Regression: | --- | ||||
| Verified: | Documentation change: | Don't know | |||||
| Attachments: |
|
||||||
|
Description
Pau Espin Pedrol
2018-08-08 17:35:57 UTC
Richard requests that we move a single perl recipe from meta-oe to oe-core to test for this type of failure. It can be libio-stty-perl_0.03.bb or perhaps another recipe that also fails would be a better choice. By adding a single recipe, we'll avoid future regressions. Here's a proposed set of 3 patches to poky that allows me to build libio-stty-perl using cpan_build. You can find it in branch pespin/cpan of my poky.git fork in github [1]. The branch is on top of latest pyro, since it's the poky version I'm currently using, but as far as I can see the issues are the same with master. Please give them a review and some testing and provide feedback or fix them as needed. The changes I did to cpan.bbclass may break other perl recipes, I didn't try building other ones. [1] https://github.com/pespin/poky/commits/pespin/cpan I agree with Randy in Comment #1 that we need to have a recipe in oe-core that depends on libmodule-build-perl (and therefore moving libmodule-build-perl to oe-core will make sense). We should also have a test in oeqa that verifies the cpan_build.bbclass is functional. libmodule-build-perl itself inherits cpan_build, so that recipe alone might be enough. I am currently fighting ptests for libmodule-build-perl (it expects to run all tests from blib, rather than vendor_perl). All other lib<foo>-perl modules in oe-core have ptest enabled and passing. Submitted as part of: https://patchwork.openembedded.org/series/18187/ The actual moving of the recipe was trivial, but fixing perl-rdepends.txt, especially with ptest enabled, was a big chore. Nine of the tests fail (~5 are known failing upstream, the others are non-obvious cause: "build_params" missing and OUTPUT typemap issues). We still need to decide if we need another recipe that inherits cpan_build in oe-core. I would also prefer oeselftest, but not sure how to approach that off the top of my head. Perhaps use the Simple example the libmodule-build-perl builds as part of its tests. Or perhaps the ptesting is enough? I think with basic ptests we get at least some coverage and that helps address some of my concerns that I had when this was originally discussed. A simple module that tests it would still be nice to have but not essential. I am going to mark this as resolved. The patches were merged. |