- update the ext2 rootfs compression mechanism to allow for gzip, bzip2, lzma or none
This commit is contained in:
parent
c07e327bab
commit
787635669b
|
@ -29,17 +29,40 @@ config BR2_TARGET_ROOTFS_EXT2_OUTPUT
|
|||
depends on BR2_TARGET_ROOTFS_EXT2
|
||||
default "$(IMAGE).ext2"
|
||||
|
||||
config BR2_TARGET_ROOTFS_EXT2_GZ
|
||||
bool "gzip the output file"
|
||||
choice
|
||||
prompt "Compression method"
|
||||
default BR2_TARGET_ROOTFS_EXT2_NONE
|
||||
depends on BR2_TARGET_ROOTFS_EXT2
|
||||
default n
|
||||
help
|
||||
Select compressor for ext2 filesystem of the root filesystem
|
||||
|
||||
config BR2_TARGET_ROOTFS_EXT2_NONE
|
||||
bool "no compression"
|
||||
help
|
||||
Do not compress the ext2 filesystem.
|
||||
|
||||
config BR2_TARGET_ROOTFS_EXT2_GZIP
|
||||
bool "gzip"
|
||||
help
|
||||
Do compress the ext2 filesystem with gzip.
|
||||
Note that you either have to have gzip installed on your host
|
||||
or select to build a gzip for your host. See the packages submenu.
|
||||
|
||||
config BR2_TARGET_ROOTFS_EXT2_BZIP2
|
||||
bool "bzip2"
|
||||
help
|
||||
Do compress the ext2 filesystem with bzip2.
|
||||
Note that you either have to have bzip2 installed on your host
|
||||
or select to build a bzip2 for your host. See the packages submenu.
|
||||
|
||||
config BR2_TARGET_ROOTFS_EXT2_LZMA
|
||||
bool "lzma the output file"
|
||||
depends on BR2_TARGET_ROOTFS_EXT2
|
||||
select BR2_PACKAGE_LZMA_HOST
|
||||
default n
|
||||
bool "lzma"
|
||||
help
|
||||
Do compress the ext2 filesystem with lzma.
|
||||
Note that you either have to have lzma installed on your host
|
||||
or select to build a lzma for your host. See the packages submenu.
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_TARGET_ROOTFS_EXT2_COPYTO
|
||||
string "also copy the image to..."
|
||||
|
|
|
@ -59,16 +59,27 @@ EXT2_OPTS += -r $(strip $(BR2_TARGET_ROOTFS_EXT2_RESBLKS))
|
|||
endif
|
||||
|
||||
EXT2_BASE := $(subst ",,$(BR2_TARGET_ROOTFS_EXT2_OUTPUT))
|
||||
# " stupid syntax highlighting does not like unmatched quote from above line
|
||||
#")
|
||||
|
||||
ifeq ($(strip $(BR2_TARGET_ROOTFS_EXT2_GZ)),y)
|
||||
EXT2_TARGET := $(EXT2_BASE).gz
|
||||
else
|
||||
EXT2_TARGET := $(EXT2_BASE)
|
||||
endif
|
||||
|
||||
ifeq ($(strip $(BR2_TARGET_ROOTFS_EXT2_LZMA)),y)
|
||||
EXT2_TARGET := $(EXT2_BASE).lzma
|
||||
EXT2_ROOTFS_COMPRESSOR:=
|
||||
EXT2_ROOTFS_COMPRESSOR_EXT:=
|
||||
EXT2_ROOTFS_COMPRESSOR_PREREQ:=
|
||||
ifeq ($(BR2_TARGET_ROOTFS_EXT2_GZIP),y)
|
||||
EXT2_ROOTFS_COMPRESSOR:=gzip -9 -c
|
||||
EXT2_ROOTFS_COMPRESSOR_EXT:=gz
|
||||
#EXT2_ROOTFS_COMPRESSOR_PREREQ:= gzip-host
|
||||
endif
|
||||
ifeq ($(BR2_TARGET_ROOTFS_EXT2_BZIP2),y)
|
||||
EXT2_ROOTFS_COMPRESSOR:=bzip2 -9 -c
|
||||
EXT2_ROOTFS_COMPRESSOR_EXT:=bz2
|
||||
#EXT2_ROOTFS_COMPRESSOR_PREREQ:= bzip2-host
|
||||
endif
|
||||
ifeq ($(BR2_TARGET_ROOTFS_EXT2_LZMA),y)
|
||||
EXT2_ROOTFS_COMPRESSOR:=lzma -9 -c
|
||||
EXT2_ROOTFS_COMPRESSOR_EXT:=lzma
|
||||
EXT2_ROOTFS_COMPRESSOR_PREREQ:= lzma-host
|
||||
endif
|
||||
|
||||
$(EXT2_BASE): host-fakeroot makedevs genext2fs
|
||||
|
@ -104,14 +115,13 @@ endif
|
|||
$(STAGING_DIR)/usr/bin/fakeroot -- $(STAGING_DIR)/_fakeroot.$(notdir $(EXT2_TARGET))
|
||||
-@rm -f $(STAGING_DIR)/_fakeroot.$(notdir $(EXT2_TARGET))
|
||||
|
||||
$(EXT2_BASE).gz: $(EXT2_BASE)
|
||||
@gzip --best -fv $(EXT2_BASE)
|
||||
|
||||
$(EXT2_BASE).lzma: lzma-host $(EXT2_BASE)
|
||||
@$(STAGING_DIR)/bin/lzma -vc $(EXT2_BASE) > $(EXT2_BASE).lzma
|
||||
ifneq ($(EXT2_ROOTFS_COMPRESSOR),)
|
||||
$(EXT2_TARGET).(EXT2_ROOTFS_COMPRESSOR_EXT): $(EXT2_ROOTFS_COMPRESSOR_PREREQ) $(EXT2_BASE)
|
||||
$(EXT2_ROOTFS_COMPRESSOR) $(EXT2_TARGET) > $(EXT2_TARGET).$(EXT2_ROOTFS_COMPRESSOR_EXT)
|
||||
endif
|
||||
|
||||
EXT2_COPYTO := $(strip $(subst ",,$(BR2_TARGET_ROOTFS_EXT2_COPYTO)))
|
||||
# " stupid syntax highlighting does not like unmatched quote from above line
|
||||
# "))
|
||||
|
||||
ext2root: $(EXT2_TARGET)
|
||||
@ls -l $(EXT2_TARGET)
|
||||
|
|
Loading…
Reference in a new issue