On 09/02/2016 07:27 PM, André Draszik wrote:
On Fr, 2016-09-02 at 17:53 +0800, Robert Yang wrote:
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".

Ah, ok. And so is the last line, libnl-genl-3-200, I suppose. (The IPK
backend doesn't seem to do that)

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,
                                                            ^^^^^^^^^^^^^^^
Should that be libnl-genl-3-200.rpm ?

but libnl-3-genl.rpm, and it doesn't provide libnl-genl-3-200 by default.

OK.

So now that there is nothing in ${bindir} of the -genl package anymore, it
applies the normal package renaming using the SONAME, resulting in libnl-
genl-3-200.

Whereas previously it used ${PN}-genl as package name, where PN was set to
libnl-3 during package creation. Why was it libnl-3 (why did it not use
libnl-3-200 as prefix)?

The rename is done by debian.bbclass, you can take a look into it.

// Robert


Cheers,
Andre'


--
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to