As noted by jacmet in bug 824:
authorEric Andersen <andersen@codepoet.org>
Mon, 10 Apr 2006 17:48:53 +0000 (17:48 -0000)
committerEric Andersen <andersen@codepoet.org>
Mon, 10 Apr 2006 17:48:53 +0000 (17:48 -0000)
svn 14777 seems to have broken cramfs/squashfs/tarroot.

The problem is that $(IMAGE) is the absolute path of the image including
directories, so the build tries to access
$(STAGING_DIR)/_fakeroot.</full/path/to/buildroot/directory> which doesn't
exist.

The fix is to define CRAMFS/SQUASHFS/TAR_TARGET as $(notdir
$(IMAGE).<extension>) instead.

target/cramfs/cramfs.mk
target/ext2/ext2root.mk
target/iso9660/iso9660.mk
target/jffs2/jffs2root.mk
target/squashfs/squashfsroot.mk
target/tar/tarroot.mk

index b0ab28f23407cd067472c1ff4ecdfea351e5b983..bc73b9371b2ead9f31066444b8085a75883c1bca 100644 (file)
@@ -67,25 +67,25 @@ cramfsroot: host-fakeroot makedevs cramfs
        @rm -rf $(TARGET_DIR)/usr/info
        -/sbin/ldconfig -r $(TARGET_DIR) 2>/dev/null
        # Use fakeroot to pretend all target binaries are owned by root
-       rm -f $(STAGING_DIR)/_fakeroot.$(CRAMFS_TARGET)
+       rm -f $(STAGING_DIR)/_fakeroot.$(notdir $CRAMFS_TARGET)
        touch $(STAGING_DIR)/.fakeroot.00000
-       cat $(STAGING_DIR)/.fakeroot* > $(STAGING_DIR)/_fakeroot.$(CRAMFS_TARGET)
+       cat $(STAGING_DIR)/.fakeroot* > $(STAGING_DIR)/_fakeroot.$(notdir $CRAMFS_TARGET)
        -$(STAGING_DIR)/usr/bin/fakeroot \
