All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/2] meson: Further cleanup of summary
@ 2021-01-20 17:23 Paolo Bonzini
  2021-01-20 17:23 ` [PATCH 1/2] meson: Summarize configurable features together Paolo Bonzini
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Paolo Bonzini @ 2021-01-20 17:23 UTC (permalink / raw)
  To: qemu-devel; +Cc: philmd

Inspired by Philippe's "meson: Clarify summary" and based on it.

Paolo Bonzini (2):
  meson: Summarize configurable features together
  meson: split the summary in multiple sections

 meson.build | 90 ++++++++++++++++++++++++++++++-----------------------
 1 file changed, 51 insertions(+), 39 deletions(-)

-- 
2.29.2



^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH 1/2] meson: Summarize configurable features together
  2021-01-20 17:23 [PATCH 0/2] meson: Further cleanup of summary Paolo Bonzini
@ 2021-01-20 17:23 ` Paolo Bonzini
  2021-01-20 17:23 ` [PATCH 2/2] meson: split the summary in multiple sections Paolo Bonzini
  2021-01-21  8:50 ` [PATCH 0/2] meson: Further cleanup of summary Philippe Mathieu-Daudé
  2 siblings, 0 replies; 6+ messages in thread
From: Paolo Bonzini @ 2021-01-20 17:23 UTC (permalink / raw)
  To: qemu-devel; +Cc: philmd

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 meson.build | 74 +++++++++++++++++++++++++++--------------------------
 1 file changed, 38 insertions(+), 36 deletions(-)

diff --git a/meson.build b/meson.build
index 1d27f1b8bb..75ce835d48 100644
--- a/meson.build
+++ b/meson.build
@@ -2338,11 +2338,6 @@ if slirp_opt != 'disabled'
 endif
 summary_info += {'sparse enabled':    sparse.found()}
 
-summary_info += {'module support':    config_host.has_key('CONFIG_MODULES')}
-if config_host.has_key('CONFIG_MODULES')
-  summary_info += {'alternative module path': config_host.has_key('CONFIG_MODULE_UPGRADES')}
-endif
-
 # Targets and accelerators
 summary_info += {'target list':       ' '.join(target_dirs)}
 
@@ -2380,6 +2375,44 @@ if have_block
   summary_info += {'sheepdog support':  config_host.has_key('CONFIG_SHEEPDOG')}
 endif
 
+# Features
+summary_info += {'module support':    config_host.has_key('CONFIG_MODULES')}
+if config_host.has_key('CONFIG_MODULES')
+  summary_info += {'alternative module path': config_host.has_key('CONFIG_MODULE_UPGRADES')}
+endif
+summary_info += {'build guest agent': config_host.has_key('CONFIG_GUEST_AGENT')}
+if targetos == 'windows'
+  summary_info += {'QGA VSS support':   config_host.has_key('CONFIG_QGA_VSS')}
+  summary_info += {'QGA w32 disk info': config_host.has_key('CONFIG_QGA_NTDDSCSI')}
+  summary_info += {'QGA MSI support':   config_host.has_key('CONFIG_QGA_MSI')}
+endif
+summary_info += {'default devices':   get_option('default_devices')}
+summary_info += {'plugin support':    config_host.has_key('CONFIG_PLUGIN')}
+summary_info += {'fuzzing support':   config_host.has_key('CONFIG_FUZZ')}
+if have_system
+  summary_info += {'Audio drivers':     config_host['CONFIG_AUDIO_DRIVERS']}
+endif
+summary_info += {'VirtFS support':    have_virtfs}
+summary_info += {'coroutine backend': config_host['CONFIG_COROUTINE_BACKEND']}
+summary_info += {'coroutine pool':    config_host['CONFIG_COROUTINE_POOL'] == '1'}
+summary_info += {'crypto afalg':      config_host.has_key('CONFIG_AF_ALG')}
+summary_info += {'build virtiofs daemon': have_virtiofsd}
+summary_info += {'rng-none':          config_host.has_key('CONFIG_RNG_NONE')}
+summary_info += {'vhost-kernel support': config_host.has_key('CONFIG_VHOST_KERNEL')}
+summary_info += {'vhost-net support': config_host.has_key('CONFIG_VHOST_NET')}
+summary_info += {'vhost-crypto support': config_host.has_key('CONFIG_VHOST_CRYPTO')}
+summary_info += {'vhost-scsi support': config_host.has_key('CONFIG_VHOST_SCSI')}
+summary_info += {'vhost-vsock support': config_host.has_key('CONFIG_VHOST_VSOCK')}
+summary_info += {'vhost-user support': config_host.has_key('CONFIG_VHOST_USER')}
+summary_info += {'vhost-user-blk server support': have_vhost_user_blk_server}
+summary_info += {'vhost-user-fs support': config_host.has_key('CONFIG_VHOST_USER_FS')}
+summary_info += {'vhost-vdpa support': config_host.has_key('CONFIG_VHOST_VDPA')}
+summary_info += {'Trace backends':    config_host['TRACE_BACKENDS']}
+if config_host['TRACE_BACKENDS'].split().contains('simple')
+  summary_info += {'Trace output file': config_host['CONFIG_TRACE_FILE'] + '-<pid>'}
+endif
+
+# Libraries
 if targetos == 'darwin'
   summary_info += {'Cocoa support':   cocoa.found()}
 endif
