[OE-core] [PATCH 1/2] opkg: Upgrade to v0.2.3

Paul Barker paul at paulbarker.me.uk
Tue Nov 11 20:19:11 UTC 2014


On 10 November 2014 15:50, Paul Barker <paul at paulbarker.me.uk> wrote:
> On 10 November 2014 15:27, Burton, Ross <ross.burton at intel.com> wrote:
>>
>> On 31 October 2014 10:34, Paul Barker <paul at paulbarker.me.uk> wrote:
>>>
>>> The patches for opkg have been rebased using git so that they apply
>>> cleanly onto
>>> the new release.
>>
>>
>> Something appears to be broken with 0.2.3:
>>  * satisfy_dependencies_for: Cannot satisfy the following dependencies for
>> packagegroup-core-sdk:
>>  * perl-module-config * perl-module-config * (repeat)
>>
>> https://autobuilder.yoctoproject.org/main/builders/nightly-ipk/builds/97 is
>> a build on the autobuilder using current master, and
>> https://autobuilder.yoctoproject.org/main/builders/nightly-ipk/builds/96 is
>> master plus your two opkg patches.
>>
>> Ross
>
> I'll try building core-image-sato-sdk myself tomorrow and see if I can
> reproduce this locally. I've probably introduced new bugs while
> solving old bugs in the dependency resolution code.
>
> I probably need a more comprehensive pre-release test for opkg. I
> currently build core-image-minimal, rebuild a few packages then check
> 'opkg update && opkg upgrade' works as expected. I'll expand that to
> build core-image-sato and core-image-sato-sdk for multiple
> architectures for the v0.2.4 release.
>

I've reproduced this and tracked the cause down to the
pkg_hash_fetch_best_installation_candidate function mis-handling an
obscure edge case. There are two providers of perl-module-config
(libperl5 and perl), but neither is actually called
'perl-module-config'. This triggers an "if (nmatching > 1)" branch
which causes the function to immediately return NULL instead of
selecting one of the matching packages to return. I kept this when
refactoring the old code but never understood why it was there in the
first place. Removing this branch fixes the problem but I need to
think through what other consequences that change may have.

I'll roll this fix into opkg v0.2.4 which I'm planning to release
ASAP. Then I'll resubmit a patch against oe-core which upgrades opkg
to v0.2.4.

In the meantime, the opkg-utils patch should be mergeable on its own.

Cheers,

-- 
Paul Barker

Email: paul at paulbarker.me.uk
http://www.paulbarker.me.uk



More information about the Openembedded-core mailing list