Import libzstd_1.1.2-1.debian.tar.xz
authorSascha Steinbiss <satta@debian.org>
Sun, 15 Jan 2017 08:08:53 +0000 (08:08 +0000)
committerSascha Steinbiss <satta@debian.org>
Sun, 15 Jan 2017 08:08:53 +0000 (08:08 +0000)
[dgit import tarball libzstd 1.1.2-1 libzstd_1.1.2-1.debian.tar.xz]

20 files changed:
changelog [new file with mode: 0644]
compat [new file with mode: 0644]
control [new file with mode: 0644]
copyright [new file with mode: 0644]
patches/0001-Skip-long-running-tests.patch [new file with mode: 0644]
patches/0002-Build-lib-by-default.patch [new file with mode: 0644]
patches/0003-Add-symlinks-for-extra-manpages.patch [new file with mode: 0644]
patches/0004-Add-help2man-d-pzstd-man-file.patch [new file with mode: 0644]
patches/0005-Ensure-CPPFLAGS-makes-it-to-the-compiler.patch [new file with mode: 0644]
patches/0006-Use-bash-for-test-script-portablitity.patch [new file with mode: 0644]
patches/0007-Fix-use-of-fprintf.patch [new file with mode: 0644]
patches/0008-Address-embedded-zlib.patch [new file with mode: 0644]
patches/0009-Add-shebang-for-scripts.patch [new file with mode: 0644]
patches/series [new file with mode: 0644]
rules [new file with mode: 0755]
source/format [new file with mode: 0644]
watch [new file with mode: 0644]
zstd.docs [new file with mode: 0644]
zstd.install [new file with mode: 0644]
zstd.manpages [new file with mode: 0644]