@@ -2411,11 +2444,6 @@ summary_info += {'curses support':    curses.found()}
 # TODO: add back version
 summary_info += {'virgl support':     config_host.has_key('CONFIG_VIRGL')}
 summary_info += {'curl support':      curl.found()}
-if have_system
-  summary_info += {'Audio drivers':     config_host['CONFIG_AUDIO_DRIVERS']}
-endif
-summary_info += {'VirtFS support':    have_virtfs}
-summary_info += {'build virtiofs daemon': have_virtiofsd}
 summary_info += {'Multipath support': mpathpersist.found()}
 summary_info += {'VNC support':       vnc.found()}
 if vnc.found()
@@ -2433,19 +2461,6 @@ summary_info += {'RDMA support':      config_host.has_key('CONFIG_RDMA')}
 summary_info += {'PVRDMA support':    config_host.has_key('CONFIG_PVRDMA')}
 summary_info += {'fdt support':       fdt_opt == 'disabled' ? false : fdt_opt}
 summary_info += {'libcap-ng support': libcap_ng.found()}
-summary_info += {'vhost-kernel support': config_host.has_key('CONFIG_VHOST_KERNEL')}
-summary_info += {'vhost-net support': config_host.has_key('CONFIG_VHOST_NET')}
-summary_info += {'vhost-crypto support': config_host.has_key('CONFIG_VHOST_CRYPTO')}
-summary_info += {'vhost-scsi support': config_host.has_key('CONFIG_VHOST_SCSI')}
-summary_info += {'vhost-vsock support': config_host.has_key('CONFIG_VHOST_VSOCK')}
-summary_info += {'vhost-user support': config_host.has_key('CONFIG_VHOST_USER')}
-summary_info += {'vhost-user-blk server support': have_vhost_user_blk_server}
-summary_info += {'vhost-user-fs support': config_host.has_key('CONFIG_VHOST_USER_FS')}
-summary_info += {'vhost-vdpa support': config_host.has_key('CONFIG_VHOST_VDPA')}
-summary_info += {'Trace backends':    config_host['TRACE_BACKENDS']}
-if config_host['TRACE_BACKENDS'].split().contains('simple')
-  summary_info += {'Trace output file': config_host['CONFIG_TRACE_FILE'] + '-<pid>'}
-endif
 # TODO: add back protocol and server version
 summary_info += {'spice support':     config_host.has_key('CONFIG_SPICE')}
 summary_info += {'rbd support':       rbd.found()}
