rootfs_rpm: Escape the backtick to ensure the ls runs on the target
authorSaul Wold <sgw@linux.intel.com>
Tue, 29 Jan 2013 23:04:26 +0000 (15:04 -0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 30 Jan 2013 00:03:01 +0000 (00:03 +0000)
This change ensures that the ls /etc/rpm-postinsts runs in the target
at first boot time, rather than at the creation time of the script on
the host.

This was causing the following error in the rootfs log:

+ install -d /srv/ssd/sgw/machines/fri2/tmp/work/fri2-poky-linux/core-image-minimal/1.0-r0/rootfs//etc/rcS.d
+ i=
+ ls /etc/rpm-postinsts/
ls: cannot access /etc/rpm-postinsts/: No such file or directory

(From OE-Core rev: e893cf0b3843701e80f5c9f47be04d1a88e5ed68)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/rootfs_rpm.bbclass

index accd7d9..119bf92 100644 (file)
@@ -108,7 +108,7 @@ fakeroot rootfs_rpm_do_rootfs () {
        i=\$i
        cat > ${IMAGE_ROOTFS}${sysconfdir}/rcS.d/S${POSTINSTALL_INITPOSITION}run-postinsts << EOF
 #!/bin/sh
-for i in `ls /etc/rpm-postinsts/`; do
+for i in \`ls /etc/rpm-postinsts/\`; do
        i=/etc/rpm-postinsts/$i
        echo "Running postinst $i..."
        if [ -f $i ] && $i; then