coreutils: fix chroot installation
authorBaruch Siach <baruch@tkos.co.il>
Wed, 11 Jul 2018 19:51:18 +0000 (22:51 +0300)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Mon, 16 Jul 2018 14:41:20 +0000 (16:41 +0200)
Since commit 256bb383fb7 (coreutils: use single binary in symlink
method) the chroot move command creates a dangling symlink, because the
symlink target is 'coreutils' which is not in the /usr/sbin/ directory.
Instead of moving, remove the coreutils installed symlink, and create a
new one in $(TARGET_DIR)/usr/sbin with the correct target.

Should also fix (busybox):
http://autobuild.buildroot.net/results/6b3/6b39648b466738162516aa50ab328d839ec85448/

Cc: Carlos Santos <casantos@datacom.ind.br>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
package/coreutils/coreutils.mk

index 3cb96589f228c9eabc51c07c92b4eae7408d7ee3..2fb4a32c794ff6b1eb4715c29849e50f23845baf 100644 (file)
@@ -114,7 +114,8 @@ define COREUTILS_CLEANUP
        # link for archaic shells
        ln -fs test $(TARGET_DIR)/usr/bin/[
        # gnu thinks chroot is in bin, debian thinks it's in sbin
-       mv -f $(TARGET_DIR)/usr/bin/chroot $(TARGET_DIR)/usr/sbin/chroot
+       rm -f $(TARGET_DIR)/usr/bin/chroot
+       ln -sf ../bin/coreutils $(TARGET_DIR)/usr/sbin/chroot
 endef
 
 COREUTILS_POST_INSTALL_TARGET_HOOKS += COREUTILS_CLEANUP