[PATCH v2 4/7] binman: bintool: parametrize parameter to pass to binary for returning version

Simon Glass sjg at chromium.org
Thu Sep 1 04:27:37 CEST 2022


Hi Quentin,

Fix spelling for parametrize

On Wed, 31 Aug 2022 at 11:39, Quentin Schulz <foss+uboot at 0leil.net> wrote:
>
> From: Quentin Schulz <quentin.schulz at theobroma-systems.com>
>
> The code to check the version is very similar between binaries, the most
> likely only needed variables are the regex to find the version (already
> supported) and the parameter to pass to the binary so that it prints
> this version (e.g. --version, -V or similar).
>
> Let's make it a parameter of Bintool so that code duplication can be
> avoided for simple changes.
>
> Signed-off-by: Quentin Schulz <quentin.schulz at theobroma-systems.com>
> ---
>
> added in v2
>
>  tools/binman/bintool.py | 9 +++++----
>  1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/tools/binman/bintool.py b/tools/binman/bintool.py
> index a156ffb550..77608cec23 100644
> --- a/tools/binman/bintool.py
> +++ b/tools/binman/bintool.py
> @@ -53,10 +53,11 @@ class Bintool:
>      # List of bintools to regard as missing
>      missing_list = []
>
> -    def __init__(self, name, desc, version_regex=None):
> +    def __init__(self, name, desc, version_regex=None, version_parameters='-V'):

version_args?

It is shorter

>          self.name = name
>          self.desc = desc
>          self.version_regex = version_regex
> +        self.version_parameters = version_parameters
>
>      @staticmethod
>      def find_bintool_class(btype):
> @@ -476,7 +477,7 @@ binaries. It is fairly easy to create new bintools. Just add a new file to the
>
>          import re
>
> -        result = self.run_cmd_result('-V')
> +        result = self.run_cmd_result(self.version_parameters)
>          out = result.stdout.strip()
>          if not out:
>              out = result.stderr.strip()
> @@ -507,9 +508,9 @@ class BintoolPacker(Bintool):
>      """
>      def __init__(self, name, compression=None, compress_args=None,
>                   decompress_args=None, fetch_package=None,
> -                 version_regex=r'(v[0-9.]+)'):
> +                 version_regex=r'(v[0-9.]+)', version_parameters='-V'):
>          desc = '%s compression' % (compression if compression else name)
> -        super().__init__(name, desc, version_regex)
> +        super().__init__(name, desc, version_regex, version_parameters)
>          if compress_args is None:
>              compress_args = ['--compress']
>          self.compress_args = compress_args
> --
> 2.37.2
>

Regards,
Simon


More information about the U-Boot mailing list