diff options
author | Michal Privoznik <michal.privoznik@gmail.com> | 2023-09-07 16:00:27 +0200 |
---|---|---|
committer | Sam James <sam@gentoo.org> | 2023-09-28 02:20:26 +0100 |
commit | e3b6ce2732f57003fda8023205cb7959fa517e8d (patch) | |
tree | baef3d62bcf68a9babecfd3de2be934a30d2bca3 /app-emulation/qemu | |
parent | media-libs/openglide: Stabilize 0.09_rc9_p20191120 x86, #914807 (diff) | |
download | gentoo-e3b6ce2732f57003fda8023205cb7959fa517e8d.tar.gz gentoo-e3b6ce2732f57003fda8023205cb7959fa517e8d.tar.bz2 gentoo-e3b6ce2732f57003fda8023205cb7959fa517e8d.zip |
app-qemulation/qemu: Download subprojects in fetch phase
As suggested in [1], instead of using 'meson subprojects
download' in src_unpack() phase, the subproject tarballs can be
downloaded upfront and then merely just unpacked and moved to
their respective locations. This allows users to fetch sources
and build without network access.
1: https://github.com/gentoo/gentoo/pull/32484#discussion_r1308083818
Signed-off-by: Michal Privoznik <michal.privoznik@gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/32684
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'app-emulation/qemu')
-rw-r--r-- | app-emulation/qemu/Manifest | 3 | ||||
-rw-r--r-- | app-emulation/qemu/qemu-9999.ebuild | 21 |
2 files changed, 22 insertions, 2 deletions
diff --git a/app-emulation/qemu/Manifest b/app-emulation/qemu/Manifest index aeb71908b5db..a38c71af25bf 100644 --- a/app-emulation/qemu/Manifest +++ b/app-emulation/qemu/Manifest @@ -1,3 +1,6 @@ +DIST berkeley-softfloat-3-b64af41c3276f97f0e181920400ee056b9c88037.tar.gz 148741 BLAKE2B 72014022926b636147e202d74c42df2ce9cfed00b91c275d5b2e0afbc5c68765445cbe7ac6389d7c2512bd1d45b0e16e999936552d09bbc733ab66c92968bd31 SHA512 8420c29faa7ff57e06d6758b03e81ca0630c59946bc031e8611f1449e23634cf901b502161f2c1423c0cff949b5481445e36a3aa53dc885b61ca2c673b3ba567 +DIST berkeley-testfloat-3-40619cbb3bf32872df8c53cc457039229428a263.tar.gz 139281 BLAKE2B b370befc6a08e09ee84fa19d22628470063b7780d6aa931fb0a4bc9271e970f652f4067cd86cfb5eb4937508174f25cb3b40d20f3f01261fff539067a1e50887 SHA512 842c784674d2d606838a6870f8d53818eea4a86adc498a40fcb0a65a5c657ab7c4fe266029d46fed7297384c7f0b9abab571ceeb301192818fa68007a8ad738c +DIST keycodemapdb-f5772a62ec52591ff6870b7e8ef32482371f22c6.tar.gz 29580 BLAKE2B 5511922dc8c4011a2c96f17f733c068e090fbb2b25227701bf73f66ea164892bdae09f08fb6888805aa7d018d97dfbc9872a907f3c55d293b2c5949d54ec9730 SHA512 6131753ed017fcdbf1d6b428d3dff79fd11800f9417c35ec45003b0b77ae7a36b9e1d4aec8e7fe256661baa367d9b0952a296afde4ccf3ed9e2a427b91009504 DIST qemu-7.2.0-docs.tar.xz 1984184 BLAKE2B 103900fb7903ed8d75f7f012bf61fa2d6fce345b657c851d0437c3384f5735bd1cfd3129320683ea7846ea0b0940e5af5b2663c9320f12fee74b058523a8ea06 SHA512 a7edd448982865e07533c300d3e44a8b50cefbdde1982b73c24d0b2aa74315439252c59b634c75de312860874c7b06c75aa72629da681b5105f28ee936794585 DIST qemu-7.2.0.tar.xz 122408576 BLAKE2B 415ff621356c59f88b29cfe3ef5db1e282b26bbafbee3d535477c6125ccb060ec9762d9e3ab9f70ce5478804dca0a46a59bcf12c112a2462029a93e578e61530 SHA512 f3cfa00da739ba819a218d7e6e95c77fb79a8e0f487b024ddd281602e785249b81144595e3f8c746c32a4f5c4d1a88c6aebae3c162603edfbb50ae3722d7ed13 DIST qemu-7.2.1.tar.xz 122400592 BLAKE2B bae1df5d332beaca313c4bac88f06dd5992988d7c1b6fdc6ced4043d858f437339cd7d0009ae667f9e66705117697bee7ee44ec4e911cc203d34eecc3d8f139b SHA512 e286dc66c923a5df77eb02d69235d048e80a7cced638fae52fbed385b4c3cd736cfea66bb3c9843bebf0a33e81ea141fc015e0bd82108df304f148ce59d9ae8a diff --git a/app-emulation/qemu/qemu-9999.ebuild b/app-emulation/qemu/qemu-9999.ebuild index 6bc1056cfd1c..de4d90b78216 100644 --- a/app-emulation/qemu/qemu-9999.ebuild +++ b/app-emulation/qemu/qemu-9999.ebuild @@ -28,6 +28,16 @@ if [[ ${PV} == *9999* ]]; then EGIT_SUBMODULES=() inherit git-r3 SRC_URI="" + declare -A SUBPROJECTS=( + [keycodemapdb]="f5772a62ec52591ff6870b7e8ef32482371f22c6" + [berkeley-softfloat-3]="b64af41c3276f97f0e181920400ee056b9c88037" + [berkeley-testfloat-3]="40619cbb3bf32872df8c53cc457039229428a263" + ) + + for proj in "${!SUBPROJECTS[@]}"; do + c=${SUBPROJECTS[${proj}]} + SRC_URI+=" https://gitlab.com/qemu-project/${proj}/-/archive/${c}/${proj}-${c}.tar.gz" + done else MY_P="${PN}-${PV/_rc/-rc}" SRC_URI="https://download.qemu.org/${MY_P}.tar.xz" @@ -439,8 +449,15 @@ check_targets() { if [[ ${PV} == 9999 ]]; then src_unpack() { git-r3_src_unpack - cd "${P}" || die - meson subprojects download keycodemapdb berkeley-softfloat-3 berkeley-testfloat-3 || die + for file in ${A}; do + unpack "${file}" + done + cd ${WORKDIR} || die + for proj in "${!SUBPROJECTS[@]}"; do + mv "${proj}-${SUBPROJECTS[${proj}]}" "${S}/subprojects/${proj}" || die + done + cd "${S}" || die + meson subprojects packagefiles --apply || die } fi |