[OE-core] [PATCH 06/14] dummy-sdk-package.inc: do not include files into RREPLACES

Alexander Kanavin alex.kanavin at gmail.com
Mon Jan 6 11:34:49 UTC 2020


I made a couple of patches for this, they seem to fix the issues. Please
test:
http://git.yoctoproject.org/cgit.cgi/poky-contrib/commit/?h=akanavin/package-version-updates&id=a695bd5a8951b640add0cbc3e8171da7f58982b6
http://git.yoctoproject.org/cgit.cgi/poky-contrib/commit/?h=akanavin/package-version-updates&id=6574516432dec7e5a716ff7c17c1bcaea06a3fb7

Alex

On Fri, 3 Jan 2020 at 01:49, Kang Kai <Kai.Kang at windriver.com> wrote:

> On 2020/1/3 上午2:06, Alexander Kanavin wrote:
>
> On Thu, 2 Jan 2020 at 11:18, Kang Kai <Kai.Kang at windriver.com> wrote:
>
>> On 2019/11/28 上午12:39, Alexander Kanavin wrote:
>> > rpm 4.15 no longer allows it, which makes sense.
>> >
>> > Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
>>
>> Hi Alex,
>>
>> I tried this patch with rpm 4.15 and it fails to run task populate_sdk
>> when multilib is enabled and lib32-perl is installed.
>>
>> IMAGE_INSTALL_append = " lib32-perl "
>>
>
> I believe this is due to DUMMYPROVIDES_PACKAGES needing the same multilib
> expansion as:
>
> DUMMYPROVIDES += "${@' '.join([multilib_pkg_extend(d, pkg) for pkg in
> d.getVar('DUMMYPROVIDES_PACKAGES').split()])}"
> <$%7B@''.join([multilib_pkg_extend(d,pkg)forpkgind.getVar('DUMMYPROVIDES_PACKAGES').split()])%7D>
>
> So that RREPLACES has all the multilib variants included.
>
> However, there is also a different issue, that looks similar, but actually
> pre-dates this patch, and rpm 4.15 update:
>
> if you do
> IMAGE_INSTALL_append = " perl "
>
> (with multilib enabled), a similar error will happen:
>
> Problem: package
> target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target conflicts with
> perl provided by perl-5.30.1-r0.core2_32
>   - package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target
> conflicts with perl-module-strict provided by perl-5.30.1-r0.core2_32
>   - package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target
> conflicts with perl-module-warnings provided by perl-5.30.1-r0.core2_32
>   - package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target
> conflicts with perl-module-vars provided by perl-5.30.1-r0.core2_32
>   - package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target
> conflicts with perl-module-config provided by perl-5.30.1-r0.core2_32
>   - package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target
> conflicts with perl-module-warnings-register provided by
> perl-5.30.1-r0.core2_32
>   - package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target
> conflicts with /usr/bin/perl provided by perl-5.30.1-r0.core2_32
>   - package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target
> conflicts with libperl.so.5 provided by perl-5.30.1-r0.core2_32
>   - package target-sdk-provides-dummy-1.0-r0.sdk_provides_dummy_target
> obsoletes perl provided by perl-5.30.1-r0.core2_32
>   - cannot install the best candidate for the job
>   - conflicting requests
>
> Inspecting
> /home/alexander/development/poky/build-multilib/tmp/work/qemux86-poky-linux/core-image-minimal/1.0-r0/sdk/image/opt/poky/3.0/sysroots/core2-32-poky-linux/etc/dnf/vars/arch,
> I see:
>
> core2_32:i686:i586:x86:sdk_provides_dummy_target:qemux86:x86_64
>
> Even though sdk_provides_dummy_target should be up-front, rather than in
> the middle (so that it takes priority over other architectures).
>
> I could not figure out a good way to fix this, but I think this issue
> should be addressed first, and then we can fix the lib32/64-perl issue.
>
>
> Thanks for your detailed reply. I'll try to figure a way out.
>
> Regards,
> Kai
>
>
>
> Alex
>
>
> --
> Kai Kang
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20200106/7d7589f8/attachment-0001.html>


More information about the Openembedded-core mailing list