diff options
9 files changed, 0 insertions, 996 deletions
diff --git a/app-emulation/qemu-kvm/files/qemu-0.11.0-mips64-user-fix.patch b/app-emulation/qemu-kvm/files/qemu-0.11.0-mips64-user-fix.patch deleted file mode 100644 index c069f89..0000000 --- a/app-emulation/qemu-kvm/files/qemu-0.11.0-mips64-user-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- qemu-0.11.0.orig/linux-user/main.c 2009-10-23 02:19:57.000000000 +0200 -+++ qemu-0.11.0/linux-user/main.c 2009-10-23 02:47:09.000000000 +0200 -@@ -1469,6 +1469,8 @@ - - #ifdef TARGET_MIPS - -+#define TARGET_QEMU_ESIGRETURN 255 -+ - #define MIPS_SYS(name, args) args, - - static const uint8_t mips_syscall_args[] = { diff --git a/app-emulation/qemu-kvm/files/qemu-0.15.patch b/app-emulation/qemu-kvm/files/qemu-0.15.patch deleted file mode 100644 index bd6a25f..0000000 --- a/app-emulation/qemu-kvm/files/qemu-0.15.patch +++ /dev/null @@ -1,37 +0,0 @@ -diff -Naur qemu-kvm-0.15.0_orig/error.h qemu-kvm-0.15.0/error.h ---- qemu-kvm-0.15.0_orig/error.h 2011-08-09 15:40:29.000000000 +0300 -+++ qemu-kvm-0.15.0/error.h 2011-08-14 01:23:06.000000000 +0300 -@@ -9,8 +9,8 @@ - * This work is licensed under the terms of the GNU LGPL, version 2. See - * the COPYING.LIB file in the top-level directory. - */ --#ifndef ERROR_H --#define ERROR_H -+#ifndef ERROR_Q_H -+#define ERROR_Q_H - - #include "compiler.h" - #include <stdbool.h> -diff -Naur qemu-kvm-0.15.0_orig/qapi/qapi-types-core.h qemu-kvm-0.15.0/qapi/qapi-types-core.h ---- qemu-kvm-0.15.0_orig/qapi/qapi-types-core.h 2011-08-09 15:40:29.000000000 +0300 -+++ qemu-kvm-0.15.0/qapi/qapi-types-core.h 2011-08-14 01:23:44.000000000 +0300 -@@ -14,6 +14,7 @@ - #ifndef QAPI_TYPES_CORE_H - #define QAPI_TYPES_CORE_H - -+#include "../error.h" - #include "qemu-common.h" - #include "error.h" - -diff -Naur qemu-kvm-0.15.0_orig/qapi/qmp-core.h qemu-kvm-0.15.0/qapi/qmp-core.h ---- qemu-kvm-0.15.0_orig/qapi/qmp-core.h 2011-08-09 15:40:29.000000000 +0300 -+++ qemu-kvm-0.15.0/qapi/qmp-core.h 2011-08-14 01:25:04.000000000 +0300 -@@ -13,7 +13,7 @@ - - #ifndef QMP_CORE_H - #define QMP_CORE_H -- -+#include "../error.h" - #include "qobject.h" - #include "qdict.h" - #include "error.h" diff --git a/app-emulation/qemu-kvm/files/qemu-kvm b/app-emulation/qemu-kvm/files/qemu-kvm deleted file mode 100644 index 844147d..0000000 --- a/app-emulation/qemu-kvm/files/qemu-kvm +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -exec /usr/bin/qemu-system-x86_64 --enable-kvm "$@" diff --git a/app-emulation/qemu-kvm/files/qemu-kvm-0.12.3-fix-crash-with-sdl.patch b/app-emulation/qemu-kvm/files/qemu-kvm-0.12.3-fix-crash-with-sdl.patch deleted file mode 100644 index 909dead..0000000 --- a/app-emulation/qemu-kvm/files/qemu-kvm-0.12.3-fix-crash-with-sdl.patch +++ /dev/null @@ -1,145 +0,0 @@ -From ff5414990645653bf43bf64adfc1ca77ffb9edcb Mon Sep 17 00:00:00 2001 -From: malc <av1474@comtv.ru> -Date: Sun, 17 Jan 2010 00:25:29 +0300 -Subject: [PATCH] Revert "sdlaudio: make it suck less" - -This reverts commit 4839abe78fd466a3cf06faa7c362154afd5404f1. - -The commit was badly broken, Gentoo has sdl as the default driver, -consequently 5 gentoo users have hit the breakage and were kind enough -to report, so thank you: - -Claes Gyllenswrd -vekin -Chris - -But above all thanks to Toralf Foerster who actually provied enough -information to pinpoint the breakage to sdlaudio. - -http://bugs.gentoo.org/show_bug.cgi?id=294269 ---- - audio/sdlaudio.c | 80 +++++++++++++++++++++++++++++++++-------------------- - 1 files changed, 50 insertions(+), 30 deletions(-) - -diff --git a/audio/sdlaudio.c b/audio/sdlaudio.c -index aa39c33..8e7e5cb 100644 ---- a/audio/sdlaudio.c -+++ b/audio/sdlaudio.c -@@ -41,8 +41,8 @@ - typedef struct SDLVoiceOut { - HWVoiceOut hw; - int live; -+ int rpos; - int decr; -- int pending; - } SDLVoiceOut; - - static struct { -@@ -225,10 +225,6 @@ static void sdl_callback (void *opaque, Uint8 *buf, int len) - HWVoiceOut *hw = &sdl->hw; - int samples = len >> hw->info.shift; - -- if (sdl_lock (s, "sdl_callback")) { -- return; -- } -- - if (s->exit) { - return; - } -@@ -236,34 +232,49 @@ static void sdl_callback (void *opaque, Uint8 *buf, int len) - while (samples) { - int to_mix, decr; - -- while (!sdl->pending) { -- if (sdl_unlock (s, "sdl_callback")) { -- return; -- } -- -- sdl_wait (s, "sdl_callback"); -- if (s->exit) { -- return; -- } -- -- if (sdl_lock (s, "sdl_callback")) { -- return; -- } -- sdl->pending += sdl->live; -- sdl->live = 0; -+ /* dolog ("in callback samples=%d\n", samples); */ -+ sdl_wait (s, "sdl_callback"); -+ if (s->exit) { -+ return; -+ } -+ -+ if (sdl_lock (s, "sdl_callback")) { -+ return; -+ } -+ -+ if (audio_bug (AUDIO_FUNC, sdl->live < 0 || sdl->live > hw->samples)) { -+ dolog ("sdl->live=%d hw->samples=%d\n", -+ sdl->live, hw->samples); -+ return; -+ } -+ -+ if (!sdl->live) { -+ goto again; - } - -- to_mix = audio_MIN (samples, sdl->pending); -- decr = audio_pcm_hw_clip_out (hw, buf, to_mix, 0); -- buf += decr << hw->info.shift; -+ /* dolog ("in callback live=%d\n", live); */ -+ to_mix = audio_MIN (samples, sdl->live); -+ decr = to_mix; -+ while (to_mix) { -+ int chunk = audio_MIN (to_mix, hw->samples - hw->rpos); -+ struct st_sample *src = hw->mix_buf + hw->rpos; -+ -+ /* dolog ("in callback to_mix %d, chunk %d\n", to_mix, chunk); */ -+ hw->clip (buf, src, chunk); -+ sdl->rpos = (sdl->rpos + chunk) % hw->samples; -+ to_mix -= chunk; -+ buf += chunk << hw->info.shift; -+ } - samples -= decr; -+ sdl->live -= decr; - sdl->decr += decr; -- sdl->pending -= decr; -- } - -- if (sdl_unlock (s, "sdl_callback")) { -- return; -+ again: -+ if (sdl_unlock (s, "sdl_callback")) { -+ return; -+ } - } -+ /* dolog ("done len=%d\n", len); */ - } - - static int sdl_write_out (SWVoiceOut *sw, void *buf, int len) -@@ -281,9 +292,18 @@ static int sdl_run_out (HWVoiceOut *hw, int live) - return 0; - } - -- sdl->live = live; -- decr = sdl->decr; -- sdl->decr = 0; -+ if (sdl->decr > live) { -+ ldebug ("sdl->decr %d live %d sdl->live %d\n", -+ sdl->decr, -+ live, -+ sdl->live); -+ } -+ -+ decr = audio_MIN (sdl->decr, live); -+ sdl->decr -= decr; -+ -+ sdl->live = live - decr; -+ hw->rpos = sdl->rpos; - - if (sdl->live > 0) { - sdl_unlock_and_post (s, "sdl_run_out"); --- -1.7.0.4 - diff --git a/app-emulation/qemu-kvm/files/qemu-kvm-0.12.3-include-madvise-defines.patch b/app-emulation/qemu-kvm/files/qemu-kvm-0.12.3-include-madvise-defines.patch deleted file mode 100644 index c50c717..0000000 --- a/app-emulation/qemu-kvm/files/qemu-kvm-0.12.3-include-madvise-defines.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- exec.c 2010-02-26 03:34:00.000000000 +0100 -+++ exec.c.new 2010-04-03 15:31:53.000000000 +0200 -@@ -22,6 +22,9 @@ - #else - #include <sys/types.h> - #include <sys/mman.h> -+#ifndef MADV_MERGEABLE -+#include <asm/mman.h> -+#endif - #endif - #include <stdlib.h> - #include <stdio.h> diff --git a/app-emulation/qemu-kvm/files/qemu-kvm-guest-hang-on-usb-add.patch b/app-emulation/qemu-kvm/files/qemu-kvm-guest-hang-on-usb-add.patch deleted file mode 100644 index 3f2abef..0000000 --- a/app-emulation/qemu-kvm/files/qemu-kvm-guest-hang-on-usb-add.patch +++ /dev/null @@ -1,100 +0,0 @@ -From 485b75728884a052b74d5458199ad45f0acbf190 Mon Sep 17 00:00:00 2001 -From: Timothy Jones <one.timothy.jones@gmail.com> -Date: Mon, 28 Jun 2010 10:38:18 -0400 -Subject: [PATCH v2] Guest OS hangs on usb_add - -This is a small patch to sligtly "intelligentify" usb device and -config descriptor parsing and to handle bug with certain usb -device (URC MX-950) reporting device desriptor length as 0x18 -instead of 18 with added vendor_id/product_id check ---- - hw/usb.h | 5 +++++ - usb-linux.c | 37 ++++++++++++++++++++++--------------- - 2 files changed, 27 insertions(+), 15 deletions(-) - -diff --git a/hw/usb.h b/hw/usb.h -index 00d2802..5c3528f 100644 ---- a/hw/usb.h -+++ b/hw/usb.h -@@ -117,6 +117,11 @@ - #define USB_DT_INTERFACE 0x04 - #define USB_DT_ENDPOINT 0x05 - -+#define USB_DT_DEVICE_LEN 18 -+#define USB_DT_CONFIG_LEN 9 -+#define USB_DT_INTERFACE_LEN 9 -+#define USB_DT_ENDPOINT_LEN 7 -+ - #define USB_ENDPOINT_XFER_CONTROL 0 - #define USB_ENDPOINT_XFER_ISOC 1 - #define USB_ENDPOINT_XFER_BULK 2 -diff --git a/usb-linux.c b/usb-linux.c -index 88273ff..2ac6562 100644 ---- a/usb-linux.c -+++ b/usb-linux.c -@@ -288,7 +288,7 @@ static void async_cancel(USBPacket *unused, void *opaque) - - static int usb_host_claim_interfaces(USBHostDevice *dev, int configuration) - { -- int dev_descr_len, config_descr_len; -+ int dev_descr_len, config_descr_total_len; - int interface, nb_interfaces; - int ret, i; - -@@ -297,32 +297,39 @@ static int usb_host_claim_interfaces(USBHostDevice *dev, int configuration) - - DPRINTF("husb: claiming interfaces. config %d\n", configuration); - -- i = 0; - dev_descr_len = dev->descr[0]; -- if (dev_descr_len > dev->descr_len) { -+ if (dev_descr_len == 0x18 && dev->descr[ 8] == 0x47 && dev->descr[ 9] == 0x46 -+ && dev->descr[10] == 0x00 && dev->descr[11] == 0x30) -+ dev_descr_len = USB_DT_DEVICE_LEN; /* for buggy MX-950 remote reporting len in hex */ -+ -+ if (dev_descr_len > dev->descr_len || dev_descr_len < USB_DT_DEVICE_LEN || dev->descr[1] != USB_DT_DEVICE) { -+ fprintf(stderr, "husb: invalid device descriptor\n"); - goto fail; - } - -- i += dev_descr_len; -- while (i < dev->descr_len) { -+ for (i = dev_descr_len; i < dev->descr_len; ) { - DPRINTF("husb: i is %d, descr_len is %d, dl %d, dt %d\n", - i, dev->descr_len, - dev->descr[i], dev->descr[i+1]); - -- if (dev->descr[i+1] != USB_DT_CONFIG) { -- i += dev->descr[i]; -- continue; -+ if (dev->descr[i] < 2) { -+ fprintf(stderr, "husb: invalid descriptor\n"); -+ goto fail; - } -- config_descr_len = dev->descr[i]; -+ if (dev->descr[i+1] == USB_DT_CONFIG) { -+ config_descr_total_len = dev->descr[i+2] + (dev->descr[i+3] << 8); - -- printf("husb: config #%d need %d\n", dev->descr[i + 5], configuration); -+ printf("husb: config #%d need %d\n", dev->descr[i + 5], configuration); - -- if (configuration < 0 || configuration == dev->descr[i + 5]) { -- configuration = dev->descr[i + 5]; -- break; -- } -+ if (configuration < 0 || configuration == dev->descr[i + 5]) { -+ configuration = dev->descr[i + 5]; -+ break; -+ } - -- i += config_descr_len; -+ i += config_descr_total_len; -+ } -+ else -+ i += dev->descr[i]; - } - - if (i >= dev->descr_len) { --- -1.7.1 - diff --git a/app-emulation/qemu-kvm/files/qemu.patch b/app-emulation/qemu-kvm/files/qemu.patch deleted file mode 100644 index 759f8e4..0000000 --- a/app-emulation/qemu-kvm/files/qemu.patch +++ /dev/null @@ -1,99 +0,0 @@ -diff --git a/error.h b/error.h -index 6361f40..d55e207 100644 ---- a/error.h -+++ b/error.h -@@ -9,8 +9,8 @@ - * This work is licensed under the terms of the GNU LGPL, version 2. See - * the COPYING.LIB file in the top-level directory. - */ --#ifndef ERROR_H --#define ERROR_H -+#ifndef ERROR_QAPI_H -+#define ERROR_QAPI_H - - #include "compiler.h" - #include <stdbool.h> -diff --git a/hw/qxl.c b/hw/qxl.c -index db7ae7a..e663f1a 100644 ---- a/hw/qxl.c -+++ b/hw/qxl.c -@@ -1189,7 +1189,7 @@ async_common: - } - d->current_async = orig_io_port; - qemu_mutex_unlock(&d->async_lock); -- dprint(d, 2, "start async %d (%d)\n", io_port, val); -+ dprint(d, 2, "start async %d (%ld)\n", io_port, val); - break; - default: - break; -@@ -1305,7 +1305,7 @@ async_common: - break; - } - case QXL_IO_FLUSH_SURFACES_ASYNC: -- dprint(d, 1, "QXL_IO_FLUSH_SURFACES_ASYNC (%d) (%s, s#=%d, res#=%d)\n", -+ dprint(d, 1, "QXL_IO_FLUSH_SURFACES_ASYNC (%ld) (%s, s#=%d, res#=%d)\n", - val, qxl_mode_to_string(d->mode), d->guest_surfaces.count, - d->num_free_res); - qxl_spice_flush_surfaces_async(d); -diff --git a/qapi/qapi-types-core.h b/qapi/qapi-types-core.h -index a79bc2b..64d85fc 100644 ---- a/qapi/qapi-types-core.h -+++ b/qapi/qapi-types-core.h -@@ -15,6 +15,6 @@ - #define QAPI_TYPES_CORE_H - - #include "qemu-common.h" --#include "error.h" -+#include "../error.h" - - #endif -diff --git a/qapi/qmp-dispatch.c b/qapi/qmp-dispatch.c -index 5584693..d024120 100644 ---- a/qapi/qmp-dispatch.c -+++ b/qapi/qmp-dispatch.c -@@ -10,7 +10,7 @@ - * See the COPYING.LIB file in the top-level directory. - * - */ -- -+#include "../error.h" - #include "qemu-objects.h" - #include "qapi/qmp-core.h" - #include "json-parser.h" -diff --git a/qapi/qmp-registry.c b/qapi/qmp-registry.c -index 3fe8866..2640437 100644 ---- a/qapi/qmp-registry.c -+++ b/qapi/qmp-registry.c -@@ -11,7 +11,7 @@ - * See the COPYING.LIB file in the top-level directory. - * - */ -- -+#include "../error.h" - #include "qapi/qmp-core.h" - - static QTAILQ_HEAD(, QmpCommand) qmp_commands = -diff --git a/qemu-objects.h b/qemu-objects.h -index c53fbaa..3fbece1 100644 ---- a/qemu-objects.h -+++ b/qemu-objects.h -@@ -13,6 +13,7 @@ - #ifndef QEMU_OBJECTS_H - #define QEMU_OBJECTS_H - -+#include "error.h" - #include "qobject.h" - #include "qint.h" - #include "qfloat.h" -diff --git a/qga/guest-agent-core.h b/qga/guest-agent-core.h -index e42b91d..b81eaba 100644 ---- a/qga/guest-agent-core.h -+++ b/qga/guest-agent-core.h -@@ -10,6 +10,7 @@ - * This work is licensed under the terms of the GNU GPL, version 2 or later. - * See the COPYING file in the top-level directory. - */ -+#include "../error.h" - #include "qapi/qmp-core.h" - #include "qemu-common.h" - diff --git a/app-emulation/qemu-kvm/qemu-kvm-0.15.0-r1.ebuild b/app-emulation/qemu-kvm/qemu-kvm-0.15.0-r1.ebuild deleted file mode 100644 index c398a74..0000000 --- a/app-emulation/qemu-kvm/qemu-kvm-0.15.0-r1.ebuild +++ /dev/null @@ -1,289 +0,0 @@ -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu-kvm/qemu-kvm-0.15.0.ebuild,v 1.2 2011/08/12 15:41:01 cardoe Exp $ - -#BACKPORTS=2 - -EAPI="3" - -if [[ ${PV} = *9999* ]]; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm.git" - GIT_ECLASS="git-2" -fi - -inherit eutils flag-o-matic ${GIT_ECLASS} linux-info toolchain-funcs multilib - -if [[ ${PV} = *9999* ]]; then - SRC_URI="" - KEYWORDS="" -else - SRC_URI="mirror://sourceforge/kvm/${PN}/${P}.tar.gz - ${BACKPORTS:+http://dev.gentoo.org/~cardoe/distfiles/${P}-backports-${BACKPORTS}.tar.bz2}" - KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" -fi - -DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" -HOMEPAGE="http://www.linux-kvm.org" - -LICENSE="GPL-2" -SLOT="0" -# xen is disabled until the deps are fixed -IUSE="+aio alsa bluetooth brltty curl debug esd fdt hardened jpeg ncurses \ -png pulseaudio qemu-ifup rbd sasl sdl spice ssl threads vde \ -+vhost-net xen" -# static, depends on libsdl being built with USE=static-libs, which can not -# be expressed in current EAPI's - -COMMON_TARGETS="i386 x86_64 arm cris m68k microblaze mips mipsel ppc ppc64 sh4 sh4eb sparc sparc64" -IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} mips64 mips64el ppcemb" -IUSE_USER_TARGETS="${COMMON_TARGETS} alpha armeb ppc64abi32 sparc32plus" - -# Setup the default SoftMMU targets, while using the loops -# below to setup the other targets. x86_64 should be the only -# defaults on for qemu-kvm -IUSE="${IUSE} +qemu_softmmu_targets_x86_64" - -for target in ${IUSE_SOFTMMU_TARGETS}; do - if [ "x${target}" = "xx86_64" ]; then - continue - fi - IUSE="${IUSE} qemu_softmmu_targets_${target}" -done - -for target in ${IUSE_USER_TARGETS}; do - IUSE="${IUSE} qemu_user_targets_${target}" -done - -RESTRICT="test" - -RDEPEND=" - !app-emulation/kqemu - !app-emulation/qemu - !app-emulation/qemu-softmmu - !app-emulation/qemu-user - !app-emulation/qemu-kvm-spice - >=dev-libs/glib-2.0 - sys-apps/pciutils - >=sys-apps/util-linux-2.16.0 - sys-libs/zlib - aio? ( dev-libs/libaio ) - alsa? ( >=media-libs/alsa-lib-1.0.13 ) - bluetooth? ( net-wireless/bluez ) - brltty? ( app-accessibility/brltty ) - curl? ( >=net-misc/curl-7.15.4 ) - esd? ( media-sound/esound ) - fdt? ( >=sys-apps/dtc-1.2.0 ) - jpeg? ( virtual/jpeg ) - ncurses? ( sys-libs/ncurses ) - png? ( media-libs/libpng ) - pulseaudio? ( media-sound/pulseaudio ) - qemu-ifup? ( sys-apps/iproute2 net-misc/bridge-utils ) - rbd? ( sys-cluster/ceph ) - sasl? ( dev-libs/cyrus-sasl ) - sdl? ( >=media-libs/libsdl-1.2.11[X] ) - spice? ( >=app-emulation/spice-0.6.0 ) - ssl? ( net-libs/gnutls ) - vde? ( net-misc/vde ) - xen? ( app-emulation/xen ) -" - -DEPEND="${RDEPEND} - app-text/texi2html - >=sys-kernel/linux-headers-2.6.35 - ssl? ( dev-util/pkgconfig ) -" - -kvm_kern_warn() { - eerror "Please enable KVM support in your kernel, found at:" - eerror - eerror " Virtualization" - eerror " Kernel-based Virtual Machine (KVM) support" - eerror -} - -pkg_setup() { - if ! use qemu_softmmu_targets_x86_64 && use x86_64 ; then - eerror "You disabled default target QEMU_SOFTMMU_TARGETS=x86_64" - fi - - if ! use qemu_softmmu_targets_x86_64 && use x86 ; then - eerror "You disabled default target QEMU_SOFTMMU_TARGETS=x86_64" - fi - - if kernel_is lt 2 6 25; then - eerror "This version of KVM requres a host kernel of 2.6.25 or higher." - eerror "Either upgrade your kernel" - else - if ! linux_config_exists; then - eerror "Unable to check your kernel for KVM support" - kvm_kern_warn - elif ! linux_chkconfig_present KVM; then - kvm_kern_warn - fi - if use vhost-net && ! linux_chkconfig_present VHOST_NET ; then - ewarn "You have to enable CONFIG_VHOST_NET in the kernel" - ewarn "to have vhost-net support." - fi - fi - - enewgroup kvm -} - -src_prepare() { - # prevent docs to get automatically installed - sed -i '/$(DESTDIR)$(docdir)/d' Makefile || die - # Alter target makefiles to accept CFLAGS set via flag-o - sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \ - Makefile Makefile.target || die - # append CFLAGS while linking - sed -i 's/$(LDFLAGS)/$(QEMU_CFLAGS) $(CFLAGS) $(LDFLAGS)/' rules.mak || die - - # remove part to make udev happy - sed -e 's~NAME="%k", ~~' -i kvm/scripts/65-kvm.rules || die - - # ${PN}-guest-hang-on-usb-add.patch was sent by Timothy Jones - # to the qemu-devel ml - bug 337988 - epatch "${FILESDIR}/qemu-0.11.0-mips64-user-fix.patch" - epatch "${FILESDIR}/qemu-0.15.patch" - - - [[ -n ${BACKPORTS} ]] && \ - EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \ - epatch -} - -src_configure() { - local conf_opts audio_opts user_targets - - for target in ${IUSE_SOFTMMU_TARGETS} ; do - use "qemu_softmmu_targets_${target}" && \ - softmmu_targets="${softmmu_targets} ${target}-softmmu" - done - - for target in ${IUSE_USER_TARGETS} ; do - use "qemu_user_targets_${target}" && \ - user_targets="${user_targets} ${target}-linux-user" - done - - if [ -z "${softmmu_targets}" ]; then - eerror "All SoftMMU targets are disabled. This is invalid for qemu-kvm" - die "At least 1 SoftMMU target must be enabled" - else - einfo "Building the following softmmu targets: ${softmmu_targets}" - fi - - if [ ! -z "${user_targets}" ]; then - einfo "Building the following user targets: ${user_targets}" - conf_opts="${conf_opts} --enable-linux-user" - else - conf_opts="${conf_opts} --disable-linux-user" - fi - - # Fix QA issues. QEMU needs executable heaps and we need to mark it as such - conf_opts="${conf_opts} --extra-ldflags=-Wl,-z,execheap" - - # Add support for static builds - #use static && conf_opts="${conf_opts} --static" - - # Support debug USE flag - use debug && conf_opts="${conf_opts} --enable-debug --disable-strip" - - # Fix the $(prefix)/etc issue - conf_opts="${conf_opts} --sysconfdir=/etc" - - #config options - conf_opts="${conf_opts} $(use_enable aio linux-aio)" - conf_opts="${conf_opts} $(use_enable bluetooth bluez)" - conf_opts="${conf_opts} $(use_enable brltty brlapi)" - conf_opts="${conf_opts} $(use_enable curl)" - conf_opts="${conf_opts} $(use_enable fdt)" - conf_opts="${conf_opts} $(use_enable hardened user-pie)" - conf_opts="${conf_opts} $(use_enable jpeg vnc-jpeg)" - conf_opts="${conf_opts} $(use_enable ncurses curses)" - conf_opts="${conf_opts} $(use_enable png vnc-png)" - conf_opts="${conf_opts} $(use_enable rbd)" - conf_opts="${conf_opts} $(use_enable sasl vnc-sasl)" - conf_opts="${conf_opts} $(use_enable sdl)" - conf_opts="${conf_opts} $(use_enable spice)" - conf_opts="${conf_opts} $(use_enable ssl vnc-tls)" - conf_opts="${conf_opts} $(use_enable threads vnc-thread)" - conf_opts="${conf_opts} $(use_enable vde)" - conf_opts="${conf_opts} $(use_enable vhost-net)" - conf_opts="${conf_opts} $(use_enable xen)" - conf_opts="${conf_opts} --disable-darwin-user --disable-bsd-user" - - # audio options - audio_opts="oss" - use alsa && audio_opts="alsa ${audio_opts}" - use esd && audio_opts="esd ${audio_opts}" - use pulseaudio && audio_opts="pa ${audio_opts}" - use sdl && audio_opts="sdl ${audio_opts}" - ./configure --prefix=/usr \ - --disable-strip \ - --disable-werror \ - --enable-kvm \ - --enable-nptl \ - --enable-uuid \ - ${conf_opts} \ - --audio-drv-list="${audio_opts}" \ - --target-list="${softmmu_targets} ${user_targets}" \ - --cc="$(tc-getCC)" \ - --host-cc="$(tc-getBUILD_CC)" \ - || die "configure failed" - - # this is for qemu upstream's threaded support which is - # in development and broken - # the kvm project has its own support for threaded IO - # which is always on and works - # --enable-io-thread \ -} - -src_install() { - emake DESTDIR="${D}" install || die "make install failed" - - if [ ! -z "${softmmu_targets}" ]; then - insinto /$(get_libdir)/udev/rules.d/ - doins kvm/scripts/65-kvm.rules || die - - if use qemu-ifup; then - insinto /etc/qemu/ - insopts -m0755 - doins kvm/scripts/qemu-ifup || die - fi - - if use qemu_softmmu_targets_x86_64 ; then - dobin "${FILESDIR}"/qemu-kvm - dosym /usr/bin/qemu-kvm /usr/bin/kvm - else - elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install" - elog "of /usr/bin/qemu-kvm and /usr/bin/kvm" - fi - fi - - dodoc Changelog MAINTAINERS TODO pci-ids.txt || die - newdoc pc-bios/README README.pc-bios || die - dohtml qemu-doc.html qemu-tech.html || die -} - -pkg_postinst() { - - if [ ! -z "${softmmu_targets}" ]; then - elog "If you don't have kvm compiled into the kernel, make sure you have" - elog "the kernel module loaded before running kvm. The easiest way to" - elog "ensure that the kernel module is loaded is to load it on boot." - elog "For AMD CPUs the module is called 'kvm-amd'" - elog "For Intel CPUs the module is called 'kvm-intel'" - elog "Please review /etc/conf.d/modules for how to load these" - elog - elog "Make sure your user is in the 'kvm' group" - elog "Just run 'gpasswd -a <USER> kvm', then have <USER> re-login." - elog - elog "You will need the Universal TUN/TAP driver compiled into your" - elog "kernel or loaded as a module to use the virtual network device" - elog "if using -net tap. You will also need support for 802.1d" - elog "Ethernet Bridging and a configured bridge if using the provided" - elog "kvm-ifup script from /etc/kvm." - elog - elog "The gnutls use flag was renamed to ssl, so adjust your use flags." - fi -} diff --git a/app-emulation/qemu-kvm/qemu-kvm-9999-r1.ebuild b/app-emulation/qemu-kvm/qemu-kvm-9999-r1.ebuild deleted file mode 100644 index 650ffbe..0000000 --- a/app-emulation/qemu-kvm/qemu-kvm-9999-r1.ebuild +++ /dev/null @@ -1,301 +0,0 @@ -# Copyright 1999-2011 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.25 2011/11/21 18:11:11 jmbsvicetto Exp $ - -#BACKPORTS=1 - -EAPI="3" - -if [[ ${PV} = *9999* ]]; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm.git" - GIT_ECLASS="git-2" -fi - -inherit eutils flag-o-matic ${GIT_ECLASS} linux-info toolchain-funcs multilib python - -if [[ ${PV} = *9999* ]]; then - SRC_URI="" - KEYWORDS="" -else - SRC_URI="mirror://sourceforge/kvm/${PN}/${P}.tar.gz - ${BACKPORTS:+ - http://dev.gentoo.org/~flameeyes/${PN}/${P}-backports-${BACKPORTS}.tar.bz2 - http://dev.gentoo.org/~cardoe/distfiles/${P}-backports-${BACKPORTS}.tar.bz2}" - KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" -fi - -DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" -HOMEPAGE="http://www.linux-kvm.org" - -LICENSE="GPL-2" -SLOT="0" -# xen is disabled until the deps are fixed -IUSE="+aio alsa bluetooth brltty curl debug esd fdt hardened jpeg ncurses nss \ -png pulseaudio qemu-ifup rbd sasl sdl spice ssl threads vde \ -+vhost-net xattr xen" -# static, depends on libsdl being built with USE=static-libs, which can not -# be expressed in current EAPI's - -COMMON_TARGETS="i386 x86_64 arm cris m68k microblaze mips mipsel ppc ppc64 sh4 sh4eb sparc sparc64" -IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} mips64 mips64el ppcemb" -IUSE_USER_TARGETS="${COMMON_TARGETS} alpha armeb ppc64abi32 sparc32plus" - -# Setup the default SoftMMU targets, while using the loops -# below to setup the other targets. x86_64 should be the only -# defaults on for qemu-kvm -IUSE="${IUSE} +qemu_softmmu_targets_x86_64" - -for target in ${IUSE_SOFTMMU_TARGETS}; do - if [ "x${target}" = "xx86_64" ]; then - continue - fi - IUSE="${IUSE} qemu_softmmu_targets_${target}" -done - -for target in ${IUSE_USER_TARGETS}; do - IUSE="${IUSE} qemu_user_targets_${target}" -done - -RESTRICT="test" - -RDEPEND=" - !app-emulation/kqemu - !app-emulation/qemu - !app-emulation/qemu-user - >=dev-libs/glib-2.0 - sys-apps/pciutils - >=sys-apps/util-linux-2.16.0 - sys-libs/zlib - amd64? ( sys-apps/seabios ) - x86? ( sys-apps/seabios ) - aio? ( dev-libs/libaio ) - alsa? ( >=media-libs/alsa-lib-1.0.13 ) - bluetooth? ( net-wireless/bluez ) - brltty? ( app-accessibility/brltty ) - curl? ( >=net-misc/curl-7.15.4 ) - esd? ( media-sound/esound ) - fdt? ( >=sys-apps/dtc-1.2.0 ) - jpeg? ( virtual/jpeg ) - ncurses? ( sys-libs/ncurses ) - nss? ( dev-libs/nss ) - png? ( media-libs/libpng ) - pulseaudio? ( media-sound/pulseaudio ) - qemu-ifup? ( sys-apps/iproute2 net-misc/bridge-utils ) - rbd? ( sys-cluster/ceph ) - sasl? ( dev-libs/cyrus-sasl ) - sdl? ( >=media-libs/libsdl-1.2.11[X] ) - spice? ( >=app-emulation/spice-0.6.0 ) - ssl? ( net-libs/gnutls ) - vde? ( net-misc/vde ) - xattr? ( sys-apps/attr ) - xen? ( app-emulation/xen ) -" - -DEPEND="${RDEPEND} - app-text/texi2html - >=sys-kernel/linux-headers-2.6.35 - ssl? ( dev-util/pkgconfig ) -" - -kvm_kern_warn() { - eerror "Please enable KVM support in your kernel, found at:" - eerror - eerror " Virtualization" - eerror " Kernel-based Virtual Machine (KVM) support" - eerror -} - -pkg_setup() { - if ! use qemu_softmmu_targets_x86_64 && use x86_64 ; then - eerror "You disabled default target QEMU_SOFTMMU_TARGETS=x86_64" - fi - - if ! use qemu_softmmu_targets_x86_64 && use x86 ; then - eerror "You disabled default target QEMU_SOFTMMU_TARGETS=x86_64" - fi - - if kernel_is lt 2 6 25; then - eerror "This version of KVM requres a host kernel of 2.6.25 or higher." - eerror "Either upgrade your kernel" - else - if ! linux_config_exists; then - eerror "Unable to check your kernel for KVM support" - kvm_kern_warn - elif ! linux_chkconfig_present KVM; then - kvm_kern_warn - fi - if use vhost-net && ! linux_chkconfig_present VHOST_NET ; then - ewarn "You have to enable CONFIG_VHOST_NET in the kernel" - ewarn "to have vhost-net support." - fi - fi - - python_set_active_version 2 - - enewgroup kvm -} - -src_prepare() { - # prevent docs to get automatically installed - sed -i '/$(DESTDIR)$(docdir)/d' Makefile || die - # Alter target makefiles to accept CFLAGS set via flag-o - sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \ - Makefile Makefile.target || die - # append CFLAGS while linking - sed -i 's/$(LDFLAGS)/$(QEMU_CFLAGS) $(CFLAGS) $(LDFLAGS)/' rules.mak || die - - # remove part to make udev happy - sed -e 's~NAME="%k", ~~' -i kvm/scripts/65-kvm.rules || die - - # ${PN}-guest-hang-on-usb-add.patch was sent by Timothy Jones - # to the qemu-devel ml - bug 337988 - epatch "${FILESDIR}/qemu-0.11.0-mips64-user-fix.patch" - - [[ -n ${BACKPORTS} ]] && \ - EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \ - epatch -} - -src_configure() { - local conf_opts audio_opts user_targets - - for target in ${IUSE_SOFTMMU_TARGETS} ; do - use "qemu_softmmu_targets_${target}" && \ - softmmu_targets="${softmmu_targets} ${target}-softmmu" - done - - for target in ${IUSE_USER_TARGETS} ; do - use "qemu_user_targets_${target}" && \ - user_targets="${user_targets} ${target}-linux-user" - done - - if [ -z "${softmmu_targets}" ]; then - eerror "All SoftMMU targets are disabled. This is invalid for qemu-kvm" - die "At least 1 SoftMMU target must be enabled" - else - einfo "Building the following softmmu targets: ${softmmu_targets}" - fi - - if [ ! -z "${user_targets}" ]; then - einfo "Building the following user targets: ${user_targets}" - conf_opts="${conf_opts} --enable-linux-user" - else - conf_opts="${conf_opts} --disable-linux-user" - fi - - # Fix QA issues. QEMU needs executable heaps and we need to mark it as such - conf_opts="${conf_opts} --extra-ldflags=-Wl,-z,execheap" - - # Add support for static builds - #use static && conf_opts="${conf_opts} --static" - - # Support debug USE flag - use debug && conf_opts="${conf_opts} --enable-debug --disable-strip" - - # Fix the $(prefix)/etc issue - conf_opts="${conf_opts} --sysconfdir=/etc" - - #config options - conf_opts="${conf_opts} $(use_enable aio linux-aio)" - conf_opts="${conf_opts} $(use_enable bluetooth bluez)" - conf_opts="${conf_opts} $(use_enable brltty brlapi)" - conf_opts="${conf_opts} $(use_enable curl)" - conf_opts="${conf_opts} $(use_enable fdt)" - conf_opts="${conf_opts} $(use_enable jpeg vnc-jpeg)" - conf_opts="${conf_opts} $(use_enable ncurses curses)" - conf_opts="${conf_opts} $(use_enable nss smartcard-nss)" - conf_opts="${conf_opts} $(use_enable png vnc-png)" - conf_opts="${conf_opts} $(use_enable rbd)" - conf_opts="${conf_opts} $(use_enable sasl vnc-sasl)" - conf_opts="${conf_opts} $(use_enable sdl)" - conf_opts="${conf_opts} $(use_enable spice)" - conf_opts="${conf_opts} $(use_enable ssl vnc-tls)" - conf_opts="${conf_opts} $(use_enable threads vnc-thread)" - conf_opts="${conf_opts} $(use_enable vde)" - conf_opts="${conf_opts} $(use_enable vhost-net)" - conf_opts="${conf_opts} $(use_enable xen)" - conf_opts="${conf_opts} $(use_enable xattr attr)" - conf_opts="${conf_opts} --disable-darwin-user --disable-bsd-user" - - # audio options - audio_opts="oss" - use alsa && audio_opts="alsa ${audio_opts}" - use esd && audio_opts="esd ${audio_opts}" - use pulseaudio && audio_opts="pa ${audio_opts}" - use sdl && audio_opts="sdl ${audio_opts}" - ./configure --prefix=/usr \ - --disable-strip \ - --disable-werror \ - --enable-kvm \ - --enable-nptl \ - --enable-uuid \ - ${conf_opts} \ - --audio-drv-list="${audio_opts}" \ - --target-list="${softmmu_targets} ${user_targets}" \ - --cc="$(tc-getCC)" \ - --host-cc="$(tc-getBUILD_CC)" \ - || die "configure failed" - - # this is for qemu upstream's threaded support which is - # in development and broken - # the kvm project has its own support for threaded IO - # which is always on and works - # --enable-io-thread \ -} - -src_install() { - emake DESTDIR="${D}" install || die "make install failed" - - if [ ! -z "${softmmu_targets}" ]; then - insinto /$(get_libdir)/udev/rules.d/ - doins kvm/scripts/65-kvm.rules || die - - if use qemu-ifup; then - insinto /etc/qemu/ - insopts -m0755 - doins kvm/scripts/qemu-ifup || die - fi - - if use qemu_softmmu_targets_x86_64 ; then - dobin "${FILESDIR}"/qemu-kvm - dosym /usr/bin/qemu-kvm /usr/bin/kvm - else - elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install" - elog "of /usr/bin/qemu-kvm and /usr/bin/kvm" - fi - fi - - dodoc Changelog MAINTAINERS TODO pci-ids.txt || die - newdoc pc-bios/README README.pc-bios || die - dohtml qemu-doc.html qemu-tech.html || die - - # FIXME: Need to come up with a solution for non-x86 based systems - if use x86 || use amd64; then - # Remove SeaBIOS since we're using the SeaBIOS packaged one - rm "${D}/usr/share/qemu/bios.bin" - dosym ../seabios/bios.bin /usr/share/qemu/bios.bin - fi -} - -pkg_postinst() { - - if [ ! -z "${softmmu_targets}" ]; then - elog "If you don't have kvm compiled into the kernel, make sure you have" - elog "the kernel module loaded before running kvm. The easiest way to" - elog "ensure that the kernel module is loaded is to load it on boot." - elog "For AMD CPUs the module is called 'kvm-amd'" - elog "For Intel CPUs the module is called 'kvm-intel'" - elog "Please review /etc/conf.d/modules for how to load these" - elog - elog "Make sure your user is in the 'kvm' group" - elog "Just run 'gpasswd -a <USER> kvm', then have <USER> re-login." - elog - elog "You will need the Universal TUN/TAP driver compiled into your" - elog "kernel or loaded as a module to use the virtual network device" - elog "if using -net tap. You will also need support for 802.1d" - elog "Ethernet Bridging and a configured bridge if using the provided" - elog "kvm-ifup script from /etc/kvm." - elog - elog "The gnutls use flag was renamed to ssl, so adjust your use flags." - fi -} |