3754c51560
The common filesystem infrastructure in fs/common.mk uses a smart combination of makedevs and fakeroot to create the device files in the target filesystem images without being root. This technique is applied to all filesystem formats that rely on this common infrastructure, and JFFS2 is one of them. Therefore, using the -D option of mkfs.jffs2, which allows to specify a device table, is redundant with the usage of makedevs. And it is worst than redundant: for some reason, -D does not create all device files with the correct major and minor numbers, as reported in bug #1771. For coherence, we just remove the usage of mkfs.jffs2 -D option, and rely on makedevs/fakeroot to create the device files. This commit fixes bug #1771. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
57 lines
1.3 KiB
Makefile
57 lines
1.3 KiB
Makefile
#############################################################
|
|
#
|
|
# Build the jffs2 root filesystem image
|
|
#
|
|
#############################################################
|
|
|
|
JFFS2_OPTS := -e $(BR2_TARGET_ROOTFS_JFFS2_EBSIZE)
|
|
SUMTOOL_OPTS := $(JFFS2_OPTS)
|
|
|
|
ifeq ($(BR2_TARGET_ROOTFS_JFFS2_PAD),y)
|
|
ifneq ($(strip $(BR2_TARGET_ROOTFS_JFFS2_PADSIZE)),0x0)
|
|
JFFS2_OPTS += --pad=$(strip $(BR2_TARGET_ROOTFS_JFFS2_PADSIZE))
|
|
else
|
|
JFFS2_OPTS += -p
|
|
endif
|
|
SUMTOOL_OPTS += -p
|
|
endif
|
|
|
|
ifeq ($(BR2_TARGET_ROOTFS_JFFS2_LE),y)
|
|
JFFS2_OPTS += -l
|
|
SUMTOOL_OPTS += -l
|
|
endif
|
|
|
|
ifeq ($(BR2_TARGET_ROOTFS_JFFS2_BE),y)
|
|
JFFS2_OPTS += -b
|
|
SUMTOOL_OPTS += -b
|
|
endif
|
|
|
|
JFFS2_OPTS += -s $(BR2_TARGET_ROOTFS_JFFS2_PAGESIZE)
|
|
ifeq ($(BR2_TARGET_ROOTFS_JFFS2_NOCLEANMARKER),y)
|
|
JFFS2_OPTS += -n
|
|
SUMTOOL_OPTS += -n
|
|
endif
|
|
|
|
ROOTFS_JFFS2_DEPENDENCIES = host-mtd
|
|
|
|
ifneq ($(BR2_TARGET_ROOTFS_JFFS2_SUMMARY),)
|
|
define ROOTFS_JFFS2_CMD
|
|
$(MKFS_JFFS2) $(JFFS2_OPTS) -d $(TARGET_DIR) -o $$@.nosummary && \
|
|
$(SUMTOOL) $(SUMTOOL_OPTS) -i $$@.nosummary -o $$@ && \
|
|
rm $$@.nosummary
|
|
endef
|
|
else
|
|
define ROOTFS_JFFS2_CMD
|
|
$(MKFS_JFFS2) $(JFFS2_OPTS) -d $(TARGET_DIR) -o $$@
|
|
endef
|
|
endif
|
|
|
|
define JFFS2_GEN_SREC
|
|
$(TARGET_CROSS)objcopy -I binary -O srec --adjust-vma 0xa1000000 $$@ $$@.srec
|
|
endef
|
|
|
|
ifeq ($(BR2_JFFS2_TARGET_SREC),y)
|
|
ROOTFS_JFFS2_POST_GEN_HOOKS += JFFS2_GEN_SREC
|
|
endif
|
|
|
|
$(eval $(call ROOTFS_TARGET,jffs2)) |