RREPLACES and RCONFLICTS when switching from linux-yocto to linux-yocto-custom

Bryan Evenson

I am on poky/dizzy and I am using opkg for package management. I recently discovered I had a problem with my custom kernel image recipe and instead of the package name being called "kernel-image-3.10.0-custom" it was called "kernel-image-3.10.0-yocto-standard" (as shown by "opkg list-installed" on the device). However, with the updated package name opkg does not recognize the "kernel-image-3.10.0-custom" package as an available upgrade for "kernel-image-3.10.0-yocto-standard". I know I can fix this with RREPLACES and RCONFLICTS, but what I have tried has not yet worked and I am looking for suggestions.

In my kernel bbappend, I have the following lines:
RREPLACES_${PN} = "kernel-image (<= 3.10)"
RCONFLICTS_${PN} = "kernel-image (<= 3.10)"

I tried changing this to:
RREPLACES_${PN} = "kernel-image (<= 3.10) kernel-image-3.10.0-yocto-standard"
RCONFLICTS_${PN} = "kernel-image (<= 3.10) kernel-image-3.10.0-yocto-standard"

Opkg still does not recognize the custom package as an upgrade option. I also noticed for my installed kernel, I don't see any listing for it providing "kernel-image", but the updated package does provide "kernel-image". However, typing "opkg info kernel-image" doesn't report anything. So I think I may have several problems related to the package naming. I suspect that I need to do RREPLACES/RCONFLICTS for something other than ${PN} in this situation, but I'm not sure what.

Any suggestions on how to get opkg to recognize the custom kernel as an upgrade for the yocto-standard kernel?


Join yocto@lists.yoctoproject.org to automatically receive all group messages.