浏览代码

allow users to generate tarballs of the target filesystem

Mike Frysinger 20 年之前
父节点
当前提交
cd0a84da7e
共有 4 个文件被更改,包括 43 次插入3 次删除
  1. 1 3
      target/Config.in
  2. 14 0
      target/tar/Config.in
  3. 3 0
      target/tar/Makefile.in
  4. 25 0
      target/tar/tarroot.mk

+ 1 - 3
target/Config.in

@@ -1,11 +1,9 @@
-#
-
 menu "Target Options"
 
 source "target/cramfs/Config.in"
 source "target/ext2/Config.in"
 source "target/jffs2/Config.in"
 source "target/squashfs/Config.in"
+source "target/tar/Config.in"
 
 endmenu
-

+ 14 - 0
target/tar/Config.in

@@ -0,0 +1,14 @@
+menuconfig BR2_TARGET_ROOTFS_TAR
+	bool "tar the root filesystem for the target device"
+	default n
+	help
+	  Build a tar archive of the root filesystem
+
+config BR2_TARGET_ROOTFS_TAR_OPTIONS
+	string "random options to pass to tar"
+	depends on BR2_TARGET_ROOTFS_TAR
+	default ""
+	help
+	  Common options:
+	   j - compress with bzip2
+	   z - compress with gzip

+ 3 - 0
target/tar/Makefile.in

@@ -0,0 +1,3 @@
+ifeq ($(strip $(BR2_TARGET_ROOTFS_TAR)),y)
+TARGETS+=tarroot
+endif

+ 25 - 0
target/tar/tarroot.mk

@@ -0,0 +1,25 @@
+#############################################################
+#
+# tar to archive target filesystem
+#
+#############################################################
+
+TAR_OPTS := $(strip $(BR2_TARGET_ROOTFS_TAR_OPTIONS))
+
+TAR_TARGET := $(IMAGE).tar
+
+$(TAR_TARGET):
+	-@find $(TARGET_DIR) -type f -perm +111 | xargs $(STRIP) 2>/dev/null || true;
+	@rm -rf $(TARGET_DIR)/usr/man
+	@rm -rf $(TARGET_DIR)/usr/share/man
+	@rm -rf $(TARGET_DIR)/usr/info
+	tar -c$(TAR_OPTS)f $(TAR_TARGET) -C $(TARGET_DIR) .
+		
+tarroot: $(TAR_TARGET)
+	@ls -l $(TAR_TARGET)
+
+tarroot-source:
+
+tarroot-clean:
+
+tarroot-dirclean: