]> code.ossystems Code Review - openembedded-core.git/commitdiff
shadow: Fix various invalid assumptions about directory layout
authorPhil Blundell <philb@gnu.org>
Sun, 9 Sep 2012 10:22:53 +0000 (11:22 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 12 Sep 2012 13:44:52 +0000 (14:44 +0100)
The makefiles in the shadow package have their own hard-coded paths
for ${base_bindir} and ${base_sbindir} (known as "bindir" and "sbindir"
in shadow-speak).  Ensure that they install into our paths rather than
their own.

Also check that ${base_bindir} and ${bindir} are different before trying
to move files from one to the other; likewise for ${base_sbindir} and
${sbindir}.

Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
meta/recipes-extended/shadow/shadow_4.1.4.3.bb

index 6794cc144ec548ef6c55135a477574f64f9b727b..eb00bf0810d4396661a0bf69df661a01db21846d 100644 (file)
@@ -56,7 +56,14 @@ PAM_SRC_URI = "file://pam.d/chfn \
                file://pam.d/passwd \
                file://pam.d/su"
 
-do_install_append() {
+do_install() {
+       oe_runmake DESTDIR="${D}" sbindir="${base_sbindir}" usbindir="${sbindir}" install
+
+       # Info dir listing isn't interesting at this point so remove it if it exists.
+       if [ -e "${D}${infodir}/dir" ]; then
+               rm -f ${D}${infodir}/dir
+       fi
+
        # Ensure that the image has as a /var/spool/mail dir so shadow can
        # put mailboxes there if the user reconfigures shadow to its
        # defaults (see sed below).
@@ -93,8 +100,12 @@ do_install_append() {
        # Move binaries to the locations we want
        rm ${D}${sbindir}/vigr
        ln -sf vipw.${BPN} ${D}${base_sbindir}/vigr
-       mv ${D}${sbindir}/vipw ${D}${base_sbindir}/vipw
-       mv ${D}${bindir}/login ${D}${base_bindir}/login
+       if [ "${sbindir}" != "${base_sbindir}" ]; then
+               mv ${D}${sbindir}/vipw ${D}${base_sbindir}/vipw
+       fi
+       if [ "${bindir}" != "${base_bindir}" ]; then
+               mv ${D}${bindir}/login ${D}${base_bindir}/login
+       fi
 
        # Handle link properly after rename, otherwise missing files would
        # lead rpm failed dependencies.