qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [RFC PATCH 0/4] build: TARGET_ARCH/ARCH2/TYPE simplific


From: Eric Blake
Subject: Re: [Qemu-devel] [RFC PATCH 0/4] build: TARGET_ARCH/ARCH2/TYPE simplification
Date: Mon, 20 May 2013 15:41:01 -0600
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130514 Thunderbird/17.0.6

On 05/20/2013 11:23 AM, Paolo Bonzini wrote:
> We have three variables currently in config-target.h:
> 
> - TARGET_ARCH is used to create a unique per-arch symbol, used in #ifdefs.
>   It is also used as a string through config-target.h, but this is almost
>   always wrong.
> 
> - TARGET_ARCH2 is the name of the executable (minus the qemu-/qemu-system-
>   prefix); it is not available in config-target.h.
> 
> - TARGET_TYPE is an enum but is otherwise the same as TARGET_ARCH2
> 
> This series changes all uses of TARGET_ARCH to refer to TARGET_ARCH2
> instead (which is renamed to TARGET_NAME).  The TARGET_ARCH #define
> is dropped, only the per-arch symbol remains.  TARGET_TYPE is then also
> removed since it is serialized to the same string if TARGET_NAME is
> used directly.

[Ugg - there's no good way to convince Thunderbird to reply to just 4/4,
when you inline everything after your "-- " signoff...]

> +++ b/qapi-schema.json
> @@ -3008,22 +3008,6 @@
>  { 'command': 'query-fdsets', 'returns': ['FdsetInfo'] }
>  
>  ##
> -# @TargetType
> -#
> -# Target CPU emulation type
> -#
> -# These parameters correspond to the softmmu binary CPU name that is 
> currently
> -# running.
> -#
> -# Since: 1.2.0
> -##
> -{ 'enum': 'TargetType',
> -  'data': [ 'alpha', 'arm', 'cris', 'i386', 'lm32', 'm68k', 'microblazeel',
> -            'microblaze', 'mips64el', 'mips64', 'mipsel', 'mips', 'moxie',
> -            'or32', 'ppc64', 'ppcemb', 'ppc', 's390x', 'sh4eb', 'sh4',
> -            'sparc64', 'sparc', 'unicore32', 'x86_64', 'xtensaeb', 'xtensa' 
> ] }
> -
> -##
>  # @TargetInfo:
>  #
>  # Information describing the QEMU target.
> @@ -3033,7 +3017,7 @@
>  # Since: 1.2.0
>  ##
>  { 'type': 'TargetInfo',
> -  'data': { 'arch': 'TargetType' } }
> +  'data': { 'arch': 'str' } }

No change to the wire format, and being type-safe didn't really add
anything (since a binary only supported a single arch, not the entire
enum of arches).  Chaning now will avoid us being locked into something
once introspection is added (deleting it after we have introspection may
still be possible, but it would be harder to prove that it is not
backwards incompatible at that point).  I'm okay with this deletion.

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

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