Message ID | 1390360372-10947-1-git-send-email-kai.kang@windriver.com |
---|---|
State | New |
Headers | show |
diff --git a/meta/recipes-core/eglibc/eglibc-package.inc b/meta/recipes-core/eglibc/eglibc-package.inc index 3adf1a9..220832a 100644 --- a/meta/recipes-core/eglibc/eglibc-package.inc +++ b/meta/recipes-core/eglibc/eglibc-package.inc @@ -30,7 +30,7 @@ RPROVIDES_${PN}-doc = "glibc-doc" RPROVIDES_eglibc-extra-nss = "glibc-extra-nss" RPROVIDES_eglibc-thread-db = "glibc-thread-db" RPROVIDES_${PN}-pcprofile = "glibc-pcprofile" -RPROVIDES_${PN}-dbg = "glibc-dbg" +RPROVIDES_${PN}-dbg = "glibc-dbg libc6-dbg" libc_baselibs = "${base_libdir}/libcrypt*.so.* ${base_libdir}/libcrypt-*.so ${base_libdir}/libc.so.* ${base_libdir}/libc-*.so ${base_libdir}/libm*.so.* ${base_libdir}/libm-*.so ${base_libdir}/ld*.so.* ${base_libdir}/ld-*.so ${base_libdir}/libpthread*.so.* ${base_libdir}/libpthread-*.so ${base_libdir}/libresolv*.so.* ${base_libdir}/libresolv-*.so ${base_libdir}/librt*.so.* ${base_libdir}/librt-*.so ${base_libdir}/libutil*.so.* ${base_libdir}/libutil-*.so ${base_libdir}/libnsl*.so.* ${base_libdir}/libnsl-*.so ${base_libdir}/libnss_files*.so.* ${base_libdir}/libnss_files-*.so ${base_libdir}/libnss_compat*.so.* ${base_libdir}/libnss_compat-*.so ${base_libdir}/libnss_dns*.so.* ${base_libdir}/libnss_dns-*.so ${base_libdir}/libdl*.so.* ${base_libdir}/libdl-*.so ${base_libdir}/libanl*.so.* ${base_libdir}/libanl-*.so ${base_libdir}/libBrokenLocale*.so.* ${base_libdir}/libBrokenLocale-*.so" FILES_${PN} = "${libc_baselibs} ${libexecdir}/* ${@base_conditional('USE_LDCONFIG', '1', '${base_sbindir}/ldconfig ${sysconfdir}/ld.so.conf', '', d)}"
On Wed, 2014-01-22 at 11:12 +0800, Kai Kang wrote: > Update eglibc-package.inc to let eglibc-dbg provides libc6-dbg. > > The use case is that when libc6-dbg is needded to be installed into > image, we don't need change glibc-dbg to uclibc-dbg in recipe when we > change to use package uclibc as default C library. > -RPROVIDES_${PN}-dbg = "glibc-dbg" > +RPROVIDES_${PN}-dbg = "glibc-dbg libc6-dbg" Isn't PKG_${PN}-dbg set to libc6-dbg anyway (by libc-common.bbclass)? Can you explain the use case and justification for this change a bit more clearly? p.
On 2014?01?22? 15:08, Phil Blundell wrote: > On Wed, 2014-01-22 at 11:12 +0800, Kai Kang wrote: >> Update eglibc-package.inc to let eglibc-dbg provides libc6-dbg. >> >> The use case is that when libc6-dbg is needded to be installed into >> image, we don't need change glibc-dbg to uclibc-dbg in recipe when we >> change to use package uclibc as default C library. >> -RPROVIDES_${PN}-dbg = "glibc-dbg" >> +RPROVIDES_${PN}-dbg = "glibc-dbg libc6-dbg" > Isn't PKG_${PN}-dbg set to libc6-dbg anyway (by libc-common.bbclass)? > Can you explain the use case and justification for this change a bit > more clearly? In libc-common.bbclass, it set dependencies for the rpm packages. When run 'rpm -qp --provides libc6-dbg-2.18-r2.0.x86_64.rpm', yes, it provides 'eglibc-dbg libc-dbg glibc-dbg libc6-dbg'. But when bitbake parse the recipe and configure files, libc6-dbg is not found and not package provides it. If you add one line such as: IMAGE_INSTALL_append += "libc6-dbg" bitbake complains: ERROR: Nothing RPROVIDES 'libc6-dbg' (but /mnt/sda8/poky-neil/meta/recipes-sato/images/core-image-sato.bb RDEPENDS on or otherwise requires it) Use glib-dbg does work. But if I use it in a recipe, when uclibc is used, I have to edit the recipe. So I update RPROVIDES_${PN}-dbg to let it provides libc6-dbg. Regards, Kai > > p. > > > >
On Wed, 2014-01-22 at 17:06 +0800, Kang Kai wrote: > Use glib-dbg does work. But if I use it in a recipe, when uclibc is > used, I have to edit the recipe. Isn't that still true of "libc6-dbg"? Worse, it isn't even guaranteed that the eglibc-debug package will be named libc6-dbg on all targets; it would probably end up as libc6.1-dbg on alpha-linux or ia64-linux for example. Encouraging people to hardcode "libc6" doesn't seem very wholesome. p.
On 2014?01?26? 03:30, Phil Blundell wrote: > On Wed, 2014-01-22 at 17:06 +0800, Kang Kai wrote: >> Use glib-dbg does work. But if I use it in a recipe, when uclibc is >> used, I have to edit the recipe. > Isn't that still true of "libc6-dbg"? Worse, it isn't even guaranteed > that the eglibc-debug package will be named libc6-dbg on all targets; it > would probably end up as libc6.1-dbg on alpha-linux or ia64-linux for > example. Encouraging people to hardcode "libc6" doesn't seem very > wholesome. I think this is the way to deal the "RPROVIDES" and please ref to libc6-dev in eglibc-package.inc: RPROVIDES_${PN}-dev = "glibc-dev libc6-dev virtual-libc-dev" Thanks, Kai > > p. > > >
Update eglibc-package.inc to let eglibc-dbg provides libc6-dbg. The use case is that when libc6-dbg is needded to be installed into image, we don't need change glibc-dbg to uclibc-dbg in recipe when we change to use package uclibc as default C library. Signed-off-by: Kai Kang <kai.kang@windriver.com> --- meta/recipes-core/eglibc/eglibc-package.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)