Skip to contentSkip to conversation

lz4: new package

PATCH New Gustavo Zacarias 2 participants 4 messages May 15, 2014 – May 18, 2014 SquashFS file system

lore
Share & tools
lore
#0 lore raw

PATCH 1/3 lz4: new package

---
 package/Config.in     |  1 +
 package/lz4/Config.in | 14 ++++++++++++++
 package/lz4/lz4.mk    | 41 +++++++++++++++++++++++++++++++++++++++++
 3 files changed, 56 insertions(+)
 create mode 100644 package/lz4/Config.in
 create mode 100644 package/lz4/lz4.mk
package/Config.in +1 -0
index e0f982e..7a3e5ef 100644
@@ -38,6 +38,7 @@ if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
 source "package/gzip/Config.in"
 endif
 source "package/infozip/Config.in"
+source "package/lz4/Config.in"
 source "package/lzip/Config.in"
 source "package/lzop/Config.in"
 source "package/xz/Config.in"
package/lz4/Config.in new file +14 -0
new file mode 100644
index 0000000..a855e31
@@ -0,0 +1,14 @@
+config BR2_PACKAGE_LZ4
+	bool "lz4"
+	depends on BR2_LARGEFILE
+	help
+	  LZ4 is a very fast lossless compression algorithm, providing
+	  compression speed at 400 MB/s per core, scalable with multi-cores
+	  CPU. It also features an extremely fast decoder, with speed
+	  in multiple GB/s per core, typically reaching RAM speed limits
+	  on multi-core systems.
+
+	  https://code.google.com/p/lz4/
+
+comment "lz4 needs a toolchain w/ largefile"
+	depends on !BR2_LARGEFILE
package/lz4/lz4.mk new file +41 -0

41 lines not on this page · raw message

Signature · 1 line
1.8.5.5
#1 lore raw

PATCH 2/3 squashfs: bump to version 4.3

Also add optional lz4 support.

---
 package/squashfs/Config.in                      |  6 ++++++
 package/squashfs/squashfs-4.2-no-gzip-fix.patch | 26 -------------------------
 package/squashfs/squashfs.mk                    | 13 ++++++++++---
 3 files changed, 16 insertions(+), 29 deletions(-)
 delete mode 100644 package/squashfs/squashfs-4.2-no-gzip-fix.patch
package/squashfs/Config.in +6 -0
index 385df1a..79ebf57 100644
@@ -18,6 +18,12 @@ config BR2_PACKAGE_SQUASHFS_GZIP
 	help
 	  Support GZIP compression algorithm
 
+config BR2_PACKAGE_SQUASHFS_LZ4
+	bool "lz4 support"
+	select BR2_PACKAGE_LZ4
+	help
+	  Support LZ4 compression algorithm
+
 config BR2_PACKAGE_SQUASHFS_LZMA
 	bool "lzma support"
 	select BR2_PACKAGE_XZ
package/squashfs/squashfs-4.2-no-gzip-fix.patch deleted +0 -26
deleted file mode 100644
index 4cb5f50..0000000
@@ -1,26 +0,0 @@
-[PATCH] squashfs-tools: unbreak builds without gzip support
-
-The initialization of gzip_comp_ops if gzip support is disabled is
-missing 2 null pointers, causing the id element to be initialized to 0
-rather than ZLIB_COMPRESSION, which breaks all the compressor functions
-as they loop until finding the correct element or id = 0.
-
-Signed-off-by: Peter Korsgaard <[email protected]>
----
- squashfs-tools/compressor.c |    3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-Index: squashfs4.2/squashfs-tools/compressor.c
-===================================================================
---- squashfs4.2.orig/squashfs-tools/compressor.c
-+++ squashfs4.2/squashfs-tools/compressor.c
-@@ -27,7 +27,8 @@
- 
- #ifndef GZIP_SUPPORT
- static struct compressor gzip_comp_ops =  {
--	NULL, NULL, NULL, NULL, NULL, NULL, ZLIB_COMPRESSION, "gzip", 0
-+	NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, ZLIB_COMPRESSION,
-+	"gzip", 0
- };
- #else
- extern struct compressor gzip_comp_ops;
package/squashfs/squashfs.mk +10 -3
index bff308c..aaf568c 100644
@@ -4,13 +4,20 @@
 #
 ################################################################################
 
