All of lore.kernel.org
 help / color / mirror / Atom feed
From: Robert Yang <liezhi.yang@windriver.com>
To: "André Draszik" <git@andred.net>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: [PATCH 1/1] libnl: remove RREPLACES and RCONFLICTS for libnl-genl
Date: Fri, 2 Sep 2016 17:53:39 +0800	[thread overview]
Message-ID: <4c8005dd-65b2-145d-86aa-5470cd21b2e8@windriver.com> (raw)
In-Reply-To: <1472804818.9440.14.camel@andred.net>


Good questions, the libnl-genl2 in provides is introduced by
REPLACES_${PN}-genl = "libnl-genl2", so libnl-genl2 should be preserved.
And there was no libnl-genl.rpm in the past, but libnl-3-genl.rpm,
please see commit message for more info.

Here is the updated patch:

   git://git.openembedded.org/openembedded-core-contrib rbt/libnl
   http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=rbt/libnl

Robert Yang (1):
   libnl: fix RREPLACES and RCONFLICTS for libnl-genl


Subject: [PATCH 1/1] libnl: fix RREPLACES and RCONFLICTS for libnl-genl

The libnl-genl.rpm provides libnl-genl-3-200 after the following 2 fixes:
libnl: update to v3.2.28
libnl: fix packaging mistakes

$ rpm -qp --provides 
tmp/deploy/rpm/core2_64/libnl-genl-3-200-3.2.28-r0.4.core2_64.rpm
elf(buildid) = 4e753b2361ba0b02f162244a87cc0680796e46cc
libnl-genl = 3.2.28
libnl-genl-3.so.200()(64bit)
libnl-genl-3.so.200(libnl_3)(64bit)
libnl-genl2
libnl-genl-3-200 = 1:3.2.28-r0.4

Note, the libnl-genl2 is introduced by REPLACES_${PN}-genl = "libnl-genl2".

So that we don't need set libnl-genl-3-200 in the RREPLACES and
RCONFLICTS, otherwise it would cause do_rootfs errors when install both
libnl-genl.rpm and lib32-libnl-genl.rpm:

Computing transaction...error: Can't install 
libnl-genl-3-200-1:3.2.28-r0.0@core2_64: conflicted package 
libnl-genl-3-200-1:3.2.28-r0.0@lib32_x86 is locked

We didn't meet this error before was because there was no libnl-genl.rpm,
but libnl-3-genl.rpm, and it doesn't provide libnl-genl-3-200 by default.

Remove libnl-genl-3-200 from RREPLACES and RCONFLICTS will fix the problem.

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
---
  meta/recipes-support/libnl/libnl_3.2.28.bb | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-support/libnl/libnl_3.2.28.bb 
b/meta/recipes-support/libnl/libnl_3.2.28.bb
index 7ddbd40..26982f3 100644
--- a/meta/recipes-support/libnl/libnl_3.2.28.bb
+++ b/meta/recipes-support/libnl/libnl_3.2.28.bb
@@ -44,5 +44,5 @@ FILES_${PN}-idiag = "${libdir}/libnl-idiag-3.so.*"
  FILES_${PN}-nf    = "${libdir}/libnl-nf-3.so.*"
  FILES_${PN}-route = "${libdir}/libnl-route-3.so.*"
  FILES_${PN}-xfrm  = "${libdir}/libnl-xfrm-3.so.*"
-RREPLACES_${PN}-genl = "libnl-genl2 libnl-genl-3-200"
-RCONFLICTS_${PN}-genl = "libnl-genl2 libnl-genl-3-200"
+RREPLACES_${PN}-genl = "libnl-genl2"
+RCONFLICTS_${PN}-genl = "libnl-genl2"
-- 
2.9.0

// Robert

On 09/02/2016 04:26 PM, André Draszik wrote:
> Thanks Robert!
>
> For my eduction, I don't understand this yet, though, and I don't want to
> cause issues like this again...
>
> On Do, 2016-09-01 at 22:30 -0700, Robert Yang wrote:
>> The libnl-genl.rpm provides libnl-genl2 and libnl-genl-3-200:
>>
>> $ rpm -qp --provides tmp/deploy/rpm/core2_64/libnl-genl-3-200-3.2.28-
>> r0.2.core2_64.rpm
>> elf(buildid) = 4e753b2361ba0b02f162244a87cc0680796e46cc
>> libnl-genl = 3.2.28
>> libnl-genl-3.so.200()(64bit)
>> libnl-genl-3.so.200(libnl_3)(64bit)
>> libnl-genl2
>
> How does RPM manage to add a provides of libnl-genl2 here?
>
>> libnl-genl-3-200 = 1:3.2.28-r0.2
>>
>> so that we don't need set them in the RREPLACES and RCONFLICTS, the
>> package manager can handle it, otherwise it would cause do_rootfs errors
>> when install both libnl-genl.rpm and lib32-libnl-genl.rpm:
>>
>> Computing transaction...error: Can't install libnl-genl-3-200-1:3.2.28-r0.
>> 0@core2_64: conflicted package libnl-genl-3-200-1:3.2.28-r0.0@lib32_x86 is
>> locked
>>
>> We didn't meet the error before was because there was no libnl-genl.rpm,
>> so that it had no effect, but now the following commit fixed the
>> packaging problem: (master-next branch)
>
> Hm, there has been a libnl-genl.ipk all the time. Why no rpm?
>
>> libnl: fix packaging mistakes
>>
>> Remove RREPLACES and RCONFLICTS for libnl-genl will fix the problem.
>>
>> Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
>> ---
>>  meta/recipes-support/libnl/libnl_3.2.28.bb | 2 --
>>  1 file changed, 2 deletions(-)
>>
>> diff --git a/meta/recipes-support/libnl/libnl_3.2.28.bb b/meta/recipes-
>> support/libnl/libnl_3.2.28.bb
>> index 7ddbd40..799962f 100644
>> --- a/meta/recipes-support/libnl/libnl_3.2.28.bb
>> +++ b/meta/recipes-support/libnl/libnl_3.2.28.bb
>> @@ -44,5 +44,3 @@ FILES_${PN}-idiag = "${libdir}/libnl-idiag-3.so.*"
>>  FILES_${PN}-nf    = "${libdir}/libnl-nf-3.so.*"
>>  FILES_${PN}-route = "${libdir}/libnl-route-3.so.*"
>>  FILES_${PN}-xfrm  = "${libdir}/libnl-xfrm-3.so.*"
>> -RREPLACES_${PN}-genl = "libnl-genl2 libnl-genl-3-200"
>> -RCONFLICTS_${PN}-genl = "libnl-genl2 libnl-genl-3-200"
>
> I can see how 'libnl-genl-3-200' could be an issue with RPM based systems
> (whereas libnl-genl2 shouldn't be a problem, except that RPM seems to add
> that as a provides???) But I don't understand how this wasn't a problem
> before?
>
> What am I missing?
>
> Cheers,
> Andre'
>
>


  reply	other threads:[~2016-09-02  9:53 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-09-02  5:30 [master-next] [PATCH 0/1] libnl: remove RREPLACES and RCONFLICTS for libnl-genl Robert Yang
2016-09-02  5:30 ` [PATCH 1/1] " Robert Yang
2016-09-02  6:11   ` Hatle, Mark
2016-09-02  8:26   ` André Draszik
2016-09-02  9:53     ` Robert Yang [this message]
2016-09-02 11:27       ` André Draszik
2016-09-03  2:29         ` Robert Yang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4c8005dd-65b2-145d-86aa-5470cd21b2e8@windriver.com \
    --to=liezhi.yang@windriver.com \
    --cc=git@andred.net \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.