summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-emulation/qemu-guest-agent')
-rw-r--r--app-emulation/qemu-guest-agent/Manifest10
-rw-r--r--app-emulation/qemu-guest-agent/files/qemu-8.1.0-find-sphinx.patch10
-rw-r--r--app-emulation/qemu-guest-agent/files/qemu-guest-agent-2.5.0-sysmacros.patch17
-rw-r--r--app-emulation/qemu-guest-agent/files/qemu-guest-agent-4.2.0-fix-shutdown.patch11
-rw-r--r--app-emulation/qemu-guest-agent/files/qemu-guest-agent-4.2.0-sysmacros.patch17
-rw-r--r--app-emulation/qemu-guest-agent/files/qemu-guest-agent-7.1.0-configure-Avoid-using-strings-binary.patch85
-rw-r--r--app-emulation/qemu-guest-agent/metadata.xml10
-rw-r--r--app-emulation/qemu-guest-agent/qemu-guest-agent-6.0.0.ebuild (renamed from app-emulation/qemu-guest-agent/qemu-guest-agent-4.0.0.ebuild)23
-rw-r--r--app-emulation/qemu-guest-agent/qemu-guest-agent-7.1.0.ebuild (renamed from app-emulation/qemu-guest-agent/qemu-guest-agent-4.2.0-r1.ebuild)39
-rw-r--r--app-emulation/qemu-guest-agent/qemu-guest-agent-8.0.0.ebuild (renamed from app-emulation/qemu-guest-agent/qemu-guest-agent-3.1.0.ebuild)37
-rw-r--r--app-emulation/qemu-guest-agent/qemu-guest-agent-8.0.2.ebuild (renamed from app-emulation/qemu-guest-agent/qemu-guest-agent-5.0.0.ebuild)38
-rw-r--r--app-emulation/qemu-guest-agent/qemu-guest-agent-8.0.3.ebuild82
-rw-r--r--app-emulation/qemu-guest-agent/qemu-guest-agent-8.2.0.ebuild92
13 files changed, 349 insertions, 122 deletions
diff --git a/app-emulation/qemu-guest-agent/Manifest b/app-emulation/qemu-guest-agent/Manifest
index 51faa0caf06a..44032f6790ed 100644
--- a/app-emulation/qemu-guest-agent/Manifest
+++ b/app-emulation/qemu-guest-agent/Manifest
@@ -1,4 +1,6 @@
-DIST qemu-3.1.0.tar.xz 36070104 BLAKE2B 9ed7d1b3256d84f2b73d61763e20f5e4bc5b47d56e4e0d56cf4c29cd25669457b0f08e90d7255589c9666400bb310df3dba3b9290232cad18057b20f08013a3b SHA512 7e8dae823937cfac2f0c60406bd3bdcb89df40313dab2a4bed327d5198f7fcc68ac8b31e44692caa09299cc71256ee0b8c17e4f49f78ada8043d424f5daf82fe
-DIST qemu-4.0.0.tar.xz 55628624 BLAKE2B 8afd1f54aa13d2e61fd36c4f4544b7c4ffb1a7eee5c69d3aa1d40a432ca296ad8abe6cb83d7c66ac4045ca624d2a00e737f51e4e62ed46fef9766ef71f43b98b SHA512 952e94194ce9e64c15388c59035cb31fb9f761d30095c2fb9441012b609c18c9976285727b93bf37b95e15675802d73f8e1c4619ebecd23606675bb503646b13
-DIST qemu-4.2.0.tar.xz 62222068 BLAKE2B 27c9fbcd5093af425764674817ab9299224bd03f37b5983786f6f437fff1fab3b7da247c55c4ca8b8c42726b9867005944a2f7f04f2d0d94d753961615f901ef SHA512 2a79973c2b07c53e8c57a808ea8add7b6b2cbca96488ed5d4b669ead8c9318907dec2b6109f180fc8ca8f04c0f73a56e82b3a527b5626b799d7e849f2474ec56
-DIST qemu-5.0.0.tar.xz 62426192 BLAKE2B 785d02ef79c95b5c4f0556186054885f9893d4e8a9f4b4f2d6199a4e1ae9c31d7c79dd900305469217f85d61bbe74134b601d5c6c1b0eee2b74792d010f1fd63 SHA512 21ef0cbe107c468a40f0fa2635db2a40048c8790b629dfffca5cd62bb1b502ea8eb133bfc40df5ecf1489e2bffe87f6829aee041cb8a380ff04a8afa23b39fcf
+DIST qemu-6.0.0.tar.xz 107333232 BLAKE2B 7746329d3e13782b7c346ce4052cc517cfc65cd9b2d514d199e4d5b8570ca79566ec04b0c114db2e97c84e68eb551e0d4cdce1b14b91a88fe08d2a5f682c1418 SHA512 ee3ff00aebec4d8891d2ff6dabe4e667e510b2a4fe3f6190aa34673a91ea32dcd2db2e9bf94c2f1bf05aa79788f17cfbbedc6027c0988ea08a92587b79ee05e4
+DIST qemu-7.1.0.tar.xz 121833004 BLAKE2B e05f91ce4993c7591a2df08b5fb017f8b8ec2141ab7bfd55d14730ea6b793ac1091de539992058392a5522d4e58beee92a87752707be58e3619b8213ef9f35bf SHA512 c60c5ff8ec99b7552e485768908920658fdd8035ff7a6fa370fb6881957dc8b7e5f18ff1a8f49bd6aa22909ede2a7c084986d8244f12074ccd33ebe40a0c411f
+DIST qemu-8.0.0.tar.xz 127835148 BLAKE2B 9b54aae10fe09691a26e68374723ded5fdda6409673b4de9461a25ee060cfd03968a16ddeadc21d48b9262e53aa6d4e5eb645376969f97c65807fad19607b04f SHA512 1f31d1e653dec2d35f1b7a5468ee3f471553b48eca8c8afafffcf9243c6b2260e78a5b73da3fe567f9b85d4133573eebd397747b3aec501fb24076263eb07b27
+DIST qemu-8.0.2.tar.xz 126707132 BLAKE2B f2b1a63e10c42aabfe39722c7732d0f04818ad367b769b3deb29c5bf9adcabc3aca1706f3c40fafeeb57ac1f7a61ded5066de32134c483e2fd27bc65b4b7d30a SHA512 4e915d33a662bf55b09247fb85150be376c92270d3764e3d6470c452cb70cc558f54e84de5610dd60a9eb3ea02d5d4277b1ec75c9804967d278fa8361c7f9b9a
+DIST qemu-8.0.3.tar.xz 126710536 BLAKE2B 071cc1a35209a02e8c5dd4f43cb112f110b4655adb0f870a04fdf9a6e2c761699574e8c9426f70f60787a99acf252d7a64d94a8e837cdfeda93d89428d7866f3 SHA512 18b2ccb65f7ec2ae92f0e04406539620c881e2b75f63816588c86043a07464bb99d16a83e792ed9508de393f4b694c46d52f4d07edf52741e85224c8b8d5d5c3
+DIST qemu-8.2.0.tar.xz 130008888 BLAKE2B a63667042e1e19c635568072d8dcc117320117e81e374a93cfb79e2363ebf505df3217fb098638e53c899eb6f83435221e8031f2aae003c27ec25af8654683b3 SHA512 92ec41196ff145cdbb98948f6b6e43214fa4b4419554a8a1927fb4527080c8212ccb703e184baf8ee0bdfa50ad7a84689e8f5a69eba1bd7bbbdfd69e3b91256c
diff --git a/app-emulation/qemu-guest-agent/files/qemu-8.1.0-find-sphinx.patch b/app-emulation/qemu-guest-agent/files/qemu-8.1.0-find-sphinx.patch
new file mode 100644
index 000000000000..b6ef6214af55
--- /dev/null
+++ b/app-emulation/qemu-guest-agent/files/qemu-8.1.0-find-sphinx.patch
@@ -0,0 +1,10 @@
+This gets confused by python-any-r1 and tries to find sphinx-build in ${T}.
+--- a/docs/meson.build
++++ b/docs/meson.build
+@@ -1,5 +1,4 @@
+-sphinx_build = find_program(fs.parent(python.full_path()) / 'sphinx-build',
+- required: get_option('docs'))
++sphinx_build = find_program('sphinx-build', required: get_option('docs'))
+
+ # Check if tools are available to build documentation.
+ build_docs = false
diff --git a/app-emulation/qemu-guest-agent/files/qemu-guest-agent-2.5.0-sysmacros.patch b/app-emulation/qemu-guest-agent/files/qemu-guest-agent-2.5.0-sysmacros.patch
deleted file mode 100644
index 4d5690c59ae4..000000000000
--- a/app-emulation/qemu-guest-agent/files/qemu-guest-agent-2.5.0-sysmacros.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-https://bugs.gentoo.org/580924
-
-Linux C libs are moving away from implicit header pollution with sys/types.h
-
---- a/include/qemu/osdep.h
-+++ b/include/qemu/osdep.h
-@@ -78,6 +78,10 @@ extern int daemon(int, int);
- #include <assert.h>
- #include <signal.h>
-
-+#ifdef __linux__
-+#include <sys/sysmacros.h>
-+#endif
-+
- #ifdef __OpenBSD__
- #include <sys/signal.h>
- #endif
diff --git a/app-emulation/qemu-guest-agent/files/qemu-guest-agent-4.2.0-fix-shutdown.patch b/app-emulation/qemu-guest-agent/files/qemu-guest-agent-4.2.0-fix-shutdown.patch
deleted file mode 100644
index f69781694f1d..000000000000
--- a/app-emulation/qemu-guest-agent/files/qemu-guest-agent-4.2.0-fix-shutdown.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- qemu-4.2.0/qga/commands-posix.c.orig 2020-03-23 11:15:05.972610989 +0300
-+++ qemu-4.2.0/qga/commands-posix.c 2020-03-23 11:15:39.676015087 +0300
-@@ -108,7 +108,7 @@
- reopen_fd_to_null(1);
- reopen_fd_to_null(2);
-
-- execle("/sbin/shutdown", "shutdown", "-h", shutdown_flag, "+0",
-+ execle("/sbin/shutdown", "shutdown", "-h", "now", shutdown_flag, "+0",
- "hypervisor initiated shutdown", (char*)NULL, environ);
- _exit(EXIT_FAILURE);
- } else if (pid < 0) {
diff --git a/app-emulation/qemu-guest-agent/files/qemu-guest-agent-4.2.0-sysmacros.patch b/app-emulation/qemu-guest-agent/files/qemu-guest-agent-4.2.0-sysmacros.patch
deleted file mode 100644
index 94b6a2c8bb3f..000000000000
--- a/app-emulation/qemu-guest-agent/files/qemu-guest-agent-4.2.0-sysmacros.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-https://bugs.gentoo.org/580924
-
-Linux C libs are moving away from implicit header pollution with sys/types.h
-
---- a/include/qemu/osdep.h
-+++ b/include/qemu/osdep.h
-@@ -118,6 +118,10 @@ extern int daemon(int, int);
- #include <setjmp.h>
- #include <signal.h>
-
-+#ifdef __linux__
-+#include <sys/sysmacros.h>
-+#endif
-+
- #ifdef __OpenBSD__
- #include <sys/signal.h>
- #endif
diff --git a/app-emulation/qemu-guest-agent/files/qemu-guest-agent-7.1.0-configure-Avoid-using-strings-binary.patch b/app-emulation/qemu-guest-agent/files/qemu-guest-agent-7.1.0-configure-Avoid-using-strings-binary.patch
new file mode 100644
index 000000000000..dff62304a5c7
--- /dev/null
+++ b/app-emulation/qemu-guest-agent/files/qemu-guest-agent-7.1.0-configure-Avoid-using-strings-binary.patch
@@ -0,0 +1,85 @@
+From 33ab5f24913db8d5590fe4155829bd38e7902506 Mon Sep 17 00:00:00 2001
+Message-Id: <33ab5f24913db8d5590fe4155829bd38e7902506.1666164897.git.mprivozn@redhat.com>
+From: Michal Privoznik <mprivozn@redhat.com>
+Date: Fri, 14 Oct 2022 09:30:15 +0200
+Subject: [PATCH] configure: Avoid using strings binary
+
+When determining the endiandness of the target architecture we're
+building for a small program is compiled, which in an obfuscated
+way declares two strings. Then, we look which string is in
+correct order (using strings binary) and deduct the endiandness.
+But using the strings binary is problematic, because it's part of
+toolchain (strings is just a symlink to
+x86_64-pc-linux-gnu-strings or llvm-strings). And when
+(cross-)compiling, it requires users to set the symlink to the
+correct toolchain.
+
+Fortunately, we have a better alternative anyways. We can mimic
+what compiler.h is already doing: comparing __BYTE_ORDER__
+against values for little/big endiandness.
+
+Bug: https://bugs.gentoo.org/876933
+Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
+Message-Id: <d6d9c7043cfe6d976d96694f2b4ecf85cf3206f1.1665732504.git.mprivozn@redhat.com>
+Cc: qemu-stable@nongnu.org
+Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
+---
+ configure | 35 ++++++++++++++++++-----------------
+ 1 file changed, 18 insertions(+), 17 deletions(-)
+
+diff --git a/configure b/configure
+index f9ec050bf8..81561be7c1 100755
+--- a/configure
++++ b/configure
+@@ -1423,30 +1423,31 @@ if test "$tcg" = "enabled"; then
+ git_submodules="$git_submodules tests/fp/berkeley-softfloat-3"
+ fi
+
+-# ---
++##########################################
+ # big/little endian test
+ cat > $TMPC << EOF
+-#include <stdio.h>
+-short big_endian[] = { 0x4269, 0x4765, 0x4e64, 0x4961, 0x4e00, 0, };
+-short little_endian[] = { 0x694c, 0x7454, 0x654c, 0x6e45, 0x6944, 0x6e41, 0, };
+-int main(int argc, char *argv[])
+-{
+- return printf("%s %s\n", (char *)big_endian, (char *)little_endian);
+-}
++#if defined(__BYTE_ORDER__) && __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
++# error LITTLE
++#endif
++int main(void) { return 0; }
+ EOF
+
+-if compile_prog ; then
+- if strings -a $TMPE | grep -q BiGeNdIaN ; then
+- bigendian="yes"
+- elif strings -a $TMPE | grep -q LiTtLeEnDiAn ; then
+- bigendian="no"
+- else
+- echo big/little test failed
+- exit 1
+- fi
++if ! compile_prog ; then
++ bigendian="no"
+ else
++ cat > $TMPC << EOF
++#if defined(__BYTE_ORDER__) && __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
++# error BIG
++#endif
++int main(void) { return 0; }
++EOF
++
++ if ! compile_prog ; then
++ bigendian="yes"
++ else
+ echo big/little test failed
+ exit 1
++ fi
+ fi
+
+ ##########################################
+--
+2.37.3
+
diff --git a/app-emulation/qemu-guest-agent/metadata.xml b/app-emulation/qemu-guest-agent/metadata.xml
index 88bcd95b4c70..8995a7240036 100644
--- a/app-emulation/qemu-guest-agent/metadata.xml
+++ b/app-emulation/qemu-guest-agent/metadata.xml
@@ -1,7 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
+ <email>ajak@gentoo.org</email>
+ <name>John Helmert III</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>sam@gentoo.org</email>
+ <name>Sam James</name>
+ </maintainer>
+ <maintainer type="person">
<email>tamiko@gentoo.org</email>
<name>Matthias Maier</name>
</maintainer>
diff --git a/app-emulation/qemu-guest-agent/qemu-guest-agent-4.0.0.ebuild b/app-emulation/qemu-guest-agent/qemu-guest-agent-6.0.0.ebuild
index bef260b3de02..e1c778871839 100644
--- a/app-emulation/qemu-guest-agent/qemu-guest-agent-4.0.0.ebuild
+++ b/app-emulation/qemu-guest-agent/qemu-guest-agent-6.0.0.ebuild
@@ -1,11 +1,11 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="7"
-PYTHON_COMPAT=( python3_6 )
+PYTHON_COMPAT=( python3_{9..11} )
-inherit eutils systemd toolchain-funcs udev python-any-r1
+inherit systemd toolchain-funcs udev python-any-r1
MY_PN="qemu"
MY_P="${MY_PN}-${PV}"
@@ -27,10 +27,6 @@ DEPEND="${RDEPEND}
S="${WORKDIR}/${MY_P}"
-PATCHES=(
- "${FILESDIR}"/${PN}-2.5.0-sysmacros.patch #580924
-)
-
src_configure() {
tc-export AR LD OBJCOPY RANLIB
@@ -43,7 +39,7 @@ src_configure() {
--disable-linux-user
--disable-system
--disable-strip
- --disable-tools
+ --enable-tools
--disable-werror
--enable-guest-agent
--python="${PYTHON}"
@@ -55,12 +51,8 @@ src_configure() {
./configure "${myconf[@]}" || die
}
-src_compile() {
- emake V=1 qemu-ga
-}
-
src_install() {
- dobin qemu-ga
+ dobin build/qga/qemu-ga
# Normal init stuff
newinitd "${FILESDIR}/qemu-ga.init-r1" qemu-guest-agent
@@ -79,4 +71,9 @@ src_install() {
pkg_postinst() {
elog "You should add 'qemu-guest-agent' to the default runlevel."
elog "e.g. rc-update add qemu-guest-agent default"
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
}
diff --git a/app-emulation/qemu-guest-agent/qemu-guest-agent-4.2.0-r1.ebuild b/app-emulation/qemu-guest-agent/qemu-guest-agent-7.1.0.ebuild
index 46783392cf0b..89b3517badc9 100644
--- a/app-emulation/qemu-guest-agent/qemu-guest-agent-4.2.0-r1.ebuild
+++ b/app-emulation/qemu-guest-agent/qemu-guest-agent-7.1.0.ebuild
@@ -1,35 +1,33 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
+EAPI=8
-PYTHON_COMPAT=( python3_{6,7,8} )
+PYTHON_COMPAT=( python3_{9..11} )
-inherit eutils systemd toolchain-funcs udev python-any-r1
+inherit edo systemd toolchain-funcs python-any-r1 udev
MY_PN="qemu"
MY_P="${MY_PN}-${PV}"
-SRC_URI="http://wiki.qemu.org/download/${MY_P}.tar.xz"
-KEYWORDS="amd64 ~ppc ~ppc64 x86"
-
DESCRIPTION="QEMU Guest Agent (qemu-ga) for use when running inside a VM"
HOMEPAGE="https://wiki.qemu.org/Features/GuestAgent"
+SRC_URI="http://wiki.qemu.org/download/${MY_P}.tar.xz"
LICENSE="GPL-2 BSD-2"
SLOT="0"
-IUSE=""
+KEYWORDS="amd64 ~ppc ~ppc64 x86"
RDEPEND="dev-libs/glib"
-
-DEPEND="${RDEPEND}
- ${PYTHON_DEPS}"
+DEPEND="${RDEPEND}"
+BDEPEND="${PYTHON_DEPS}
+ dev-lang/perl
+ app-alternatives/ninja"
S="${WORKDIR}/${MY_P}"
PATCHES=(
- "${FILESDIR}"/${PN}-4.2.0-sysmacros.patch #580924
- "${FILESDIR}"/${PN}-4.2.0-fix-shutdown.patch #681874
+ "${FILESDIR}"/${PN}-7.1.0-configure-Avoid-using-strings-binary.patch
)
src_configure() {
@@ -44,7 +42,7 @@ src_configure() {
--disable-linux-user
--disable-system
--disable-strip
- --disable-tools
+ --enable-tools
--disable-werror
--enable-guest-agent
--python="${PYTHON}"
@@ -52,16 +50,12 @@ src_configure() {
--cxx="$(tc-getCXX)"
--host-cc="$(tc-getBUILD_CC)"
)
- echo "./configure ${myconf[*]}"
- ./configure "${myconf[@]}" || die
-}
-src_compile() {
- emake V=1 qemu-ga
+ edo ./configure "${myconf[@]}"
}
src_install() {
- dobin qemu-ga
+ dobin build/qga/qemu-ga
# Normal init stuff
newinitd "${FILESDIR}/qemu-ga.init-r1" qemu-guest-agent
@@ -80,4 +74,9 @@ src_install() {
pkg_postinst() {
elog "You should add 'qemu-guest-agent' to the default runlevel."
elog "e.g. rc-update add qemu-guest-agent default"
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
}
diff --git a/app-emulation/qemu-guest-agent/qemu-guest-agent-3.1.0.ebuild b/app-emulation/qemu-guest-agent/qemu-guest-agent-8.0.0.ebuild
index bef260b3de02..4b64963e345a 100644
--- a/app-emulation/qemu-guest-agent/qemu-guest-agent-3.1.0.ebuild
+++ b/app-emulation/qemu-guest-agent/qemu-guest-agent-8.0.0.ebuild
@@ -1,34 +1,32 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
+EAPI=8
-PYTHON_COMPAT=( python3_6 )
+PYTHON_COMPAT=( python3_{9..11} )
-inherit eutils systemd toolchain-funcs udev python-any-r1
+inherit edo systemd toolchain-funcs python-any-r1 udev
MY_PN="qemu"
MY_P="${MY_PN}-${PV}"
-SRC_URI="http://wiki.qemu.org/download/${MY_P}.tar.xz"
-KEYWORDS="amd64 ~ppc ~ppc64 x86"
-
DESCRIPTION="QEMU Guest Agent (qemu-ga) for use when running inside a VM"
HOMEPAGE="https://wiki.qemu.org/Features/GuestAgent"
+SRC_URI="http://wiki.qemu.org/download/${MY_P}.tar.xz"
LICENSE="GPL-2 BSD-2"
SLOT="0"
-IUSE=""
+KEYWORDS="amd64 ~ppc ~ppc64 x86"
RDEPEND="dev-libs/glib"
-
-DEPEND="${RDEPEND}
- ${PYTHON_DEPS}"
+DEPEND="${RDEPEND}"
+BDEPEND="${PYTHON_DEPS}
+ dev-lang/perl
+ app-alternatives/ninja"
S="${WORKDIR}/${MY_P}"
PATCHES=(
- "${FILESDIR}"/${PN}-2.5.0-sysmacros.patch #580924
)
src_configure() {
@@ -43,7 +41,7 @@ src_configure() {
--disable-linux-user
--disable-system
--disable-strip
- --disable-tools
+ --enable-tools
--disable-werror
--enable-guest-agent
--python="${PYTHON}"
@@ -51,16 +49,12 @@ src_configure() {
--cxx="$(tc-getCXX)"
--host-cc="$(tc-getBUILD_CC)"
)
- echo "./configure ${myconf[*]}"
- ./configure "${myconf[@]}" || die
-}
-src_compile() {
- emake V=1 qemu-ga
+ edo ./configure "${myconf[@]}"
}
src_install() {
- dobin qemu-ga
+ dobin build/qga/qemu-ga
# Normal init stuff
newinitd "${FILESDIR}/qemu-ga.init-r1" qemu-guest-agent
@@ -79,4 +73,9 @@ src_install() {
pkg_postinst() {
elog "You should add 'qemu-guest-agent' to the default runlevel."
elog "e.g. rc-update add qemu-guest-agent default"
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
}
diff --git a/app-emulation/qemu-guest-agent/qemu-guest-agent-5.0.0.ebuild b/app-emulation/qemu-guest-agent/qemu-guest-agent-8.0.2.ebuild
index 513caae41cee..cbca89288f83 100644
--- a/app-emulation/qemu-guest-agent/qemu-guest-agent-5.0.0.ebuild
+++ b/app-emulation/qemu-guest-agent/qemu-guest-agent-8.0.2.ebuild
@@ -1,35 +1,32 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI="7"
+EAPI=8
-PYTHON_COMPAT=( python3_{6,7,8} )
+PYTHON_COMPAT=( python3_{9..11} )
-inherit eutils systemd toolchain-funcs udev python-any-r1
+inherit edo systemd toolchain-funcs python-any-r1 udev
MY_PN="qemu"
MY_P="${MY_PN}-${PV}"
-SRC_URI="http://wiki.qemu.org/download/${MY_P}.tar.xz"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
-
DESCRIPTION="QEMU Guest Agent (qemu-ga) for use when running inside a VM"
HOMEPAGE="https://wiki.qemu.org/Features/GuestAgent"
+SRC_URI="http://wiki.qemu.org/download/${MY_P}.tar.xz"
LICENSE="GPL-2 BSD-2"
SLOT="0"
-IUSE=""
+KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
RDEPEND="dev-libs/glib"
-
-DEPEND="${RDEPEND}
- ${PYTHON_DEPS}"
+DEPEND="${RDEPEND}"
+BDEPEND="${PYTHON_DEPS}
+ dev-lang/perl
+ app-alternatives/ninja"
S="${WORKDIR}/${MY_P}"
PATCHES=(
- "${FILESDIR}"/${PN}-4.2.0-sysmacros.patch #580924
- "${FILESDIR}"/${PN}-4.2.0-fix-shutdown.patch #681874
)
src_configure() {
@@ -44,7 +41,7 @@ src_configure() {
--disable-linux-user
--disable-system
--disable-strip
- --disable-tools
+ --enable-tools
--disable-werror
--enable-guest-agent
--python="${PYTHON}"
@@ -52,16 +49,12 @@ src_configure() {
--cxx="$(tc-getCXX)"
--host-cc="$(tc-getBUILD_CC)"
)
- echo "./configure ${myconf[*]}"
- ./configure "${myconf[@]}" || die
-}
-src_compile() {
- emake V=1 qemu-ga
+ edo ./configure "${myconf[@]}"
}
src_install() {
- dobin qemu-ga
+ dobin build/qga/qemu-ga
# Normal init stuff
newinitd "${FILESDIR}/qemu-ga.init-r1" qemu-guest-agent
@@ -80,4 +73,9 @@ src_install() {
pkg_postinst() {
elog "You should add 'qemu-guest-agent' to the default runlevel."
elog "e.g. rc-update add qemu-guest-agent default"
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
}
diff --git a/app-emulation/qemu-guest-agent/qemu-guest-agent-8.0.3.ebuild b/app-emulation/qemu-guest-agent/qemu-guest-agent-8.0.3.ebuild
new file mode 100644
index 000000000000..86f9742a3e18
--- /dev/null
+++ b/app-emulation/qemu-guest-agent/qemu-guest-agent-8.0.3.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit edo systemd toolchain-funcs python-any-r1 udev
+
+MY_PN="qemu"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="QEMU Guest Agent (qemu-ga) for use when running inside a VM"
+HOMEPAGE="https://wiki.qemu.org/Features/GuestAgent"
+SRC_URI="http://wiki.qemu.org/download/${MY_P}.tar.xz"
+
+LICENSE="GPL-2 BSD-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc ~ppc64 x86"
+
+RDEPEND="dev-libs/glib"
+DEPEND="${RDEPEND}"
+BDEPEND="${PYTHON_DEPS}
+ dev-lang/perl
+ app-alternatives/ninja"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+)
+
+src_configure() {
+ tc-export AR LD OBJCOPY RANLIB
+
+ local myconf=(
+ --prefix=/usr
+ --sysconfdir=/etc
+ --libdir="/usr/$(get_libdir)"
+ --localstatedir=/
+ --disable-bsd-user
+ --disable-linux-user
+ --disable-system
+ --disable-strip
+ --enable-tools
+ --disable-werror
+ --without-default-features
+ --enable-guest-agent
+ --python="${PYTHON}"
+ --cc="$(tc-getCC)"
+ --cxx="$(tc-getCXX)"
+ --host-cc="$(tc-getBUILD_CC)"
+ )
+
+ edo ./configure "${myconf[@]}"
+}
+
+src_install() {
+ dobin build/qga/qemu-ga
+
+ # Normal init stuff
+ newinitd "${FILESDIR}/qemu-ga.init-r1" qemu-guest-agent
+ newconfd "${FILESDIR}/qemu-ga.conf-r1" qemu-guest-agent
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/qemu-ga.logrotate" qemu-guest-agent
+
+ # systemd stuff
+ udev_newrules "${FILESDIR}/qemu-ga-systemd.udev" 99-qemu-guest-agent.rules
+
+ systemd_newunit "${FILESDIR}/qemu-ga-systemd.service" \
+ qemu-guest-agent.service
+}
+
+pkg_postinst() {
+ elog "You should add 'qemu-guest-agent' to the default runlevel."
+ elog "e.g. rc-update add qemu-guest-agent default"
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}
diff --git a/app-emulation/qemu-guest-agent/qemu-guest-agent-8.2.0.ebuild b/app-emulation/qemu-guest-agent/qemu-guest-agent-8.2.0.ebuild
new file mode 100644
index 000000000000..3002f6df679d
--- /dev/null
+++ b/app-emulation/qemu-guest-agent/qemu-guest-agent-8.2.0.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+
+inherit edo systemd toolchain-funcs python-any-r1 udev
+
+MY_PN="qemu"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="QEMU Guest Agent (qemu-ga) for use when running inside a VM"
+HOMEPAGE="https://wiki.qemu.org/Features/GuestAgent"
+SRC_URI="http://wiki.qemu.org/download/${MY_P}.tar.xz"
+
+LICENSE="GPL-2 BSD-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm64 ~ppc ~ppc64 x86"
+
+RDEPEND="dev-libs/glib"
+DEPEND="${RDEPEND}"
+BDEPEND="${PYTHON_DEPS}
+ dev-lang/perl
+ app-alternatives/ninja"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+ "${FILESDIR}"/qemu-8.1.0-find-sphinx.patch
+)
+
+src_configure() {
+ tc-export AR LD OBJCOPY RANLIB
+
+ local myconf=(
+ --prefix=/usr
+ --sysconfdir=/etc
+ --libdir="/usr/$(get_libdir)"
+ --localstatedir=/
+ --disable-bsd-user
+ --disable-linux-user
+ --disable-system
+ --disable-strip
+ --enable-tools
+ --disable-werror
+ --without-default-features
+ --enable-guest-agent
+ --python="${PYTHON}"
+ --cc="$(tc-getCC)"
+ --cxx="$(tc-getCXX)"
+ --host-cc="$(tc-getBUILD_CC)"
+ )
+
+ # Meson will not use a cross-file unless cross_prefix is set.
+ tc-is-cross-compiler && myconf+=( --cross-prefix="${CHOST}-" )
+
+ edo ./configure "${myconf[@]}"
+}
+
+src_test() {
+ # qga only uses generic code covered by qobject tests,
+ # the full test suite requires at least one softmmu binary
+ emake check-unit
+}
+
+src_install() {
+ dobin build/qga/qemu-ga
+
+ # Normal init stuff
+ newinitd "${FILESDIR}/qemu-ga.init-r1" qemu-guest-agent
+ newconfd "${FILESDIR}/qemu-ga.conf-r1" qemu-guest-agent
+
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/qemu-ga.logrotate" qemu-guest-agent
+
+ # systemd stuff
+ udev_newrules "${FILESDIR}/qemu-ga-systemd.udev" 99-qemu-guest-agent.rules
+
+ systemd_newunit "${FILESDIR}/qemu-ga-systemd.service" \
+ qemu-guest-agent.service
+}
+
+pkg_postinst() {
+ elog "You should add 'qemu-guest-agent' to the default runlevel."
+ elog "e.g. rc-update add qemu-guest-agent default"
+ udev_reload
+}
+
+pkg_postrm() {
+ udev_reload
+}