@@ -2458,16 +2473,7 @@ summary_info += {'OpenGL support':    config_host.has_key('CONFIG_OPENGL')}
 summary_info += {'OpenGL dmabufs':    config_host.has_key('CONFIG_OPENGL_DMABUF')}
 summary_info += {'libiscsi support':  libiscsi.found()}
 summary_info += {'libnfs support':    libnfs.found()}
-summary_info += {'build guest agent': config_host.has_key('CONFIG_GUEST_AGENT')}
-if targetos == 'windows'
-  summary_info += {'QGA VSS support':   config_host.has_key('CONFIG_QGA_VSS')}
-  summary_info += {'QGA w32 disk info': config_host.has_key('CONFIG_QGA_NTDDSCSI')}
-  summary_info += {'QGA MSI support':   config_host.has_key('CONFIG_QGA_MSI')}
-endif
 summary_info += {'seccomp support':   seccomp.found()}
-summary_info += {'coroutine backend': config_host['CONFIG_COROUTINE_BACKEND']}
-summary_info += {'coroutine pool':    config_host['CONFIG_COROUTINE_POOL'] == '1'}
-summary_info += {'crypto afalg':      config_host.has_key('CONFIG_AF_ALG')}
 summary_info += {'GlusterFS support': glusterfs.found()}
 summary_info += {'TPM support':       config_host.has_key('CONFIG_TPM')}
 summary_info += {'libssh support':    config_host.has_key('CONFIG_LIBSSH')}
@@ -2483,10 +2489,6 @@ summary_info += {'capstone':          capstone_opt == 'disabled' ? false : capst
 summary_info += {'libpmem support':   config_host.has_key('CONFIG_LIBPMEM')}
 summary_info += {'libdaxctl support': config_host.has_key('CONFIG_LIBDAXCTL')}
 summary_info += {'libudev':           libudev.found()}
-summary_info += {'default devices':   get_option('default_devices')}
-summary_info += {'plugin support':    config_host.has_key('CONFIG_PLUGIN')}
-summary_info += {'fuzzing support':   config_host.has_key('CONFIG_FUZZ')}
-summary_info += {'rng-none':          config_host.has_key('CONFIG_RNG_NONE')}
 summary_info += {'Linux keyring':     config_host.has_key('CONFIG_SECRET_KEYRING')}
 summary_info += {'FUSE exports':      fuse.found()}
 summary_info += {'FUSE lseek':        fuse_lseek.found()}
-- 
2.29.2




^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/2] meson: split the summary in multiple sections
  2021-01-20 17:23 [PATCH 0/2] meson: Further cleanup of summary Paolo Bonzini
  2021-01-20 17:23 ` [PATCH 1/2] meson: Summarize configurable features together Paolo Bonzini
@ 2021-01-20 17:23 ` Paolo Bonzini
  2021-01-20 17:40   ` Philippe Mathieu-Daudé
  2021-01-21  8:50 ` [PATCH 0/2] meson: Further cleanup of summary Philippe Mathieu-Daudé
  2 siblings, 1 reply; 6+ messages in thread
From: Paolo Bonzini @ 2021-01-20 17:23 UTC (permalink / raw)
  To: qemu-devel; +Cc: philmd

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
 meson.build | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/meson.build b/meson.build
index 75ce835d48..3d2ac1a399 100644
--- a/meson.build
+++ b/meson.build
@@ -2238,9 +2238,8 @@ endif
 # Configuration summary #
 #########################
 
-summary_info = {}
-
 # Generic information
+summary_info = {}
 summary_info += {'Install prefix':    get_option('prefix')}
 summary_info += {'BIOS directory':    qemu_datadir}
 summary_info += {'firmware path':     get_option('qemu_firmwarepath')}
@@ -2263,8 +2262,10 @@ summary_info += {'GIT binary':        config_host['GIT']}
 summary_info += {'GIT submodules':    config_host['GIT_SUBMODULES']}
 summary_info += {'Documentation':     build_docs}
 summary_info += {'Install blobs':     get_option('install_blobs')}
