qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 1/2] qapi.py: avoid Python 2.5+ any() function


From: Riku Voipio
Subject: Re: [Qemu-devel] [PATCH 1/2] qapi.py: avoid Python 2.5+ any() function
Date: Fri, 15 Aug 2014 10:43:24 +0300
User-agent: Mutt/1.5.21 (2010-09-15)

On Tue, Aug 12, 2014 at 01:37:33PM +0100, Stefan Hajnoczi wrote:
> There is one instance of any() in qapi.py that breaks builds on older
> distros that ship Python 2.4 (like RHEL5):
> 
>   GEN   qmp-commands.h
> Traceback (most recent call last):
>   File "build/scripts/qapi-commands.py", line 445, in ?
>     exprs = parse_schema(input_file)
>   File "build/scripts/qapi.py", line 329, in parse_schema
>     schema = QAPISchema(open(input_file, "r"))
>   File "build/scripts/qapi.py", line 110, in __init__
>     if any(include_path == elem[1]
> NameError: global name 'any' is not defined

I tried building on RHEL5, and this patch gets a bit more forward.
However further down the build I get a similar error:

Traceback (most recent call last):
  File "/build/qemu/scripts/tracetool.py", line 139, in ?
    main(sys.argv)
  File "/build/qemu/scripts/tracetool.py", line 134, in main
    binary=binary, probe_prefix=probe_prefix)
  File "/build/qemu/scripts/tracetool/__init__.py", line 267, in generate
    backend = tracetool.backend.Wrapper(backends, format)
  File "/build/qemu/scripts/tracetool/backend/__init__.py", line 105, in 
__init__
    assert all(exists(backend) for backend in self._backends)

semi-related - since I'm building --disable-system --disable-tools 
--enable-user,
is there any benefit of tracetool for this build config?

Riku


> Signed-off-by: Stefan Hajnoczi <address@hidden>
> ---
>  scripts/qapi.py | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/scripts/qapi.py b/scripts/qapi.py
> index f2c6d1f..77d46aa 100644
> --- a/scripts/qapi.py
> +++ b/scripts/qapi.py
> @@ -107,10 +107,10 @@ class QAPISchema:
>                                          'Expected a file name (string), got: 
> %s'
>                                          % include)
>                  include_path = os.path.join(self.input_dir, include)
> -                if any(include_path == elem[1]
> -                       for elem in self.include_hist):
> -                    raise QAPIExprError(expr_info, "Inclusion loop for %s"
> -                                        % include)
> +                for elem in self.include_hist:
> +                    if include_path == elem[1]:
> +                        raise QAPIExprError(expr_info, "Inclusion loop for 
> %s"
> +                                            % include)
>                  # skip multiple include of the same file
>                  if include_path in previously_included:
>                      continue
> -- 
> 1.9.3
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]