From 888ef5252388556c4afa96218d05ec5e0561de94 Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Thu, 30 May 2024 12:50:11 +0100 Subject: src-release.sh: Support zstd compression --- src-release.sh | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/src-release.sh b/src-release.sh index 0e95dde1..e454893 100755 --- a/src-release.sh +++ b/src-release.sh @@ -1,5 +1,5 @@ #!/usr/bin/env bash -# Copyright (C) 1990-2020 Free Software Foundation +# Copyright (C) 1990-2024 Free Software Foundation # # This file is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -26,6 +26,7 @@ BZIPPROG=bzip2 GZIPPROG=gzip LZIPPROG=lzip XZPROG=xz +ZSTDPROG=zstd SHA256PROG=sha256sum MAKE=make CC=gcc @@ -241,6 +242,16 @@ do_xz() $XZPROG -k -v -9 $package-$ver.tar } +# Compress the output with zstd +do_zstd() +{ + package=$1 + ver=$2 + echo "==> Zzipping $package-$ver.tar.zst" + rm -f $package-$ver.tar.zst + $ZSTDPROG -k -v -19 -T0 $package-$ver.tar +} + # Compress the output with all selected compresion methods do_compress() { @@ -257,6 +268,8 @@ do_compress() do_lz $package $ver;; xz) do_xz $package $ver;; + zstd) + do_zstd $package $ver;; *) echo "Unknown compression method: $comp" && exit 1;; esac @@ -352,6 +365,7 @@ usage() echo " -g: Compress with gzip" echo " -l: Compress with lzip" echo " -x: Compress with xz" + echo " -z: Compress with zstd" echo " -r : Create a reproducible tarball using as the mtime" exit 1 } @@ -376,7 +390,7 @@ build_release() compressors="" -while getopts ":bglr:x" opt; do +while getopts ":bglr:xz" opt; do case $opt in b) compressors="$compressors bz2";; @@ -388,6 +402,8 @@ while getopts ":bglr:x" opt; do release_date=$OPTARG;; x) compressors="$compressors xz";; + z) + compressors="$compressors zstd";; \?) echo "Invalid option: -$OPTARG" && usage;; esac -- cgit v1.1