diff options
author | Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> | 2010-11-02 16:29:19 +0000 |
---|---|---|
committer | Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> | 2010-11-02 16:29:19 +0000 |
commit | a667be1b0affae7e13ea2072ee1b980b00ff25e5 (patch) | |
tree | 83ab8a0a3bb1c546985010f54eab4542029b0742 /app-emulation/qemu-kvm | |
parent | Remove mescalinum from metadata.xml (diff) | |
download | historical-a667be1b0affae7e13ea2072ee1b980b00ff25e5.tar.gz historical-a667be1b0affae7e13ea2072ee1b980b00ff25e5.tar.bz2 historical-a667be1b0affae7e13ea2072ee1b980b00ff25e5.zip |
Synced the qemu-kvm-0.13.0-r1 ebuild with qemu-kvm-9999 ebuild.
Added missing jpeg and png use flags. Dropped the non-existent kvm-trace use flag - fixes bug 343317.
Moved some checks from pkg_setup to src_configure. Applied the fix to the $(prefix)/etc issue.
Dropped unused qemu-kvm-0.12.1-kvm_save_mpstate-workaround.patch file - fixes bug 340727.
Included patch file to fix issues with usb, bug 337988 , but won't use it until upstream commits it to the git tree or gives an ok.
Dropped old version.
Package-Manager: portage-2.2.0_alpha3/cvs/Linux x86_64
Diffstat (limited to 'app-emulation/qemu-kvm')
-rw-r--r-- | app-emulation/qemu-kvm/ChangeLog | 19 | ||||
-rw-r--r-- | app-emulation/qemu-kvm/Manifest | 8 | ||||
-rw-r--r-- | app-emulation/qemu-kvm/files/qemu-kvm-0.12.1-kvm_save_mpstate-workaround.patch | 20 | ||||
-rw-r--r-- | app-emulation/qemu-kvm/files/qemu-kvm-guest-hang-on-usb-add.patch | 100 | ||||
-rw-r--r-- | app-emulation/qemu-kvm/qemu-kvm-0.13.0-r1.ebuild (renamed from app-emulation/qemu-kvm/qemu-kvm-0.12.5.ebuild) | 131 | ||||
-rw-r--r-- | app-emulation/qemu-kvm/qemu-kvm-9999.ebuild | 13 |
6 files changed, 198 insertions, 93 deletions
diff --git a/app-emulation/qemu-kvm/ChangeLog b/app-emulation/qemu-kvm/ChangeLog index 8705b2d9dd3f..1c465b2ba17f 100644 --- a/app-emulation/qemu-kvm/ChangeLog +++ b/app-emulation/qemu-kvm/ChangeLog @@ -1,6 +1,23 @@ # ChangeLog for app-emulation/qemu-kvm # Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu-kvm/ChangeLog,v 1.44 2010/10/28 09:54:24 lu_zero Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu-kvm/ChangeLog,v 1.45 2010/11/02 16:29:19 jmbsvicetto Exp $ + +*qemu-kvm-0.13.0-r1 (02 Nov 2010) + + 02 Nov 2010; Jorge Manuel B. S. Vicetto <jmbsvicetto@gentoo.org> + -files/qemu-kvm-0.12.1-kvm_save_mpstate-workaround.patch, + -qemu-kvm-0.12.5.ebuild, +qemu-kvm-0.13.0-r1.ebuild, qemu-kvm-9999.ebuild, + +files/qemu-kvm-guest-hang-on-usb-add.patch: + Synced the qemu-kvm-0.13.0-r1 ebuild with qemu-kvm-9999 ebuild. + Added missing jpeg and png use flags. Dropped the non-existent kvm-trace + use flag - fixes bug 343317. + Moved some checks from pkg_setup to src_configure. Applied the fix to the + $(prefix)/etc issue. + Dropped unused qemu-kvm-0.12.1-kvm_save_mpstate-workaround.patch file - + fixes bug 340727. + Included patch file to fix issues with usb, bug 337988 , but won't use it + until upstream commits it to the git tree or gives an ok. + Dropped old version. *qemu-kvm-0.13.0 (28 Oct 2010) diff --git a/app-emulation/qemu-kvm/Manifest b/app-emulation/qemu-kvm/Manifest index 037803530b6e..3c24a73b6cda 100644 --- a/app-emulation/qemu-kvm/Manifest +++ b/app-emulation/qemu-kvm/Manifest @@ -1,10 +1,10 @@ AUX qemu-0.11.0-mips64-user-fix.patch 313 RMD160 db016e0a48990a435dd6cf6e807145b33ada4908 SHA1 2ea913b1bcd29734a6d4011794bdb4aa3599a184 SHA256 b4173fc177bd0d0ba67f5551a3512047a19a9b2c0a122f968e32fbd834848d2f AUX qemu-kvm 61 RMD160 83882e881a067065258f562ad1e60440666c85d3 SHA1 a965f19031e303d583bd541c9d8fff2214262e6b SHA256 211d51f0a7d3d2ba8c53016c75e2b483feadbb65e383b1eec81d9cebf6a22c29 -AUX qemu-kvm-0.12.1-kvm_save_mpstate-workaround.patch 622 RMD160 d3add3022d9eba3ec07ccade6f169b4d758d23e8 SHA1 b41e9516d69c179701906f157750e72a82c650ca SHA256 f51a7b3ea49f814a5f7726daeac08e5ab641d2e0ea72e90b4b83dd914ca742ff AUX qemu-kvm-0.12.2-virtio-large-iovecs.patch 987 RMD160 b16ae8ffd7a4b2d32c32d0ae56c707958344b3eb SHA1 65cd9b99929e5057d636d9676f5a3435db24695f SHA256 e4ca83f65c4deb16e2c22d728e547012aa6110a00ced92a9590990307ab9f7df AUX qemu-kvm-0.12.3-fix-crash-with-sdl.patch 4003 RMD160 1e8965e94537e24d0903a7a096c91e35f7013118 SHA1 a6a36da9613d90d45148aa133392bd342b83d1cd SHA256 aeca9f133c021726c0e3ce2a58843ee12d592669143d0b75e46b8e301b5cf102 AUX qemu-kvm-0.12.3-include-madvise-defines.patch 274 RMD160 2b2b454fabc3b5362c0479d581e5fb038e02aa97 SHA1 c34b51b9c0b5a69ab2ab7a8a64c804f7cbbbebf5 SHA256 0d33d22a853e9b1d19786c9ac53a515587a9753ff69a2f53e61c4764590e7821 AUX qemu-kvm-0.12.4-large-virtio-corruption.patch 1291 RMD160 66ae04ddfbb6d2e6ce55d109917b231cf354dcbf SHA1 2dc977ce2de3a9b129688d62b04dde079070b97f SHA256 ee279695557224a0f1d1eddf7739932f93abfd781724ac7768a7d1b6a6d61a14 +AUX qemu-kvm-guest-hang-on-usb-add.patch 3491 RMD160 7bc186c283b0eb220a47895f7cab50e191f1a3ea SHA1 00f36fd0197fa9d359e28a9ef2f56a1ee860fddf SHA256 d3068a419d69dbe44758830509fc13460d1497b14a5a10ffad910552da0c86b3 DIST qemu-kvm-0.11.1.tar.gz 4384334 RMD160 0f945f1812b3a42a5642698d2f15bd8f456612f8 SHA1 291d0b771feb4c67bce71d393868a6d1a1db345b SHA256 7df5b589fabb1f0f35a06abce7e34c81574e09ade538ba883ef5b43ccbd8458b DIST qemu-kvm-0.12.3.tar.gz 4718791 RMD160 fe88117e6e32188e097a86f95bffc4b74422a5e6 SHA1 235a790056a1b751791e64dd499129b2dbf55be8 SHA256 77cccdc8938b33f3ed74763d01deaad58918c85f04a06afd10f00857b504c2b2 DIST qemu-kvm-0.12.4.tar.gz 4720232 RMD160 63a18ff3b95de2b4d0dfac130cf850c1cd7caec0 SHA1 955c8dad1f65df0eb5403f40a6c92d93a0a252be SHA256 1489fe5a0def7b857256817a998768bb21662167d10e7c372312c5939e64181e @@ -15,8 +15,8 @@ EBUILD qemu-kvm-0.11.1-r1.ebuild 5834 RMD160 14a6c25f17ca1585e6ae214faabbee03836 EBUILD qemu-kvm-0.12.3-r1.ebuild 7490 RMD160 6e1372313a61822b6aa8aecd2adbb96aceced6e7 SHA1 97de1efe8be68f47f367988c463244d9201e409d SHA256 52f6e7351467fece7504b5a2a9641d737656213f68bdb82c6ac2c128873425af EBUILD qemu-kvm-0.12.4-r1.ebuild 7502 RMD160 c16a2e641bd879b8eabf27c2e317d250f3554d5f SHA1 e2bc0954389e96d01ef8ecc5f0e32797477f37eb SHA256 33c99cb7f99a73c9845ddfc0565c0d1a1c0b6ba3a2d25d3239c21912a2fbcb25 EBUILD qemu-kvm-0.12.5-r1.ebuild 7784 RMD160 be817bf412de0ec282f9acd5d9d0c5f74394f571 SHA1 ad6b4f15c2e0defe95804be92b432afdf8afa393 SHA256 6f42a15962d8ff1b0ea00bf57c1d4eacb0aea75e7cffcc1baeae4043fb024515 -EBUILD qemu-kvm-0.12.5.ebuild 7639 RMD160 f9ddc850b4f35539834de213f6063875ea1a7233 SHA1 702e1638d36b27c2571e08551268da087ca168ca SHA256 fa61415340a418deee2f100e245b674922e1e7816749ac8c26912bb2497b5ea8 +EBUILD qemu-kvm-0.13.0-r1.ebuild 7829 RMD160 76ae38d0b137da5e533176de40c4738c5e3905b7 SHA1 f5752dc353fba1a11774c9ad4dad61c76da5c88f SHA256 17bb352adc87bf7c78fc909a530490e8d074c6d8df705e69ab02168529069420 EBUILD qemu-kvm-0.13.0.ebuild 7523 RMD160 0d13c13884bb98358a3af12c004ac65406ed5a7c SHA1 d588382f205240ab4ee37d928676a698741cdf5b SHA256 c1426629d979249ce1753f8ff36caa3eabc9a214ae5a83d2cb18d5995af07d8d -EBUILD qemu-kvm-9999.ebuild 7954 RMD160 4637e692e9df562f5db88b3c2561ca8a2ce9361f SHA1 76eaa4e457dc83602582c710cf86e8022edd1835 SHA256 80090bf54711b22278380ebe5a043583caa4a2db1676210020fe7e1b3098baa1 -MISC ChangeLog 9597 RMD160 4f0a27ba213d0cee3ba88b723e7588678bb36f40 SHA1 4aa388d17f36d7f4c8d9bbcc32efdb8fb873de55 SHA256 4bea4f325cfd85a435b20fb0f54f2fb363c696c0f29382a8422ae94680f24fc5 +EBUILD qemu-kvm-9999.ebuild 7975 RMD160 f7d4377fc7b429173c8b87a7936adf9e8f589340 SHA1 ea86fa54c309d8a13591229ea3089a80c9e5ebb5 SHA256 291f98afe41ce1abafd11220ee01b13c5742818ff98cfc0eff1bfe7a38a6524c +MISC ChangeLog 10412 RMD160 32803e6d5e84a576b8f6e2ed93b5be215ff4a2bc SHA1 a878a2d59a95a8e1911d87d53af5f214d5144837 SHA256 8bf5abe2d28a2fa5832a847ed8c906729c1ac72fcf5bb4454da081e24a7cd785 MISC metadata.xml 1319 RMD160 2114f55e1cb1df8481ba0790699f038ef0f54a47 SHA1 b198150ccedb003d270b4582ff572b4dadaf6c53 SHA256 2fa55ff737cfff70381260ccc3c9c76bc679039ca58d3e6d499bbc317c410054 diff --git a/app-emulation/qemu-kvm/files/qemu-kvm-0.12.1-kvm_save_mpstate-workaround.patch b/app-emulation/qemu-kvm/files/qemu-kvm-0.12.1-kvm_save_mpstate-workaround.patch deleted file mode 100644 index 3fb87f3ddac0..000000000000 --- a/app-emulation/qemu-kvm/files/qemu-kvm-0.12.1-kvm_save_mpstate-workaround.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- monitor.c 2009-12-20 17:21:40.000000000 +0100 -+++ monitor.c.new 2009-12-21 11:47:30.000000000 +0100 -@@ -677,7 +677,7 @@ - mon_set_cpu(0); - } - cpu_synchronize_state(cur_mon->mon_cpu); -- kvm_save_mpstate(cur_mon->mon_cpu); -+// kvm_save_mpstate(cur_mon->mon_cpu); - return cur_mon->mon_cpu; - } - -@@ -780,7 +780,7 @@ - QObject *obj; - - cpu_synchronize_state(env); -- kvm_save_mpstate(env); -+// kvm_save_mpstate(env); - - obj = qobject_from_jsonf("{ 'CPU': %d, 'current': %i, 'halted': %i }", - env->cpu_index, env == mon->mon_cpu, 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 new file mode 100644 index 000000000000..3f2abefe879c --- /dev/null +++ b/app-emulation/qemu-kvm/files/qemu-kvm-guest-hang-on-usb-add.patch @@ -0,0 +1,100 @@ +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/qemu-kvm-0.12.5.ebuild b/app-emulation/qemu-kvm/qemu-kvm-0.13.0-r1.ebuild index ee9092d85e04..8c16dd7f526c 100644 --- a/app-emulation/qemu-kvm/qemu-kvm-0.12.5.ebuild +++ b/app-emulation/qemu-kvm/qemu-kvm-0.13.0-r1.ebuild @@ -1,8 +1,6 @@ # Copyright 1999-2010 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.12.5.ebuild,v 1.3 2010/08/12 08:49:51 dev-zero Exp $ - -#BACKPORTS=2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu-kvm/qemu-kvm-0.13.0-r1.ebuild,v 1.1 2010/11/02 16:29:19 jmbsvicetto Exp $ EAPI="2" @@ -17,8 +15,7 @@ if [[ ${PV} = *9999* ]]; then SRC_URI="" KEYWORDS="" else - SRC_URI="mirror://sourceforge/kvm/${PN}/${P}.tar.gz - ${BACKPORTS:+mirror://gentoo/${P}-backports-${BACKPORTS}.tar.bz2}" + SRC_URI="mirror://sourceforge/kvm/${PN}/${P}.tar.gz" KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" fi @@ -28,8 +25,8 @@ HOMEPAGE="http://www.linux-kvm.org" LICENSE="GPL-2" SLOT="0" # xen is disabled until the deps are fixed -IUSE="+aio alsa bluetooth curl esd gnutls fdt hardened kvm-trace ncurses \ -pulseaudio qemu-ifup sasl sdl static vde" +IUSE="+aio alsa bluetooth brltty curl esd fdt hardened jpeg ncurses \ +png pulseaudio qemu-ifup sasl sdl ssl static vde" 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" @@ -57,22 +54,26 @@ RDEPEND=" aio? ( dev-libs/libaio ) alsa? ( >=media-libs/alsa-lib-1.0.13 ) bluetooth? ( net-wireless/bluez ) + brltty? ( app-accessibility/brltty ) curl? ( net-misc/curl ) esd? ( media-sound/esound ) fdt? ( sys-apps/dtc ) - gnutls? ( net-libs/gnutls ) + jpeg? ( media-libs/jpeg ) ncurses? ( sys-libs/ncurses ) + png? ( media-libs/libpng ) pulseaudio? ( media-sound/pulseaudio ) qemu-ifup? ( sys-apps/iproute2 net-misc/bridge-utils ) sasl? ( dev-libs/cyrus-sasl ) sdl? ( >=media-libs/libsdl-1.2.11[X] ) + ssl? ( net-libs/gnutls ) vde? ( net-misc/vde ) " DEPEND="${RDEPEND} app-text/texi2html >=sys-kernel/linux-headers-2.6.29 - gnutls? ( dev-util/pkgconfig )" + ssl? ( dev-util/pkgconfig ) +" kvm_kern_warn() { eerror "Please enable KVM support in your kernel, found at:" @@ -83,13 +84,7 @@ kvm_kern_warn() { } pkg_setup() { - - local counter="0" check use qemu_softmmu_targets_x86_64 || ewarn "You disabled default target QEMU_SOFTMMU_TARGETS=x86_64" - for check in ${IUSE_SOFTMMU_TARGETS} ; do - use "qemu_softmmu_targets_${check}" && counter="1" - done - [[ ${counter} == 0 ]] && die "You need to set at least 1 target in QEMU_SOFTMMU_TARGETS" if kernel_is lt 2 6 25; then eerror "This version of KVM requres a host kernel of 2.6.25 or higher." @@ -118,13 +113,11 @@ src_prepare() { # remove part to make udev happy sed -e 's~NAME="%k", ~~' -i kvm/scripts/65-kvm.rules || die - epatch "${FILESDIR}"/qemu-0.11.0-mips64-user-fix.patch \ - "${FILESDIR}"/${PN}-0.12.3-fix-crash-with-sdl.patch \ - "${FILESDIR}"/${PN}-0.12.3-include-madvise-defines.patch - - [[ -n ${BACKPORTS} ]] && \ - EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \ - epatch + # ${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" \ + "${FILESDIR}/${PN}-0.12.3-include-madvise-defines.patch" +# "${FILESDIR}/${PN}-guest-hang-on-usb-add.patch" } src_configure() { @@ -140,7 +133,9 @@ src_configure() { user_targets="${user_targets} ${target}-linux-user" done - if [ ! -z "${softmmu_targets}" ]; then + if [ -z "${softmmu_targets}" ]; then + conf_opts="${conf_opts} --disable-system" + else einfo "Building the following softmmu targets: ${softmmu_targets}" fi @@ -157,18 +152,23 @@ src_configure() { # Add support for static builds use static && conf_opts="${conf_opts} --static" + # Fix the $(prefix)/etc issue + conf_opts="${conf_opts} --sysconfdir=/etc" + #config options conf_opts="${conf_opts} $(use_enable aio linux-aio)" - use bluetooth || conf_opts="${conf_opts} --disable-bluez" + conf_opts="${conf_opts} $(use_enable bluetooth bluez)" + conf_opts="${conf_opts} $(use_enable brltty brlapi)" conf_opts="${conf_opts} $(use_enable curl)" - use gnutls || conf_opts="${conf_opts} --disable-vnc-tls" conf_opts="${conf_opts} $(use_enable fdt)" - use hardened && conf_opts="${conf_opts} --enable-user-pie" - use kvm-trace && conf_opts="${conf_opts} --with-kvm-trace" - use ncurses || conf_opts="${conf_opts} --disable-curses" - use sasl || conf_opts="${conf_opts} --disable-vnc-sasl" - use sdl || conf_opts="${conf_opts} --disable-sdl" - use vde || conf_opts="${conf_opts} --disable-vde" + 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 sasl vnc-sasl)" + conf_opts="${conf_opts} $(use_enable sdl)" + conf_opts="${conf_opts} $(use_enable ssl vnc-tls)" + conf_opts="${conf_opts} $(use_enable vde)" # conf_opts="${conf_opts} $(use_enable xen)" conf_opts="${conf_opts} --disable-xen" conf_opts="${conf_opts} --disable-darwin-user --disable-bsd-user" @@ -181,6 +181,7 @@ src_configure() { use sdl && audio_opts="sdl ${audio_opts}" ./configure --prefix=/usr \ --disable-strip \ + --disable-werror \ --enable-kvm \ --enable-nptl \ --enable-uuid \ @@ -195,49 +196,55 @@ src_configure() { # in development and broken # the kvm project has its own support for threaded IO # which is always on and works -# --enable-io-thread \ + # --enable-io-thread \ } src_install() { emake DESTDIR="${D}" install || die "make install failed" - insinto /etc/udev/rules.d/ - doins kvm/scripts/65-kvm.rules || die + if [ ! -z "${softmmu_targets}" ]; then + insinto /etc/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-ifup; then - insinto /etc/qemu/ - insopts -m0755 - doins kvm/scripts/qemu-ifup || die + 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 - - 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 } pkg_postinst() { - 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." - echo + + 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.ebuild b/app-emulation/qemu-kvm/qemu-kvm-9999.ebuild index 82d981713c66..91cb06e1f1f9 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-2010 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.12 2010/09/06 11:07:09 jmbsvicetto Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu-kvm/qemu-kvm-9999.ebuild,v 1.13 2010/11/02 16:29:19 jmbsvicetto Exp $ EAPI="2" @@ -90,8 +90,8 @@ kvm_kern_warn() { } pkg_setup() { - local counter="0" check + use qemu_softmmu_targets_x86_64 || ewarn "You disabled default target QEMU_SOFTMMU_TARGETS=x86_64" for check in ${IUSE_SOFTMMU_TARGETS} ; do use "qemu_softmmu_targets_${check}" && counter="1" @@ -188,6 +188,7 @@ src_configure() { use sdl && audio_opts="sdl ${audio_opts}" ./configure --prefix=/usr \ --disable-strip \ + --disable-werror \ --enable-kvm \ --enable-nptl \ --enable-uuid \ @@ -217,10 +218,6 @@ src_install() { doins kvm/scripts/qemu-ifup || die 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 - if use qemu_softmmu_targets_x86_64 ; then dobin "${FILESDIR}"/qemu-kvm dosym /usr/bin/qemu-kvm /usr/bin/kvm @@ -228,6 +225,10 @@ src_install() { elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install" elog "of /usr/bin/qemu-kvm and /usr/bin/kvm" 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() { |