-SQUASHFS_VERSION = 4.2
+SQUASHFS_VERSION = 4.3
 SQUASHFS_SOURCE = squashfs$(SQUASHFS_VERSION).tar.gz
 SQUASHFS_SITE = http://downloads.sourceforge.net/project/squashfs/squashfs/squashfs$(SQUASHFS_VERSION)
 
 # no libattr in BR
 SQUASHFS_MAKE_ARGS = XATTR_SUPPORT=0
 
+ifeq ($(BR2_PACKAGE_SQUASHFS_LZ4),y)
+SQUASHFS_DEPENDENCIES += lz4
+SQUASHFS_MAKE_ARGS += LZ4_SUPPORT=1 COMP_DEFAULT=lz4
+else
+SQUASHFS_MAKE_ARGS += LZ4_SUPPORT=0
+endif
+
 ifeq ($(BR2_PACKAGE_SQUASHFS_LZMA),y)
 SQUASHFS_DEPENDENCIES += xz
 SQUASHFS_MAKE_ARGS += LZMA_XZ_SUPPORT=1 COMP_DEFAULT=lzma
@@ -39,14 +46,14 @@ else
 SQUASHFS_MAKE_ARGS += GZIP_SUPPORT=0
 endif
 
-
-HOST_SQUASHFS_DEPENDENCIES = host-zlib host-lzo host-xz
+HOST_SQUASHFS_DEPENDENCIES = host-zlib host-lz4 host-lzo host-xz
 
 # no libattr/xz in BR
 HOST_SQUASHFS_MAKE_ARGS = \
 	XATTR_SUPPORT=0 \
 	XZ_SUPPORT=1    \
 	GZIP_SUPPORT=1  \
+	LZ4_SUPPORT=1	\
 	LZO_SUPPORT=1	\
 	LZMA_XZ_SUPPORT=1
 
Signature · 1 line
1.8.5.5
#2 lore raw

PATCH 3/3 fs/squashfs: add lz4 compression support

In reply to Gustavo Zacarias
---
 fs/squashfs/Config.in   | 3 +++
 fs/squashfs/squashfs.mk | 4 ++++
 2 files changed, 7 insertions(+)
fs/squashfs/Config.in +3 -0
index 817909d..ca9ddb2 100644
@@ -15,6 +15,9 @@ choice
 config BR2_TARGET_ROOTFS_SQUASHFS4_GZIP
 	bool "gzip"
 
+config BR2_TARGET_ROOTFS_SQUASHFS4_LZ4
+	bool "lz4"
+
 config BR2_TARGET_ROOTFS_SQUASHFS4_LZMA
 	bool "lzma"
 
fs/squashfs/squashfs.mk +4 -0
index eb5fc3e..446906f 100644
@@ -6,6 +6,9 @@
 
 ROOTFS_SQUASHFS_DEPENDENCIES = host-squashfs
 
+ifeq ($(BR2_TARGET_ROOTFS_SQUASHFS4_LZ4),y)
+ROOTFS_SQUASHFS_ARGS += -comp lz4
+else
 ifeq ($(BR2_TARGET_ROOTFS_SQUASHFS4_LZO),y)
 ROOTFS_SQUASHFS_ARGS += -comp lzo
 else
@@ -19,6 +22,7 @@ ROOTFS_SQUASHFS_ARGS += -comp gzip
 endif
 endif
 endif
+endif
 
 define ROOTFS_SQUASHFS_CMD
 	$(HOST_DIR)/usr/bin/mksquashfs $(TARGET_DIR) $@ -noappend \
Signature · 1 line
1.8.5.5