]> code.ossystems Code Review - openembedded-core.git/commitdiff
shadow-sysroot: Simplfy login.defs installation
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 26 Jan 2012 12:42:58 +0000 (12:42 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 26 Jan 2012 20:52:32 +0000 (20:52 +0000)
Currently if shadow-sysroot is installed from a sstate package,
shadow_sysroot_sstate_postinst is looking in ${D} for login.defs which
isn't a valid for an install from sstate.

The easiest and most correct way to fix this is to override the standard
sysroot_stage_all function to install the files correctly and then
sstate installs work as expected. This simplifies the code as an added
bonus.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-extended/shadow/shadow-sysroot_4.1.4.3.bb

index 076bc9ae15f1346ea68f36f95e4ffc88dd432fc1..fbffb845a78696f1f1ed61f0ea776cd903339171 100644 (file)
@@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://login.defs_shadow-sysroot;md5=25e2f2de4dfc8f966ac5cdf
 
 DEPENDS = "base-passwd"
 
-PR = "r0"
+PR = "r1"
 
 # The sole purpose of this recipe is to provide the /etc/login.defs
 # file for the target sysroot - needed so the shadow-native utilities
@@ -19,22 +19,12 @@ SRC_URI[md5sum] = "b8608d8294ac88974f27b20f991c0e79"
 SRC_URI[sha256sum] = "633f5bb4ea0c88c55f3642c97f9d25cbef74f82e0b4cf8d54e7ad6f9f9caa778"
 
 S = "${WORKDIR}"
-SSTATEPOSTINSTFUNCS += "shadow_sysroot_sstate_postinst"
 
 do_install() {
        install -d ${D}${sysconfdir}
        install -p -m 755 ${S}/login.defs_shadow-sysroot ${D}${sysconfdir}/login.defs
 }
 
-shadow_sysroot_sstate_postinst() {
-       if [ "${BB_CURRENTTASK}" = "populate_sysroot" -o "${BB_CURRENTTASK}" = "populate_sysroot_setscene" ]
-       then
-               # Staging does not copy ${sysconfdir} files into the
-               # target sysroot, so we need to do so manually. We
-               # put this file in the target sysroot so it can be
-               # used by recipes which use custom user/group
-               # permissions.
-               install -d -m 755 ${STAGING_DIR_TARGET}${sysconfdir}
-               install -p -m 644 ${D}${sysconfdir}/login.defs ${STAGING_DIR_TARGET}/${sysconfdir}/login.defs
-       fi
+sysroot_stage_all() {
+       sysroot_stage_dir ${D} ${SYSROOT_DESTDIR}
 }