diff --git a/openwrt/target/Config.in b/openwrt/target/Config.in index 791741a08f..d2c35761de 100644 --- a/openwrt/target/Config.in +++ b/openwrt/target/Config.in @@ -2,4 +2,5 @@ choice prompt "Target Root Filesystem" source "target/jffs2/Config.in" source "target/squashfs/Config.in" + source "target/squashfs-lzma/Config.in" endchoice diff --git a/openwrt/target/squashfs-lzma/Config.in b/openwrt/target/squashfs-lzma/Config.in new file mode 100644 index 0000000000..cc46d102ad --- /dev/null +++ b/openwrt/target/squashfs-lzma/Config.in @@ -0,0 +1,5 @@ +config BR2_TARGET_ROOTFS_SQUASHFS_LZMA + bool "squashfs-lzma" + help + Build a squashfs-lzma root filesystem + diff --git a/openwrt/target/squashfs-lzma/Makefile.in b/openwrt/target/squashfs-lzma/Makefile.in new file mode 100644 index 0000000000..bb65c6d037 --- /dev/null +++ b/openwrt/target/squashfs-lzma/Makefile.in @@ -0,0 +1,4 @@ +ifeq ($(strip $(BR2_TARGET_ROOTFS_SQUASHFS_LZMA)),y) +TARGETS+=squashfslzmaroot openwrt-image +ROOTFS=squashfslzma +endif diff --git a/openwrt/target/squashfs-lzma/kernel-patch/linux-squashfs-lzma.bz2 b/openwrt/target/squashfs-lzma/kernel-patch/linux-squashfs-lzma.bz2 new file mode 100644 index 0000000000..8e19292c1e Binary files /dev/null and b/openwrt/target/squashfs-lzma/kernel-patch/linux-squashfs-lzma.bz2 differ diff --git a/openwrt/target/squashfs-lzma/squashfslzmaroot.mk b/openwrt/target/squashfs-lzma/squashfslzmaroot.mk new file mode 100644 index 0000000000..6f41f93155 --- /dev/null +++ b/openwrt/target/squashfs-lzma/squashfslzmaroot.mk @@ -0,0 +1,50 @@ +############################################################# +# +# squashfs target +# +############################################################# + +SQUASHFSLZMA_DIR=$(BUILD_DIR)/squashfs2.1-r2-lzma +SQUASHFSLZMA_SOURCE=squashfs2.1-r2-lzma.tar.gz +SQUASHFSLZMA_SITE=http://openwrt.openbsd-geek.de + +$(DL_DIR)/$(SQUASHFSLZMA_SOURCE): + $(WGET) -P $(DL_DIR) $(SQUASHFSLZMA_SITE)/$(SQUASHFSLZMA_SOURCE) + +$(SQUASHFSLZMA_DIR)/.unpacked: $(DL_DIR)/$(SQUASHFSLZMA_SOURCE) + zcat $(DL_DIR)/$(SQUASHFSLZMA_SOURCE) | tar -C $(BUILD_DIR) -xvf - + touch $(SQUASHFSLZMA_DIR)/.unpacked + +$(SQUASHFSLZMA_DIR)/squashfs-tools/mksquashfs: $(SQUASHFSLZMA_DIR)/.unpacked + $(MAKE) -C $(SQUASHFSLZMA_DIR)/lzma/SRC/7zip/Compress/LZMA_Lib + $(MAKE) -C $(SQUASHFSLZMA_DIR)/squashfs-tools mksquashfs-lzma + +squashfslzma: $(SQUASHFSLZMA_DIR)/squashfs-tools/mksquashfs + +squashfslzma-source: $(DL_DIR)/$(SQUASHFSLZMA_SOURCE) + +squashfslzma-clean: + -$(MAKE) -C $(SQUASHFSLZMA_DIR)/squashfs-tools clean + +squashfslzma-dirclean: + rm -rf $(SQUASHFSLZMA_DIR) + + +############################################################# +# +# Build the squashfs root filesystem image +# +############################################################# + +squashfslzmaroot: squashfslzma + @rm -rf $(TARGET_DIR)/usr/man + @rm -rf $(TARGET_DIR)/usr/info + $(SQUASHFSLZMA_DIR)/squashfs-tools/mksquashfs-lzma $(TARGET_DIR) $(IMAGE).squashfslzma -noappend -root-owned -le + +squashfslzmaroot-source: squashfslzma-source + +squashfslzmaroot-clean: + -$(MAKE) -C $(SQUASHFSLZMA_DIR) clean + +squashfslzmaroot-dirclean: + rm -rf $(SQUASHFSLZMA_DIR)