-               -i $(STAGING_DIR)/_fakeroot.$(CRAMFS_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(CRAMFS_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $CRAMFS_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $CRAMFS_TARGET) -- \
                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.$(CRAMFS_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(CRAMFS_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $CRAMFS_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $CRAMFS_TARGET) -- \
                $(STAGING_DIR)/bin/makedevs -d $(TARGET_DEVICE_TABLE) $(TARGET_DIR)
        # Use fakeroot so mkcramfs believes the previous fakery
        $(STAGING_DIR)/usr/bin/fakeroot \
-               -i $(STAGING_DIR)/_fakeroot.$(CRAMFS_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(CRAMFS_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $CRAMFS_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $CRAMFS_TARGET) -- \
            $(CRAMFS_DIR)/mkcramfs -q $(CRAMFS_ENDIANNESS) \
                $(TARGET_DIR) $(CRAMFS_TARGET)
-       -@rm -f $(STAGING_DIR)/_fakeroot.$(CRAMFS_TARGET)
+       -@rm -f $(STAGING_DIR)/_fakeroot.$(notdir $CRAMFS_TARGET)
 
 cramfsroot-source: cramfs-source
 
index bf2ae835393ae26f705739d5f6ed509135c091f0..75dce47759adaa92b1a1bc1170de11ea78b4b273 100644 (file)
@@ -72,17 +72,17 @@ $(EXT2_BASE): host-fakeroot makedevs genext2fs
        @rm -rf $(TARGET_DIR)/usr/info
        -/sbin/ldconfig -r $(TARGET_DIR) 2>/dev/null
        # Use fakeroot to pretend all target binaries are owned by root
-       rm -f $(STAGING_DIR)/_fakeroot.$(EXT2_TARGET)
+       rm -f $(STAGING_DIR)/_fakeroot.$(notdir $EXT2_TARGET)
        touch $(STAGING_DIR)/.fakeroot.00000
-       cat $(STAGING_DIR)/.fakeroot* > $(STAGING_DIR)/_fakeroot.$(EXT2_TARGET)
+       cat $(STAGING_DIR)/.fakeroot* > $(STAGING_DIR)/_fakeroot.$(notdir $EXT2_TARGET)
        -$(STAGING_DIR)/usr/bin/fakeroot \
-               -i $(STAGING_DIR)/_fakeroot.$(EXT2_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(EXT2_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $EXT2_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $EXT2_TARGET) -- \
                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.$(EXT2_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(EXT2_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $EXT2_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $EXT2_TARGET) -- \
                $(STAGING_DIR)/bin/makedevs -d $(TARGET_DEVICE_TABLE) $(TARGET_DIR)
        # Use fakeroot so genext2fs believes the previous fakery
 ifeq ($(strip $(BR2_TARGET_ROOTFS_EXT2_BLOCKS)),0)
@@ -93,8 +93,8 @@ ifeq ($(strip $(BR2_TARGET_ROOTFS_EXT2_BLOCKS)),0)
        GENEXT2_INODES=`expr $$GENEXT2_ADDTOINODESIZE + 400`; \
        set -x; \
        $(STAGING_DIR)/usr/bin/fakeroot \
-               -i $(STAGING_DIR)/_fakeroot.$(EXT2_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(EXT2_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $EXT2_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $EXT2_TARGET) -- \
            $(GENEXT2_DIR)/genext2fs \
                -b $$GENEXT2_SIZE \
                -i $$GENEXT2_INODES \
@@ -102,14 +102,14 @@ ifeq ($(strip $(BR2_TARGET_ROOTFS_EXT2_BLOCKS)),0)
                $(EXT2_OPTS) $(EXT2_BASE)
 else
        $(STAGING_DIR)/usr/bin/fakeroot \
-               -i $(STAGING_DIR)/_fakeroot.$(EXT2_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(EXT2_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $EXT2_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $EXT2_TARGET) -- \
            $(GENEXT2_DIR)/genext2fs \
                -d $(TARGET_DIR) \
                $(EXT2_OPTS) \
                $(EXT2_BASE)
 endif
-       -@rm -f $(STAGING_DIR)/_fakeroot.$(EXT2_TARGET)
+       -@rm -f $(STAGING_DIR)/_fakeroot.$(notdir $EXT2_TARGET)
 
 $(EXT2_BASE).gz: $(EXT2_BASE)
        @gzip --best -fv $(EXT2_BASE)
index df8950413bb385e22d56bab62cfe958c8e5e2f30..436214130e8e016b798895ec15997452f8a926d1 100644 (file)
@@ -60,23 +60,23 @@ $(ISO9660_TARGET): host-fakeroot $(EXT2_TARGET) grub mkisofs
        cp $(LINUX_KERNEL) $(ISO9660_TARGET_DIR)/kernel
        cp $(EXT2_TARGET) $(ISO9660_TARGET_DIR)/initrd
        # Use fakeroot to pretend all target binaries are owned by root
-       rm -f $(STAGING_DIR)/_fakeroot.$(ISO9660_TARGET)
+       rm -f $(STAGING_DIR)/_fakeroot.$(notdir $ISO9660_TARGET)
        touch $(STAGING_DIR)/.fakeroot.00000
-       cat $(STAGING_DIR)/.fakeroot* > $(STAGING_DIR)/_fakeroot.$(ISO9660_TARGET)
+       cat $(STAGING_DIR)/.fakeroot* > $(STAGING_DIR)/_fakeroot.$(notdir $ISO9660_TARGET)
        -$(STAGING_DIR)/usr/bin/fakeroot \
-               -i $(STAGING_DIR)/_fakeroot.$(ISO9660_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(ISO9660_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $ISO9660_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $ISO9660_TARGET) -- \
                chown -R root:root $(ISO9660_TARGET_DIR)
        # Use fakeroot so mkisofs believes the previous fakery
        $(STAGING_DIR)/usr/bin/fakeroot \
-               -i $(STAGING_DIR)/_fakeroot.$(ISO9660_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(ISO9660_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $ISO9660_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $ISO9660_TARGET) -- \
            $(MKISOFS_TARGET) \
                -R -b boot/grub/stage2_eltorito -no-emul-boot \
                -boot-load-size 4 -boot-info-table \
                -o $(ISO9660_TARGET) \
                $(ISO9660_TARGET_DIR)
-       -@rm -f $(STAGING_DIR)/_fakeroot.$(ISO9660_TARGET)
+       -@rm -f $(STAGING_DIR)/_fakeroot.$(notdir $ISO9660_TARGET)
 
 iso9660root: $(ISO9660_TARGET)
        echo $(ISO9660_TARGET)
index d50bc88db2253df0e66fbfb76780d03274cb69a8..cdcbce8ea4a708f31185b72e785269bb12235e75 100644 (file)
@@ -45,25 +45,25 @@ $(JFFS2_TARGET): host-fakeroot makedevs mtd-host
        @rm -rf $(TARGET_DIR)/usr/info
        -/sbin/ldconfig -r $(TARGET_DIR) 2>/dev/null
        # Use fakeroot to pretend all target binaries are owned by root
-       rm -f $(STAGING_DIR)/_fakeroot.$(JFFS2_TARGET)
+       rm -f $(STAGING_DIR)/_fakeroot.$(notdir $JFFS2_TARGET)
        touch $(STAGING_DIR)/.fakeroot.00000
-       cat $(STAGING_DIR)/.fakeroot* > $(STAGING_DIR)/_fakeroot.$(JFFS2_TARGET)
+       cat $(STAGING_DIR)/.fakeroot* > $(STAGING_DIR)/_fakeroot.$(notdir $JFFS2_TARGET)
        -$(STAGING_DIR)/usr/bin/fakeroot \
-               -i $(STAGING_DIR)/_fakeroot.$(JFFS2_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(JFFS2_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $JFFS2_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $JFFS2_TARGET) -- \
                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.$(JFFS2_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(JFFS2_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $JFFS2_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $JFFS2_TARGET) -- \
                $(STAGING_DIR)/bin/makedevs -d $(TARGET_DEVICE_TABLE) $(TARGET_DIR)
        # Use fakeroot so mkfs.jffs2 believes the previous fakery
        $(STAGING_DIR)/usr/bin/fakeroot \
-               -i $(STAGING_DIR)/_fakeroot.$(JFFS2_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(JFFS2_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $JFFS2_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $JFFS2_TARGET) -- \
            $(MKFS_JFFS2) $(JFFS2_OPTS) \
                        -d $(BUILD_DIR)/root -o $(JFFS2_TARGET)
-       -@rm -f $(STAGING_DIR)/_fakeroot.$(JFFS2_TARGET)
+       -@rm -f $(STAGING_DIR)/_fakeroot.$(notdir $JFFS2_TARGET)
        @ls -l $(JFFS2_TARGET)
 
 JFFS2_COPYTO := $(strip $(subst ",,$(BR2_TARGET_ROOTFS_JFFS2_COPYTO)))
index f41c9660bdd227ff2b73d0f40aa73015f6855cb2..baed90289c7b032a9727160ee9a4f0c7995dbff7 100644 (file)
@@ -61,27 +61,27 @@ squashfsroot: host-fakeroot makedevs squashfs
        @rm -rf $(TARGET_DIR)/usr/info
        -/sbin/ldconfig -r $(TARGET_DIR) 2>/dev/null
        # Use fakeroot to pretend all target binaries are owned by root
-       rm -f $(STAGING_DIR)/_fakeroot.$(SQUASHFS_TARGET)
+       rm -f $(STAGING_DIR)/_fakeroot.$(notdir $SQUASHFS_TARGET)
        touch $(STAGING_DIR)/.fakeroot.00000
-       cat $(STAGING_DIR)/.fakeroot* > $(STAGING_DIR)/_fakeroot.$(SQUASHFS_TARGET)
+       cat $(STAGING_DIR)/.fakeroot* > $(STAGING_DIR)/_fakeroot.$(notdir $SQUASHFS_TARGET)
        -$(STAGING_DIR)/usr/bin/fakeroot \
-               -i $(STAGING_DIR)/_fakeroot.$(SQUASHFS_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(SQUASHFS_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $SQUASHFS_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $SQUASHFS_TARGET) -- \
                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.$(SQUASHFS_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(SQUASHFS_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $SQUASHFS_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $SQUASHFS_TARGET) -- \
                $(STAGING_DIR)/bin/makedevs -d $(TARGET_DEVICE_TABLE) $(TARGET_DIR)
        # Use fakeroot so mksquashfs believes the previous fakery
        $(STAGING_DIR)/usr/bin/fakeroot \
-               -i $(STAGING_DIR)/_fakeroot.$(SQUASHFS_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(SQUASHFS_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $SQUASHFS_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $SQUASHFS_TARGET) -- \
            $(SQUASHFS_DIR)/squashfs-tools/mksquashfs \
                    $(TARGET_DIR) \
                    $(SQUASHFS_TARGET) \
                    -noappend $(SQUASHFS_ENDIANNESS)
-       -@rm -f $(STAGING_DIR)/_fakeroot.$(SQUASHFS_TARGET)
+       -@rm -f $(STAGING_DIR)/_fakeroot.$(notdir $SQUASHFS_TARGET)
 
 squashfsroot-source: squashfs-source
 
index e68ece75f724e1c6d0c19713799c1e7915554cff..6215134d97e72ab7f249632fd2782ca7bbfe1c86 100644 (file)
@@ -13,24 +13,24 @@ tarroot: host-fakeroot makedevs
        @rm -rf $(TARGET_DIR)/usr/info
        -/sbin/ldconfig -r $(TARGET_DIR) 2>/dev/null
        # Use fakeroot to pretend all target binaries are owned by root
-       rm -f $(STAGING_DIR)/_fakeroot.$(TAR_TARGET)
+       rm -f $(STAGING_DIR)/_fakeroot.$(notdir $TAR_TARGET)
        touch $(STAGING_DIR)/.fakeroot.00000
-       cat $(STAGING_DIR)/.fakeroot* > $(STAGING_DIR)/_fakeroot.$(TAR_TARGET)
+       cat $(STAGING_DIR)/.fakeroot* > $(STAGING_DIR)/_fakeroot.$(notdir $TAR_TARGET)
        -$(STAGING_DIR)/usr/bin/fakeroot \
-               -i $(STAGING_DIR)/_fakeroot.$(TAR_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(TAR_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $TAR_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $TAR_TARGET) -- \
                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.$(TAR_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(TAR_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $TAR_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $TAR_TARGET) -- \
                $(STAGING_DIR)/bin/makedevs -d $(TARGET_DEVICE_TABLE) $(TARGET_DIR)
        # Use fakeroot so tar believes the previous fakery
        $(STAGING_DIR)/usr/bin/fakeroot \
-               -i $(STAGING_DIR)/_fakeroot.$(TAR_TARGET) \
-               -s $(STAGING_DIR)/_fakeroot.$(TAR_TARGET) -- \
+               -i $(STAGING_DIR)/_fakeroot.$(notdir $TAR_TARGET) \
+               -s $(STAGING_DIR)/_fakeroot.$(notdir $TAR_TARGET) -- \
            tar -c$(TAR_OPTS)f $(TAR_TARGET) -C $(TARGET_DIR) .
-       -@rm -f $(STAGING_DIR)/_fakeroot.$(TAR_TARGET)
+       -@rm -f $(STAGING_DIR)/_fakeroot.$(notdir $TAR_TARGET)
 
 tarroot-source: