From edbbf145d5150b7efaa153367d5942f05af2ba9f Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@openwrt.org>
Date: Fri, 28 Dec 2007 15:46:01 +0000
Subject: [PATCH] add cpio.gz support (patch from #2595)

SVN-Revision: 9986
---
 Config.in        | 7 +++++++
 include/image.mk | 8 ++++++++
 2 files changed, 15 insertions(+)

diff --git a/Config.in b/Config.in
index 606cb4a0e9..6f2cdcc2d0 100644
--- a/Config.in
+++ b/Config.in
@@ -41,6 +41,13 @@ menu "Target Images"
 		help
 		  Build a compressed tar archive of the the root filesystem
 		  
+	config TARGET_ROOTFS_CPIOGZ
+		bool "cpiogz"
+		default y if USES_TGZ
+		depends !TARGET_ROOTFS_INITRAMFS
+		help
+		  Build a compressed cpio archive of the the root filesystem
+		  
 	config TARGET_ROOTFS_EXT2FS
 		bool "ext2"
 		default y if USES_EXT2
diff --git a/include/image.mk b/include/image.mk
index 47f6714d13..d7e4ccd36b 100644
--- a/include/image.mk
+++ b/include/image.mk
@@ -64,6 +64,12 @@ ifneq ($(CONFIG_TARGET_ROOTFS_INITRAMFS),y)
 		$(TAR) -zcf $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-rootfs.tgz --owner=root --group=root -C $(TARGET_DIR)/ .
     endef
   endif
+
+  ifeq ($(CONFIG_TARGET_ROOTFS_CPIOGZ),y)
+    define Image/mkfs/cpiogz
+		( cd $(BUILD_DIR)/root; find . | cpio -o -H newc | gzip -9 >$(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-rootfs.cpio.gz )
+    endef
+  endif
 else
   define Image/BuildKernel
 	cp $(KDIR)/vmlinux.elf $(BIN_DIR)/openwrt-$(BOARD)-$(KERNEL)-vmlinux.elf
@@ -118,6 +124,7 @@ ifneq ($(IB),1)
 	$(call Image/mkfs/jffs2)
 	$(call Image/mkfs/squashfs)
 	$(call Image/mkfs/tgz)
+	$(call Image/mkfs/cpiogz)
 	$(call Image/mkfs/ext2)
 	$(call Image/mkfs/iso)
 else
@@ -126,6 +133,7 @@ else
 	$(call Image/mkfs/jffs2)
 	$(call Image/mkfs/squashfs)
 	$(call Image/mkfs/tgz)
+	$(call Image/mkfs/cpiogz)
 	$(call Image/mkfs/ext2)
 	$(call Image/mkfs/iso)
 endif
-- 
GitLab