[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openembedded-core
Subject:    Re: [OE-core] [PATCH 1/2] glibc: re-package for libnss-db
From:       Khem Raj <raj.khem () gmail ! com>
Date:       2017-10-31 19:40:27
Message-ID: CAMKF1sqmihKMW4qA9Xzu9xDq6KNna1TNyjDmWTYbdYWpu08ieA () mail ! gmail ! com
[Download RAW message or body]

On Tue, Oct 31, 2017 at 12:20 AM,  <jackie.huang@windriver.com> wrote:
> From: Jackie Huang <jackie.huang@windriver.com>
> 
> On other distros like ubuntu/centos, libnss-db usually provides:
> - The libraries
> - The Makefile to create database
> (in /var/db for centos, /var/lib/misc/ for ubuntu)
> - The makedb command (it's in glibc-common for centos7)
> 
> What we had is:
> - The libraries are in glibc-extra-nss
> - The Makefile is removed
> - The makedb command is in glibc-utils (lack of dependency)
> 
> So when glibc-extra-nss is installed but glibc-utils is not,
> we see error like:
> nscd[165]: 165 checking for monitored file `/var/db/group.db': No such file or \
> directory nscd[165]: 165 checking for monitored file `/var/db/passwd.db': No such \
> file or directory 
> And there is not an easy way to create these databases.
> 
> To fix the issue:
> - Re-package the libraries into libnss-db
> - Don't remove the Makefile and add it in libnss-db
> - Add RDEPENDS for libnss-db on glibc-utils and make
> 

this looks ok although, changing glibc packaging is a bit thorny for
external toolchains and
other libraries. Would be better if this was added to commit saying
that they have yet another
package that they need to provide if replacing glibc from core.

> Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
> ---
> meta/recipes-core/glibc/glibc-package.inc | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/recipes-core/glibc/glibc-package.inc \
> b/meta/recipes-core/glibc/glibc-package.inc index df3db2cc45..1c3782dbb0 100644
> --- a/meta/recipes-core/glibc/glibc-package.inc
> +++ b/meta/recipes-core/glibc/glibc-package.inc
> @@ -1,6 +1,6 @@
> INHIBIT_SYSROOT_STRIP = "1"
> 
> -PACKAGES = "${PN}-dbg catchsegv sln nscd ldd tzcode glibc-thread-db ${PN}-pic \
> libcidn libmemusage libsegfault ${PN}-pcprofile libsotruss ${PN} ${PN}-utils \
> glibc-extra-nss ${PN}-dev ${PN}-staticdev ${PN}-doc" +PACKAGES = "${PN}-dbg \
> catchsegv sln nscd ldd tzcode glibc-thread-db ${PN}-pic libcidn libmemusage \
> libnss-db libsegfault ${PN}-pcprofile libsotruss ${PN} ${PN}-utils glibc-extra-nss \
> ${PN}-dev ${PN}-staticdev ${PN}-doc" 
> # The ld.so in this glibc supports the GNU_HASH
> RPROVIDES_${PN} = "eglibc rtld(GNU_HASH)"
> @@ -23,6 +23,8 @@ FILES_ldd = "${bindir}/ldd"
> FILES_libsegfault = "${base_libdir}/libSegFault*"
> FILES_libcidn = "${base_libdir}/libcidn-*.so ${base_libdir}/libcidn.so.*"
> FILES_libmemusage = "${base_libdir}/libmemusage.so"
> +FILES_libnss-db = "${base_libdir}/libnss_db.so.* ${base_libdir}/libnss_db-*.so \
> ${localstatedir}/db/Makefile" +RDEPENDS_libnss-db = "${PN}-utils make"
> FILES_glibc-extra-nss = "${base_libdir}/libnss_*-*.so ${base_libdir}/libnss_*.so.*"
> FILES_sln = "${base_sbindir}/sln"
> FILES_${PN}-pic = "${libdir}/*_pic.a ${libdir}/*_pic.map ${libdir}/libc_pic/*.o"
> @@ -59,7 +61,6 @@ inherit libc-common multilib_header
> 
> do_install_append () {
> rm -f ${D}${sysconfdir}/localtime
> -       rm -rf ${D}${localstatedir}
> 
> # remove empty glibc dir
> if [ -d ${D}${libexecdir} ]; then
> --
> 2.11.0
> 
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic