[Buildroot] [PATCH] utils/checkpackagelib: CommentsMenusPackagesOrder: fix 'menuconfig' handling
Arnout Vandecappelle
arnout at mind.be
Sun Jul 14 18:50:31 UTC 2019
On 14/07/2019 15:23, Yann E. MORIN wrote:
> Arnout, Jerzy, All,
>
> (sorry, I sent the previous one too quickly)
>
> On 2019-07-14 15:15 +0200, Yann E. MORIN spake thusly:
>> On 2019-07-14 14:44 +0200, Arnout Vandecappelle (Essensium/Mind) spake thusly:
> [--SNIP--]
>>> Fixes: https://gitlab.com/buildroot.org/buildroot/-/jobs/251214899
>> No, it does not fix it totally. It only fixes the python traceback.
>> The Kodi issues is till present.
>> Hint: the Kodi package is the only one that indents the "source" lines
>> with a TAB.
>
> If one changes Kodi to not indent the source lines, then the issue
> disappears. Of course, this is not the correct solution, but...
Yes, because the test only looks at source lines which are indented, which is
wrong too. It should be a regex.
>
> If one changes another package to also idnent the source lines with a
> TAB, then the error happens there too (for example, fftw):
>
> package/fftw/Config.in:18: Packages in: if BR2_PACKAGE_FFTW,
> are not alphabetically ordered;
> correct order: '-', '_', digits, capitals, lowercase;
> first incorrect package: ftw/fftw-d
>
> OK, so, weird. The package included is in fact fftw/fftw-double and only
> part of the bname is reported.
>
> But if one also looks more closely at the Kodi issue, packages names are
> also incorrectly reported:
>
> package/kodi/Config.in:303: Packages in: menu "Audio decoder addons",
> [--SNIP--]
> first incorrect package: kodi-audiodecoder
>
> And in fact, there is one thing I don;t understand in utils/checkpackagelib/lib_config.py,
> line 106:
>
> new_package = text[17: -(len(self.filename)-5):]
>
> Why are we using the current filename to strip away parts of the new
> package filename?
That is indeed the problem. I didn't look too hard at that line (because I
already looked to much at all the rest :-). The len(self.filename)-5 works for
package/Config.in because that exactly strips off the /Config.in part of the
line. But that's a horrible hack, of course...
I'll look at correcting it shortly.
Regards,
Arnout
More information about the buildroot
mailing list