rootfs_deb.bbclass: fix alternatives handling
authorFilip Zyzniewski <filip.zyzniewski@gmail.com>
Mon, 7 Feb 2011 04:12:05 +0000 (04:12 +0000)
committerTom Rini <tom_rini@mentor.com>
Tue, 8 Feb 2011 14:20:17 +0000 (07:20 -0700)
After fixing update-alternatives-native the command:
   rmdir ${IMAGE_ROOTFS}/var/dpkg/alternatives

fails, because the directory is not empty, and the command:
  ln -s ${libdir}/opkg/alternatives ${IMAGE_ROOTFS}/var/dpkg/alternatives

creates a dangling symlink, because we mkdir only the parent directory of
the target.

Fixes: mkdir -p the alternatives directory itself and move alternatives
definitions into it before rmdiring the original alternatives directory

Signed-off-by: Filip Zyzniewski <filip.zyzniewski@gmail.com>
Signed-off-by: Tom Rini <tom_rini@mentor.com>
classes/rootfs_deb.bbclass

index 59072aa..6a87c7d 100644 (file)
@@ -123,8 +123,9 @@ fakeroot rootfs_deb_do_rootfs () {
        set -e
 
        # Hacks to allow opkg's update-alternatives and opkg to coexist for now
-       mkdir -p ${IMAGE_ROOTFS}${libdir}/opkg
+       mkdir -p ${IMAGE_ROOTFS}${libdir}/opkg/alternatives
        if [ -e ${IMAGE_ROOTFS}/var/dpkg/alternatives ]; then
+               mv ${IMAGE_ROOTFS}/var/dpkg/alternatives/* ${IMAGE_ROOTFS}${libdir}/opkg/alternatives/
                rmdir ${IMAGE_ROOTFS}/var/dpkg/alternatives
        fi
        ln -s ${libdir}/opkg/alternatives ${IMAGE_ROOTFS}/var/dpkg/alternatives