From: Stefan Herbrechtsmeier <stefan.herbrechtsme...@weidmueller.com>
Add bzip2 bintool to binman to support on-the-fly compression. Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsme...@weidmueller.com> --- (no changes since v3) Changes in v3: - Rebase Changes in v2: - Added tools/binman/btool/bzip2.py | 30 ++++++++++++++++++++++++++++++ tools/binman/comp_util.py | 4 +++- 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 tools/binman/btool/bzip2.py diff --git a/tools/binman/btool/bzip2.py b/tools/binman/btool/bzip2.py new file mode 100644 index 0000000000..9be87a621f --- /dev/null +++ b/tools/binman/btool/bzip2.py @@ -0,0 +1,30 @@ +# SPDX-License-Identifier: GPL-2.0+ +# Copyright (C) 2022 Weidmüller Interface GmbH & Co. KG +# Stefan Herbrechtsmeier <stefan.herbrechtsme...@weidmueller.com> +# +"""Bintool implementation for bzip2 + +bzip2 allows compression and decompression of files. + +Documentation is available via:: + + man bzip2 +""" + +from binman import bintool + +# pylint: disable=C0103 +class Bintoolbzip2(bintool.BintoolPacker): + """Compression/decompression using the bzip2 algorithm + + This bintool supports running `bzip2` to compress and decompress data, as + used by binman. + + It is also possible to fetch the tool, which uses `apt` to install it. + + Documentation is available via:: + + man bzip2 + """ + def __init__(self, name): + super().__init__(name, version_regex=r'bzip2.*Version ([0-9.]+)') diff --git a/tools/binman/comp_util.py b/tools/binman/comp_util.py index 00761d44cc..6ec371b145 100644 --- a/tools/binman/comp_util.py +++ b/tools/binman/comp_util.py @@ -7,6 +7,7 @@ This supports the following compression algorithm: none + bzip2 lz4 lzma @@ -14,6 +15,7 @@ Note that for lzma this uses an old version of the algorithm, not that provided by xz. This requires the following tools: + bzip2 lz4 lzma_alone @@ -27,7 +29,7 @@ from binman import bintool from patman import tools # Supported compression algorithms -ALGORITHMS = ['lz4', 'lzma'] +ALGORITHMS = ['bzip2', 'lz4', 'lzma'] bintools = {} -- 2.30.2