package/lrzip: new package
authorSam Lancia <sam@gpsm.co.uk>
Sun, 8 Sep 2019 08:03:16 +0000 (09:03 +0100)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Sun, 15 Sep 2019 20:30:29 +0000 (22:30 +0200)
lrzip is a compression utility that excels at compressing
large files (usually > 10-50 MB)

Signed-off-by: Sam Lancia <sam@gpsm.co.uk>
[Thomas: license is GPL-2.0+, not GPL-2.0]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
DEVELOPERS
package/Config.in
package/lrzip/0001-missing-stdarg.patch [new file with mode: 0644]
package/lrzip/Config.in [new file with mode: 0644]
package/lrzip/lrzip.hash [new file with mode: 0644]
package/lrzip/lrzip.mk [new file with mode: 0644]

index 9d972f5b40894bc439c84e51203574b7e0d28d1e..f2704d8f1a03d102518edc103e358c05c3b56578 100644 (file)
@@ -2031,6 +2031,9 @@ N:        Sam Bobroff <sam.bobroff@au1.ibm.com>
 F:     arch/Config.in.powerpc
 F:     package/librtas/
 
+N:     Sam Lancia <sam@gpsm.co.uk>
+F:     package/lrzip/
+
 N:     Samuel Martin <s.martin49@gmail.com>
 F:     package/armadillo/
 F:     package/canfestival/
index 5abeb42c8c700b986f473864b212b0196cc3badb..6423dc5d80efdfb53135e539c4e8fee305fbbcec 100644 (file)
@@ -68,6 +68,7 @@ menu "Compressors and decompressors"
        source "package/brotli/Config.in"
        source "package/bzip2/Config.in"
        source "package/gzip/Config.in"
+       source "package/lrzip/Config.in"
        source "package/lz4/Config.in"
        source "package/lzip/Config.in"
        source "package/lzop/Config.in"
diff --git a/package/lrzip/0001-missing-stdarg.patch b/package/lrzip/0001-missing-stdarg.patch
new file mode 100644 (file)
index 0000000..9ce0117
--- /dev/null
@@ -0,0 +1,26 @@
+From 5ae1754025315d85fac11cb4eb2474789ee6475e Mon Sep 17 00:00:00 2001
+From: Sam Lancia <sam@gpsm.co.uk>
+Date: Sat, 7 Sep 2019 20:54:29 +0100
+Subject: [PATCH] Lrzip.h: add missing header for va_list on some platforms
+
+Signed-off-by: Sam Lancia <sam@gpsm.co.uk>
+---
+ Lrzip.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/Lrzip.h b/Lrzip.h
+index 29bc2a9..8934c59 100644
+--- a/Lrzip.h
++++ b/Lrzip.h
+@@ -20,6 +20,7 @@
+ #ifndef LIBLRZIP_H
+ #define LIBLRZIP_H
++#include <stdarg.h>
+ #include <stdbool.h>
+ #include <stdio.h>
+ #ifdef _WIN32
+-- 
+2.17.1
+
+
diff --git a/package/lrzip/Config.in b/package/lrzip/Config.in
new file mode 100644 (file)
index 0000000..92540a5
--- /dev/null
@@ -0,0 +1,22 @@
+config BR2_PACKAGE_LRZIP
+       bool "lrzip"
+       depends on BR2_USE_MMU # fork()
+       depends on BR2_USE_WCHAR
+       depends on BR2_TOOLCHAIN_HAS_THREADS
+       select BR2_PACKAGE_ZLIB
+       select BR2_PACKAGE_LZO
+       select BR2_PACKAGE_BZIP2
+       help
+         A compression utility that excels at compressing large files
+         (usually > 10-50 MB). Larger files and/or more free RAM means
+         that the utility will be able to more effectively compress
+         your files (ie: faster / smaller size), especially if the
+         filesize(s) exceed 100 MB. You can either choose to optimise
+         for speed (fast compression / decompression) or size,
+         but not both.
+
+         https://github.com/ckolivas/lrzip
+
+comment "lrzip needs a toolchain w/ wchar, threads"
+       depends on BR2_USE_MMU
+       depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/lrzip/lrzip.hash b/package/lrzip/lrzip.hash
new file mode 100644 (file)
index 0000000..bdf63f0
--- /dev/null
@@ -0,0 +1,3 @@
+# Locally computed:
+sha256 10315c20d5a47590e7220c210735ba169677824d5672509266682eccec84d952  lrzip-0.631.tar.gz
+sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643  COPYING
diff --git a/package/lrzip/lrzip.mk b/package/lrzip/lrzip.mk
new file mode 100644 (file)
index 0000000..24edc84
--- /dev/null
@@ -0,0 +1,14 @@
+################################################################################
+#
+# lrzip
+#
+################################################################################
+
+LRZIP_VERSION = 0.631
+LRZIP_SITE = $(call github,ckolivas,lrzip,v$(LRZIP_VERSION))
+LRZIP_AUTORECONF = YES
+LRZIP_LICENSE = GPL-2.0+
+LRZIP_LICENSE_FILES = COPYING
+LRZIP_DEPENDENCIES = zlib lzo bzip2
+
+$(eval $(autotools-package))