Finish implementing fakeroot handling so when we tar up the

rootfs, the tarball properly inherits device table settings
and device nodes.
This commit is contained in:
Eric Andersen 2005-06-24 07:31:17 +00:00
parent eb0ee4509d
commit 9540549182

View file

@ -6,17 +6,30 @@
TAR_OPTS := $(strip $(BR2_TARGET_ROOTFS_TAR_OPTIONS))
TAR_TARGET := $(IMAGE).tar
$(TAR_TARGET):
tarroot: host-fakeroot makedevs
-@find $(TARGET_DIR) -type f -perm +111 | xargs $(STRIP) 2>/dev/null || true;
@rm -rf $(TARGET_DIR)/usr/man
@rm -rf $(TARGET_DIR)/usr/share/man
@rm -rf $(TARGET_DIR)/usr/info
tar -c$(TAR_OPTS)f $(TAR_TARGET) -C $(TARGET_DIR) .
tarroot: $(TAR_TARGET)
@ls -l $(TAR_TARGET)
# Use fakeroot to munge permissions and do root-like things
rm -f $(STAGING_DIR)/fakeroot.env
touch $(STAGING_DIR)/fakeroot.env
# Use fakeroot to pretend all target binaries are owned by root
$(STAGING_DIR)/usr/bin/fakeroot \
-i $(STAGING_DIR)/fakeroot.env \
-s $(STAGING_DIR)/fakeroot.env -- \
chown -R root:root $(TARGET_DIR)
# Use fakeroot to pretend to create all needed device nodes
$(STAGING_DIR)/usr/bin/fakeroot \
-i $(STAGING_DIR)/fakeroot.env \
-s $(STAGING_DIR)/fakeroot.env -- \
$(STAGING_DIR)/bin/makedevs \
-r $(TARGET_DIR) \
-d target/generic/device_table.txt
# Use fakeroot to fake out mksquashfs per the previous fakery
$(STAGING_DIR)/usr/bin/fakeroot \
-i $(STAGING_DIR)/fakeroot.env \
-s $(STAGING_DIR)/fakeroot.env -- \
tar -c$(TAR_OPTS)f $(IMAGE).tar -C $(TARGET_DIR) .
tarroot-source: