diff options
author | Sergei Trofimovich <slyfox@gentoo.org> | 2012-01-22 20:40:49 +0000 |
---|---|---|
committer | Sergei Trofimovich <slyfox@gentoo.org> | 2012-01-22 20:40:49 +0000 |
commit | 81113f8ea5084ceb15b9eb6457fbd0553f0dd5e9 (patch) | |
tree | a7ebac3b32771907ab0228fee843eb6a6f47ffa4 /app-emulation | |
parent | Fix build with USE="debug", bug #398703. (diff) | |
download | gentoo-2-81113f8ea5084ceb15b9eb6457fbd0553f0dd5e9.tar.gz gentoo-2-81113f8ea5084ceb15b9eb6457fbd0553f0dd5e9.tar.bz2 gentoo-2-81113f8ea5084ceb15b9eb6457fbd0553f0dd5e9.zip |
Fix build failure on non-KVM targets.
(Portage version: 2.2.0_alpha84_p18/cvs/Linux x86_64)
Diffstat (limited to 'app-emulation')
5 files changed, 70 insertions, 3 deletions
diff --git a/app-emulation/qemu-kvm/ChangeLog b/app-emulation/qemu-kvm/ChangeLog index a028a2036293..acd0fc37cb50 100644 --- a/app-emulation/qemu-kvm/ChangeLog +++ b/app-emulation/qemu-kvm/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for app-emulation/qemu-kvm # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu-kvm/ChangeLog,v 1.84 2012/01/22 19:30:01 slyfox Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu-kvm/ChangeLog,v 1.85 2012/01/22 20:40:49 slyfox Exp $ + + 22 Jan 2012; Sergei Trofimovich <slyfox@gentoo.org> + +files/qemu-kvm-1.0-fix-nonkvm-arches.patch, + +files/qemu-kvm-9999-fix-nonkvm-arches.patch, qemu-kvm-1.0.ebuild, + qemu-kvm-9999.ebuild: + Fix build failure on non-KVM targets. 22 Jan 2012; Sergei Trofimovich <slyfox@gentoo.org> +files/65-gentoo-kvm.rules, qemu-kvm-9999.ebuild: diff --git a/app-emulation/qemu-kvm/files/qemu-kvm-1.0-fix-nonkvm-arches.patch b/app-emulation/qemu-kvm/files/qemu-kvm-1.0-fix-nonkvm-arches.patch new file mode 100644 index 000000000000..d66a99135921 --- /dev/null +++ b/app-emulation/qemu-kvm/files/qemu-kvm-1.0-fix-nonkvm-arches.patch @@ -0,0 +1,23 @@ +Fix build failure caused by KVM-specific code in arches not supporting KVM: + LINK alpha-softmmu/qemu-system-alpha +i8259.o: In function `kvm_i8259_set_irq': +/tmp/portage/app-emulation/qemu-kvm-9999/work/qemu-kvm-9999/hw/i8259.c:689: undefined reference to `apic_set_irq_delivered' +diff --git a/hw/i8259.c b/hw/i8259.c +index 0632ea2..2f6789d 100644 +--- a/hw/i8259.c ++++ b/hw/i8259.c +@@ -682,12 +683,14 @@ static int kvm_kernel_pic_load_from_user(PicState *s) + + static void kvm_i8259_set_irq(void *opaque, int irq, int level) + { ++#ifdef CONFIG_KVM + int pic_ret; + if (kvm_set_irq(irq, level, &pic_ret)) { + if (pic_ret != 0) + apic_set_irq_delivered(); + return; + } ++#endif + } + + device_init(pic_register) diff --git a/app-emulation/qemu-kvm/files/qemu-kvm-9999-fix-nonkvm-arches.patch b/app-emulation/qemu-kvm/files/qemu-kvm-9999-fix-nonkvm-arches.patch new file mode 100644 index 000000000000..2c36e7e303a6 --- /dev/null +++ b/app-emulation/qemu-kvm/files/qemu-kvm-9999-fix-nonkvm-arches.patch @@ -0,0 +1,31 @@ +Fix build failure caused by KVM-specific code in arches not supporting KVM: + LINK alpha-softmmu/qemu-system-alpha +i8259.o: In function `kvm_i8259_set_irq': +/tmp/portage/app-emulation/qemu-kvm-9999/work/qemu-kvm-9999/hw/i8259.c:689: undefined reference to `apic_set_irq_delivered' +diff --git a/hw/i8259.c b/hw/i8259.c +index 0632ea2..2f6789d 100644 +--- a/hw/i8259.c ++++ b/hw/i8259.c +@@ -21,6 +21,7 @@ + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ ++#include "apic.h" + #include "hw.h" + #include "pc.h" + #include "isa.h" +@@ -682,12 +683,14 @@ static int kvm_kernel_pic_load_from_user(PicState *s) + + static void kvm_i8259_set_irq(void *opaque, int irq, int level) + { ++#ifdef CONFIG_KVM + int pic_ret; + if (kvm_set_irq(irq, level, &pic_ret)) { + if (pic_ret != 0) + apic_set_irq_delivered(); + return; + } ++#endif + } + + device_init(pic_register) diff --git a/app-emulation/qemu-kvm/qemu-kvm-1.0.ebuild b/app-emulation/qemu-kvm/qemu-kvm-1.0.ebuild index e429c2b55778..7b43f4150025 100644 --- a/app-emulation/qemu-kvm/qemu-kvm-1.0.ebuild +++ b/app-emulation/qemu-kvm/qemu-kvm-1.0.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu-kvm/qemu-kvm-1.0.ebuild,v 1.3 2012/01/17 22:23:53 cardoe Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu-kvm/qemu-kvm-1.0.ebuild,v 1.4 2012/01/22 20:40:49 slyfox Exp $ #BACKPORTS=1 @@ -181,6 +181,8 @@ src_prepare() { # to the qemu-devel ml - bug 337988 epatch "${FILESDIR}/qemu-0.11.0-mips64-user-fix.patch" + epatch "${FILESDIR}"/${PN}-1.0-fix-nonkvm-arches.patch + [[ -n ${BACKPORTS} ]] && \ EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \ epatch diff --git a/app-emulation/qemu-kvm/qemu-kvm-9999.ebuild b/app-emulation/qemu-kvm/qemu-kvm-9999.ebuild index a822fb1ec372..8c75255d6cfe 100644 --- a/app-emulation/qemu-kvm/qemu-kvm-9999.ebuild +++ b/app-emulation/qemu-kvm/qemu-kvm-9999.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu-kvm/qemu-kvm-9999.ebuild,v 1.27 2012/01/22 19:30:01 slyfox Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu-kvm/qemu-kvm-9999.ebuild,v 1.28 2012/01/22 20:40:49 slyfox Exp $ #BACKPORTS=1 @@ -120,6 +120,9 @@ QA_WX_LOAD="${QA_PRESTRIPPED} usr/bin/qemu-microblazeel usr/bin/qemu-mips usr/bin/qemu-mipsel + usr/bin/qemu-ppc + usr/bin/qemu-ppc64 + usr/bin/qemu-ppc64abi32 usr/bin/qemu-sh4 usr/bin/qemu-sh4eb usr/bin/qemu-sparc @@ -184,6 +187,8 @@ src_prepare() { # to the qemu-devel ml - bug 337988 epatch "${FILESDIR}/qemu-0.11.0-mips64-user-fix.patch" + epatch "${FILESDIR}"/${PN}-9999-fix-nonkvm-arches.patch + [[ -n ${BACKPORTS} ]] && \ EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \ epatch |