Commit 8cfa7aa9 authored by Eric Andersen's avatar Eric Andersen
Browse files

As noted by jacmet in bug 824:

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.
parent 5418a923
Loading
Loading
Loading
Loading
+9 −9
Original line number Diff line number Diff line
@@ -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

+11 −11
Original line number Diff line number Diff line
@@ -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)
+7 −7
Original line number Diff line number Diff line
@@ -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)
+9 −9
Original line number Diff line number Diff line
@@ -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)))
+9 −9
Original line number Diff line number Diff line
@@ -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

Loading