commit:     0e33bcc6940a140cc273a66c41bd69d8ee4f5ba2
Author:     Michal Privoznik <michal.privoznik <AT> gmail <DOT> com>
AuthorDate: Mon Aug 28 08:31:29 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Sep  6 09:05:44 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0e33bcc6

app-emulation/qemu: Adapt live ebuild to meson subprojects

The upstream is moving away from explicit git submodules to meson
subprojects. This renders EGIT_SUBMODULES useless (wrt submodules
we care about), but as there are still some submodules (that we
don't care about) set the variable to empty array. Unfortunately,
our meson.eclass doesn't support subpojects yet, therefore mimic
what at least one other ebuild does (sys-apps/dbus-broker):
provide an alternative implementation of src_unpack() for the
live ebuild that downloads additional repositories via 'meson
subprojects download'. The non-live ebuilds do not need this
because the release archive contains bundles all subprojects.

Signed-off-by: Michal Privoznik <michal.privoznik <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/32484
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/qemu/qemu-9999.ebuild | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/app-emulation/qemu/qemu-9999.ebuild 
b/app-emulation/qemu/qemu-9999.ebuild
index cca0a24a89c0..6ca0885e7e59 100644
--- a/app-emulation/qemu/qemu-9999.ebuild
+++ b/app-emulation/qemu/qemu-9999.ebuild
@@ -25,11 +25,7 @@ if [[ ${PV} == *9999* ]]; then
        QEMU_DOCS_PREBUILT=0
 
        EGIT_REPO_URI="https://gitlab.com/qemu-project/qemu.git/";
-       EGIT_SUBMODULES=(
-               tests/fp/berkeley-softfloat-3
-               tests/fp/berkeley-testfloat-3
-               subprojects/keycodemapdb
-       )
+       EGIT_SUBMODULES=()
        inherit git-r3
        SRC_URI=""
 else
@@ -440,6 +436,14 @@ check_targets() {
        popd >/dev/null
 }
 
+if [[ ${PV} == 9999 ]]; then
+src_unpack() {
+       git-r3_src_unpack
+       cd "${P}" || die
+       meson subprojects download keycodemapdb berkeley-softfloat-3 
berkeley-testfloat-3 || die
+}
+fi
+
 src_prepare() {
        check_targets IUSE_SOFTMMU_TARGETS softmmu
        check_targets IUSE_USER_TARGETS linux-user
@@ -454,7 +458,7 @@ src_prepare() {
        MAKEOPTS+=" V=1"
 
        # Remove bundled modules
-       rm -r subprojects/dtc roms/*/ || die
+       rm -r roms/*/ || die
 }
 
 ##

Reply via email to