[poky] [PATCH] Add pigz as gzip-native alternative.
Björn Stenberg
bjst at enea.com
Mon Mar 12 08:47:19 PDT 2012
pigz, which stands for parallel implementation of gzip, is a fully functional replacement for gzip that exploits multiple processors and multiple cores to the hilt when compressing data. pigz was written by Mark Adler, and uses the zlib and pthread libraries.
This recipe adds pigz as an alternative provider of gzip-native. Pigz is much faster than gzip on multi-core machines.
Signed-off-by: Björn Stenberg <bjst at enea.com>
---
meta/recipes-extended/pigz/files/ldflags.patch | 11 +++++++++++
meta/recipes-extended/pigz/pigz.inc | 21 +++++++++++++++++++++
meta/recipes-extended/pigz/pigz_2.2.4.bb | 9 +++++++++
3 files changed, 41 insertions(+), 0 deletions(-)
create mode 100644 meta/recipes-extended/pigz/files/ldflags.patch
create mode 100644 meta/recipes-extended/pigz/pigz.inc
create mode 100644 meta/recipes-extended/pigz/pigz_2.2.4.bb
diff --git a/meta/recipes-extended/pigz/files/ldflags.patch b/meta/recipes-extended/pigz/files/ldflags.patch
new file mode 100644
index 0000000..534d280
--- /dev/null
+++ b/meta/recipes-extended/pigz/files/ldflags.patch
@@ -0,0 +1,11 @@
+--- pigz-2.2.3/Makefile.orig 2012-01-01 02:46:58.000000000 +0100
++++ pigz-2.2.3/Makefile 2012-03-09 08:47:40.025094863 +0100
+@@ -2,7 +2,7 @@
+ CFLAGS=-O3 -Wall -Wextra
+
+ pigz: pigz.o yarn.o
+- $(CC) -o pigz pigz.o yarn.o -lpthread -lz
++ $(CC) $(LDFLAGS) -o pigz pigz.o yarn.o -lpthread -lz
+ ln -f pigz unpigz
+
+ pigz.o: pigz.c yarn.h
diff --git a/meta/recipes-extended/pigz/pigz.inc b/meta/recipes-extended/pigz/pigz.inc
new file mode 100644
index 0000000..b501d7a
--- /dev/null
+++ b/meta/recipes-extended/pigz/pigz.inc
@@ -0,0 +1,21 @@
+SUMMARY = "A parallel implementation of gzip"
+DESCRIPTION = "pigz, which stands for parallel implementation of gzip, is a \
+fully functional replacement for gzip that exploits multiple processors and \
+multiple cores to the hilt when compressing data. pigz was written by Mark \
+Adler, and uses the zlib and pthread libraries."
+HOMEPAGE = "http://zlib.net/pigz/"
+SECTION = "console/utils"
+LICENSE = "Zlib"
+
+SRC_URI = "http://zlib.net/pigz/pigz-${PV}.tar.gz \
+ file://ldflags.patch"
+
+PROVIDES += "gzip-native"
+
+DEPENDS_virtclass-native = "zlib-native"
+
+do_install () {
+ install -d ${D}${bindir}
+ install ${B}/pigz ${D}${bindir}/gzip
+ install ${B}/unpigz ${D}${bindir}/gunzip
+}
diff --git a/meta/recipes-extended/pigz/pigz_2.2.4.bb b/meta/recipes-extended/pigz/pigz_2.2.4.bb
new file mode 100644
index 0000000..598bbe3
--- /dev/null
+++ b/meta/recipes-extended/pigz/pigz_2.2.4.bb
@@ -0,0 +1,9 @@
+require pigz.inc
+
+PR = "r0"
+
+BBCLASSEXTEND = "native"
+
+SRC_URI[md5sum] = "9df2a3c742524446fa4e797c17e8fd85"
+SRC_URI[sha256sum] = "7e7967c47f66c07be97cbfa25c8816b72f9d35258466ea31eddc7666c914160e"
+LIC_FILES_CHKSUM = "file://pigz.c;md5=53f47c097bbf11b937a421b1816a8dc5"
--
1.7.5.4
More information about the poky
mailing list