+summary(summary_info, bool_yn: true)
 
 # Compilation information
+summary_info = {}
 summary_info += {'host CPU':          cpu}
 summary_info += {'host endianness':   build_machine.endian()}
 summary_info += {'C compiler':        meson.get_compiler('c').cmd_array()[0]}
@@ -2322,8 +2323,10 @@ if targetos == 'windows'
     summary_info += {'Windows SDK':       config_host['WIN_SDK']}
   endif
 endif
+summary(summary_info, bool_yn: true, section: 'Compilation')
 
 # Host binaries
+summary_info = {}
 summary_info += {'make':              config_host['MAKE']}
 summary_info += {'python':            '@0@ (version: @1@)'.format(python.full_path(), python.language_version())}
 summary_info += {'sphinx-build':      sphinx_build.found()}
@@ -2337,8 +2340,10 @@ if slirp_opt != 'disabled'
   summary_info += {'smbd':            config_host['CONFIG_SMBD_COMMAND']}
 endif
 summary_info += {'sparse enabled':    sparse.found()}
+summary(summary_info, bool_yn: true, section: 'Host binaries')
 
 # Targets and accelerators
+summary_info = {}
 summary_info += {'target list':       ' '.join(target_dirs)}
 
 if have_system
@@ -2356,8 +2361,10 @@ if config_all.has_key('CONFIG_TCG')
   summary_info += {'TCG debug enabled': config_host.has_key('CONFIG_DEBUG_TCG')}
   summary_info += {'TCG interpreter':   tcg_arch == 'tci'}
 endif
+summary(summary_info, bool_yn: true, section: 'Targets')
 
 # Block layer
+summary_info = {}
 summary_info += {'block layer':       have_block}
 if have_block
   summary_info += {'Block whitelist (rw)': config_host['CONFIG_BDRV_RW_WHITELIST']}
@@ -2374,6 +2381,7 @@ if have_block
   summary_info += {'parallels support': config_host.has_key('CONFIG_PARALLELS')}
   summary_info += {'sheepdog support':  config_host.has_key('CONFIG_SHEEPDOG')}
 endif
+summary(summary_info, bool_yn: true, section: 'Block device support')
 
 # Features
 summary_info += {'module support':    config_host.has_key('CONFIG_MODULES')}
@@ -2411,8 +2419,10 @@ summary_info += {'Trace backends':    config_host['TRACE_BACKENDS']}
 if config_host['TRACE_BACKENDS'].split().contains('simple')
   summary_info += {'Trace output file': config_host['CONFIG_TRACE_FILE'] + '-<pid>'}
 endif
+summary(summary_info, bool_yn: true, section: 'Configurable features')
 
 # Libraries
+summary_info = {}
 if targetos == 'darwin'
   summary_info += {'Cocoa support':   cocoa.found()}
 endif
@@ -2492,7 +2502,7 @@ summary_info += {'libudev':           libudev.found()}
 summary_info += {'Linux keyring':     config_host.has_key('CONFIG_SECRET_KEYRING')}
 summary_info += {'FUSE exports':      fuse.found()}
 summary_info += {'FUSE lseek':        fuse_lseek.found()}
-summary(summary_info, bool_yn: true)
+summary(summary_info, bool_yn: true, section: 'Dependencies')
 
 if not supported_cpus.contains(cpu)
   message()
-- 
2.29.2



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 2/2] meson: split the summary in multiple sections
  2021-01-20 17:23 ` [PATCH 2/2] meson: split the summary in multiple sections Paolo Bonzini
@ 2021-01-20 17:40   ` Philippe Mathieu-Daudé
  0 siblings, 0 replies; 6+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-01-20 17:40 UTC (permalink / raw)
  To: Paolo Bonzini, qemu-devel

