[PATCH v7 0/6] cutils: Introduce bundle mechanism

Akihiko Odaki posted 6 patches 1 year, 10 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20220615173345.32456-1-akihiko.odaki@gmail.com
Maintainers: "Alex Bennée" <alex.bennee@linaro.org>, "Philippe Mathieu-Daudé" <f4bug@amsat.org>, Thomas Huth <thuth@redhat.com>, Wainer dos Santos Moschetta <wainersm@redhat.com>, Beraldo Leal <bleal@redhat.com>, Jason Wang <jasowang@redhat.com>, Michael Roth <michael.roth@amd.com>, Alexander Bulekov <alxndr@bu.edu>, Paolo Bonzini <pbonzini@redhat.com>, Bandan Das <bsd@redhat.com>, Stefan Hajnoczi <stefanha@redhat.com>, Darren Kenny <darren.kenny@oracle.com>, Qiuhao Li <Qiuhao.Li@outlook.com>, Laurent Vivier <lvivier@redhat.com>, Warner Losh <imp@bsdimp.com>, Kyle Evans <kevans@freebsd.org>, Ed Maste <emaste@freebsd.org>, Li-Wen Hsu <lwhsu@freebsd.org>, Peter Maydell <peter.maydell@linaro.org>, Akihiko Odaki <akihiko.odaki@gmail.com>, Gerd Hoffmann <kraxel@redhat.com>
There is a newer version of this series
.travis.yml                 |  2 +-
include/qemu/cutils.h       | 21 ++++++++++++++-
meson.build                 | 37 +++++++++++++++++---------
net/tap.c                   |  2 +-
pc-bios/keymaps/meson.build |  2 ++
pc-bios/meson.build         | 19 +++++++------
qemu-options.hx             | 11 ++++----
qga/main.c                  |  2 +-
scripts/oss-fuzz/build.sh   |  2 +-
softmmu/datadir.c           | 41 +++++++++++-----------------
tests/qtest/fuzz/fuzz.c     | 15 -----------
tests/vm/fedora             |  2 +-
tests/vm/freebsd            |  2 +-
tests/vm/netbsd             |  2 +-
tests/vm/openbsd            |  2 +-
ui/cocoa.m                  |  2 +-
ui/gtk.c                    |  2 +-
ui/icons/meson.build        | 32 ++++++++++++++++------
ui/sdl2.c                   |  4 +--
util/cutils.c               | 53 ++++++++++++++++++-------------------
20 files changed, 138 insertions(+), 117 deletions(-)
[PATCH v7 0/6] cutils: Introduce bundle mechanism
Posted by Akihiko Odaki 1 year, 10 months ago
Developers often run QEMU without installing. The bundle mechanism
allows to look up files which should be present in installation even in
such a situation.

It is a general mechanism and can find any files located relative
to the installation tree. The build tree must have a new directory,
qemu-bundle, to represent what files the installation tree would
have for reference by the executables.

v7: Properly fix --firmwarepath (Daniel P. Berrangé)

v6: Reuse get_relocated_path() in find_bundle() (Paolo Bonzini)

v5:
* Prefer qemu-bundle if it exists. (Daniel P. Berrangé)
* Check install_blobs option before installing BIOSes (Paolo Bonzini)
* Add common code to set up qemu-bundle to the top level meson.build
  (Paolo Bonzini)

v4:
* Add Daniel P. Berrangé to CC. Hopefully this helps merging his patch:
  https://mail.gnu.org/archive/html/qemu-devel/2022-06/msg02276.html
* Rebased to the latest QEMU.

v3:
* Note that the bundle mechanism is for any files located relative to the
  installation tree including but not limited to datadir. (Peter Maydell)
* Fix "bridge" typo (Philippe Mathieu-Daudé)

v2: Rebased to the latest QEMU.

Akihiko Odaki (6):
  qga: Relocate a path emitted in the help text
  Remove prefixes from path configuration macros
  cutils: Introduce bundle mechanism
  datadir: Use bundle mechanism
  ui/icons: Use bundle mechanism
  net: Use bundle mechanism

 .travis.yml                 |  2 +-
 include/qemu/cutils.h       | 21 ++++++++++++++-
 meson.build                 | 37 +++++++++++++++++---------
 net/tap.c                   |  2 +-
 pc-bios/keymaps/meson.build |  2 ++
 pc-bios/meson.build         | 19 +++++++------
 qemu-options.hx             | 11 ++++----
 qga/main.c                  |  2 +-
 scripts/oss-fuzz/build.sh   |  2 +-
 softmmu/datadir.c           | 41 +++++++++++-----------------
 tests/qtest/fuzz/fuzz.c     | 15 -----------
 tests/vm/fedora             |  2 +-
 tests/vm/freebsd            |  2 +-
 tests/vm/netbsd             |  2 +-
 tests/vm/openbsd            |  2 +-
 ui/cocoa.m                  |  2 +-
 ui/gtk.c                    |  2 +-
 ui/icons/meson.build        | 32 ++++++++++++++++------
 ui/sdl2.c                   |  4 +--
 util/cutils.c               | 53 ++++++++++++++++++-------------------
 20 files changed, 138 insertions(+), 117 deletions(-)

-- 
2.32.1 (Apple Git-133)


Re: [PATCH v7 0/6] cutils: Introduce bundle mechanism
Posted by Paolo Bonzini 1 year, 10 months ago
On 6/15/22 19:33, Akihiko Odaki wrote:
> Developers often run QEMU without installing. The bundle mechanism
> allows to look up files which should be present in installation even in
> such a situation.
> 
> It is a general mechanism and can find any files located relative
> to the installation tree. The build tree must have a new directory,
> qemu-bundle, to represent what files the installation tree would
> have for reference by the executables.
> 
> v7: Properly fix --firmwarepath (Daniel P. Berrangé)

Please give people a little time to review.  I left more comments on v6.

Paolo