diff --git a/changelog b/changelog
new file mode 100644 (file)
index 0000000..0dcc0b8
--- /dev/null
+++ b/changelog
@@ -0,0 +1,70 @@
+libzstd (1.1.2-1) unstable; urgency=medium
+
+  * Team upload.
+  * New upstream version 1.1.2
+
+ -- Sascha Steinbiss <satta@debian.org>  Sun, 15 Jan 2017 08:08:53 +0000
+
+libzstd (1.1.1-1) unstable; urgency=medium
+
+  * New upstream version 1.1.1 (Closes: #844248)
+  * Whitespace fix to d/control
+  * Ensure hardening flags pass through to compiler by appending to CPPFLAGS
+
+ -- Kevin Murray <kdmfoss@gmail.com>  Sun, 20 Nov 2016 16:12:58 +0100
+
+libzstd (1.1.0-1) unstable; urgency=medium
+
+  * New upstream version 1.1.0 (Closes: #839960)
+  * Change uploader email
+  * Build new pzstd binary, including manpage
+  * Fix miscellaneous issues with d/rules and d/*.install
+  * Move docs from libzstd-dev to the zstd binary
+
+ -- Kevin Murray <kdmfoss@gmail.com>  Sun, 13 Nov 2016 11:23:03 +0000
+
+libzstd (1.0.0-1) unstable; urgency=medium
+
+  * Imported Upstream version 1.0.0 (Closes: #836574)
+  * Bump library package name to libzstd1
+  * Changed project URLs, copyrights after move to facebook.
+  * d/rules: hardening=+all
+
+ -- Kevin Murray <kdmfoss@gmail.com>  Sun, 04 Sep 2016 14:45:24 +1000
+
+libzstd (0.8.0-1) unstable; urgency=medium
+
+  [ Kevin Murray ]
+  * New upstream version (Closes: #834114)
+
+  [ Andreas Tille ]
+  * hardening=+bindnow
+
+ -- Kevin Murray <kdmfoss@gmail.com>  Thu, 21 Jul 2016 10:56:02 +1000
+
+libzstd (0.5.1-1) unstable; urgency=medium
+
+  [ Kevin Murray ]
+  * New upstream version (fixes a FTBFS)
+  * Package pkgconfig file (Closes: #813854)
+  * Fix path to tagged archives in d/watch
+  * Add vcs URLs
+  * Bump to standards version 3.9.7
+
+  [ Mattia Rizzolo ]
+  * debian/rules: Remove a lot of uneeded comments and lines
+
+ -- Kevin Murray <kdmfoss@gmail.com>  Thu, 17 Mar 2016 12:59:04 +0000
+
+libzstd (0.4.7-1) unstable; urgency=low
+
+  * New upstream version
+  * Remove build date encoding to enable reproducible build
+
+ -- Kevin Murray <kdmfoss@gmail.com>  Wed, 03 Feb 2016 11:26:21 +0200
+
+libzstd (0.4.5-1) unstable; urgency=low
+
+  * Initial release (Closes: #806767)
+
+ -- Kevin Murray <kdmfoss@gmail.com>  Tue, 01 Dec 2015 13:54:36 +1100
diff --git a/compat b/compat
new file mode 100644 (file)
index 0000000..ec63514
--- /dev/null
+++ b/compat
@@ -0,0 +1 @@
+9
diff --git a/control b/control
new file mode 100644 (file)
index 0000000..e84274f
--- /dev/null
+++ b/control
@@ -0,0 +1,47 @@
+Source: libzstd
+Priority: optional
+Maintainer: Debian Med Packaging <debian-med-packaging@lists.alioth.debian.org>
+Uploaders: Kevin Murray <kdmfoss@gmail.com>,
+Build-Depends: debhelper (>= 9),
+               d-shlibs,
+Standards-Version: 3.9.8
+Section: libs
+Homepage: https://github.com/facebook/zstd
+Vcs-Git: https://anonscm.debian.org/git/debian-med/libzstd.git
+Vcs-Browser: https://anonscm.debian.org/git/debian-med/libzstd.git
+
+Package: libzstd-dev
+Architecture: any
+Section: libdevel
+Depends: libzstd1 (= ${binary:Version}),
+         ${misc:Depends},
+Description: fast lossless compression algorithm -- development files
+ Zstd, short for Zstandard, is a fast lossless compression algorithm, targeting
+ real-time compression scenarios at zlib-level compression ratio.
+ .
+ This package contains the headers and static library.
+
+
+Package: libzstd1
+Architecture: any
+Section: libs
+Depends: ${shlibs:Depends},
+         ${misc:Depends},
+Description: fast lossless compression algorithm
+ Zstd, short for Zstandard, is a fast lossless compression algorithm, targeting
+ real-time compression scenarios at zlib-level compression ratio.
+ .
+ This package contains the shared library.
+
+
+Package: zstd
+Architecture: any
+Section: utils
+Depends: libzstd1 (= ${binary:Version}),
+         ${shlibs:Depends},
+         ${misc:Depends},
+Description: fast lossless compression algorithm -- CLI tool
+ Zstd, short for Zstandard, is a fast lossless compression algorithm, targeting
+ real-time compression scenarios at zlib-level compression ratio.
+ .
+ This package contains the CLI program implementing zstd.
diff --git a/copyright b/copyright
new file mode 100644 (file)
index 0000000..b24c078
--- /dev/null
+++ b/copyright
@@ -0,0 +1,123 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: Zstd
+Source: https://github.com/facebook/zstd
+
+Files: *
+Copyright: 2013-2016, Yann Collet
+              2016, Przemyslaw Skibinski
+              2016, Facebook, Inc.
+License: BSD-3-clause-with-patent-grant
+ Redistribution and use in source and binary forms, with or without modification,
+ are permitted provided that the following conditions are met:
+ .
+  * Redistributions of source code must retain the above copyright notice, this
+    list of conditions and the following disclaimer.
+ .
+  * Redistributions in binary form must reproduce the above copyright notice,
+    this list of conditions and the following disclaimer in the documentation
+    and/or other materials provided with the distribution.
+ .
+  * Neither the name Facebook nor the names of its contributors may be used to
+    endorse or promote products derived from this software without specific
+    prior written permission.
+ .
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
+ ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+Comment: A generic additional grant of patent rights is made by Facebook to the
+ users of Zstd, and is reproduced below (from ./PATENTS):
+ .
+ Additional Grant of Patent Rights Version 2
+ .
+ "Software" means the Zstandard software distributed by Facebook, Inc.
+ .
+ Facebook, Inc. ("Facebook") hereby grants to each recipient of the Software
+ ("you") a perpetual, worldwide, royalty-free, non-exclusive, irrevocable
+ (subject to the termination provision below) license under any Necessary
+ Claims, to make, have made, use, sell, offer to sell, import, and otherwise
+ transfer the Software. For avoidance of doubt, no license is granted under
+ Facebook’s rights in any patent claims that are infringed by (i) modifications
+ to the Software made by you or any third party or (ii) the Software in
+ combination with any software or other technology.
+ .
+ The license granted hereunder will terminate, automatically and without notice,
+ if you (or any of your subsidiaries, corporate affiliates or agents) initiate
+ directly or indirectly, or take a direct financial interest in, any Patent
+ Assertion: (i) against Facebook or any of its subsidiaries or corporate
+ affiliates, (ii) against any party if such Patent Assertion arises in whole or
+ in part from any software, technology, product or service of Facebook or any of
+ its subsidiaries or corporate affiliates, or (iii) against any party relating
+ to the Software. Notwithstanding the foregoing, if Facebook or any of its
+ subsidiaries or corporate affiliates files a lawsuit alleging patent
+ infringement against you in the first instance, and you respond by filing a
+ patent infringement counterclaim in that lawsuit against that party that is
+ unrelated to the Software, the license granted hereunder will not terminate
+ under section (i) of this paragraph due to such counterclaim.
+ .
+ A "Necessary Claim" is a claim of a patent owned by Facebook that is
+ necessarily infringed by the Software standing alone.
+ .
+ A "Patent Assertion" is any lawsuit or other action alleging direct, indirect,
+ or contributory infringement or inducement to infringe any patent, including a
+ cross-claim or counterclaim.
+
+Files: zlibWrapper/examples/*.c
+Copyright: 1995-2006, 2011 Jean-loup Gailly
+License: zlib
+
+Files: zlibWrapper/gz*.c
+Copyright: (C) 2004, 2005, 2010, 2011, 2012, 2013 Mark Adler
+License: zlib
+
+License: zlib
+ This software is provided 'as-is', without any express or implied
+ warranty. In no event will the authors be held liable for any damages
+ arising from the use of this software.
+ .
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+ .
+ 1. The origin of this software must not be misrepresented; you must not
+    claim that you wrote the original software. If you use this software
+    in a product, an acknowledgement in the product documentation would be
+    appreciated but is not required.
+ 2. Altered source versions must be plainly marked as such, and must not be
+    misrepresented as being the original software.
+ 3. This notice may not be removed or altered from any source distribution.
+
+Files: lib/dictBuilder/divsufsort.*
+Copyright: 2003-2008, Yuta Mori
+License: Expat
+
+Files: debian/*
+Copyright: 2015-2016 Kevin Murray <spam@kdmurray.id.au>
+License: Expat
+
+License: Expat
+ Permission is hereby granted, free of charge, to any person obtaining
+ a copy of this software and associated documentation files (the
+ "Software"), to deal in the Software without restriction, including
+ without limitation the rights to use, copy, modify, merge, publish,
+ distribute, sublicense, and/or sell copies of the Software, and to
+ permit persons to whom the Software is furnished to do so, subject to
+ the following conditions:
+ .
+ The above copyright notice and this permission notice shall be
+ included in all copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
+ BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ SOFTWARE.
diff --git a/patches/0001-Skip-long-running-tests.patch b/patches/0001-Skip-long-running-tests.patch
new file mode 100644 (file)
index 0000000..0f72c2a
--- /dev/null
@@ -0,0 +1,24 @@
+From: Kevin Murray <spam@kdmurray.id.au>
+Date: Tue, 1 Dec 2015 14:40:58 +1100
+Subject: Skip long-running tests
+
+---
+ tests/Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/tests/Makefile
++++ b/tests/Makefile
+@@ -183,11 +183,11 @@
+       file $(ZSTD)
+       ZSTD="$(QEMU_SYS) $(ZSTD)" ./playTests.sh $(ZSTDRTTEST)
+-test: test-zstd test-fullbench test-fuzzer test-zstream test-longmatch
++test: test-zstd test-zstream
+ test32: test-zstd32 test-fullbench32 test-fuzzer32 test-zstream32
+-test-all: test test32 valgrindTest
++test-all: test
+ test-zstd: ZSTD = $(PRGDIR)/zstd
+ test-zstd: zstd zstd-playTests
diff --git a/patches/0002-Build-lib-by-default.patch b/patches/0002-Build-lib-by-default.patch
new file mode 100644 (file)
index 0000000..0c03c7b
--- /dev/null
@@ -0,0 +1,21 @@
+From: Kevin Murray <spam@kdmurray.id.au>
+Date: Tue, 1 Dec 2015 14:52:40 +1100
+Subject: Build lib by default
+
+---
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/Makefile
++++ b/Makefile
+@@ -28,8 +28,8 @@
+ .PHONY: all
+ all:
+       $(MAKE) -C $(ZSTDDIR) $@
+-      $(MAKE) -C $(PRGDIR) $@ zstd32
+-      $(MAKE) -C $(TESTDIR) $@ all32
++      $(MAKE) -C $(PRGDIR) $@
++      $(MAKE) -C $(TESTDIR) $@
+ .PHONY: lib
+ lib:
diff --git a/patches/0003-Add-symlinks-for-extra-manpages.patch b/patches/0003-Add-symlinks-for-extra-manpages.patch
new file mode 100644 (file)
index 0000000..cd45a63
--- /dev/null
@@ -0,0 +1,207 @@
+From: Kevin Murray <spam@kdmurray.id.au>
+Date: Tue, 22 Dec 2015 12:24:27 +1100
+Subject: Add symlinks for extra manpages
+
+---
+ programs/unzstd.1  | 92 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ programs/zstdcat.1 | 92 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 184 insertions(+)
+ create mode 100644 programs/unzstd.1
+ create mode 100644 programs/zstdcat.1
+
+diff --git a/programs/unzstd.1 b/programs/unzstd.1
+new file mode 100644
+index 0000000..5ccdf8a
+--- /dev/null
++++ b/programs/unzstd.1
+@@ -0,0 +1,92 @@
++\"
++\" zstd.1: This is a manual page for 'zstd' program. This file is part of the
++\" zstd <http://www.zstd.net/> project.
++\" Author: Yann Collet
++\"
++
++\" No hyphenation
++.hy 0
++.nr HY 0
++
++.TH zstd "1" "2015-08-22" "zstd" "User Commands"
++.SH NAME
++\fBzstd, unzstd, zstdcat\fR - Compress or decompress .zst files
++
++.SH SYNOPSIS
++.TP 5
++\fBzstd\fR [\fBOPTIONS\fR] [-|INPUT-FILE] <OUTPUT-FILE>
++.PP
++.B unzstd
++is equivalent to
++.BR "zstd \-d" 
++.br
++.B zstdcat
++is equivalent to
++.BR "zstd \-dc" 
++.br
++
++.SH DESCRIPTION
++.PP
++\fBzstd\fR is a fast lossless compression algorithm.
++It is based on the \fBLZ77\fR family, with FSE & huff0 entropy stage.
++zstd offers compression speed > 200 MB/s per core.
++It also features a fast decoder, with speed > 500 MB/s per core.
++
++\fBzstd\fR command line is generally similar to gzip, but features the following differences :
++ - Original files are preserved
++ - By default, \fBzstd file1 file2\fR means : compress file1 \fBinto\fR file2.
++     Use \fB-m\fR command if you want : compress file1 into file1.zstd and file2 into file2.zst
++ - By default, when compressing files, \fBzstd\fR displays advancement notification and result summary.
++     Use \fB-q\fR to turn them off
++
++
++\fBzstd\fR supports the following options :
++
++.SH OPTIONS
++.TP
++.B \-#
++ # compression level [1-19](default:1)
++.TP
++.B \-d
++ decompression
++.TP
++.B \-f
++ overwrite output without prompting
++.TP
++.BR \-m ", " --multiple
++ multiple files mode
++ In this mode, multiple files on the command line means compression or decompression of each named file
++ Notifications are also turned off by default
++.TP
++.B \-D
++ Use next file as dictionary content for compress / decompression
++.TP
++.BR \-h/\-H ", " --help
++ display help/long help and exit
++.TP
++.BR \-V ", " --version
++ display Version number and exit
++.TP
++.BR \-v ", " --verbose
++ verbose mode
++.TP
++.BR \-q ", " --quiet
++ suppress warnings and notifications; specify twice to suppress errors too
++.TP
++.B \-c 
++ force write to standard output, even if it is the console
++.TP
++.B \-z
++ force compression
++.TP
++.B \-b#
++ benchmark file(s) using compression level #
++.TP
++.B \-i#
++ iteration loops [1-9](default : 3), benchmark mode only
++
++.SH BUGS
++Report bugs at:- https://github.com/facebook/zstd/issues
++
++.SH AUTHOR
++Yann Collet
+diff --git a/programs/zstdcat.1 b/programs/zstdcat.1
+new file mode 100644
+index 0000000..5ccdf8a
+--- /dev/null
++++ b/programs/zstdcat.1
+@@ -0,0 +1,92 @@
++\"
++\" zstd.1: This is a manual page for 'zstd' program. This file is part of the
++\" zstd <http://www.zstd.net/> project.
++\" Author: Yann Collet
++\"
++
++\" No hyphenation
++.hy 0
++.nr HY 0
++
++.TH zstd "1" "2015-08-22" "zstd" "User Commands"
++.SH NAME
++\fBzstd, unzstd, zstdcat\fR - Compress or decompress .zst files
++
++.SH SYNOPSIS
++.TP 5
++\fBzstd\fR [\fBOPTIONS\fR] [-|INPUT-FILE] <OUTPUT-FILE>
++.PP
++.B unzstd
++is equivalent to
++.BR "zstd \-d" 
++.br
++.B zstdcat
++is equivalent to
++.BR "zstd \-dc" 
++.br
++
++.SH DESCRIPTION
++.PP
++\fBzstd\fR is a fast lossless compression algorithm.
++It is based on the \fBLZ77\fR family, with FSE & huff0 entropy stage.
++zstd offers compression speed > 200 MB/s per core.
++It also features a fast decoder, with speed > 500 MB/s per core.
++
++\fBzstd\fR command line is generally similar to gzip, but features the following differences :
++ - Original files are preserved
++ - By default, \fBzstd file1 file2\fR means : compress file1 \fBinto\fR file2.
++     Use \fB-m\fR command if you want : compress file1 into file1.zstd and file2 into file2.zst
++ - By default, when compressing files, \fBzstd\fR displays advancement notification and result summary.
++     Use \fB-q\fR to turn them off
++
++
++\fBzstd\fR supports the following options :
++
++.SH OPTIONS
++.TP
++.B \-#
++ # compression level [1-19](default:1)
++.TP
++.B \-d
++ decompression
++.TP
++.B \-f
++ overwrite output without prompting
++.TP
++.BR \-m ", " --multiple
++ multiple files mode
++ In this mode, multiple files on the command line means compression or decompression of each named file
++ Notifications are also turned off by default
++.TP
++.B \-D
++ Use next file as dictionary content for compress / decompression
++.TP
++.BR \-h/\-H ", " --help
++ display help/long help and exit
++.TP
++.BR \-V ", " --version
++ display Version number and exit
++.TP
++.BR \-v ", " --verbose
++ verbose mode
++.TP
++.BR \-q ", " --quiet
++ suppress warnings and notifications; specify twice to suppress errors too
++.TP
++.B \-c 
++ force write to standard output, even if it is the console
++.TP
++.B \-z
++ force compression
++.TP
++.B \-b#
++ benchmark file(s) using compression level #
++.TP
++.B \-i#
++ iteration loops [1-9](default : 3), benchmark mode only
++
++.SH BUGS
++Report bugs at:- https://github.com/facebook/zstd/issues
++
++.SH AUTHOR
++Yann Collet
diff --git a/patches/0004-Add-help2man-d-pzstd-man-file.patch b/patches/0004-Add-help2man-d-pzstd-man-file.patch
new file mode 100644 (file)
index 0000000..9abbd89
--- /dev/null
@@ -0,0 +1,91 @@
+From: Kevin Murray <spam@kdmurray.id.au>
+Date: Mon, 17 Oct 2016 08:09:13 +1100
+Subject: Add help2man'd pzstd man file
+
+---
+ contrib/pzstd/pzstd.1 | 76 +++++++++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 76 insertions(+)
+ create mode 100644 contrib/pzstd/pzstd.1
+
+diff --git a/contrib/pzstd/pzstd.1 b/contrib/pzstd/pzstd.1
+new file mode 100644
+index 0000000..03c81cf
+--- /dev/null
++++ b/contrib/pzstd/pzstd.1
+@@ -0,0 +1,76 @@
++.\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.47.4.
++.TH PZSTD "1" "October 2016" "PZSTD version: 1.1.0." "User Commands"
++.SH NAME
++PZSTD \- parallelised Zstandard compression, al la pigz
++.SH DESCRIPTION
++.SS "Usage:"
++.IP
++pzstd [args] [FILE(s)]
++.SS "Parallel ZSTD options:"
++.TP
++\fB\-p\fR, \fB\-\-processes\fR
++#    : number of threads to use for (de)compression (default:4)
++.SS "ZSTD options:"
++.TP
++\-#
++: # compression level (1\-19, default:3)
++.TP
++\fB\-d\fR, \fB\-\-decompress\fR
++: decompression
++.TP
++\fB\-o\fR
++file : result stored into `file` (only if 1 input file)
++.TP
++\fB\-f\fR, \fB\-\-force\fR
++: overwrite output without prompting
++.TP
++\fB\-\-rm\fR
++: remove source file(s) after successful (de)compression
++.TP
++\fB\-k\fR, \fB\-\-keep\fR
++: preserve source file(s) (default)
++.TP
++\fB\-h\fR, \fB\-\-help\fR
++: display help and exit
++.TP
++\fB\-V\fR, \fB\-\-version\fR
++: display version number and exit
++.TP
++\fB\-v\fR, \fB\-\-verbose\fR
++: verbose mode; specify multiple times to increase log level (default:2)
++.TP
++\fB\-q\fR, \fB\-\-quiet\fR
++: suppress warnings; specify twice to suppress errors too
++.TP
++\fB\-c\fR, \fB\-\-stdout\fR
++: force write to standard output, even if it is the console
++.TP
++\fB\-r\fR
++: operate recursively on directories
++.TP
++\fB\-\-ultra\fR
++: enable levels beyond 19, up to 22 (requires more memory)
++.TP
++\fB\-C\fR, \fB\-\-check\fR
++: integrity check (default)
++.TP
++\fB\-\-no\-check\fR
++: no integrity check
++.TP
++\fB\-t\fR, \fB\-\-test\fR
++: test compressed file integrity
++.TP
++\fB\-\-\fR
++: all arguments after "\-\-" are treated as files
++.SH "SEE ALSO"
++The full documentation for
++.B PZSTD
++is maintained as a Texinfo manual.  If the
++.B info
++and
++.B PZSTD
++programs are properly installed at your site, the command
++.IP
++.B info PZSTD
++.PP
++should give you access to the complete manual.
diff --git a/patches/0005-Ensure-CPPFLAGS-makes-it-to-the-compiler.patch b/patches/0005-Ensure-CPPFLAGS-makes-it-to-the-compiler.patch
new file mode 100644 (file)
index 0000000..13cdc37
--- /dev/null
@@ -0,0 +1,75 @@
+From: Kevin Murray <spam@kdmurray.id.au>
+Date: Mon, 14 Nov 2016 10:44:27 +1100
+Subject: Ensure CPPFLAGS makes it to the compiler
+
+---
+ lib/Makefile         | 11 +++++------
+ programs/Makefile    |  5 ++---
+ tests/Makefile       |  5 ++---
+ zlibWrapper/Makefile |  4 ++--
+ 4 files changed, 11 insertions(+), 14 deletions(-)
+
+--- a/lib/Makefile
++++ b/lib/Makefile
+@@ -23,9 +23,8 @@
+ LIBDIR ?= $(PREFIX)/lib
+ INCLUDEDIR=$(PREFIX)/include
+-CPPFLAGS+= -I. -I./common -DXXH_NAMESPACE=ZSTD_
+-CFLAGS  ?= -O3
+-CFLAGS  += -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 \
++CPPFLAGS += -I. -I./common -DXXH_NAMESPACE=ZSTD_
++CFLAGS  += -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 \
+            -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef \
+            -Wpointer-arith
+ CFLAGS  += $(MOREFLAGS)
+@@ -67,17 +66,17 @@
+ libzstd.a: ARFLAGS = rcs
+ libzstd.a: $(ZSTD_FILES)
+       @echo compiling static library
+-      @$(CC) $(FLAGS) -c $^
+-      @$(AR) $(ARFLAGS) $@ *.o
++      $(CC) $(FLAGS) -c $^
++      $(AR) $(ARFLAGS) $@ *.o
+ $(LIBZSTD): LDFLAGS += -shared -fPIC -fvisibility=hidden
+ $(LIBZSTD): $(ZSTD_FILES)
+       @echo compiling dynamic library $(LIBVER)
+ ifneq (,$(filter Windows%,$(OS)))
+-      @$(CC) $(FLAGS) -DZSTD_DLL_EXPORT=1 -shared $^ -o dll\libzstd.dll
++      $(CC) $(FLAGS) -DZSTD_DLL_EXPORT=1 -shared $^ -o dll\libzstd.dll
+       dlltool -D dll\libzstd.dll -d dll\libzstd.def -l dll\libzstd.lib
+ else
+-      @$(CC) $(FLAGS) $^ $(LDFLAGS) $(SONAME_FLAGS) -o $@
++      $(CC) $(FLAGS) $^ $(LDFLAGS) $(SONAME_FLAGS) -o $@
+       @echo creating versioned links
+       @ln -sf $@ libzstd.$(SHARED_EXT_MAJOR)
+       @ln -sf $@ libzstd.$(SHARED_EXT)
+--- a/programs/Makefile
++++ b/programs/Makefile
+@@ -27,9 +27,8 @@
+ ALIGN_LOOP =
+ endif
+-CPPFLAGS+= -I$(ZSTDDIR) -I$(ZSTDDIR)/common -I$(ZSTDDIR)/dictBuilder
+-CFLAGS  ?= -O3
+-CFLAGS  += -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 \
++CPPFLAGS += -I$(ZSTDDIR) -I$(ZSTDDIR)/common -I$(ZSTDDIR)/dictBuilder
++CFLAGS  += -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 \
+           -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef \
+           -Wpointer-arith
+ CFLAGS  += $(MOREFLAGS)
+--- a/tests/Makefile
++++ b/tests/Makefile
+@@ -28,9 +28,8 @@
+ TESTARTEFACT := versionsTest namespaceTest
+-CPPFLAGS= -I$(ZSTDDIR) -I$(ZSTDDIR)/common -I$(ZSTDDIR)/dictBuilder -I$(PRGDIR)
+-CFLAGS ?= -O3
+-CFLAGS += -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 \
++CPPFLAGS += -I$(ZSTDDIR) -I$(ZSTDDIR)/common -I$(ZSTDDIR)/dictBuilder -I$(PRGDIR)
++CFLAGS += -O3 -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 \
+           -Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef
+ CFLAGS += $(MOREFLAGS)
+ FLAGS   = $(CPPFLAGS) $(CFLAGS) $(LDFLAGS)
diff --git a/patches/0006-Use-bash-for-test-script-portablitity.patch b/patches/0006-Use-bash-for-test-script-portablitity.patch
new file mode 100644 (file)
index 0000000..15504dc
--- /dev/null
@@ -0,0 +1,18 @@
+From: Kevin Murray <spam@kdmurray.id.au>
+Date: Mon, 14 Nov 2016 11:54:32 +1100
+Subject: Use bash for test script portablitity
+
+---
+ tests/playTests.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/playTests.sh b/tests/playTests.sh
+index ad70538..81b2e34 100755
+--- a/tests/playTests.sh
++++ b/tests/playTests.sh
+@@ -1,4 +1,4 @@
+-#!/bin/sh -e
++#!/bin/bash -e
+ die() {
+     $ECHO "$@" 1>&2
diff --git a/patches/0007-Fix-use-of-fprintf.patch b/patches/0007-Fix-use-of-fprintf.patch
new file mode 100644 (file)
index 0000000..95a7576
--- /dev/null
@@ -0,0 +1,44 @@
+Description: Fix use of fprintf
+Author: Sascha Steinbiss <satta@debian.org>
+--- a/contrib/pzstd/Pzstd.h
++++ b/contrib/pzstd/Pzstd.h
+@@ -41,7 +41,7 @@
+       auto parameters = options.determineParameters();
+       cStreamPool.reset(new ResourcePool<ZSTD_CStream>{
+           [this, parameters]() -> ZSTD_CStream* {
+-            this->log(VERBOSE, "Creating new ZSTD_CStream\n");
++            this->log(VERBOSE, "%s\n", "Creating new ZSTD_CStream");
+             auto zcs = ZSTD_createCStream();
+             if (zcs) {
+               auto err = ZSTD_initCStream_advanced(
+@@ -59,7 +59,7 @@
+     } else {
+       dStreamPool.reset(new ResourcePool<ZSTD_DStream>{
+           [this]() -> ZSTD_DStream* {
+-            this->log(VERBOSE, "Creating new ZSTD_DStream\n");
++            this->log(VERBOSE, "%s\n", "Creating new ZSTD_DStream");
+             auto zds = ZSTD_createDStream();
+             if (zds) {
+               auto err = ZSTD_initDStream(zds);
+--- a/contrib/pzstd/Pzstd.cpp
++++ b/contrib/pzstd/Pzstd.cpp
+@@ -410,7 +410,7 @@
+     });
+     // Pass the output queue to the writer thread.
+     chunks.push(std::move(out));
+-    state.log(VERBOSE, "Starting a new frame\n");
++    state.log(VERBOSE, "%s\n", "Starting a new frame");
+     // Fill the input queue for the compression job we just started
+     status = readData(*in, ZSTD_CStreamInSize(), step, fd, &bytesRead);
+   }
+@@ -547,8 +547,8 @@
+     if (frameSize == 0) {
+       // We hit a non SkippableFrame ==> not compressed by pzstd or corrupted
+       // Pass the rest of the source to this decompression task
+-      state.log(VERBOSE,
+-          "Input not in pzstd format, falling back to serial decompression\n");
++      state.log(VERBOSE, "%s\n",
++          "Input not in pzstd format, falling back to serial decompression");
+       while (status == FileStatus::Continue && !state.errorHolder.hasError()) {
+         status = readData(*in, chunkSize, chunkSize, fd, &totalBytesRead);
+       }
diff --git a/patches/0008-Address-embedded-zlib.patch b/patches/0008-Address-embedded-zlib.patch
new file mode 100644 (file)
index 0000000..87a81cb
--- /dev/null
@@ -0,0 +1,45 @@
+Description: Fix use of fprintf
+Author: Sascha Steinbiss <satta@debian.org>
+--- a/zlibWrapper/Makefile
++++ b/zlibWrapper/Makefile
+@@ -13,7 +13,7 @@
+ ZSTDLIBDIR = ../lib
+ ZSTDLIBRARY = $(ZSTDLIBDIR)/libzstd.a
+ ZLIBWRAPPER_PATH = .
+-GZFILES = gzclose.o gzlib.o gzread.o gzwrite.o
++#GZFILES = gzclose.o gzlib.o gzread.o gzwrite.o
+ EXAMPLE_PATH = examples
+ PROGRAMS_PATH = ../programs
+ TEST_FILE = ../doc/zstd_compression_format.md
+@@ -67,16 +67,16 @@
+ #.c.o:
+ #     $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
+-minigzip: $(EXAMPLE_PATH)/minigzip.o $(ZLIBWRAPPER_PATH)/zstd_zlibwrapper.o $(GZFILES) $(ZSTDLIBRARY)
++minigzip: $(EXAMPLE_PATH)/minigzip.o $(ZLIBWRAPPER_PATH)/zstd_zlibwrapper.o $(ZSTDLIBRARY)
+       $(CC) $(LDFLAGS) $^ $(ZSTDLIBRARY) $(ZLIB_LIBRARY) -o $@
+-minigzip_zstd: $(EXAMPLE_PATH)/minigzip.o $(ZLIBWRAPPER_PATH)/zstdTurnedOn_zlibwrapper.o $(GZFILES) $(ZSTDLIBRARY)
++minigzip_zstd: $(EXAMPLE_PATH)/minigzip.o $(ZLIBWRAPPER_PATH)/zstdTurnedOn_zlibwrapper.o $(ZSTDLIBRARY)
+       $(CC) $(LDFLAGS) $^ $(ZSTDLIBRARY) $(ZLIB_LIBRARY) -o $@
+-example: $(EXAMPLE_PATH)/example.o $(ZLIBWRAPPER_PATH)/zstd_zlibwrapper.o $(GZFILES) $(ZSTDLIBRARY)
++example: $(EXAMPLE_PATH)/example.o $(ZLIBWRAPPER_PATH)/zstd_zlibwrapper.o $(ZSTDLIBRARY)
+       $(CC) $(LDFLAGS) $^ $(ZLIB_LIBRARY) -o $@
+-example_zstd: $(EXAMPLE_PATH)/example.o $(ZLIBWRAPPER_PATH)/zstdTurnedOn_zlibwrapper.o $(GZFILES) $(ZSTDLIBRARY)
++example_zstd: $(EXAMPLE_PATH)/example.o $(ZLIBWRAPPER_PATH)/zstdTurnedOn_zlibwrapper.o $(ZSTDLIBRARY)
+       $(CC) $(LDFLAGS) $^ $(ZLIB_LIBRARY) -o $@
+ fitblk: $(EXAMPLE_PATH)/fitblk.o $(ZLIBWRAPPER_PATH)/zstd_zlibwrapper.o $(ZSTDLIBRARY)
+--- a/zlibWrapper/examples/example.c
++++ b/zlibWrapper/examples/example.c
+@@ -27,7 +27,7 @@
+ /* @(#) $Id$ */
+-#include "zstd_zlibwrapper.h"
++#include "zlib.h"
+ #include <stdio.h>
+ #ifdef STDC
diff --git a/patches/0009-Add-shebang-for-scripts.patch b/patches/0009-Add-shebang-for-scripts.patch
new file mode 100644 (file)
index 0000000..6a07f73
--- /dev/null
@@ -0,0 +1,8 @@
+Description: add shebang line to new script
+Author: Sascha Steinbiss <satta@debian.org>
+--- a/programs/zstdless
++++ b/programs/zstdless
+@@ -1 +1,3 @@
++#!/bin/sh
++
+ zstdcat $@ | less
diff --git a/patches/series b/patches/series
new file mode 100644 (file)
index 0000000..02f0372
--- /dev/null
@@ -0,0 +1,9 @@
+0001-Skip-long-running-tests.patch
+0002-Build-lib-by-default.patch
+0003-Add-symlinks-for-extra-manpages.patch
+0004-Add-help2man-d-pzstd-man-file.patch
+0005-Ensure-CPPFLAGS-makes-it-to-the-compiler.patch
+0006-Use-bash-for-test-script-portablitity.patch
+0007-Fix-use-of-fprintf.patch
+0008-Address-embedded-zlib.patch
+0009-Add-shebang-for-scripts.patch
diff --git a/rules b/rules
new file mode 100755 (executable)
index 0000000..2277d5b
--- /dev/null
+++ b/rules
@@ -0,0 +1,27 @@
+#!/usr/bin/make -f
+
+export DH_VERBOSE=1
+
+DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
+export DEB_BUILD_MAINT_OPTIONS=hardening=+all
+
+# Upstream's makefiles will respect PREFIX, and this means we avoid a patch
+export PREFIX=/usr
+
+%:
+       dh $@ --parallel
+
+override_dh_auto_build:
+       dh_auto_build
+       $(MAKE) -C contrib/pzstd/ pzstd
+
+override_dh_install:
+       # Call d-shlibmove to comply with library packaging guide
+       d-shlibmove --commit \
+                               --multiarch \
+                               --devunversioned \
+                               --exclude-la \
+                               --movedev "debian/tmp/usr/include/*" usr/include \
+                               --movedev "debian/tmp/usr/lib/pkgconfig/*" usr/lib/$(DEB_HOST_MULTIARCH)/pkgconfig \
+                               debian/tmp/usr/lib/lib*.so
+       dh_install
diff --git a/source/format b/source/format
new file mode 100644 (file)
index 0000000..163aaf8
--- /dev/null
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/watch b/watch
new file mode 100644 (file)
index 0000000..af6aca0
--- /dev/null
+++ b/watch
@@ -0,0 +1,3 @@
+version=3
+opts="filenamemangle=s/(?:.*?)?v?(\d[\d.]*)\.tar\.gz/libzstd_$1.tar.gz/" \
+  https://github.com/facebook/zstd/releases .*/archive/v?(\d\S*)\.tar\.gz
diff --git a/zstd.docs b/zstd.docs
new file mode 100644 (file)
index 0000000..8913f46
--- /dev/null
+++ b/zstd.docs
@@ -0,0 +1,2 @@
+NEWS
+README.md
diff --git a/zstd.install b/zstd.install
new file mode 100644 (file)
index 0000000..8aa1dc5
--- /dev/null
@@ -0,0 +1,2 @@
+usr/bin
+contrib/pzstd/pzstd usr/bin
diff --git a/zstd.manpages b/zstd.manpages
new file mode 100644 (file)
index 0000000..05b4f3d
--- /dev/null
@@ -0,0 +1,2 @@
+contrib/pzstd/*.1
+programs/*zstd*.1