From 170b89d9863a1b8560f397d3bb7a1eafd7c61e1e Mon Sep 17 00:00:00 2001 From: Roy Li Date: Wed, 19 Aug 2015 17:25:30 +0800 Subject: glibc: package nscd related files install nscd related configuration file, startup files, and package them, make nscd easy to startup (From OE-Core rev: 6d8351ac26295d2e5a693169bd2df95b89cb32fe) Signed-off-by: Roy Li Signed-off-by: Richard Purdie --- meta/recipes-core/glibc/glibc-package.inc | 40 ++++++++++++++++++++++++++++++- meta/recipes-core/glibc/glibc.inc | 2 +- 2 files changed, 40 insertions(+), 2 deletions(-) (limited to 'meta/recipes-core') diff --git a/meta/recipes-core/glibc/glibc-package.inc b/meta/recipes-core/glibc/glibc-package.inc index c72a49e0fd..5f6036840f 100644 --- a/meta/recipes-core/glibc/glibc-package.inc +++ b/meta/recipes-core/glibc/glibc-package.inc @@ -49,7 +49,8 @@ FILES_libsotruss = "${libdir}/audit/sotruss-lib.so" FILES_SOLIBSDEV = "${libdir}/lib*${SOLIBSDEV}" FILES_${PN}-dev += "${bindir}/rpcgen ${libdir}/*_nonshared.a ${base_libdir}/*_nonshared.a ${base_libdir}/*.o ${datadir}/aclocal" FILES_${PN}-staticdev += "${libdir}/*.a ${base_libdir}/*.a" -FILES_nscd = "${sbindir}/nscd*" +FILES_nscd = "${sbindir}/nscd* ${sysconfdir}/init.d/nscd ${systemd_unitdir}/system/nscd* ${sysconfdir}/tmpfiles.d/nscd.conf \ + ${sysconfdir}/nscd.conf ${sysconfdir}/default/volatiles/98_nscd ${localstatedir}/db/nscd" FILES_${PN}-mtrace = "${bindir}/mtrace" FILES_tzcode = "${bindir}/tzselect ${sbindir}/zic ${sbindir}/zdump" FILES_${PN}-utils = "${bindir}/* ${sbindir}/*" @@ -105,6 +106,29 @@ do_install_append () { rmdir ${D}${sysconfdir} fi fi + + if echo ${PN}|grep -q "glibc-initial"; then + return + fi + + install -d ${D}${sysconfdir}/init.d + install -d ${D}${localstatedir}/db/nscd + install -m 0755 ${S}/nscd/nscd.init ${D}${sysconfdir}/init.d/nscd + install -m 0755 ${S}/nscd/nscd.conf ${D}${sysconfdir}/nscd.conf + sed -i "s%daemon%start-stop-daemon --start --exec%g" ${D}${sysconfdir}/init.d/nscd + + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${S}/nscd/nscd.service ${D}${systemd_unitdir}/system/ + + if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then + install -d ${D}${sysconfdir}/tmpfiles.d + echo "d /run/nscd 755 root root -" \ + > ${D}${sysconfdir}/tmpfiles.d/nscd.conf + else + install -d ${D}${sysconfdir}/default/volatiles + echo "d root root 0755 /var/run/nscd none" \ + > ${D}${sysconfdir}/default/volatiles/98_nscd + fi } do_install_append_aarch64 () { @@ -174,3 +198,17 @@ glibc_package_preprocess () { rm -rf ${PKGD}${exec_prefix}/lib fi } + +pkg_postinst_nscd () { + if [ -z "$D" ]; then + if command -v systemd-tmpfiles >/dev/null; then + systemd-tmpfiles --create ${sysconfdir}/tmpfiles.d/nscd.conf + elif [ -e ${sysconfdir}/init.d/populate-volatile.sh ]; then + ${sysconfdir}/init.d/populate-volatile.sh update + fi + fi +} +CONFFILES_nscd="${sysconfdir}/nscd.conf" + +SYSTEMD_PACKAGES = "nscd" +SYSTEMD_SERVICE_nscd = "nscd.service" diff --git a/meta/recipes-core/glibc/glibc.inc b/meta/recipes-core/glibc/glibc.inc index 0cccd0533e..17fa2d52a5 100644 --- a/meta/recipes-core/glibc/glibc.inc +++ b/meta/recipes-core/glibc/glibc.inc @@ -49,7 +49,7 @@ DEPENDS = "virtual/${TARGET_PREFIX}gcc-initial libgcc-initial linux-libc-headers #RDEPENDS_${PN} += "${@['','libgcc']['nptl' in '${GLIBC_ADDONS}']}" PROVIDES = "virtual/libc virtual/${TARGET_PREFIX}libc-for-gcc" PROVIDES += "virtual/libintl virtual/libiconv" -inherit autotools texinfo distro_features_check +inherit autotools texinfo distro_features_check systemd require glibc-options.inc # The main purpose of setting this variable is to prevent users from accidently -- cgit v1.2.3-54-g00ecf