public inbox for qemu-devel@nongnu.org
 help / color / mirror / Atom feed
* Cleaning up contrib/ and tools/
@ 2026-03-24 17:09 Peter Maydell
  2026-03-24 17:31 ` Daniel P. Berrangé
                   ` (3 more replies)
  0 siblings, 4 replies; 16+ messages in thread
From: Peter Maydell @ 2026-03-24 17:09 UTC (permalink / raw)
  To: QEMU Developers
  Cc: Daniel P. Berrange, Paolo Bonzini, Michael S. Tsirkin,
	Stefano Garzarella, Michael Roth, Konstantin Kostiuk,
	Alex Bennée, Pierrick Bouvier, Eric Blake

We have a couple of directories in our source tree which have
accumulated things in them that don't really belong there; this is a
proposal to clean up by moving things to more appropriate locations
(as 11.1 work, obviously).

Firstly, contrib/ has a tendency to be a dumping ground for stuff that
we didn't think hard enough about finding a good home for, and for
things in a weird "not really maintained" state. We should either
(a) care enough about something to give it a correct home and to
maintain it, or (b) not care about it, and kick it out of our tree.

Secondly, tools/ exists but is very under-used. I think it should be
for the set of standalone tools that we build if you configure
--enable-tools and which we document in docs/tools.  Currently it
contains two things, one of which doesn't match that idea...

So, starting with tools/:

 * tools/ebpf/ is the source for the pre-generated
   ebpf/rss.bpf.skeleton.h ; it should move to ebpf/
 * tools/i386/qemu-vmsr-helper.c is the source for the
   qemu-vmsr-helper tool; it can stay (should it lose its
   i386/ subdir ?)
 * the tools which currently are in the top level directory
   should move into tools/:
    - qemu-bridge-helper.c
    - qemu-edid.c
    - qemu-img.c
    - qemu-io.c
    - qemu-keymap.c
    - qemu-nbd.c

And for contrib/, easy ones first:
 * contrib/vhost-user-{blk,bridge,gpu,input,scsi} move to tools/
 * contrib/elf2dmp moves to tools/
 * contrib/ivshmem-client and contrib/ivshmem-server move to tools/
 * contrib/plugins moves to plugins/plugins (or a different subdir
   name of your choice)

For contrib/, ones I'm less sure about:

 * contrib/vmapple/uuid.sh is a one-liner; we should either commit to
   having this, by giving it a better name and documentation and
   installing it in 'make install', or else junk it and have
   docs/system/arm/vmapple.rst give you the plutil command and tell
   you to run it directly.
 * contrib/gitdm moves to scripts/ ? It's just config data for
   generating statistics about patches, so with other
   developer-related stuff makes sense.
 * contrib/systemd -- we don't do anything with these (e.g.
   'make install' ignores them), so I am sceptical about their
   usefulness. We could drop them, or move them to scripts/, or put
   them in tools/ and qga/ with the tools that they are systemd
   scripts for.

Then we can delete contrib/ entirely.

(scripts/ is also in danger of being "miscellaneous dumping
ground", of course. I have tried not to suggest it as the
destination when I could think of an alternative.)

-- PMM


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

end of thread, other threads:[~2026-03-25 19:42 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-24 17:09 Cleaning up contrib/ and tools/ Peter Maydell
2026-03-24 17:31 ` Daniel P. Berrangé
2026-03-24 18:28 ` Pierrick Bouvier
2026-03-24 18:33   ` Peter Maydell
2026-03-24 18:44     ` Pierrick Bouvier
2026-03-25  9:21       ` Daniel P. Berrangé
2026-03-25 10:05         ` Marc-André Lureau
2026-03-25 11:11       ` Alex Bennée
2026-03-25 15:17         ` Pierrick Bouvier
2026-03-25 16:43           ` Peter Maydell
2026-03-25  7:42 ` Kostiantyn Kostiuk
2026-03-25 11:43 ` Markus Armbruster
2026-03-25 14:32   ` Alex Bennée
2026-03-25 16:49   ` Peter Maydell
2026-03-25 16:54     ` Daniel P. Berrangé
2026-03-25 19:41     ` Peter Maydell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox