[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 05/10] meson: subprojects: replace submodules with wrap files
From: |
Daniel P . Berrangé |
Subject: |
Re: [PATCH 05/10] meson: subprojects: replace submodules with wrap files |
Date: |
Tue, 6 Jun 2023 10:54:08 +0100 |
User-agent: |
Mutt/2.2.9 (2022-11-12) |
On Mon, Jun 05, 2023 at 11:52:18AM +0200, Paolo Bonzini wrote:
> Compared to submodules, .wrap files have several advantages:
>
> * option parsing and downloading is delegated to meson
>
> * the commit is stored in a text file instead of a magic entry in the
> git tree object
>
> * we could stop shipping external dependencies that are only used as a
> fallback, but not break compilation on platforms that lack them.
> For example it may make sense to download dtc at build time, controlled
> by --enable-download, even when building from a tarball. Right now,
> this patch does the opposite: make-release treats dtc like libvfio-user
> (which is not stable API and therefore hasn't found its way into any
> distros) and keycodemap (which is a copylib, for better or worse).
>
> dependency() can fall back to a wrap automatically. However, this
> is only possible for libraries that come with a .pc file, and this
> is not very common for libfdt even though the upstream project in
> principle provides it; it also removes the control that we provide with
> --enable-fdt={system,internal}. Therefore, the logic to pick system
> vs. internal libfdt is left untouched.
>
> --enable-fdt=git is removed; it was already a synonym for
> --enable-fdt=internal.
>
> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
> ---
> .gitlab-ci.d/buildtest-template.yml | 1 +
> .gitmodules | 9 ----
> configure | 77 ++++++++++++-----------------
> meson.build | 15 +-----
> scripts/archive-source.sh | 11 ++++-
> scripts/make-release | 5 ++
> subprojects/.gitignore | 3 ++
> subprojects/dtc | 1 -
> subprojects/dtc.wrap | 4 ++
> subprojects/keycodemapdb | 1 -
> subprojects/keycodemapdb.wrap | 4 ++
> subprojects/libvfio-user | 1 -
> subprojects/libvfio-user.wrap | 4 ++
> 13 files changed, 63 insertions(+), 73 deletions(-)
> delete mode 160000 subprojects/dtc
> create mode 100644 subprojects/dtc.wrap
> delete mode 160000 subprojects/keycodemapdb
> create mode 100644 subprojects/keycodemapdb.wrap
> delete mode 160000 subprojects/libvfio-user
> create mode 100644 subprojects/libvfio-user.wrap
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
With regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
- Re: [PATCH 07/10] pc-bios/s390-ccw: always build network bootloader, (continued)
[PATCH 06/10] configure: move SLOF submodule handling to pc-bios/s390-ccw, Paolo Bonzini, 2023/06/05
[PATCH 09/10] build: remove git submodule handling from main makefile, Paolo Bonzini, 2023/06/05
[PATCH 05/10] meson: subprojects: replace submodules with wrap files, Paolo Bonzini, 2023/06/05
- Re: [PATCH 05/10] meson: subprojects: replace submodules with wrap files,
Daniel P . Berrangé <=
[PATCH 08/10] meson: subprojects: replace berkeley-{soft, test}float-3 with wraps, Paolo Bonzini, 2023/06/05
[PATCH 10/10] configure: remove --with-git-submodules=, Paolo Bonzini, 2023/06/05
Re: [PATCH v2 00/10] meson: replace submodules with wrap files, Michal Prívozník, 2023/06/07