From: Michael R. Crusoe Date: Thu, 13 Feb 2020 09:40:13 +0000 (+0000) Subject: Import libzstd_1.4.4+dfsg-3.debian.tar.xz X-Git-Tag: archive/raspbian/1.4.4+dfsg-3+rpi1^2~8^2 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=436fb678104171b812ee32a4b2d0da85a373f5c3;p=libzstd.git Import libzstd_1.4.4+dfsg-3.debian.tar.xz [dgit import tarball libzstd 1.4.4+dfsg-3 libzstd_1.4.4+dfsg-3.debian.tar.xz] --- 436fb678104171b812ee32a4b2d0da85a373f5c3 diff --git a/README.Debian b/README.Debian new file mode 100644 index 0000000..5341295 --- /dev/null +++ b/README.Debian @@ -0,0 +1,6 @@ +1.2.0-1 +------- + +some patches have been removed, makefile had a lot of changes, +the long running tests skip patch has been removed but may need +further investigation to see if it is still needed. diff --git a/README.source b/README.source new file mode 100644 index 0000000..50aef85 --- /dev/null +++ b/README.source @@ -0,0 +1 @@ +The examples were removed from the upstream tarball due to #869581 diff --git a/changelog b/changelog new file mode 100644 index 0000000..372914b --- /dev/null +++ b/changelog @@ -0,0 +1,362 @@ +libzstd (1.4.4+dfsg-3) unstable; urgency=medium + + * Team upload. + * Source only upload. + + -- Michael R. Crusoe Thu, 13 Feb 2020 10:40:13 +0100 + +libzstd (1.4.4+dfsg-2) unstable; urgency=medium + + * Team upload. + * Install all the man pages. + * Standards-Version: 4.5.0 (routine-update) + * debhelper-compat 12 (routine-update) + + -- Michael R. Crusoe Thu, 13 Feb 2020 09:10:22 +0100 + +libzstd (1.4.4+dfsg-1) unstable; urgency=medium + + [ Justin Aplin ] + * New upstream version 1.4.4+dfsg + * Refresh patches + * Call Salsa CI with variable DB_BUILD_PARAM: '-v1.1.2-1', since this is the + oldest version in active repositories + * Add Rules-Requires-Root: binary-targets to debian/control to comply with + current DPM + * Bump Standards-Version to 4.4.1, changes noted above + * Update symbols file for libzstd1 + * Call dh_makeshlibs with -V 'libzstd1 (>= 1.4.4)', since this version + introduced new public symbols + * Add an entry in debian/source/lintian-overrides to prevent libzstd1's + Section entry from triggering binary-control-field-duplicates-source, + since this field is necessary for the build + + -- Alexandre Mestiashvili Fri, 15 Nov 2019 17:15:40 +0100 + +libzstd (1.4.3+dfsg-1) unstable; urgency=medium + + [ Alexandre Mestiashvili ] + * Fix a typo causing test failures on mips(el) architectures in + d/patches/0013-skip-memory-greedy-tests.patch + * Remove circle.yml from Files-Excluded section in d/copyright + * New upstream version 1.4.3+dfsg + + -- Alexandre Mestiashvili Tue, 20 Aug 2019 13:33:51 +0200 + +libzstd (1.4.2+dfsg-1) unstable; urgency=medium + + [ Justin Aplin ] + * New upstream version 1.4.2+dfsg + * Refresh and drop applied by upstream patches + * Add patch aliasing two renamed but unchanged symbols to maintain backwards + compatibility + * Build with ZSTD_LEGACY_MULTITHREADED_API=1 to maintain backwards + compatibility + * Update symbols file for libzstd1 + * Call dh_makeshlibs with -V 'libzstd1 (>= 1.4.0)', since this version + introduced new public symbols + * Bump debhelper compat level to 12. + * Bump Standards-Version to 4.4.0, no changes needed. + * Salsa-CI integration + + [ Alexandre Mestiashvili ] + * Add .cirrus.yml to Files-Excluded list in d/copyright + + -- Alexandre Mestiashvili Mon, 19 Aug 2019 15:14:31 +0200 + +libzstd (1.3.8+dfsg-3) unstable; urgency=medium + + * Add patch fixing zstdgrep exit code when operating on files + Closes: #918390, thanks to Jörg-Volker Peetz + + -- Alexandre Mestiashvili Sat, 05 Jan 2019 23:42:20 +0100 + +libzstd (1.3.8+dfsg-2) unstable; urgency=medium + + * Add patch skipping tests failing on GNU/Hurd when writing to special files + such as /dev/zero or /dev/random + * Upload to unstable + + -- Alexandre Mestiashvili Thu, 03 Jan 2019 14:47:31 +0100 + +libzstd (1.3.8+dfsg-1) experimental; urgency=medium + + * Add .circleci to Files-Excluded + * New upstream version 1.3.8+dfsg + * Update docs, install all md files and CHANGELOG + * Bumpt Policy to 4.3.0 + * Refresh and drop applied by upstream patches + * Update symbols file for libzstd1, + removed! 6 symbols from experimental API, but no reverse dependencies + of libzstd1 seem to use any of the removed symbols + See also: https://github.com/facebook/zstd/issues/1111 + * Call dh_makeshlibs with -V 'libzstd1 (>= 1.3.8)', since this version + introduced new public symbols + * Update zstd.lintian-overrides, zstd{grep,less} got man pages + + -- Alexandre Mestiashvili Mon, 31 Dec 2018 15:19:12 +0100 + +libzstd (1.3.5+dfsg-2) unstable; urgency=medium + + * Add udeb package for libzstd1, Closes: #908834 + * Bump Policy to 4.2.1 + * Call dh_makeshlibs with -V 'libzstd1 (>= 1.3.5)', since this version + introduced new public symbols + + -- Alexandre Mestiashvili Fri, 12 Oct 2018 08:00:27 +0000 + +libzstd (1.3.5+dfsg-1) unstable; urgency=medium + + [ Alexandre Mestiashvili ] + * Add attribuition for the patch + * Fix varying number of threads in pzstd man page, making build reproducible + * New upstream version 1.3.5+dfsg + * Refresh and drop patches applied by upstream + * Update d/zstd.lintian-overrides + + [ Balint Reczey ] + * Update symbols file + * Allow Invoking `zstd --list` When `stdin` is not a `tty` + + -- Alexandre Mestiashvili Fri, 21 Sep 2018 18:46:28 +0000 + +libzstd (1.3.4+dfsg-3) unstable; urgency=medium + + * Add patch provided by Chris Lamb making build reproducible, + Closes: #897904 + * Update patch skipping heavy tests on mips(el) and hurd + * Add patch fixing tests on GNU/Hurd + * Drop not needed override_dh_auto_test + + -- Alexandre Mestiashvili Wed, 09 May 2018 19:25:10 +0200 + +libzstd (1.3.4+dfsg-2) unstable; urgency=medium + + * Add liblzma-dev and liblz4-dev to build-depends to enable xz and lz4 + support + * Patch tests to avoid FTBFS on mips(el) architectures + * Use help2man for pzstd man page, drop patches providing obsolete man pages + * Update zstd.lintian-overrides, add more binaries without man pages + * Add override for dh_auto_test, on hurd run only simple tests + * Update 0012-typos.patch, forward to upstream + + -- Alexandre Mestiashvili Wed, 02 May 2018 15:43:16 +0200 + +libzstd (1.3.4+dfsg-1) unstable; urgency=medium + + * Team upload. + + [ Alexandre Mestiashvili ] + * New upstream version 1.3.4+dfsg + * Refresh patches, remove indexes + * Update d/libzstd1.symbols fixing minimal-version + * Update d/copyright, starting from 1.3.1 patent claim is removed + * Add comments to unstable symbols + + [ Mattia Rizzolo ] + * Update copyright after the new upstream release. + + [ Sascha Steinbiss ] + * Remove obsolete patch. + * Reword patch description. + + -- Alexandre Mestiashvili Wed, 25 Apr 2018 10:39:39 +0200 + +libzstd (1.3.3+dfsg-2) unstable; urgency=medium + + * Team upload. + + [ Dimitri John Ledkov ] + * Mark -dev and library packages Multi-Arch same. + * Update Vcs fields for salsa. + * Cleanup unused patches. + + [ Andreas Hasenack ] + * d/rules: also run the clean Makefile target in the pzstd directory. + + [ Alexandre Mestiashvili ] + * d/control: Update my email address. + * d/rules: + + Disable tests if DEB_BUILD_OPTIONS set to nocheck. + + Use dh_auto_build instead of $(MAKE) to avoid cross build failures. + Thanks to Helmut Grohne for the patch. Closes: #895925 + + Use dh_auto_clean instead of $(MAKE). + + [ Adam Borowski ] + * Enable build on riscv64. Closes: #895259 + + [ Mattia Rizzolo ] + * Bump debhelper compat level to 11. + * Bump Standards-Version to 4.1.4, no changes needed. + * Remove patch skipping a test on hurd-i386: allegedly the underlying issue + has been fixed instead. + + -- Mattia Rizzolo Sat, 21 Apr 2018 11:26:59 +0200 + +libzstd (1.3.3+dfsg-1) unstable; urgency=medium + + * Update File-Excluded list in d/copyright + * New upstream version 1.3.3+dfsg, Closes: #883816 + * Refresh patches + * Add zlib1g-dev to Build-Deps to enable gzip support in zstd, + Closes: #883827 + + -- Alexandre Mestiashvili Thu, 21 Dec 2017 14:25:26 +0100 + +libzstd (1.3.2+dfsg2-2) unstable; urgency=medium + + * Team upload. + * Do not depend libzstd in zstd package since static linking seems + to be the preferred way to create the executable + Closes: #884876 + * Standards-Version: 4.1.2 + + -- Andreas Tille Thu, 21 Dec 2017 11:43:12 +0100 + +libzstd (1.3.2+dfsg2-1) unstable; urgency=medium + + * Update d/copyright: + - don't strip examples from source tarball + - note BSD and GPL-2 license for examples + * New upstream version 1.3.2+dfsg2 + Closes: #883271 + * Drop override_dh_auto_clean in d/rules as examples are back + * Drop 0010-do_not_make_examples.patch as examples are back + * Remove ruby-ronn from Build-Depends, as it renders libzstd package + not installable on many architectures. + Use man page shipped by upstream + * Apply cme fix dpkg, reformat 0010-do-not.. patch header, + fix VCS-Browser field + * Add override for manpage-has-errors-from-man lintian warning + * Install examples with libzstd-dev + + -- Alexandre Mestiashvili Fri, 01 Dec 2017 17:18:39 +0100 + +libzstd (1.3.2+dfsg1-1) unstable; urgency=medium + + [ Alexandre Mestiashvili ] + * Update Files-Excluded section in d/copyright + * New upstream version 1.3.2+dfsg1 + * Update d/rules: + - trick dh_auto_clean with empty exmaples dir + - force man page generation + * Add symbols file for libzstd1 + * Add 0011-skip-long-running-tests_on_hurd.patch fixing tests on gnu hurd + * Add d/patches/0012-typos.patch fixing a typo + * Enable autopkgtests via d/tests/control + * Override lintian's complain about missing man pages + * Add myself to uploaders + * Add ruby-ronn to build-deps, needed for man page generation + + [ Andreas Tille ] + * d/watch: Fix version mangling + + -- Alexandre Mestiashvili Thu, 30 Nov 2017 23:32:41 +0100 + +libzstd (1.3.2+dfsg-1) unstable; urgency=medium + + * Team upload + * New upstream version + Closes: #881187 + * Standards-Version: 4.1.1 + + -- Andreas Tille Thu, 09 Nov 2017 07:55:32 +0100 + +libzstd (1.3.1+dfsg-2) unstable; urgency=medium + + * Team upload + * Follow hint given by James Cowgill to recude number of threads + on 32Bit MIPS architecture + Closes: #876416 + + -- Andreas Tille Fri, 22 Sep 2017 15:29:35 +0200 + +libzstd (1.3.1+dfsg-1) unstable; urgency=medium + + * Team upload + * New upstream version + * Exclude examples from upstream tarball + Closes: #869581 + * debhelper 10 + * cme fix dpkg-control + * Standards-Version: 4.1.0 (no changes needed) + * Fix copyright + + -- Andreas Tille Wed, 06 Sep 2017 15:29:29 +0200 + +libzstd (1.2.0-1) unstable; urgency=medium + + * New upstream release (Closes: #863159). + + -- Olivier Sallou Wed, 24 May 2017 11:28:27 +0000 + +libzstd (1.1.2-1) unstable; urgency=medium + + * Team upload. + * New upstream version 1.1.2 + + -- Sascha Steinbiss 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 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 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 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 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 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 Wed, 03 Feb 2016 11:26:21 +0200 + +libzstd (0.4.5-1) unstable; urgency=low + + * Initial release (Closes: #806767) + + -- Kevin Murray Tue, 01 Dec 2015 13:54:36 +1100 diff --git a/control b/control new file mode 100644 index 0000000..18a5b98 --- /dev/null +++ b/control @@ -0,0 +1,61 @@ +Source: libzstd +Maintainer: Debian Med Packaging Team +Uploaders: Kevin Murray , + Olivier Sallou , + Alexandre Mestiashvili +Section: libs +Priority: optional +Build-Depends: d-shlibs, + debhelper-compat (= 12), + help2man, + liblz4-dev, + liblzma-dev, + zlib1g-dev +Rules-Requires-Root: binary-targets +Standards-Version: 4.5.0 +Vcs-Browser: https://salsa.debian.org/med-team/libzstd +Vcs-Git: https://salsa.debian.org/med-team/libzstd.git +Homepage: https://github.com/facebook/zstd + +Package: libzstd-dev +Architecture: any +Multi-Arch: same +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 +Multi-Arch: same +Section: libs +Depends: ${misc:Depends}, + ${shlibs: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: ${misc:Depends}, + ${shlibs: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. + +Package: libzstd1-udeb +Architecture: any +Section: debian-installer +Depends: ${misc:Depends}, + ${shlibs:Depends} +Package-Type: udeb +Description: fast lossless compression algorithm library for debian-installer diff --git a/copyright b/copyright new file mode 100644 index 0000000..65461ac --- /dev/null +++ b/copyright @@ -0,0 +1,133 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: Zstd +Source: https://github.com/facebook/zstd +Files-Excluded: appveyor.yml + build/* + programs/windres/* + .travis.yml + .buckversion + .buckconfig + .circleci/* + .cirrus.yml + +Files: * +Copyright: 2013-2018, Yann Collet + 2016, Przemyslaw Skibinski + 2016-2018, Facebook, Inc. +License: BSD-3-clause and GPL-2 +Comment: Starting from 1.3.1 zstd's patent claim is removed + see: https://github.com/facebook/zstd/pull/801 + +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: contrib/linux-kernel/fs/squashfs/* +Copyright: 2017 Facebook +License: GPL-2+ + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public License + as published by the Free Software Foundation; either version 2, + or (at your option) any later version. + . + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + On Debian systems you can find a full copy of the GNU General Public + License version 2 at /usr/share/common-licenses/GPL-2. + +Files: lib/dictBuilder/divsufsort.* +Copyright: 2003-2008, Yuta Mori +License: Expat + +Files: examples/* +Copyright: 2016-present, Yann Collet, Facebook, Inc. +License: BSD-3-clause and GPL-2 + +Files: debian/* +Copyright: 2015-2016 Kevin Murray +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. + +License: GPL-2 + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License, v2, as + published by the Free Software Foundation + . + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + . + On Debian systems, the complete text of the GNU General Public + License version 2 can be found in `/usr/share/common-licenses/GPL-2'. + +License: BSD-3-clause + 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 of cereal 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 RANDOLPH VOORHIES OR SHANE GRANT 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. diff --git a/libzstd-dev.examples b/libzstd-dev.examples new file mode 100644 index 0000000..e39721e --- /dev/null +++ b/libzstd-dev.examples @@ -0,0 +1 @@ +examples/* diff --git a/libzstd1.symbols b/libzstd1.symbols new file mode 100644 index 0000000..1610b96 --- /dev/null +++ b/libzstd1.symbols @@ -0,0 +1,208 @@ +libzstd.so.1 libzstd1 #MINVER# +* Build-Depends-Package: libzstd-dev + ZBUFF_compressContinue@Base 1.3.2 + ZBUFF_compressEnd@Base 1.3.2 + ZBUFF_compressFlush@Base 1.3.2 + ZBUFF_compressInit@Base 1.3.2 + ZBUFF_compressInitDictionary@Base 1.3.2 + ZBUFF_compressInit_advanced@Base 1.3.2 + ZBUFF_createCCtx@Base 1.3.2 + ZBUFF_createCCtx_advanced@Base 1.3.2 + ZBUFF_createDCtx@Base 1.3.2 + ZBUFF_createDCtx_advanced@Base 1.3.2 + ZBUFF_decompressContinue@Base 1.3.2 + ZBUFF_decompressInit@Base 1.3.2 + ZBUFF_decompressInitDictionary@Base 1.3.2 + ZBUFF_freeCCtx@Base 1.3.2 + ZBUFF_freeDCtx@Base 1.3.2 + ZBUFF_getErrorName@Base 1.3.2 + ZBUFF_isError@Base 1.3.2 + ZBUFF_recommendedCInSize@Base 1.3.2 + ZBUFF_recommendedCOutSize@Base 1.3.2 + ZBUFF_recommendedDInSize@Base 1.3.2 + ZBUFF_recommendedDOutSize@Base 1.3.2 + ZDICT_addEntropyTablesFromBuffer@Base 1.3.2 + ZDICT_finalizeDictionary@Base 1.3.2 + ZDICT_getDictID@Base 1.3.2 + ZDICT_getErrorName@Base 1.3.2 + ZDICT_isError@Base 1.3.2 + ZDICT_optimizeTrainFromBuffer_cover@Base 1.3.2 + ZDICT_optimizeTrainFromBuffer_fastCover@Base 1.3.8 + ZDICT_trainFromBuffer@Base 1.3.2 + ZDICT_trainFromBuffer_cover@Base 1.3.2 + ZDICT_trainFromBuffer_fastCover@Base 1.3.8 + ZDICT_trainFromBuffer_legacy@Base 1.3.2 + ZSTDMT_compressCCtx@Base 1.3.2 + ZSTDMT_compressStream@Base 1.3.2 + ZSTDMT_compressStream_generic@Base 1.3.2 + ZSTDMT_compress_advanced@Base 1.3.2 + ZSTDMT_createCCtx@Base 1.3.2 + ZSTDMT_createCCtx_advanced@Base 1.3.2 + ZSTDMT_endStream@Base 1.3.2 + ZSTDMT_flushStream@Base 1.3.2 + ZSTDMT_freeCCtx@Base 1.3.2 + ZSTDMT_getMTCtxParameter@Base 1.3.5 + ZSTDMT_initCStream@Base 1.3.2 + ZSTDMT_initCStream_advanced@Base 1.3.2 + ZSTDMT_initCStream_usingCDict@Base 1.3.2 + ZSTDMT_nextInputSizeHint@Base 1.3.8 + ZSTDMT_resetCStream@Base 1.3.2 + ZSTDMT_setMTCtxParameter@Base 1.3.2 + ZSTDMT_sizeof_CCtx@Base 1.3.2 + ZSTD_CCtxParam_getParameter@Base 1.3.5 + ZSTD_CCtxParam_setParameter@Base 1.3.2 + ZSTD_CCtxParams_getParameter@Base 1.4.0 + (should only be used when static linking)ZSTD_CCtxParams_init@Base 1.3.4 + (should only be used when static linking)ZSTD_CCtxParams_init_advanced@Base 1.3.4 + (should only be used when static linking)ZSTD_CCtxParams_reset@Base 1.3.4 + ZSTD_CCtxParams_setParameter@Base 1.4.0 + ZSTD_CCtx_getParameter@Base 1.3.5 + ZSTD_CCtx_loadDictionary@Base 1.3.2 + ZSTD_CCtx_loadDictionary_advanced@Base 1.3.2 + ZSTD_CCtx_loadDictionary_byReference@Base 1.3.2 + ZSTD_CCtx_refCDict@Base 1.3.2 + ZSTD_CCtx_refPrefix@Base 1.3.2 + ZSTD_CCtx_refPrefix_advanced@Base 1.3.2 + ZSTD_CCtx_reset@Base 1.3.2 + ZSTD_CCtx_setParameter@Base 1.3.2 + ZSTD_CCtx_setParametersUsingCCtxParams@Base 1.3.2 + ZSTD_CCtx_setPledgedSrcSize@Base 1.3.2 + ZSTD_CStreamInSize@Base 1.3.2 + ZSTD_CStreamOutSize@Base 1.3.2 + ZSTD_DCtx_loadDictionary@Base 1.3.4 + ZSTD_DCtx_loadDictionary_advanced@Base 1.3.4 + ZSTD_DCtx_loadDictionary_byReference@Base 1.3.4 + ZSTD_DCtx_refDDict@Base 1.3.4 + ZSTD_DCtx_refPrefix@Base 1.3.4 + ZSTD_DCtx_refPrefix_advanced@Base 1.3.4 + ZSTD_DCtx_reset@Base 1.3.2 + ZSTD_DCtx_setFormat@Base 1.3.2 + ZSTD_DCtx_setMaxWindowSize@Base 1.3.2 + ZSTD_DCtx_setParameter@Base 1.3.8 + ZSTD_DStreamInSize@Base 1.3.2 + ZSTD_DStreamOutSize@Base 1.3.2 + ZSTD_adjustCParams@Base 1.3.2 + ZSTD_cParam_getBounds@Base 1.3.8 + ZSTD_checkCParams@Base 1.3.2 + ZSTD_compress2@Base 1.3.8 + ZSTD_compress@Base 1.3.2 + ZSTD_compressBegin@Base 1.3.2 + ZSTD_compressBegin_advanced@Base 1.3.2 + ZSTD_compressBegin_usingCDict@Base 1.3.2 + ZSTD_compressBegin_usingCDict_advanced@Base 1.3.2 + ZSTD_compressBegin_usingDict@Base 1.3.2 + ZSTD_compressBlock@Base 1.3.2 + ZSTD_compressBound@Base 1.3.2 + ZSTD_compressCCtx@Base 1.3.2 + ZSTD_compressContinue@Base 1.3.2 + ZSTD_compressEnd@Base 1.3.2 + ZSTD_compressStream2@Base 1.3.8 + ZSTD_compressStream2_simpleArgs@Base 1.3.8 + ZSTD_compressStream@Base 1.3.2 + ZSTD_compress_advanced@Base 1.3.2 + ZSTD_compress_usingCDict@Base 1.3.2 + ZSTD_compress_usingCDict_advanced@Base 1.3.2 + ZSTD_compress_usingDict@Base 1.3.2 + ZSTD_copyCCtx@Base 1.3.2 + ZSTD_copyDCtx@Base 1.3.2 + ZSTD_createCCtx@Base 1.3.2 + ZSTD_createCCtxParams@Base 1.3.2 + ZSTD_createCCtx_advanced@Base 1.3.2 + ZSTD_createCDict@Base 1.3.2 + ZSTD_createCDict_advanced@Base 1.3.2 + ZSTD_createCDict_byReference@Base 1.3.2 + ZSTD_createCStream@Base 1.3.2 + ZSTD_createCStream_advanced@Base 1.3.2 + ZSTD_createDCtx@Base 1.3.2 + ZSTD_createDCtx_advanced@Base 1.3.2 + ZSTD_createDDict@Base 1.3.2 + ZSTD_createDDict_advanced@Base 1.3.2 + ZSTD_createDDict_byReference@Base 1.3.2 + ZSTD_createDStream@Base 1.3.2 + ZSTD_createDStream_advanced@Base 1.3.2 + ZSTD_dParam_getBounds@Base 1.3.8 + ZSTD_decodingBufferSize_min@Base 1.3.2 + ZSTD_decompress@Base 1.3.2 + ZSTD_decompressBegin@Base 1.3.2 + ZSTD_decompressBegin_usingDDict@Base 1.3.2 + ZSTD_decompressBegin_usingDict@Base 1.3.2 + ZSTD_decompressBlock@Base 1.3.2 + ZSTD_decompressBound@Base 1.4.0 + ZSTD_decompressContinue@Base 1.3.2 + ZSTD_decompressDCtx@Base 1.3.2 + ZSTD_decompressStream@Base 1.3.2 + ZSTD_decompressStream_simpleArgs@Base 1.3.8 + ZSTD_decompress_usingDDict@Base 1.3.2 + ZSTD_decompress_usingDict@Base 1.3.2 + ZSTD_endStream@Base 1.3.2 + ZSTD_estimateCCtxSize@Base 1.3.2 + ZSTD_estimateCCtxSize_usingCCtxParams@Base 1.3.2 + ZSTD_estimateCCtxSize_usingCParams@Base 1.3.2 + ZSTD_estimateCDictSize@Base 1.3.2 + ZSTD_estimateCDictSize_advanced@Base 1.3.2 + ZSTD_estimateCStreamSize@Base 1.3.2 + ZSTD_estimateCStreamSize_usingCCtxParams@Base 1.3.2 + ZSTD_estimateCStreamSize_usingCParams@Base 1.3.2 + ZSTD_estimateDCtxSize@Base 1.3.2 + ZSTD_estimateDDictSize@Base 1.3.2 + ZSTD_estimateDStreamSize@Base 1.3.2 + ZSTD_estimateDStreamSize_fromFrame@Base 1.3.2 + ZSTD_findDecompressedSize@Base 1.3.2 + ZSTD_findFrameCompressedSize@Base 1.3.2 + ZSTD_flushStream@Base 1.3.2 + ZSTD_frameHeaderSize@Base 1.3.2 + ZSTD_freeCCtx@Base 1.3.2 + ZSTD_freeCCtxParams@Base 1.3.2 + ZSTD_freeCDict@Base 1.3.2 + ZSTD_freeCStream@Base 1.3.2 + ZSTD_freeDCtx@Base 1.3.2 + ZSTD_freeDDict@Base 1.3.2 + ZSTD_freeDStream@Base 1.3.2 + ZSTD_getBlockSize@Base 1.3.2 + ZSTD_getCParams@Base 1.3.2 + ZSTD_getDecompressedSize@Base 1.3.2 + ZSTD_getDictID_fromDDict@Base 1.3.2 + ZSTD_getDictID_fromDict@Base 1.3.2 + ZSTD_getDictID_fromFrame@Base 1.3.2 + ZSTD_getErrorCode@Base 1.3.2 + ZSTD_getErrorName@Base 1.3.2 + ZSTD_getErrorString@Base 1.3.2 + ZSTD_getFrameContentSize@Base 1.3.2 + ZSTD_getFrameHeader@Base 1.3.2 + ZSTD_getFrameHeader_advanced@Base 1.3.5 + ZSTD_getFrameProgression@Base 1.3.8 + ZSTD_getParams@Base 1.3.2 + ZSTD_getSequences@Base 1.4.4 + ZSTD_initCStream@Base 1.3.2 + ZSTD_initCStream_advanced@Base 1.3.2 + ZSTD_initCStream_srcSize@Base 1.3.2 + ZSTD_initCStream_usingCDict@Base 1.3.2 + ZSTD_initCStream_usingCDict_advanced@Base 1.3.2 + ZSTD_initCStream_usingDict@Base 1.3.2 + ZSTD_initDStream@Base 1.3.2 + ZSTD_initDStream_usingDDict@Base 1.3.2 + ZSTD_initDStream_usingDict@Base 1.3.2 + ZSTD_initStaticCCtx@Base 1.3.2 + ZSTD_initStaticCDict@Base 1.3.2 + ZSTD_initStaticCStream@Base 1.3.2 + ZSTD_initStaticDCtx@Base 1.3.2 + ZSTD_initStaticDDict@Base 1.3.2 + ZSTD_initStaticDStream@Base 1.3.2 + ZSTD_insertBlock@Base 1.3.2 + ZSTD_isError@Base 1.3.2 + ZSTD_isFrame@Base 1.3.2 + ZSTD_maxCLevel@Base 1.3.2 + ZSTD_minCLevel@Base 1.3.8 + ZSTD_nextInputType@Base 1.3.2 + ZSTD_nextSrcSizeToDecompress@Base 1.3.2 + ZSTD_resetCStream@Base 1.3.2 + ZSTD_resetDStream@Base 1.3.2 + ZSTD_sizeof_CCtx@Base 1.3.2 + ZSTD_sizeof_CDict@Base 1.3.2 + ZSTD_sizeof_CStream@Base 1.3.2 + ZSTD_sizeof_DCtx@Base 1.3.2 + ZSTD_sizeof_DDict@Base 1.3.2 + ZSTD_sizeof_DStream@Base 1.3.2 + ZSTD_toFlushNow@Base 1.3.8 + ZSTD_versionNumber@Base 1.3.2 + ZSTD_versionString@Base 1.3.2 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 index 0000000..57c6038 --- /dev/null +++ b/patches/0006-Use-bash-for-test-script-portablitity.patch @@ -0,0 +1,16 @@ +From: Kevin Murray +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(-) + +--- libzstd.orig/tests/playTests.sh ++++ libzstd/tests/playTests.sh +@@ -1,4 +1,4 @@ +-#!/bin/sh ++#!/bin/bash + + set -e + diff --git a/patches/0008-Address-embedded-zlib.patch b/patches/0008-Address-embedded-zlib.patch new file mode 100644 index 0000000..38cc42f --- /dev/null +++ b/patches/0008-Address-embedded-zlib.patch @@ -0,0 +1,45 @@ +Description: Do not build zlibWrapper examples against embedded code copies. +Author: Sascha Steinbiss +--- libzstd.orig/zlibWrapper/Makefile ++++ libzstd/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 +@@ -77,16 +77,16 @@ + #.c.o: + # $(CC) $(CFLAGS) $(CPPFLAGS) -c $< -o $@ + +-minigzip: $(EXAMPLE_PATH)/minigzip.o zstd_zlibwrapper.o $(GZFILES) $(ZSTDLIBRARY) ++minigzip: $(EXAMPLE_PATH)/minigzip.o zstd_zlibwrapper.o $(ZSTDLIBRARY) + $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $^ $(ZSTDLIBRARY) $(ZLIB_LIBRARY) -o $@ + +-minigzip_zstd: $(EXAMPLE_PATH)/minigzip.o zstdTurnedOn_zlibwrapper.o $(GZFILES) $(ZSTDLIBRARY) ++minigzip_zstd: $(EXAMPLE_PATH)/minigzip.o zstdTurnedOn_zlibwrapper.o $(ZSTDLIBRARY) + $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $^ $(ZSTDLIBRARY) $(ZLIB_LIBRARY) -o $@ + +-example: $(EXAMPLE_PATH)/example.o zstd_zlibwrapper.o $(GZFILES) $(ZSTDLIBRARY) ++example: $(EXAMPLE_PATH)/example.o zstd_zlibwrapper.o $(ZSTDLIBRARY) + $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $^ $(ZLIB_LIBRARY) -o $@ + +-example_zstd: $(EXAMPLE_PATH)/example.o zstdTurnedOn_zlibwrapper.o $(GZFILES) $(ZSTDLIBRARY) ++example_zstd: $(EXAMPLE_PATH)/example.o zstdTurnedOn_zlibwrapper.o $(ZSTDLIBRARY) + $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $^ $(ZLIB_LIBRARY) -o $@ + + fitblk: $(EXAMPLE_PATH)/fitblk.o zstd_zlibwrapper.o $(ZSTDLIBRARY) +--- libzstd.orig/zlibWrapper/examples/example.c ++++ libzstd/zlibWrapper/examples/example.c +@@ -27,7 +27,7 @@ + + /* @(#) $Id$ */ + +-#include "zstd_zlibwrapper.h" ++#include "zlib.h" + #include + + #ifdef STDC diff --git a/patches/0013-skip-memory-greedy-tests.patch b/patches/0013-skip-memory-greedy-tests.patch new file mode 100644 index 0000000..9882332 --- /dev/null +++ b/patches/0013-skip-memory-greedy-tests.patch @@ -0,0 +1,38 @@ +Subject: Skip memory heavy tests causing FTBFS on mips(el) and hurd buildds +From: Alex Mestiashvili +--- libzstd.orig/tests/playTests.sh ++++ libzstd/tests/playTests.sh +@@ -1103,8 +1103,13 @@ + roundTripTest -g5000000000 -P99 1 + roundTripTest -g1700000000 -P0 "1 --zstd=strategy=6" # ensure btlazy2 can survive an overflow rescale + +-fileRoundTripTest -g4193M -P99 1 +- ++DEBARCH=$(dpkg-architecture -qDEB_HOST_ARCH) ++if [ "$DEBARCH" != 'hurd-i386' ] ++then ++ fileRoundTripTest -g4193M -P99 1 ++else ++ println "\n**** skip memory greedy tests on $DEBARCH **** " ++fi + + println "\n===> zstd long, long distance matching round-trip tests " + roundTripTest -g270000000 "1 --single-thread --long" +@@ -1121,9 +1126,14 @@ + println "\n===> zstdmt long round-trip tests " + roundTripTest -g80000000 -P99 "19 -T2" " " + roundTripTest -g5000000000 -P99 "1 -T2" " " +- roundTripTest -g500000000 -P97 "1 -T999" " " +- fileRoundTripTest -g4103M -P98 " -T0" " " +- roundTripTest -g400000000 -P97 "1 --long=24 -T2" " " ++ if [ "$DEBARCH" != 'mips' -a "$DEBARCH" != 'mipsel' -a "$DEBARCH" != 'hurd-i386' ] ++ then ++ roundTripTest -g500000000 -P97 "1 -T999" " " ++ fileRoundTripTest -g4103M -P98 " -T0" " " ++ roundTripTest -g400000000 -P97 "1 --long=24 -T2" " " ++ else ++ println "\n**** skip memory greedy tests on $DEBARCH **** " ++ fi + # Exposes the bug in https://github.com/facebook/zstd/pull/1678 + # This test fails on 4 different travis builds at the time of writing + # because it needs to allocate 8 GB of memory. diff --git a/patches/0014-Reproducible-build.patch b/patches/0014-Reproducible-build.patch new file mode 100644 index 0000000..5d68baf --- /dev/null +++ b/patches/0014-Reproducible-build.patch @@ -0,0 +1,16 @@ +Description: Make the build reproducible +Author: Chris Lamb +Last-Update: 2018-05-04 +Applied-Upstream: https://github.com/facebook/zstd/commit/ef1abd3c071ce42a457404ee2bca6d5bebb87f62 + +--- libzstd.orig/contrib/pzstd/Options.cpp ++++ libzstd/contrib/pzstd/Options.cpp +@@ -77,7 +77,7 @@ void usage() { + std::fprintf(stderr, " -p, --processes # : number of threads to use for (de)compression (default:)\n"); + + std::fprintf(stderr, "ZSTD options:\n"); +- std::fprintf(stderr, " -# : # compression level (1-%d, default:%d)\n", kMaxNonUltraCompressionLevel, kDefaultCompressionLevel); ++ std::fprintf(stderr, " -# : # compression level (1-%d, default:)\n", kMaxNonUltraCompressionLevel); + std::fprintf(stderr, " -d, --decompress : decompression\n"); + std::fprintf(stderr, " -o file : result stored into `file` (only if 1 input file)\n"); + std::fprintf(stderr, " -f, --force : overwrite output without prompting, (de)compress links\n"); diff --git a/patches/0015-Skip-dev-random-tests-on-hurd.patch b/patches/0015-Skip-dev-random-tests-on-hurd.patch new file mode 100644 index 0000000..002492b --- /dev/null +++ b/patches/0015-Skip-dev-random-tests-on-hurd.patch @@ -0,0 +1,36 @@ +Description: Skip test failing on GNU/Hurd when writing on /dev/zero or + /dev/random. On different GNU/Hurd installations writing to either one or + another would fail. Currently writing to /dev/random results in the message + "Computer bought the farm" and exit status 1 + See also: https://github.com/facebook/zstd/issues/1116 +From: Alex Mestiashvili +--- libzstd.orig/tests/playTests.sh ++++ libzstd/tests/playTests.sh +@@ -251,14 +251,19 @@ + test ! -f tmp # tmp should no longer be present + $ZSTD -f -d --rm tmp.zst + test ! -f tmp.zst # tmp.zst should no longer be present +-println "test : should quietly not remove non-regular file" +-println hello > tmp +-$ZSTD tmp -f -o "$DEVDEVICE" 2>tmplog > "$INTOVOID" +-grep -v "Refusing to remove non-regular file" tmplog +-rm -f tmplog +-$ZSTD tmp -f -o "$INTOVOID" 2>&1 | grep -v "Refusing to remove non-regular file" +-println "test : --rm on stdin" +-println a | $ZSTD --rm > $INTOVOID # --rm should remain silent ++if [ "$(dpkg-architecture -qDEB_HOST_ARCH)" != 'hurd-i386' ] ++then ++ println "test : should quietly not remove non-regular file" ++ println hello > tmp ++ $ZSTD tmp -f -o "$DEVDEVICE" 2>tmplog > "$INTOVOID" ++ grep -v "Refusing to remove non-regular file" tmplog ++ rm -f tmplog ++ $ZSTD tmp -f -o "$INTOVOID" 2>&1 | grep -v "Refusing to remove non-regular file" ++ println "test : --rm on stdin" ++ println a | $ZSTD --rm > $INTOVOID # --rm should remain silent ++else ++ println "\n**** This test on $DEBARCH fails with \"Computer bought the farm\" **** " ++fi + rm tmp + $ZSTD -f tmp && die "tmp not present : should have failed" + test ! -f tmp.zst # tmp.zst should not be created diff --git a/patches/0018-Alias-renamed-API-symbols.patch b/patches/0018-Alias-renamed-API-symbols.patch new file mode 100644 index 0000000..2ced3e7 --- /dev/null +++ b/patches/0018-Alias-renamed-API-symbols.patch @@ -0,0 +1,48 @@ +Description: Alias renamed API symbols + Add aliases for two renamed but unchanged symbols to avoid a useless + dependency. Add compiler warnings when compiling against the old symbols. +Author: Justin Aplin +--- libzstd.orig/lib/compress/zstd_compress.c ++++ libzstd/lib/compress/zstd_compress.c +@@ -518,6 +518,10 @@ + return ZSTD_CCtxParams_setParameter(&cctx->requestedParams, param, value); + } + ++size_t ZSTD_CCtxParam_setParameter( ++ ZSTD_CCtx_params* CCtxParams, ZSTD_cParameter param, int value) ++ __attribute__((alias("ZSTD_CCtxParams_setParameter"))); ++ + size_t ZSTD_CCtxParams_setParameter(ZSTD_CCtx_params* CCtxParams, + ZSTD_cParameter param, int value) + { +@@ -706,6 +710,10 @@ + return ZSTD_CCtxParams_getParameter(&cctx->requestedParams, param, value); + } + ++size_t ZSTD_CCtxParam_getParameter( ++ ZSTD_CCtx_params* CCtxParams, ZSTD_cParameter param, int* value) ++ __attribute__((alias("ZSTD_CCtxParams_getParameter"))); ++ + size_t ZSTD_CCtxParams_getParameter( + ZSTD_CCtx_params* CCtxParams, ZSTD_cParameter param, int* value) + { +--- libzstd.orig/lib/zstd.h ++++ libzstd/lib/zstd.h +@@ -1560,6 +1560,8 @@ + * @result : 0, or an error code (which can be tested with ZSTD_isError()). + */ + ZSTDLIB_API size_t ZSTD_CCtxParams_setParameter(ZSTD_CCtx_params* params, ZSTD_cParameter param, int value); ++ZSTDLIB_API size_t ZSTD_CCtxParam_setParameter(ZSTD_CCtx_params* params, ZSTD_cParameter param, int value) ++ __attribute__ ((deprecated ("Deprecated in 1.4.0, use ZSTD_CCtxParams_setParameter instead"))); + + /*! ZSTD_CCtxParams_getParameter() : + * Similar to ZSTD_CCtx_getParameter. +@@ -1567,6 +1569,8 @@ + * @result : 0, or an error code (which can be tested with ZSTD_isError()). + */ + ZSTDLIB_API size_t ZSTD_CCtxParams_getParameter(ZSTD_CCtx_params* params, ZSTD_cParameter param, int* value); ++ZSTDLIB_API size_t ZSTD_CCtxParam_getParameter(ZSTD_CCtx_params* params, ZSTD_cParameter param, int* value) ++ __attribute__ ((deprecated ("Deprecated in 1.4.0, use ZSTD_CCtxParams_getParameter instead"))); + + /*! ZSTD_CCtx_setParametersUsingCCtxParams() : + * Apply a set of ZSTD_CCtx_params to the compression context. diff --git a/patches/0019-blhc-workarounds.patch b/patches/0019-blhc-workarounds.patch new file mode 100644 index 0000000..6b270a9 --- /dev/null +++ b/patches/0019-blhc-workarounds.patch @@ -0,0 +1,668 @@ +Description: blhc workarounds + Builds zstd-small (not included in any packages) with + hardening flags. + Provides verbosity to blhc by removing most @s from Makefiles. + Slightly changes some status-related @echos to prevent false- + positive "Nonverbose Build" errors from blhc. +Author: Justin Aplin +--- libzstd.orig/Makefile ++++ libzstd/Makefile +@@ -46,16 +46,16 @@ + + .PHONY: lib lib-release libzstd.a + lib lib-release : +- @$(MAKE) -C $(ZSTDDIR) $@ ++ $(MAKE) -C $(ZSTDDIR) $@ + + .PHONY: zstd zstd-release + zstd zstd-release: +- @$(MAKE) -C $(PRGDIR) $@ ++ $(MAKE) -C $(PRGDIR) $@ + cp $(PRGDIR)/zstd$(EXT) . + + .PHONY: zstdmt + zstdmt: +- @$(MAKE) -C $(PRGDIR) $@ ++ $(MAKE) -C $(PRGDIR) $@ + cp $(PRGDIR)/zstd$(EXT) ./zstdmt$(EXT) + + .PHONY: zlibwrapper +@@ -109,18 +109,18 @@ + + .PHONY: clean + clean: +- @$(MAKE) -C $(ZSTDDIR) $@ > $(VOID) +- @$(MAKE) -C $(PRGDIR) $@ > $(VOID) +- @$(MAKE) -C $(TESTDIR) $@ > $(VOID) +- @$(MAKE) -C $(ZWRAPDIR) $@ > $(VOID) +- @$(MAKE) -C examples/ $@ > $(VOID) +- @$(MAKE) -C contrib/gen_html $@ > $(VOID) +- @$(MAKE) -C contrib/pzstd $@ > $(VOID) +- @$(MAKE) -C contrib/seekable_format/examples $@ > $(VOID) +- @$(MAKE) -C contrib/largeNbDicts $@ > $(VOID) +- @$(RM) zstd$(EXT) zstdmt$(EXT) tmp* +- @$(RM) -r lz4 +- @echo Cleaning completed ++ $(MAKE) -C $(ZSTDDIR) $@ > $(VOID) ++ $(MAKE) -C $(PRGDIR) $@ > $(VOID) ++ $(MAKE) -C $(TESTDIR) $@ > $(VOID) ++ $(MAKE) -C $(ZWRAPDIR) $@ > $(VOID) ++ $(MAKE) -C examples/ $@ > $(VOID) ++ $(MAKE) -C contrib/gen_html $@ > $(VOID) ++ $(MAKE) -C contrib/pzstd $@ > $(VOID) ++ $(MAKE) -C contrib/seekable_format/examples $@ > $(VOID) ++ $(MAKE) -C contrib/largeNbDicts $@ > $(VOID) ++ $(RM) zstd$(EXT) zstdmt$(EXT) tmp* ++ $(RM) -r lz4 ++ @echo "Cleaning completed" + + #------------------------------------------------------------------------------ + # make install is validated only for Linux, macOS, Hurd and some BSD targets +@@ -143,7 +143,7 @@ + ## list: Print all targets and their descriptions (if provided) + .PHONY: list + list: +- @TARGETS=$$($(MAKE) -pRrq -f $(lastword $(MAKEFILE_LIST)) : 2>/dev/null \ ++ TARGETS=$$($(MAKE) -pRrq -f $(lastword $(MAKEFILE_LIST)) : 2>/dev/null \ + | awk -v RS= -F: '/^# File/,/^# Finished Make data base/ {if ($$1 !~ "^[#.]") {print $$1}}' \ + | $(EGREP) -v -e '^[^[:alnum:]]' | sort); \ + { \ +@@ -158,13 +158,13 @@ + + .PHONY: install armtest usan asan uasan + install: +- @$(MAKE) -C $(ZSTDDIR) $@ +- @$(MAKE) -C $(PRGDIR) $@ ++ $(MAKE) -C $(ZSTDDIR) $@ ++ $(MAKE) -C $(PRGDIR) $@ + + .PHONY: uninstall + uninstall: +- @$(MAKE) -C $(ZSTDDIR) $@ +- @$(MAKE) -C $(PRGDIR) $@ ++ $(MAKE) -C $(ZSTDDIR) $@ ++ $(MAKE) -C $(PRGDIR) $@ + + .PHONY: travis-install + travis-install: +--- libzstd.orig/contrib/gen_html/Makefile ++++ libzstd/contrib/gen_html/Makefile +@@ -47,5 +47,5 @@ + + .PHONY: clean + clean: +- @$(RM) gen_html$(EXT) +- @echo Cleaning completed ++ $(RM) gen_html$(EXT) ++ @echo "Cleaning completed" +--- libzstd.orig/contrib/linux-kernel/test/Makefile ++++ libzstd/contrib/linux-kernel/test/Makefile +@@ -26,17 +26,17 @@ + + # Install libfuzzer + libFuzzer.a: +- @$(RM) -rf Fuzzer +- @git clone https://chromium.googlesource.com/chromium/llvm-project/llvm/lib/Fuzzer +- @./Fuzzer/build.sh ++ $(RM) -rf Fuzzer ++ git clone https://chromium.googlesource.com/chromium/llvm-project/llvm/lib/Fuzzer ++ ./Fuzzer/build.sh + + # Install googletest + .PHONY: googletest + googletest: +- @$(RM) -rf googletest +- @git clone https://github.com/google/googletest +- @mkdir -p googletest/build +- @cd googletest/build && cmake .. && $(MAKE) ++ $(RM) -rf googletest ++ git clone https://github.com/google/googletest ++ mkdir -p googletest/build ++ cd googletest/build && cmake .. && $(MAKE) + + clean: + $(RM) -f *.{o,a} ../lib/zstd/*.{o,a} ../lib/*.o +--- libzstd.orig/contrib/pzstd/Makefile ++++ libzstd/contrib/pzstd/Makefile +@@ -214,10 +214,10 @@ + .PHONY: googletest + googletest: PZSTD_CCXXFLAGS += -fPIC + googletest: +- @$(RM) -rf googletest +- @git clone https://github.com/google/googletest +- @mkdir -p googletest/build +- @cd googletest/build && cmake $(GTEST_CMAKEFLAGS) -DCMAKE_CXX_FLAGS="$(ALL_CXXFLAGS)" .. && $(MAKE) ++ $(RM) -rf googletest ++ git clone https://github.com/google/googletest ++ mkdir -p googletest/build ++ cd googletest/build && cmake $(GTEST_CMAKEFLAGS) -DCMAKE_CXX_FLAGS="$(ALL_CXXFLAGS)" .. && $(MAKE) + + .PHONY: googletest32 + googletest32: PZSTD_CCXXFLAGS += -m32 +@@ -234,7 +234,7 @@ + $(RM) -f utils/test/*.o utils/test/*Test$(EXT) utils/test/*.Td utils/test/*.d + $(RM) -f $(PROGDIR)/*.o $(PROGDIR)/*.Td $(PROGDIR)/*.d + $(MAKE) -C $(ZSTDDIR) clean +- @echo Cleaning completed ++ @echo "Cleaning completed" + + + # Cancel implicit rules +--- libzstd.orig/contrib/seekable_format/examples/Makefile ++++ libzstd/contrib/seekable_format/examples/Makefile +@@ -46,8 +46,8 @@ + $(CC) $(CPPFLAGS) $(CFLAGS) $^ $(LDFLAGS) -o $@ -pthread + + clean: +- @rm -f core *.o tmp* result* *.zst \ ++ rm -f core *.o tmp* result* *.zst \ + seekable_compression seekable_decompression \ + seekable_decompression_mem \ + parallel_processing parallel_compression +- @echo Cleaning completed ++ @echo "Cleaning completed" +--- libzstd.orig/doc/educational_decoder/Makefile ++++ libzstd/doc/educational_decoder/Makefile +@@ -36,27 +36,27 @@ + $(CC) $(FLAGS) $^ -o $@ + + clean: +- @$(RM) harness +- @$(RM) -rf harness.dSYM # MacOS specific ++ $(RM) harness ++ $(RM) -rf harness.dSYM # MacOS specific + + test: harness + # + # Testing single-file decompression with educational decoder + # +- @$(ZSTD) -f README.md -o tmp.zst +- @./harness tmp.zst tmp +- @$(DIFF) -s tmp README.md +- @$(RM) tmp* ++ $(ZSTD) -f README.md -o tmp.zst ++ ./harness tmp.zst tmp ++ $(DIFF) -s tmp README.md ++ $(RM) tmp* + # + # Testing dictionary decompression with education decoder + # + # note : files are presented multiple for training, to reach minimum threshold +- @$(ZSTD) --train harness.c zstd_decompress.c zstd_decompress.h README.md \ ++ $(ZSTD) --train harness.c zstd_decompress.c zstd_decompress.h README.md \ + harness.c zstd_decompress.c zstd_decompress.h README.md \ + harness.c zstd_decompress.c zstd_decompress.h README.md \ + -o dictionary +- @$(ZSTD) -f README.md -D dictionary -o tmp.zst +- @./harness tmp.zst tmp dictionary +- @$(DIFF) -s tmp README.md +- @$(RM) tmp* dictionary +- @$(MAKE) clean ++ $(ZSTD) -f README.md -D dictionary -o tmp.zst ++ ./harness tmp.zst tmp dictionary ++ $(DIFF) -s tmp README.md ++ $(RM) tmp* dictionary ++ $(MAKE) clean +--- libzstd.orig/examples/Makefile ++++ libzstd/examples/Makefile +@@ -53,37 +53,37 @@ + $(CC) $(CPPFLAGS) $(CFLAGS) $< $(LIB) $(LDFLAGS) -o $@ + + clean: +- @rm -f core *.o tmp* result* *.zst \ ++ rm -f core *.o tmp* result* *.zst \ + simple_compression simple_decompression \ + multiple_simple_compression \ + dictionary_compression dictionary_decompression \ + streaming_compression streaming_decompression \ + multiple_streaming_compression streaming_memory_usage +- @echo Cleaning completed ++ @echo "Cleaning completed" + + test: all + cp README.md tmp + cp Makefile tmp2 +- @echo -- Simple compression tests ++ @echo "-- Simple compression tests" + ./simple_compression tmp + ./simple_decompression tmp.zst + ./multiple_simple_compression *.c + ./streaming_decompression tmp.zst > /dev/null +- @echo -- Streaming memory usage ++ @echo "-- Streaming memory usage" + ./streaming_memory_usage +- @echo -- Streaming compression tests ++ @echo "-- Streaming compression tests" + ./streaming_compression tmp + ./streaming_decompression tmp.zst > /dev/null +- @echo -- Edge cases detection ++ @echo "-- Edge cases detection" + ! ./streaming_decompression tmp # invalid input, must fail + ! ./simple_decompression tmp # invalid input, must fail + touch tmpNull # create 0-size file + ./simple_compression tmpNull + ./simple_decompression tmpNull.zst # 0-size frame : must work +- @echo -- Multiple streaming tests ++ @echo "-- Multiple streaming tests" + ./multiple_streaming_compression *.c +- @echo -- Dictionary compression tests ++ @echo "-- Dictionary compression tests" + ./dictionary_compression tmp2 tmp README.md + ./dictionary_decompression tmp2.zst tmp.zst README.md + $(RM) tmp* *.zst +- @echo tests completed ++ @echo "tests completed" +--- libzstd.orig/lib/Makefile ++++ libzstd/lib/Makefile +@@ -150,8 +150,8 @@ + + libzstd.a: ARFLAGS = rcs + libzstd.a: $(ZSTD_OBJ) +- @echo compiling static library +- @$(AR) $(ARFLAGS) $@ $^ ++ @echo "==> compiling static library" ++ $(AR) $(ARFLAGS) $@ $^ + + libzstd.a-mt: CPPFLAGS += -DZSTD_MULTITHREAD + libzstd.a-mt: libzstd.a +@@ -160,7 +160,7 @@ + + LIBZSTD = dll\libzstd.dll + $(LIBZSTD): $(ZSTD_FILES) +- @echo compiling dynamic library $(LIBVER) ++ @echo "==> compiling dynamic library $(LIBVER)" + $(CC) $(FLAGS) -DZSTD_DLL_EXPORT=1 -Wl,--out-implib,dll\libzstd.lib -shared $^ -o $@ + + else +@@ -168,11 +168,11 @@ + LIBZSTD = libzstd.$(SHARED_EXT_VER) + $(LIBZSTD): LDFLAGS += -shared -fPIC -fvisibility=hidden + $(LIBZSTD): $(ZSTD_FILES) +- @echo compiling dynamic library $(LIBVER) +- @$(CC) $(FLAGS) $^ $(LDFLAGS) $(SONAME_FLAGS) -o $@ +- @echo creating versioned links +- @ln -sf $@ libzstd.$(SHARED_EXT_MAJOR) +- @ln -sf $@ libzstd.$(SHARED_EXT) ++ @echo "==> compiling dynamic library $(LIBVER)" ++ $(CC) $(FLAGS) $^ $(LDFLAGS) $(SONAME_FLAGS) -o $@ ++ @echo "creating versioned links" ++ ln -sf $@ libzstd.$(SHARED_EXT_MAJOR) ++ ln -sf $@ libzstd.$(SHARED_EXT) + + endif + +@@ -196,16 +196,16 @@ + ZSTD_NOMT_FILES = $(filter-out $(ZSTDMT_FILES),$(ZSTD_FILES)) + libzstd-nomt: LDFLAGS += -shared -fPIC -fvisibility=hidden + libzstd-nomt: $(ZSTD_NOMT_FILES) +- @echo compiling single-thread dynamic library $(LIBVER) +- @echo files : $(ZSTD_NOMT_FILES) +- @$(CC) $(FLAGS) $^ $(LDFLAGS) $(SONAME_FLAGS) -o $@ ++ @echo "==> compiling single-thread dynamic library $(LIBVER)" ++ @echo "files : $(ZSTD_NOMT_FILES)" ++ $(CC) $(FLAGS) $^ $(LDFLAGS) $(SONAME_FLAGS) -o $@ + + clean: +- @$(RM) -r *.dSYM # macOS-specific +- @$(RM) core *.o *.a *.gcda *.$(SHARED_EXT) *.$(SHARED_EXT).* libzstd.pc +- @$(RM) dll/libzstd.dll dll/libzstd.lib libzstd-nomt* +- @$(RM) common/*.o compress/*.o decompress/*.o dictBuilder/*.o legacy/*.o deprecated/*.o +- @echo Cleaning library completed ++ $(RM) -r *.dSYM # macOS-specific ++ $(RM) core *.o *.a *.gcda *.$(SHARED_EXT) *.$(SHARED_EXT).* libzstd.pc ++ $(RM) dll/libzstd.dll dll/libzstd.lib libzstd-nomt* ++ $(RM) common/*.o compress/*.o decompress/*.o dictBuilder/*.o legacy/*.o deprecated/*.o ++ @echo "Cleaning library completed" + + #----------------------------------------------------------------------------- + # make install is validated only for Linux, macOS, BSD, Hurd and Solaris targets +@@ -242,48 +242,48 @@ + + libzstd.pc: + libzstd.pc: libzstd.pc.in +- @echo creating pkgconfig +- @sed -e 's|@PREFIX@|$(PREFIX)|' \ ++ @echo "creating pkgconfig" ++ sed -e 's|@PREFIX@|$(PREFIX)|' \ + -e 's|@VERSION@|$(VERSION)|' \ + $< >$@ + + install: install-pc install-static install-shared install-includes +- @echo zstd static and shared library installed ++ @echo "zstd static and shared library installed" + + install-pc: libzstd.pc +- @$(INSTALL) -d -m 755 $(DESTDIR)$(PKGCONFIGDIR)/ +- @$(INSTALL_DATA) libzstd.pc $(DESTDIR)$(PKGCONFIGDIR)/ ++ $(INSTALL) -d -m 755 $(DESTDIR)$(PKGCONFIGDIR)/ ++ $(INSTALL_DATA) libzstd.pc $(DESTDIR)$(PKGCONFIGDIR)/ + + install-static: libzstd.a +- @echo Installing static library +- @$(INSTALL) -d -m 755 $(DESTDIR)$(LIBDIR)/ +- @$(INSTALL_DATA) libzstd.a $(DESTDIR)$(LIBDIR) ++ @echo "Installing static library" ++ $(INSTALL) -d -m 755 $(DESTDIR)$(LIBDIR)/ ++ $(INSTALL_DATA) libzstd.a $(DESTDIR)$(LIBDIR) + + install-shared: libzstd +- @echo Installing shared library +- @$(INSTALL) -d -m 755 $(DESTDIR)$(LIBDIR)/ +- @$(INSTALL_PROGRAM) $(LIBZSTD) $(DESTDIR)$(LIBDIR) +- @ln -sf $(LIBZSTD) $(DESTDIR)$(LIBDIR)/libzstd.$(SHARED_EXT_MAJOR) +- @ln -sf $(LIBZSTD) $(DESTDIR)$(LIBDIR)/libzstd.$(SHARED_EXT) ++ @echo "Installing shared library" ++ $(INSTALL) -d -m 755 $(DESTDIR)$(LIBDIR)/ ++ $(INSTALL_PROGRAM) $(LIBZSTD) $(DESTDIR)$(LIBDIR) ++ ln -sf $(LIBZSTD) $(DESTDIR)$(LIBDIR)/libzstd.$(SHARED_EXT_MAJOR) ++ ln -sf $(LIBZSTD) $(DESTDIR)$(LIBDIR)/libzstd.$(SHARED_EXT) + + install-includes: +- @echo Installing includes +- @$(INSTALL) -d -m 755 $(DESTDIR)$(INCLUDEDIR)/ +- @$(INSTALL_DATA) zstd.h $(DESTDIR)$(INCLUDEDIR) +- @$(INSTALL_DATA) common/zstd_errors.h $(DESTDIR)$(INCLUDEDIR) +- @$(INSTALL_DATA) deprecated/zbuff.h $(DESTDIR)$(INCLUDEDIR) # prototypes generate deprecation warnings +- @$(INSTALL_DATA) dictBuilder/zdict.h $(DESTDIR)$(INCLUDEDIR) ++ @echo "Installing includes" ++ $(INSTALL) -d -m 755 $(DESTDIR)$(INCLUDEDIR)/ ++ $(INSTALL_DATA) zstd.h $(DESTDIR)$(INCLUDEDIR) ++ $(INSTALL_DATA) common/zstd_errors.h $(DESTDIR)$(INCLUDEDIR) ++ $(INSTALL_DATA) deprecated/zbuff.h $(DESTDIR)$(INCLUDEDIR) # prototypes generate deprecation warnings ++ $(INSTALL_DATA) dictBuilder/zdict.h $(DESTDIR)$(INCLUDEDIR) + + uninstall: +- @$(RM) $(DESTDIR)$(LIBDIR)/libzstd.a +- @$(RM) $(DESTDIR)$(LIBDIR)/libzstd.$(SHARED_EXT) +- @$(RM) $(DESTDIR)$(LIBDIR)/libzstd.$(SHARED_EXT_MAJOR) +- @$(RM) $(DESTDIR)$(LIBDIR)/$(LIBZSTD) +- @$(RM) $(DESTDIR)$(PKGCONFIGDIR)/libzstd.pc +- @$(RM) $(DESTDIR)$(INCLUDEDIR)/zstd.h +- @$(RM) $(DESTDIR)$(INCLUDEDIR)/zstd_errors.h +- @$(RM) $(DESTDIR)$(INCLUDEDIR)/zbuff.h # Deprecated streaming functions +- @$(RM) $(DESTDIR)$(INCLUDEDIR)/zdict.h +- @echo zstd libraries successfully uninstalled ++ $(RM) $(DESTDIR)$(LIBDIR)/libzstd.a ++ $(RM) $(DESTDIR)$(LIBDIR)/libzstd.$(SHARED_EXT) ++ $(RM) $(DESTDIR)$(LIBDIR)/libzstd.$(SHARED_EXT_MAJOR) ++ $(RM) $(DESTDIR)$(LIBDIR)/$(LIBZSTD) ++ $(RM) $(DESTDIR)$(PKGCONFIGDIR)/libzstd.pc ++ $(RM) $(DESTDIR)$(INCLUDEDIR)/zstd.h ++ $(RM) $(DESTDIR)$(INCLUDEDIR)/zstd_errors.h ++ $(RM) $(DESTDIR)$(INCLUDEDIR)/zbuff.h # Deprecated streaming functions ++ $(RM) $(DESTDIR)$(INCLUDEDIR)/zdict.h ++ @echo "zstd libraries successfully uninstalled" + + endif +--- libzstd.orig/programs/Makefile ++++ libzstd/programs/Makefile +@@ -221,7 +221,7 @@ + $(MAKE) zstd MOREFLAGS=-fprofile-use + + # minimal target, with only zstd compression and decompression. no bench. no legacy. +-zstd-small: CFLAGS = -Os -s ++zstd-small: CFLAGS = -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -Os -s + zstd-frugal zstd-small: $(ZSTD_FILES) zstdcli.c util.c timefn.c fileio.c + $(CC) $(FLAGS) -DZSTD_NOBENCH -DZSTD_NODICT $^ -o $@$(EXT) + +@@ -241,12 +241,12 @@ + .PHONY: clean + clean: + $(MAKE) -C $(ZSTDDIR) clean +- @$(RM) $(ZSTDDIR)/decompress/*.o $(ZSTDDIR)/decompress/zstd_decompress.gcda +- @$(RM) core *.o tmp* result* *.gcda dictionary *.zst \ ++ $(RM) $(ZSTDDIR)/decompress/*.o $(ZSTDDIR)/decompress/zstd_decompress.gcda ++ $(RM) core *.o tmp* result* *.gcda dictionary *.zst \ + zstd$(EXT) zstd32$(EXT) zstd-compress$(EXT) zstd-decompress$(EXT) \ + zstd-small$(EXT) zstd-frugal$(EXT) zstd-nolegacy$(EXT) zstd4$(EXT) \ + *.gcda default.profraw have_zlib$(EXT) +- @echo Cleaning completed ++ @echo "Cleaning completed" + + MD2ROFF = ronn + MD2ROFF_FLAGS = --roff --warnings --manual="User Commands" --organization="zstd $(ZSTD_VERSION)" +@@ -293,7 +293,7 @@ + ## list: Print all targets and their descriptions (if provided) + .PHONY: list + list: +- @TARGETS=$$($(MAKE) -pRrq -f $(lastword $(MAKEFILE_LIST)) : 2>/dev/null \ ++ TARGETS=$$($(MAKE) -pRrq -f $(lastword $(MAKEFILE_LIST)) : 2>/dev/null \ + | awk -v RS= -F: '/^# File/,/^# Finished Make data base/ {if ($$1 !~ "^[#.]") {print $$1}}' \ + | $(EGREP) -v -e '^[^[:alnum:]]' | sort); \ + { \ +@@ -340,35 +340,35 @@ + + .PHONY: install + install: zstd +- @echo Installing binaries +- @$(INSTALL) -d -m 755 $(DESTDIR)$(BINDIR)/ $(DESTDIR)$(MAN1DIR)/ +- @$(INSTALL_PROGRAM) zstd $(DESTDIR)$(BINDIR)/zstd +- @ln -sf zstd $(DESTDIR)$(BINDIR)/zstdcat +- @ln -sf zstd $(DESTDIR)$(BINDIR)/unzstd +- @ln -sf zstd $(DESTDIR)$(BINDIR)/zstdmt +- @$(INSTALL_SCRIPT) zstdless $(DESTDIR)$(BINDIR)/zstdless +- @$(INSTALL_SCRIPT) zstdgrep $(DESTDIR)$(BINDIR)/zstdgrep +- @echo Installing man pages +- @$(INSTALL_MAN) zstd.1 $(DESTDIR)$(MAN1DIR)/zstd.1 +- @ln -sf zstd.1 $(DESTDIR)$(MAN1DIR)/zstdcat.1 +- @ln -sf zstd.1 $(DESTDIR)$(MAN1DIR)/unzstd.1 +- @$(INSTALL_MAN) zstdgrep.1 $(DESTDIR)$(MAN1DIR)/zstdgrep.1 +- @$(INSTALL_MAN) zstdless.1 $(DESTDIR)$(MAN1DIR)/zstdless.1 +- @echo zstd installation completed ++ @echo "Installing binaries" ++ $(INSTALL) -d -m 755 $(DESTDIR)$(BINDIR)/ $(DESTDIR)$(MAN1DIR)/ ++ $(INSTALL_PROGRAM) zstd $(DESTDIR)$(BINDIR)/zstd ++ ln -sf zstd $(DESTDIR)$(BINDIR)/zstdcat ++ ln -sf zstd $(DESTDIR)$(BINDIR)/unzstd ++ ln -sf zstd $(DESTDIR)$(BINDIR)/zstdmt ++ $(INSTALL_SCRIPT) zstdless $(DESTDIR)$(BINDIR)/zstdless ++ $(INSTALL_SCRIPT) zstdgrep $(DESTDIR)$(BINDIR)/zstdgrep ++ @echo "Installing man pages" ++ $(INSTALL_MAN) zstd.1 $(DESTDIR)$(MAN1DIR)/zstd.1 ++ ln -sf zstd.1 $(DESTDIR)$(MAN1DIR)/zstdcat.1 ++ ln -sf zstd.1 $(DESTDIR)$(MAN1DIR)/unzstd.1 ++ $(INSTALL_MAN) zstdgrep.1 $(DESTDIR)$(MAN1DIR)/zstdgrep.1 ++ $(INSTALL_MAN) zstdless.1 $(DESTDIR)$(MAN1DIR)/zstdless.1 ++ @echo "zstd installation completed" + + .PHONY: uninstall + uninstall: +- @$(RM) $(DESTDIR)$(BINDIR)/zstdgrep +- @$(RM) $(DESTDIR)$(BINDIR)/zstdless +- @$(RM) $(DESTDIR)$(BINDIR)/zstdcat +- @$(RM) $(DESTDIR)$(BINDIR)/unzstd +- @$(RM) $(DESTDIR)$(BINDIR)/zstdmt +- @$(RM) $(DESTDIR)$(BINDIR)/zstd +- @$(RM) $(DESTDIR)$(MAN1DIR)/zstdless.1 +- @$(RM) $(DESTDIR)$(MAN1DIR)/zstdgrep.1 +- @$(RM) $(DESTDIR)$(MAN1DIR)/zstdcat.1 +- @$(RM) $(DESTDIR)$(MAN1DIR)/unzstd.1 +- @$(RM) $(DESTDIR)$(MAN1DIR)/zstd.1 +- @echo zstd programs successfully uninstalled ++ $(RM) $(DESTDIR)$(BINDIR)/zstdgrep ++ $(RM) $(DESTDIR)$(BINDIR)/zstdless ++ $(RM) $(DESTDIR)$(BINDIR)/zstdcat ++ $(RM) $(DESTDIR)$(BINDIR)/unzstd ++ $(RM) $(DESTDIR)$(BINDIR)/zstdmt ++ $(RM) $(DESTDIR)$(BINDIR)/zstd ++ $(RM) $(DESTDIR)$(MAN1DIR)/zstdless.1 ++ $(RM) $(DESTDIR)$(MAN1DIR)/zstdgrep.1 ++ $(RM) $(DESTDIR)$(MAN1DIR)/zstdcat.1 ++ $(RM) $(DESTDIR)$(MAN1DIR)/unzstd.1 ++ $(RM) $(DESTDIR)$(MAN1DIR)/zstd.1 ++ @echo "zstd programs successfully uninstalled" + + endif +--- libzstd.orig/tests/Makefile ++++ libzstd/tests/Makefile +@@ -79,7 +79,7 @@ + .PHONY: default all all32 allnothread dll clean test test32 test-all versionsTest + + default: fullbench +- @echo $(ZSTDMT_OBJECTS) ++ @echo "$(ZSTDMT_OBJECTS)" + + all: fullbench fuzzer zstreamtest paramgrill datagen decodecorpus roundTripCrash \ + fullbench-lib poolTests +@@ -243,9 +243,9 @@ + clean: + $(MAKE) -C $(ZSTDDIR) clean + $(MAKE) -C $(PRGDIR) clean +- @$(RM) -fR $(TESTARTEFACT) +- @$(RM) -rf tmp* # some test directories are named tmp* +- @$(RM) core *.o *.tmp result* *.gcda dictionary *.zst \ ++ $(RM) -fR $(TESTARTEFACT) ++ $(RM) -rf tmp* # some test directories are named tmp* ++ $(RM) core *.o *.tmp result* *.gcda dictionary *.zst \ + $(PRGDIR)/zstd$(EXT) $(PRGDIR)/zstd32$(EXT) \ + fullbench$(EXT) fullbench32$(EXT) \ + fullbench-lib$(EXT) fullbench-dll$(EXT) \ +@@ -255,7 +255,7 @@ + datagen$(EXT) paramgrill$(EXT) roundTripCrash$(EXT) longmatch$(EXT) \ + symbols$(EXT) invalidDictionaries$(EXT) legacy$(EXT) poolTests$(EXT) \ + decodecorpus$(EXT) checkTag$(EXT) bigdict$(EXT) +- @echo Cleaning completed ++ @echo "Cleaning completed" + + + #---------------------------------------------------------------------------------- +@@ -274,7 +274,7 @@ + ./datagen -g2930KB | $(VALGRIND) $(PRGDIR)/zstd -5 -vf - -o tmp + $(VALGRIND) $(PRGDIR)/zstd -vdf tmp -c > $(VOID) + ./datagen -g64MB | $(VALGRIND) $(PRGDIR)/zstd -vf - -c > $(VOID) +- @rm tmp ++ rm tmp + $(VALGRIND) ./fuzzer -T1mn -t1 + $(VALGRIND) ./fullbench -i1 + +@@ -298,7 +298,7 @@ + + .PHONY: list + list: +- @$(MAKE) -pRrq -f $(lastword $(MAKEFILE_LIST)) : 2>/dev/null | awk -v RS= -F: '/^# File/,/^# Finished Make data base/ {if ($$1 !~ "^[#.]") {print $$1}}' | sort | egrep -v -e '^[^[:alnum:]]' -e '^$@$$' | xargs ++ $(MAKE) -pRrq -f $(lastword $(MAKEFILE_LIST)) : 2>/dev/null | awk -v RS= -F: '/^# File/,/^# Finished Make data base/ {if ($$1 !~ "^[#.]") {print $$1}}' | sort | egrep -v -e '^[^[:alnum:]]' -e '^$@$$' | xargs + + .PHONY: shortest + shortest: ZSTDRTTEST= +@@ -412,9 +412,9 @@ + + test-decodecorpus-cli: decodecorpus + @echo "\n ---- decodecorpus basic cli tests ----" +- @mkdir testdir ++ mkdir testdir + ./decodecorpus -n5 -otestdir -ptestdir +- @cd testdir && \ ++ cd testdir && \ + $(ZSTD) -d z000000.zst -o tmp0 && \ + $(ZSTD) -d z000001.zst -o tmp1 && \ + $(ZSTD) -d z000002.zst -o tmp2 && \ +@@ -429,7 +429,7 @@ + cd .. + @echo "\n ---- decodecorpus dictionary cli tests ----" + ./decodecorpus -n5 -otestdir -ptestdir --use-dict=1MB +- @cd testdir && \ ++ cd testdir && \ + $(ZSTD) -d z000000.zst -D dictionary -o tmp0 && \ + $(ZSTD) -d z000001.zst -D dictionary -o tmp1 && \ + $(ZSTD) -d z000002.zst -D dictionary -o tmp2 && \ +@@ -441,7 +441,7 @@ + diff z000003 tmp3 && \ + diff z000004 tmp4 && \ + cd .. +- @rm -rf testdir ++ rm -rf testdir + + test-pool: poolTests + $(QEMU_SYS) ./poolTests +--- libzstd.orig/tests/fuzz/Makefile ++++ libzstd/tests/fuzz/Makefile +@@ -118,7 +118,7 @@ + $(AR) $(FUZZ_ARFLAGS) $@ regression_driver.o + + corpora/%_seed_corpus.zip: +- @mkdir -p corpora ++ mkdir -p corpora + $(DOWNLOAD) $@ $(CORPORA_URL_PREFIX)$*_seed_corpus.zip + + corpora/%: corpora/%_seed_corpus.zip +@@ -135,13 +135,13 @@ + $(PYTHON) ./fuzz.py regression all + + clean: +- @$(MAKE) -C $(ZSTDDIR) clean +- @$(RM) *.a *.o +- @$(RM) simple_round_trip stream_round_trip simple_decompress \ ++ $(MAKE) -C $(ZSTDDIR) clean ++ $(RM) *.a *.o ++ $(RM) simple_round_trip stream_round_trip simple_decompress \ + stream_decompress block_decompress block_round_trip \ + simple_compress dictionary_round_trip dictionary_decompress \ + zstd_frame_info + + cleanall: +- @$(RM) -r Fuzzer +- @$(RM) -r corpora ++ $(RM) -r Fuzzer ++ $(RM) -r corpora +--- libzstd.orig/tests/gzip/Makefile ++++ libzstd/tests/gzip/Makefile +@@ -16,20 +16,20 @@ + all: test-helin-segv test-hufts test-keep test-list test-memcpy-abuse test-mixed + all: test-null-suffix-clobber test-stdin test-trailing-nul test-unpack-invalid + all: test-zdiff test-zgrep-context test-zgrep-f test-zgrep-signal test-znew-k test-z-suffix +- @echo Testing completed ++ @echo "Testing completed" + + .PHONY: zstd + zstd: + $(MAKE) -C $(PRGDIR) zstd + ln -sf $(PRGDIR)/zstd gzip +- @echo PATH=$(PATH) ++ @echo "PATH=$(PATH)" + gzip --version + + .PHONY: clean + clean: +- @$(MAKE) -C $(PRGDIR) $@ > $(VOID) +- @$(RM) *.trs *.log +- @echo Cleaning completed ++ $(MAKE) -C $(PRGDIR) $@ > $(VOID) ++ $(RM) *.trs *.log ++ @echo "Cleaning completed" + + + #------------------------------------------------------------------------------ +@@ -38,7 +38,7 @@ + ifneq (,$(filter $(shell uname),Linux Darwin GNU/kFreeBSD GNU FreeBSD DragonFly NetBSD)) + + test-%: zstd +- @./test-driver.sh --test-name $* --log-file $*.log --trs-file $*.trs --expect-failure "no" --color-tests "yes" --enable-hard-errors "yes" ./$*.sh ++ ./test-driver.sh --test-name $* --log-file $*.log --trs-file $*.trs --expect-failure "no" --color-tests "yes" --enable-hard-errors "yes" ./$*.sh + # || echo ignoring error + + endif +--- libzstd.orig/zlibWrapper/Makefile ++++ libzstd/zlibWrapper/Makefile +@@ -50,14 +50,14 @@ + ./fitblk 40960 <$(TEST_FILE) + ./fitblk_zstd 10240 <$(TEST_FILE) + ./fitblk_zstd 40960 <$(TEST_FILE) +- @echo ---- minigzip start ---- ++ @echo "---- minigzip start ----" + ./minigzip_zstd example$(EXT) + #cp example$(EXT).gz example$(EXT)_zstd.gz + ./minigzip_zstd -d example$(EXT).gz + ./minigzip example$(EXT) + #cp example$(EXT).gz example$(EXT)_gz.gz + ./minigzip_zstd -d example$(EXT).gz +- @echo ---- minigzip end ---- ++ @echo "---- minigzip end ----" + ./zwrapbench -qi1b3B1K $(TEST_FILE) + ./zwrapbench -rqi1b1e5 ../lib ../programs ../tests + +@@ -114,4 +114,4 @@ + + clean: + -$(RM) $(ZLIBWRAPPER_PATH)/*.o $(EXAMPLE_PATH)/*.o *.o foo.gz example$(EXT) example_zstd$(EXT) fitblk$(EXT) fitblk_zstd$(EXT) zwrapbench$(EXT) minigzip$(EXT) minigzip_zstd$(EXT) +- @echo Cleaning completed ++ @echo "Cleaning completed" diff --git a/patches/series b/patches/series new file mode 100644 index 0000000..6bbfe1d --- /dev/null +++ b/patches/series @@ -0,0 +1,7 @@ +0006-Use-bash-for-test-script-portablitity.patch +0008-Address-embedded-zlib.patch +0013-skip-memory-greedy-tests.patch +0014-Reproducible-build.patch +0015-Skip-dev-random-tests-on-hurd.patch +0018-Alias-renamed-API-symbols.patch +0019-blhc-workarounds.patch diff --git a/rules b/rules new file mode 100755 index 0000000..827f8f4 --- /dev/null +++ b/rules @@ -0,0 +1,50 @@ +#!/usr/bin/make -f + +export DH_VERBOSE=1 + +DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) +DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH) +export DEB_BUILD_MAINT_OPTIONS=hardening=+all + +# Upstream's makefiles will respect PREFIX, and this means we avoid a patch +export PREFIX=/usr + +HELP2MAN = help2man --no-info --help-option="'-h'" --no-discard-stderr +mandir := $(CURDIR)/debian/zstd/usr/share/man/man1 + +%: + dh $@ + +DH_AUTO_CONFIGURE_OPTS := +ifneq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) + DH_AUTO_CONFIGURE_OPTS += -DZSTD_BUILD_TESTS:BOOL=OFF +endif + +override_dh_auto_clean: + dh_auto_clean + dh_auto_clean --sourcedirectory=contrib/pzstd + +override_dh_auto_build: + dh_auto_build -- ZSTD_LEGACY_MULTITHREADED_API=1 + dh_auto_build --sourcedirectory=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 + cp -r debian/libzstd1/usr debian/libzstd1-udeb/ + dh_install + +override_dh_makeshlibs: + dh_makeshlibs -plibzstd1 -V'libzstd1 (>= 1.4.4)' --add-udeb=libzstd1-udeb + +override_dh_installman: + dh_installman + cp $(mandir)/zstd.1 $(mandir)/zstdmt.1 + $(HELP2MAN) --name='parallelised Zstandard compression, al la pigz' contrib/pzstd/pzstd \ + | perl -pe 's/(\(de\)compression\s\(default:)(\d+)(\))/$$1 All$$3/g' >$(mandir)/pzstd.1 diff --git a/salsa-ci.yml b/salsa-ci.yml new file mode 100644 index 0000000..0d8ee65 --- /dev/null +++ b/salsa-ci.yml @@ -0,0 +1,10 @@ +--- +include: + - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml + - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml + +# No 'Architecture: all' targets for this package. +# 1.1.2-1: oldest version in active repos. +variables: + SALSA_CI_DISABLE_BUILD_PACKAGE_ALL: '1' + DB_BUILD_PARAM: '-v1.1.2-1' diff --git a/source/format b/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/source/lintian-overrides b/source/lintian-overrides new file mode 100644 index 0000000..86e6eb7 --- /dev/null +++ b/source/lintian-overrides @@ -0,0 +1 @@ +libzstd source: binary-control-field-duplicates-source field "section" in package libzstd1 diff --git a/tests/control b/tests/control new file mode 100644 index 0000000..f853f74 --- /dev/null +++ b/tests/control @@ -0,0 +1 @@ +Test-Command: zstd -b1 >/dev/null 2>&1 diff --git a/watch b/watch new file mode 100644 index 0000000..993f185 --- /dev/null +++ b/watch @@ -0,0 +1,4 @@ +version=4 + +opts="repacksuffix=+dfsg,dversionmangle=s/\+dfsg\d*//g,repack,compression=xz" \ + https://github.com/facebook/zstd/releases .*/archive/v?@ANY_VERSION@@ARCHIVE_EXT@ diff --git a/zstd.docs b/zstd.docs new file mode 100644 index 0000000..70867c6 --- /dev/null +++ b/zstd.docs @@ -0,0 +1,2 @@ +CHANGELOG +*.md diff --git a/zstd.install b/zstd.install new file mode 100644 index 0000000..3418174 --- /dev/null +++ b/zstd.install @@ -0,0 +1,2 @@ +contrib/pzstd/pzstd usr/bin +usr/bin diff --git a/zstd.manpages b/zstd.manpages new file mode 100644 index 0000000..8e59a36 --- /dev/null +++ b/zstd.manpages @@ -0,0 +1 @@ +usr/share/man/man1/*