On 1/20/21 6:23 PM, Paolo Bonzini wrote:
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
>  meson.build | 16 +++++++++++++---
>  1 file changed, 13 insertions(+), 3 deletions(-)
> 
> diff --git a/meson.build b/meson.build
> index 75ce835d48..3d2ac1a399 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -2238,9 +2238,8 @@ endif
>  # Configuration summary #
>  #########################
>  
> -summary_info = {}
> -
>  # Generic information
> +summary_info = {}
>  summary_info += {'Install prefix':    get_option('prefix')}
>  summary_info += {'BIOS directory':    qemu_datadir}
>  summary_info += {'firmware path':     get_option('qemu_firmwarepath')}
> @@ -2263,8 +2262,10 @@ summary_info += {'GIT binary':        config_host['GIT']}
>  summary_info += {'GIT submodules':    config_host['GIT_SUBMODULES']}
>  summary_info += {'Documentation':     build_docs}
>  summary_info += {'Install blobs':     get_option('install_blobs')}
> +summary(summary_info, bool_yn: true)
>  
>  # Compilation information
> +summary_info = {}

I tried that, ...

>  summary_info += {'host CPU':          cpu}
>  summary_info += {'host endianness':   build_machine.endian()}
>  summary_info += {'C compiler':        meson.get_compiler('c').cmd_array()[0]}
> @@ -2322,8 +2323,10 @@ if targetos == 'windows'
>      summary_info += {'Windows SDK':       config_host['WIN_SDK']}
>    endif
>  endif
> +summary(summary_info, bool_yn: true, section: 'Compilation')

... but not that :)

I am still adding some sections in my branch. Only one is
useful so far: "Crypto".

Thanks for improving the summary!



^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 0/2] meson: Further cleanup of summary
  2021-01-20 17:23 [PATCH 0/2] meson: Further cleanup of summary Paolo Bonzini
  2021-01-20 17:23 ` [PATCH 1/2] meson: Summarize configurable features together Paolo Bonzini
  2021-01-20 17:23 ` [PATCH 2/2] meson: split the summary in multiple sections Paolo Bonzini
@ 2021-01-21  8:50 ` Philippe Mathieu-Daudé
  2 siblings, 0 replies; 6+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-01-21  8:50 UTC (permalink / raw)
  To: Paolo Bonzini, qemu-devel

Hi Paolo,

On 1/20/21 6:23 PM, Paolo Bonzini wrote:
> Inspired by Philippe's "meson: Clarify summary" and based on it.
> 
> Paolo Bonzini (2):
>   meson: Summarize configurable features together
>   meson: split the summary in multiple sections
> 
>  meson.build | 90 ++++++++++++++++++++++++++++++-----------------------
>  1 file changed, 51 insertions(+), 39 deletions(-)
> 

I couldn't find on what it is based on exactly, so I included
your changes in my previous patches and will repost the series.

Thanks,

Phil.



^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH 0/2] meson: Further cleanup of summary
@ 2021-01-20 17:23 Paolo Bonzini
  0 siblings, 0 replies; 6+ messages in thread
From: Paolo Bonzini @ 2021-01-20 17:23 UTC (permalink / raw)
  To: qemu-devel; +Cc: philmd

Inspired by Philippe's "meson: Clarify summary" and based on it.

Paolo Bonzini (2):
  meson: Summarize configurable features together
  meson: split the summary in multiple sections

 meson.build | 90 ++++++++++++++++++++++++++++++-----------------------
 1 file changed, 51 insertions(+), 39 deletions(-)

-- 
2.29.2



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-01-21  8:52 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-20 17:23 [PATCH 0/2] meson: Further cleanup of summary Paolo Bonzini
2021-01-20 17:23 ` [PATCH 1/2] meson: Summarize configurable features together Paolo Bonzini
2021-01-20 17:23 ` [PATCH 2/2] meson: split the summary in multiple sections Paolo Bonzini
2021-01-20 17:40   ` Philippe Mathieu-Daudé
2021-01-21  8:50 ` [PATCH 0/2] meson: Further cleanup of summary Philippe Mathieu-Daudé
  -- strict thread matches above, loose matches on Subject: below --
2021-01-20 17:23 Paolo Bonzini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.