[yocto] [Yocto][poky][meta] already-stripped ignore if set for any other package then INSANE_SKIP_${PN}

Andre McCurdy armccurdy at gmail.com
Tue Oct 16 15:36:28 PDT 2018


On Tue, Oct 16, 2018 at 6:47 AM, Burton, Ross <ross.burton at intel.com> wrote:
> It's only already-stripped that needs to be on PN, because the
> stripping happens before packaging.  When already-stripped files,
> there are no packages yet.
>
> Ross
> On Tue, 16 Oct 2018 at 14:22, Måns Zigher <mans.zigher at gmail.com> wrote:
>>
>> Ok so it is not supported to have the already-stripped on a package level? I cannot set it on PN because I have some so-files that is already stripped and others that is not so that was why I wanted to create a package for the already-stripped so-files and use the already-stripped on that package. Anyway thanks for the help I ended up creating a new recipe for the already-stripped so-files. But is all the INSANE_SKIP flags only supported for PN? I think I have seen dev-so used on an package level?

The key point is when the QA test is run. In the case of
"already-stripped", the test is run as part of split_and_strip_files()
in package.bbclass, ie as part of the normal stripping process. As
Ross mentions, it's therefore run before the build output is split
into packages.

The "dev-so" QA test is run as part of do_package_qa() in
insane.bbclass and can be disabled on a per-package basis.

As far as I know, there's no documentation to say which QA tests can
be disabled on a per-package basis and which can not. If you want to
be sure you need to read the source. Start by grepping for the QA test
you are interested in and also for "package_qa_handle_error" (which is
the function which is called when a QA test fails). Those two together
should help locate the place where the QA test is run... and from that
you can inspect the code to see if/how INSANE_SKIP is applied. For
example, in the case of "already-stripped", the test is run from
split_and_strip_files() and only INSANE_SKIP_${PN} is checked:

  http://git.openembedded.org/openembedded-core/tree/meta/classes/package.bbclass?h=sumo#n1010

(In this case, the code could perhaps be even clearer if checking
whether "already-stripped" is found in INSANE_SKIP_${PN} was done once
at the start of the function, rather than being determining again and
again for each file inside the "for every elf file" loop).

>> BR
>> Måns Zigher
>>
>> Den mån 15 okt. 2018 kl 22:23 skrev Burton, Ross <ross.burton at intel.com>:
>>>
>>> Ah yes, of course.  Stripping happens *before* package splitting, so
>>> it doesn't make sense to have it set on PN-package1.  Just set it on
>>> PN and it should work.
>>>
>>> Ross
>>> On Mon, 15 Oct 2018 at 08:18, Måns Zigher <mans.zigher at gmail.com> wrote:
>>> >
>>> > Hi,
>>> >
>>> > Sorry I see now that there is a typo. What I mean is that in the default package I am not suing INSANE_SKIP but for packag1 I need already-stripped
>>> >
>>> > INSANE_SKIP_${PN}-package1 = " \
>>> > dev-so \
>>> > already-stripped \
>>> > "
>>> >
>>> > But I continuously get the error that they are already-stripped. So is it supposed to work because I don't understand  the code in the package.bbclass since it looks like it is only checking for already-stripped in ${PN} and not ${PN}-package1?
>>> >
>>> > BR
>>> > Måns Zigher
>>> >
>>> >
>>> >
>>> > Den fre 12 okt. 2018 kl 16:30 skrev Burton, Ross <ross.burton at intel.com>:
>>> >>
>>> >> On Thu, 11 Oct 2018 at 18:14, Måns Zigher <mans.zigher at gmail.com> wrote:
>>> >> > I have been struggling with a problem where I need to create a package in a recipe and set already-stripped for that package. The package in question is not the the default one so I am trying to set it by using
>>> >> >
>>> >> > INSANE_SKIP_${PN} += " \
>>> >> > dev-so \
>>> >> > already-stripped \
>>> >> > "
>>> >>
>>> >> You say no the default one, but PN is "the default" one, so that's
>>> >> probably why that doesn't work.
>>> >>
>>> >> Ross
> --
> _______________________________________________
> yocto mailing list
> yocto at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/yocto


More information about the yocto mailing list