aboutsummaryrefslogtreecommitdiffstats
path: root/archivers
diff options
context:
space:
mode:
authorhrs <hrs@FreeBSD.org>2013-06-06 17:19:57 +0800
committerhrs <hrs@FreeBSD.org>2013-06-06 17:19:57 +0800
commitc645451b205e2c1b0d33cb27c4b35dbaedf21152 (patch)
treed310fd73fa2f81a935e2ee838196a8cf6457d7de /archivers
parent62c059557a4abb5abdf6b6e0cf691dbce0f1a02d (diff)
downloadfreebsd-ports-gnome-c645451b205e2c1b0d33cb27c4b35dbaedf21152.tar.gz
freebsd-ports-gnome-c645451b205e2c1b0d33cb27c4b35dbaedf21152.tar.zst
freebsd-ports-gnome-c645451b205e2c1b0d33cb27c4b35dbaedf21152.zip
Add archives/pixz, a parallel, indexing version of XZ.
Diffstat (limited to 'archivers')
-rw-r--r--archivers/Makefile1
-rw-r--r--archivers/pixz/Makefile32
-rw-r--r--archivers/pixz/distinfo2
-rw-r--r--archivers/pixz/files/Makefile.in18
-rw-r--r--archivers/pixz/files/pixz.1130
-rw-r--r--archivers/pixz/pkg-descr4
6 files changed, 187 insertions, 0 deletions
diff --git a/archivers/Makefile b/archivers/Makefile
index e3c9cb6593d0..905ba4fabb3b 100644
--- a/archivers/Makefile
+++ b/archivers/Makefile
@@ -145,6 +145,7 @@
SUBDIR += php53-zip
SUBDIR += php53-zlib
SUBDIR += pigz
+ SUBDIR += pixz
SUBDIR += plzip
SUBDIR += ppmd
SUBDIR += ppmd-7z
diff --git a/archivers/pixz/Makefile b/archivers/pixz/Makefile
new file mode 100644
index 000000000000..f37ddb2c3188
--- /dev/null
+++ b/archivers/pixz/Makefile
@@ -0,0 +1,32 @@
+# $FreeBSD$
+
+PORTNAME= pixz
+PORTVERSION= 1.0.2
+CATEGORIES= archivers
+MASTER_SITES= SF/pixz
+EXTRACT_SUFX= .tgz
+
+MAINTAINER= hrs@FreeBSD.org
+COMMENT= Parallel, indexing version of XZ
+
+LICENSE= BSD
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+SUB_FILES= Makefile
+PLIST_FILES= bin/${PORTNAME}
+MAN1= ${PORTNAME}.1
+MAKE_ENV+= PTHREAD_LIBS=${PTHREAD_LIBS}
+
+.include <bsd.port.pre.mk>
+
+.if ${OSVERSION} < 800505 || (${OSVERSION} >= 900000 && ${OSVERSION} < 900012)
+LIB_DEPENDS+= lzma:${PORTSDIR}/archivers/xz
+CFLAGS+= -I${LOCALBASE}/include
+LDFLAGS+= -L${LOCALBASE}/lib
+.endif
+
+post-extract: apply-slist
+ ${INSTALL_DATA} ${WRKDIR}/Makefile ${WRKSRC}
+ ${INSTALL_DATA} ${FILESDIR}/${PORTNAME}.1 ${WRKSRC}
+
+.include <bsd.port.post.mk>
diff --git a/archivers/pixz/distinfo b/archivers/pixz/distinfo
new file mode 100644
index 000000000000..e4743627f7e3
--- /dev/null
+++ b/archivers/pixz/distinfo
@@ -0,0 +1,2 @@
+SHA256 (pixz-1.0.2.tgz) = af9dac41edd6bf57953471f7fcbd4793810003bf911593ba4c84f7cccb5f74af
+SIZE (pixz-1.0.2.tgz) = 21425
diff --git a/archivers/pixz/files/Makefile.in b/archivers/pixz/files/Makefile.in
new file mode 100644
index 000000000000..9d3895049648
--- /dev/null
+++ b/archivers/pixz/files/Makefile.in
@@ -0,0 +1,18 @@
+# $FreeBSD$
+
+PROG= pixz
+SRCS= pixz.c common.c endian.c cpu.c read.c write.c list.c
+MAN= ${PROG}.1
+
+CPPFLAGS+= -I${LOCALBASE}/include -DPIXZ_VERSION='"1.0.2"'
+CFLAGS+= ${CPPFLAGS} -std=gnu99
+LDADD= ${PTHREAD_LIBS} -lm -llzma -larchive -L${LOCALBASE}/lib \
+ -Wl,-rpath,${LOCALBASE}/lib
+
+PREFIX?= /usr/local
+LOCALBASE?= /usr/local
+BINDIR?= ${PREFIX}/bin
+MANDIR?= ${PREFIX}/man/man
+NO_MANCOMPRESS=
+
+.include <bsd.prog.mk>
diff --git a/archivers/pixz/files/pixz.1 b/archivers/pixz/files/pixz.1
new file mode 100644
index 000000000000..f3ef4a71251e
--- /dev/null
+++ b/archivers/pixz/files/pixz.1
@@ -0,0 +1,130 @@
+'\" t
+.\" Title: pixz
+.\" Author: [see the "AUTHOR" section]
+.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
+.\" Date: 06/06/2013
+.\" Manual: \ \&
+.\" Source: \ \&
+.\" Language: English
+.\"
+.TH "PIXZ" "1" "06/06/2013" "\ \&" "\ \&"
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "NAME"
+pixz \- parallel, indexed xz compressor
+.SH "SYNOPSIS"
+.sp
+\fBpixz\fR [\fIOPTIONS\fR] [\fIINPUT\fR [\fIOUTPUT\fR]]
+.SH "DESCRIPTION"
+.sp
+pixz compresses and decompresses files using multiple processors\&. If the input looks like a tar(1) archive, it also creates an index of all the files in the archive\&. This allows the extraction of only a small segment of the tarball, without needing to decompress the entire archive\&.
+.SH "OPTIONS"
+.sp
+By default, pixz uses standard input and output, unless \fIINPUT\fR and \fIOUTPUT\fR arguments are provided\&. If pixz is provided with input but no output, it will delete the input once it\(cqs done\&.
+.PP
+\fB\-d\fR
+.RS 4
+Decompress, instead of compress\&.
+.RE
+.PP
+\fB\-t\fR
+.RS 4
+Force non\-tarball mode\&. By default, pixz auto\-detects tar data, and if found enters tarball mode\&. When compressing in non\-tarball mode, no archive index will be created\&. When decompressing, fast extraction will not be available\&.
+.RE
+.PP
+\fB\-l\fR
+.RS 4
+List the archive contents\&. In tarball mode, lists the files in the tarball\&. In non\-tarball mode, lists the blocks of compressed data\&.
+.RE
+.PP
+\fB\-x\fR \fIPATH\fR
+.RS 4
+Extract certain members from an archive, quickly\&. All members whose path begins with
+\fIPATH\fR
+will be extracted\&.
+.RE
+.PP
+\fB\-i\fR \fIINPUT\fR
+.RS 4
+Use
+\fIINPUT\fR
+as the input\&.
+.RE
+.PP
+\fB\-o\fR \fIOUTPUT\fR
+.RS 4
+Use OUTPUT as the output\&.
+.RE
+.PP
+\fB\-#\fR
+.RS 4
+Set compression level, from \-0 (lowest compression, fastest) to \-9 (highest compression, slowest)\&.
+.RE
+.PP
+\fB\-e\fR
+.RS 4
+Use "extreme" compression, which is much slower and only yields a marginal decrease in size\&.
+.RE
+.PP
+\fB\-p\fR \fICPUS\fR
+.RS 4
+Set the number of CPU cores to use\&. By default pixz will use the number of cores on the system\&.
+.RE
+.PP
+\fB\-f\fR \fIFRACTION\fR
+.RS 4
+Set the size of each compression block, relative to the LZMA dictionary size (default is 2\&.0)\&. Higher values give better compression ratios, but use more memory and make random access less efficient\&. Values less than 1\&.0 aren\(cqt very efficient\&.
+.RE
+.PP
+\fB\-q\fR \fISIZE\fR
+.RS 4
+Set the number of blocks to allocate for the compression queue (default is 1\&.3 * cores + 2, rounded up)\&. Higher values give better throughput, up to a point, but use more memory\&. Values less than the number of cores will make some cores sit idle\&.
+.RE
+.PP
+\fB\-h\fR
+.RS 4
+Show pixz\(cqs online help\&.
+.RE
+.SH "EXAMPLES"
+.PP
+pixz < myfile > myfile\&.xz
+.RS 4
+Compress a file with pixz\&.
+.RE
+.PP
+pixz myfile
+.RS 4
+Compress to myfile\&.pxz, removing the original\&.
+.RE
+.PP
+tar \-Ipixz \-cf output\&.tpxz directory
+.RS 4
+Make tar use pixz for compression\&.
+.RE
+.PP
+pixz \-x path/to/file < input\&.tpxz | tar x
+.RS 4
+Extract one file from an archive, quickly\&.
+.RE
+.SH "AUTHOR"
+.sp
+pixz is written by Dave Vasilevsky\&.
+.SH "RESOURCES"
+.sp
+The pixz homepage: http://github\&.com/vasi/pixz/
+.sp
+Source downloads: http://sourceforge\&.net/projects/pixz/files/
+.SH "COPYRIGHT"
+.sp
+Copyright \(co 2009\-2010 Dave Vasilevsky\&. Use of this software is granted under the FreeBSD License\&.
+.SH "SEE ALSO"
+.sp
+xz(1), tar(1)
diff --git a/archivers/pixz/pkg-descr b/archivers/pixz/pkg-descr
new file mode 100644
index 000000000000..eb5d9a6c16ba
--- /dev/null
+++ b/archivers/pixz/pkg-descr
@@ -0,0 +1,4 @@
+Pixz (pronounced 'pixie') is a parallel, indexing version of XZ.
+
+WWW: https://github.com/vasi/pixz
+WWW: https://sourceforge.net/projects/pixz/files/