diff options
author | Doug Goldstein <cardoe@gentoo.org> | 2013-07-27 03:54:02 +0000 |
---|---|---|
committer | Doug Goldstein <cardoe@gentoo.org> | 2013-07-27 03:54:02 +0000 |
commit | 0e185aeb12567d1d8bc0de0d80a4cf12fa2866db (patch) | |
tree | 8291a32ccb6ff36e68e7175265a9c185ae34901d /app-emulation/qemu | |
parent | Fix static-user builds needing to depend on glib with USE=static-libs. bug #4... (diff) | |
download | gentoo-2-0e185aeb12567d1d8bc0de0d80a4cf12fa2866db.tar.gz gentoo-2-0e185aeb12567d1d8bc0de0d80a4cf12fa2866db.tar.bz2 gentoo-2-0e185aeb12567d1d8bc0de0d80a4cf12fa2866db.zip |
Cull old versions and old files from the tree
(Portage version: 2.1.12.2/cvs/Linux x86_64, signed Manifest commit with key D7DFA8D318FA9AEF!)
Diffstat (limited to 'app-emulation/qemu')
-rw-r--r-- | app-emulation/qemu/ChangeLog | 8 | ||||
-rw-r--r-- | app-emulation/qemu/files/qemu-1.2.0-cflags.patch | 15 | ||||
-rw-r--r-- | app-emulation/qemu/files/qemu-binfmt.initd | 127 | ||||
-rw-r--r-- | app-emulation/qemu/files/qemu-kvm | 2 | ||||
-rw-r--r-- | app-emulation/qemu/qemu-1.2.2-r2.ebuild | 411 | ||||
-rw-r--r-- | app-emulation/qemu/qemu-1.2.2-r3.ebuild | 469 | ||||
-rw-r--r-- | app-emulation/qemu/qemu-1.2.2-r4.ebuild | 478 | ||||
-rw-r--r-- | app-emulation/qemu/qemu-1.4.0-r1.ebuild | 511 |
8 files changed, 7 insertions, 2014 deletions
diff --git a/app-emulation/qemu/ChangeLog b/app-emulation/qemu/ChangeLog index 654bab6c1814..87ccbf93e311 100644 --- a/app-emulation/qemu/ChangeLog +++ b/app-emulation/qemu/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for app-emulation/qemu # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/ChangeLog,v 1.226 2013/07/27 03:50:41 cardoe Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/ChangeLog,v 1.227 2013/07/27 03:54:02 cardoe Exp $ + + 27 Jul 2013; Doug Goldstein <cardoe@gentoo.org> + -files/qemu-1.2.0-cflags.patch, -files/qemu-binfmt.initd, -files/qemu-kvm, + -qemu-1.2.2-r2.ebuild, -qemu-1.2.2-r3.ebuild, -qemu-1.2.2-r4.ebuild, + -qemu-1.4.0-r1.ebuild: + Cull old versions and old files from the tree 27 Jul 2013; Doug Goldstein <cardoe@gentoo.org> qemu-1.4.2-r1.ebuild: Fix static-user builds needing to depend on glib with USE=static-libs. bug diff --git a/app-emulation/qemu/files/qemu-1.2.0-cflags.patch b/app-emulation/qemu/files/qemu-1.2.0-cflags.patch deleted file mode 100644 index 9aaa1d61996b..000000000000 --- a/app-emulation/qemu/files/qemu-1.2.0-cflags.patch +++ /dev/null @@ -1,15 +0,0 @@ -don't override user cflags - ---- a/configure -+++ b/configure -@@ -2995,10 +2995,6 @@ fi - # End of CC checks - # After here, no more $cc or $ld runs - --if test "$debug" = "no" ; then -- CFLAGS="-O2 -D_FORTIFY_SOURCE=2 $CFLAGS" --fi -- - # Disable zero malloc errors for official releases unless explicitly told to - # enable/disable - if test -z "$zero_malloc" ; then diff --git a/app-emulation/qemu/files/qemu-binfmt.initd b/app-emulation/qemu/files/qemu-binfmt.initd deleted file mode 100644 index b8824bc0288f..000000000000 --- a/app-emulation/qemu/files/qemu-binfmt.initd +++ /dev/null @@ -1,127 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/files/qemu-binfmt.initd,v 1.3 2013/02/17 22:05:22 vapier Exp $ - -# enable automatic i386/ARM/M68K/MIPS/SPARC/PPC/s390 program execution by the kernel - -depend() { - after procfs -} - -start() { - ebegin "Registering qemu-user binaries" - - if [ ! -d /proc/sys/fs/binfmt_misc ] ; then - eend $? "You need support for 'misc binaries' in your kernel!" || return - fi - - if [ $(mount | grep -c binfmt_misc) -eq 0 ] ; then - mount -t binfmt_misc binfmt_misc /proc/sys/fs/binfmt_misc >/dev/null 2>&1 - eend $? || return - fi - - # probe cpu type - cpu=`uname -m` - case "$cpu" in - i386|i486|i586|i686|i86pc|BePC|x86_64) - cpu="i386" - ;; - m68k) - cpu="m68k" - ;; - mips*) - cpu="mips" - ;; - "Power Macintosh"|ppc|ppc64) - cpu="ppc" - ;; - armv[4-9]*) - cpu="arm" - ;; - sparc*) - cpu="sparc" - ;; - esac - - # register the interpreter for each cpu except for the native one - if [ $cpu != "i386" -a -x "/usr/bin/qemu-static-i386-binfmt" ] ; then - echo ':i386:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x03\x00:\xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-i386-binfmt:P' > /proc/sys/fs/binfmt_misc/register - echo ':i486:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x06\x00:\xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-i386-binfmt:P' > /proc/sys/fs/binfmt_misc/register - fi - if [ $cpu != "alpha" -a -x "/usr/bin/qemu-static-alpha-binfmt" ] ; then - echo ':alpha:M::\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x26\x90:\xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-alpha-binfmt:P' > /proc/sys/fs/binfmt_misc/register - fi - if [ $cpu != "arm" -a -x "/usr/bin/qemu-static-arm-binfmt" ] ; then - echo ':arm:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\x00\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-arm-binfmt:P' > /proc/sys/fs/binfmt_misc/register - fi - if [ $cpu != "arm" -a -x "/usr/bin/qemu-static-armeb-binfmt" ] ; then - echo ':armeb:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-static-armeb-binfmt:P' > /proc/sys/fs/binfmt_misc/register - fi - if [ $cpu != "sparc" -a -x "/usr/bin/qemu-static-sparc-binfmt" ] ; then - echo ':sparc:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-static-sparc-binfmt:P' > /proc/sys/fs/binfmt_misc/register - fi - if [ $cpu != "ppc" -a -x "/usr/bin/qemu-static-ppc-binfmt" ] ; then - echo ':ppc:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x14:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-static-ppc-binfmt:P' > /proc/sys/fs/binfmt_misc/register - fi - if [ $cpu != "m68k" -a -x "/usr/bin/qemu-static-m68k-binfmt" ] ; then - echo 'Please check cpu value and header information for m68k!' - echo ':m68k:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x08:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-static-m68k-binfmt:P' > /proc/sys/fs/binfmt_misc/register - fi - if [ $cpu != "mips" -a -x "/usr/bin/qemu-static-mips-binfmt" ] ; then - # FIXME: We could use the other endianness on a MIPS host. - echo ':mips:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-static-mips-binfmt:P' > /proc/sys/fs/binfmt_misc/register - fi - if [ $cpu != "mips" -a -x "/usr/bin/qemu-static-mipsel-binfmt" ] ; then - echo ':mipsel:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-mipsel-binfmt:P' > /proc/sys/fs/binfmt_misc/register - fi - if [ $cpu != "mips" -a -x "/usr/bin/qemu-static-mipsn32-binfmt" ] ; then - echo ':mipsn32:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-static-mipsn32-binfmt:P' > /proc/sys/fs/binfmt_misc/register - fi - if [ $cpu != "mips" -a -x "/usr/bin/qemu-static-mipsn32el-binfmt" ] ; then - echo ':mipsn32el:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-mipsn32el-binfmt:P' > /proc/sys/fs/binfmt_misc/register - fi - if [ $cpu != "mips" -a -x "/usr/bin/qemu-static-mips64-binfmt" ] ; then - echo ':mips64:M::\x7fELF\x02\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-static-mips64-binfmt:P' > /proc/sys/fs/binfmt_misc/register - fi - if [ $cpu != "mips" -a -x "/usr/bin/qemu-static-mips64el-binfmt" ] ; then - echo ':mips64el:M::\x7fELF\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-mips64el-binfmt:P' > /proc/sys/fs/binfmt_misc/register - fi - if [ $cpu != "sh" -a -x "/usr/bin/qemu-static-sh4-binfmt" ] ; then - echo ':sh4:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x2a\x00:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-static-sh4-binfmt:P' > /proc/sys/fs/binfmt_misc/register - fi - if [ $cpu != "sh" -a -x "/usr/bin/qemu-static-sh4eb-binfmt" ] ; then - echo ':sh4eb:M::\x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x2a:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-static-sh4eb-binfmt:P' > /proc/sys/fs/binfmt_misc/register - fi - if [ $cpu != "s390x" -a -x "/usr/local/bin/qemu-static-s390x-binfmt" ] ; then - echo ':s390x:M::\x7fELF\x02\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x16:\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/local/bin/qemu-static-s390x-binfmt:P' > /proc/sys/fs/binfmt_misc/register - fi - eend $? -} - -stop() { - ebegin "Unregistering qemu-user binaries" - local arches - - arches="${arches} i386 i486" - arches="${arches} alpha" - arches="${arches} arm armeb" - arches="${arches} sparc" - arches="${arches} ppc" - arches="${arches} m68k" - arches="${arches} mips mipsel mipsn32 mipsn32el mips64 mips64el" - arches="${arches} sh4 sh4eb" - arches="${arches} s390x" - - for a in ${arches}; do - if [ -f /proc/sys/fs/binfmt_misc/$a ] ; then - echo '-1' > /proc/sys/fs/binfmt_misc/$a - fi - done - - eend $? -} - -# vim: ts=4 : - - diff --git a/app-emulation/qemu/files/qemu-kvm b/app-emulation/qemu/files/qemu-kvm deleted file mode 100644 index 8273d11c7d46..000000000000 --- a/app-emulation/qemu/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/qemu-1.2.2-r2.ebuild b/app-emulation/qemu/qemu-1.2.2-r2.ebuild deleted file mode 100644 index 482469489d95..000000000000 --- a/app-emulation/qemu/qemu-1.2.2-r2.ebuild +++ /dev/null @@ -1,411 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-1.2.2-r2.ebuild,v 1.4 2013/01/25 12:08:00 ago Exp $ - -EAPI=5 - -MY_PN="qemu-kvm" -MY_P=${MY_PN}-1.2.0 - -PYTHON_DEPEND="2" -inherit eutils flag-o-matic linux-info toolchain-funcs multilib python user udev -BACKPORTS=9489a8c0-1 - -if [[ ${PV} = *9999* ]]; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm.git" - inherit git-2 - SRC_URI="" - KEYWORDS="" -else - SRC_URI="mirror://sourceforge/kvm/${MY_PN}/${MY_P}.tar.gz - ${BACKPORTS:+ - http://dev.gentoo.org/~cardoe/distfiles/${MY_P}-${BACKPORTS}.tar.xz}" - KEYWORDS="amd64 ~ppc ~ppc64 x86 ~x86-fbsd" -fi - -DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" -HOMEPAGE="http://www.linux-kvm.org" - -LICENSE="GPL-2 LGPL-2 BSD-2" -SLOT="0" -IUSE="+aio alsa bluetooth brltty +caps +curl debug doc fdt +jpeg kernel_linux \ -kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python rbd sasl +seccomp \ -sdl selinux smartcard spice static systemtap tci +threads tls usbredir +uuid \ -vde +vhost-net virtfs +vnc xattr xen xfs" - -COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips -mipsel or32 ppc ppc64 sh4 sh4eb sparc sparc64 s390x unicore32" -IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} lm32 mips64 mips64el ppcemb xtensa xtensaeb" -IUSE_USER_TARGETS="${COMMON_TARGETS} armeb ppc64abi32 sparc32plus" - -# Setup the default SoftMMU targets, while using the loops -# below to setup the other targets. -REQUIRED_USE="|| (" - -for target in ${IUSE_SOFTMMU_TARGETS}; do - IUSE="${IUSE} qemu_softmmu_targets_${target}" - REQUIRED_USE="${REQUIRED_USE} qemu_softmmu_targets_${target}" -done -REQUIRED_USE="${REQUIRED_USE} )" - -for target in ${IUSE_USER_TARGETS}; do - IUSE="${IUSE} qemu_user_targets_${target}" -done - -# Block USE flag configurations known to not work -REQUIRED_USE="${REQUIRED_USE} - static? ( !alsa !pulseaudio !bluetooth !opengl ) - virtfs? ( xattr )" - -# Yep, you need both libcap and libcap-ng since virtfs only uses libcap. -LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)] - sys-apps/pciutils[static-libs(+)] - sys-libs/zlib[static-libs(+)] - aio? ( dev-libs/libaio[static-libs(+)] ) - caps? ( sys-libs/libcap-ng[static-libs(+)] ) - curl? ( >=net-misc/curl-7.15.4[static-libs(+)] ) - fdt? ( >=sys-apps/dtc-1.2.0[static-libs(+)] ) - jpeg? ( virtual/jpeg[static-libs(+)] ) - ncurses? ( sys-libs/ncurses[static-libs(+)] ) - png? ( media-libs/libpng[static-libs(+)] ) - rbd? ( sys-cluster/ceph[static-libs(+)] ) - sasl? ( dev-libs/cyrus-sasl[static-libs(+)] ) - sdl? ( >=media-libs/libsdl-1.2.11[static-libs(+)] ) - seccomp? ( >=sys-libs/libseccomp-1.0.1[static-libs(+)] ) - spice? ( >=app-emulation/spice-0.9.0[static-libs(+)] ) - tls? ( net-libs/gnutls[static-libs(+)] ) - uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] ) - vde? ( net-misc/vde[static-libs(+)] ) - xattr? ( sys-apps/attr[static-libs(+)] ) - xfs? ( sys-fs/xfsprogs[static-libs(+)] )" -RDEPEND="!static? ( ${LIB_DEPEND//\[static-libs(+)]} ) - !app-emulation/kqemu - qemu_softmmu_targets_i386? ( - sys-firmware/ipxe - ~sys-firmware/seabios-1.7.1 - ~sys-firmware/sgabios-0.1_pre8 - ~sys-firmware/vgabios-0.7a - ) - qemu_softmmu_targets_x86_64? ( - sys-firmware/ipxe - ~sys-firmware/seabios-1.7.1 - ~sys-firmware/sgabios-0.1_pre8 - ~sys-firmware/vgabios-0.7a - ) - alsa? ( >=media-libs/alsa-lib-1.0.13 ) - bluetooth? ( net-wireless/bluez ) - brltty? ( app-accessibility/brltty ) - opengl? ( virtual/opengl ) - pulseaudio? ( media-sound/pulseaudio ) - python? ( =dev-lang/python-2*[ncurses] ) - sdl? ( media-libs/libsdl[X] ) - selinux? ( sec-policy/selinux-qemu ) - smartcard? ( dev-libs/nss ) - spice? ( >=app-emulation/spice-protocol-0.12.2 ) - systemtap? ( dev-util/systemtap ) - usbredir? ( ~sys-apps/usbredir-0.4.4 ) - virtfs? ( sys-libs/libcap ) - xen? ( app-emulation/xen-tools )" - -DEPEND="${RDEPEND} - virtual/pkgconfig - doc? ( app-text/texi2html ) - kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 ) - static? ( ${LIB_DEPEND} )" - -S="${WORKDIR}/${MY_P}" - -STRIP_MASK="/usr/share/qemu/palcode-clipper" - -QA_PREBUILT=" - usr/share/qemu/openbios-ppc - usr/share/qemu/openbios-sparc64 - usr/share/qemu/openbios-sparc32 - usr/share/qemu/palcode-clipper" - -QA_WX_LOAD="${QA_PRESTRIPPED} - usr/bin/qemu-i386 - usr/bin/qemu-x86_64 - usr/bin/qemu-alpha - usr/bin/qemu-arm - usr/bin/qemu-cris - usr/bin/qemu-m68k - usr/bin/qemu-microblaze - usr/bin/qemu-microblazeel - usr/bin/qemu-mips - usr/bin/qemu-mipsel - usr/bin/qemu-or32 - usr/bin/qemu-ppc - usr/bin/qemu-ppc64 - usr/bin/qemu-ppc64abi32 - usr/bin/qemu-sh4 - usr/bin/qemu-sh4eb - usr/bin/qemu-sparc - usr/bin/qemu-sparc64 - usr/bin/qemu-armeb - usr/bin/qemu-sparc32plus - usr/bin/qemu-s390x - usr/bin/qemu-unicore32" - -pkg_pretend() { - if use kernel_linux && kernel_is lt 2 6 25; then - eerror "This version of KVM requres a host kernel of 2.6.25 or higher." - elif use kernel_linux; then - if ! linux_config_exists; then - eerror "Unable to check your kernel for KVM support" - else - CONFIG_CHECK="~KVM ~TUN ~BRIDGE" - ERROR_KVM="You must enable KVM in your kernel to continue" - ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in" - ERROR_KVM_AMD+=" your kernel configuration." - ERROR_KVM_INTEL="If you have an Intel CPU, you must enable" - ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration." - ERROR_TUN="You will need the Universal TUN/TAP driver compiled" - ERROR_TUN+=" into your kernel or loaded as a module to use the" - ERROR_TUN+=" virtual network device if using -net tap." - ERROR_BRIDGE="You will also need support for 802.1d" - ERROR_BRIDGE+=" Ethernet Bridging for some network configurations." - use vhost-net && CONFIG_CHECK+=" ~VHOST_NET" - ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net" - ERROR_VHOST_NET+=" support" - - if use amd64 || use x86 || use amd64-linux || use x86-linux; then - CONFIG_CHECK+=" ~KVM_AMD ~KVM_INTEL" - fi - - use python && CONFIG_CHECK+=" ~DEBUG_FS" - ERROR_DEBUG_FS="debugFS support required for kvm_stat" - - # Now do the actual checks setup above - check_extra_config - fi - fi - - if use static; then - ewarn "USE=static is very much a moving target because of the packages" - ewarn "we depend on will have their static libs ripped out or wrapped" - ewarn "with USE=static-libs or USE=static due to continued dicsussion" - ewarn "on the mailing list about USE=static's place in Gentoo. As a" - ewarn "result what worked today may not work tomorrow." - fi -} - -pkg_setup() { - python_set_active_version 2 - python_pkg_setup - - enewgroup kvm 78 -} - -src_prepare() { - # Alter target makefiles to accept CFLAGS set via flag-o - sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \ - Makefile Makefile.target || die - - python_convert_shebangs -r 2 "${S}/scripts/kvm/kvm_stat" - python_convert_shebangs -r 2 "${S}/scripts/kvm/vmxcap" - - epatch "${FILESDIR}"/qemu-1.2.0-cflags.patch - [[ -n ${BACKPORTS} ]] && \ - EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \ - epatch - - # Fix ld and objcopy being called directly - tc-export LD OBJCOPY - - # Verbose builds - MAKEOPTS+=" V=1" - - epatch_user -} - -src_configure() { - local conf_opts audio_opts - - 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 - - einfo "Building the following softmmu targets: ${softmmu_targets}" - - if [[ -n ${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 - - # Add support for SystemTAP - use systemtap && conf_opts="${conf_opts} --enable-trace-backend=dtrace" - - # 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 --disable-pie" - - # We always want to attempt to build with PIE support as it results - # in a more secure binary. But it doesn't work with static or if - # the current GCC doesn't have PIE support. - if ! use static && gcc-specs-pie; then - conf_opts="${conf_opts} --enable-pie" - fi - - # audio options - audio_opts="oss" - use alsa && audio_opts="alsa,${audio_opts}" - use sdl && audio_opts="sdl,${audio_opts}" - use pulseaudio && audio_opts="pa,${audio_opts}" - use mixemu && conf_opts="${conf_opts} --enable-mixemu" - - ./configure --prefix=/usr \ - --sysconfdir=/etc \ - --docdir=/usr/share/doc/${PF}/html \ - --disable-bsd-user \ - --disable-guest-agent \ - --disable-libiscsi \ - --disable-strip \ - --disable-werror \ - --python=python2 \ - $(use_enable aio linux-aio) \ - $(use_enable bluetooth bluez) \ - $(use_enable brltty brlapi) \ - $(use_enable caps cap-ng) \ - $(use_enable curl) \ - $(use_enable debug debug-info) \ - $(use_enable debug debug-tcg) \ - $(use_enable doc docs) \ - $(use_enable fdt) \ - $(use_enable jpeg vnc-jpeg) \ - $(use_enable kernel_linux kvm) \ - $(use_enable kernel_linux nptl) \ - $(use_enable ncurses curses) \ - $(use_enable opengl) \ - $(use_enable png vnc-png) \ - $(use_enable rbd) \ - $(use_enable sasl vnc-sasl) \ - $(use_enable sdl) \ - $(use_enable seccomp) \ - $(use_enable smartcard smartcard) \ - $(use_enable smartcard smartcard-nss) \ - $(use_enable spice) \ - $(use_enable tci tcg-interpreter) \ - $(use_enable tls vnc-tls) \ - $(use_enable usbredir usb-redir) \ - $(use_enable uuid) \ - $(use_enable vde) \ - $(use_enable vhost-net) \ - $(use_enable virtfs) \ - $(use_enable vnc) \ - $(use_enable xattr attr) \ - $(use_enable xen) \ - $(use_enable xen xen-pci-passthrough) \ - $(use_enable xfs xfsctl) \ - --audio-drv-list=${audio_opts} \ - --target-list="${softmmu_targets} ${user_targets}" \ - --cc="$(tc-getCC)" \ - --host-cc="$(tc-getBUILD_CC)" \ - ${conf_opts} \ - || die "configure failed" - - # FreeBSD's kernel does not support QEMU assigning/grabbing - # host USB devices yet - use kernel_FreeBSD && \ - sed -E -e "s|^(HOST_USB=)bsd|\1stub|" -i "${S}"/config-host.mak -} - -src_install() { - emake DESTDIR="${ED}" install - - if [[ -n ${softmmu_targets} ]]; then - if use kernel_linux; then - udev_dorules "${FILESDIR}"/65-kvm.rules - fi - - if use qemu_softmmu_targets_x86_64 ; then - dosym /usr/bin/qemu-system-x86_64 /usr/bin/qemu-kvm - ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed" - ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit" - ewarn "your libvirt configs or other wrappers for ${PN}" - elif use x86 || use amd64; then - elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install" - elog "of the /usr/bin/qemu-kvm symlink." - fi - fi - - dodoc Changelog MAINTAINERS TODO pci-ids.txt - newdoc pc-bios/README README.pc-bios - - use python && dobin scripts/kvm/kvm_stat - use python && dobin scripts/kvm/vmxcap - - # Avoid collision with app-emulation/libcacard - use smartcard && mv "${ED}/usr/bin/vscclient" "${ED}/usr/bin/qemu-vscclient" - - # Install binfmt handler init script for user targets - [[ -n ${user_targets} ]] && \ - newinitd "${FILESDIR}/qemu-binfmt.initd-r1" qemu-binfmt - - # Remove SeaBIOS since we're using the SeaBIOS packaged one - rm "${ED}/usr/share/qemu/bios.bin" - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../seabios/bios.bin /usr/share/qemu/bios.bin - fi - - # Remove vgabios since we're using the vgabios packaged one - rm "${ED}/usr/share/qemu/vgabios.bin" - rm "${ED}/usr/share/qemu/vgabios-cirrus.bin" - rm "${ED}/usr/share/qemu/vgabios-qxl.bin" - rm "${ED}/usr/share/qemu/vgabios-stdvga.bin" - rm "${ED}/usr/share/qemu/vgabios-vmware.bin" - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../vgabios/vgabios.bin /usr/share/qemu/vgabios.bin - dosym ../vgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin - dosym ../vgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin - dosym ../vgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin - dosym ../vgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin - fi - - # Remove sgabios since we're using the sgabios packaged one - rm "${ED}/usr/share/qemu/sgabios.bin" - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin - fi - - # Remove iPXE since we're using the iPXE packaged one - rm "${ED}"/usr/share/qemu/pxe-*.rom - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../ipxe/808610de.rom /usr/share/qemu/pxe-e1000.rom - dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom - dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom - dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom - dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom - dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom - fi -} - -pkg_postinst() { - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 \ - use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64 \ - use qemu_softmmu_targets_s390x; 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 - fi - - elog "The ssl USE flag was renamed to tls, so adjust your USE flags." - elog "The nss USE flag was renamed to smartcard, so adjust your USE flags." -} diff --git a/app-emulation/qemu/qemu-1.2.2-r3.ebuild b/app-emulation/qemu/qemu-1.2.2-r3.ebuild deleted file mode 100644 index 669b51d1ce4f..000000000000 --- a/app-emulation/qemu/qemu-1.2.2-r3.ebuild +++ /dev/null @@ -1,469 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-1.2.2-r3.ebuild,v 1.6 2013/05/07 15:56:29 cardoe Exp $ - -EAPI=5 - -MY_PN="qemu-kvm" -MY_P=${MY_PN}-1.2.0 - -PYTHON_DEPEND="2:2.4" -inherit eutils flag-o-matic linux-info toolchain-funcs multilib python user udev -BACKPORTS=7c9a3a87 - -if [[ ${PV} = *9999* ]]; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm.git" - inherit git-2 - SRC_URI="" - KEYWORDS="" -else - SRC_URI="mirror://sourceforge/kvm/${MY_PN}/${MY_P}.tar.gz - ${BACKPORTS:+ - http://dev.gentoo.org/~cardoe/distfiles/${MY_P}-${BACKPORTS}.tar.xz}" - KEYWORDS="amd64 ~ppc ~ppc64 x86 ~x86-fbsd" -fi - -DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" -HOMEPAGE="http://www.qemu.org http://www.linux-kvm.org" - -LICENSE="GPL-2 LGPL-2 BSD-2" -SLOT="0" -IUSE="+aio alsa bluetooth brltty +caps +curl debug doc fdt +jpeg kernel_linux \ -kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python rbd sasl +seccomp \ -sdl selinux smartcard spice static static-softmmu static-user systemtap tci \ -+threads tls usbredir +uuid vde +vhost-net virtfs +vnc xattr xen xfs" - -COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips -mipsel or32 ppc ppc64 sh4 sh4eb sparc sparc64 s390x unicore32" -IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} lm32 mips64 mips64el ppcemb xtensa xtensaeb" -IUSE_USER_TARGETS="${COMMON_TARGETS} armeb ppc64abi32 sparc32plus" - -# Setup the default SoftMMU targets, while using the loops -# below to setup the other targets. -REQUIRED_USE="|| (" - -for target in ${IUSE_SOFTMMU_TARGETS}; do - IUSE="${IUSE} qemu_softmmu_targets_${target}" - REQUIRED_USE="${REQUIRED_USE} qemu_softmmu_targets_${target}" -done -REQUIRED_USE="${REQUIRED_USE} )" - -for target in ${IUSE_USER_TARGETS}; do - IUSE="${IUSE} qemu_user_targets_${target}" -done - -# Block USE flag configurations known to not work -REQUIRED_USE="${REQUIRED_USE} - static? ( static-softmmu static-user ) - static-softmmu? ( !alsa !pulseaudio !bluetooth !opengl ) - virtfs? ( xattr )" - -# Yep, you need both libcap and libcap-ng since virtfs only uses libcap. -LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)] - sys-apps/pciutils[static-libs(+)] - sys-libs/zlib[static-libs(+)] - aio? ( dev-libs/libaio[static-libs(+)] ) - caps? ( sys-libs/libcap-ng[static-libs(+)] ) - curl? ( >=net-misc/curl-7.15.4[static-libs(+)] ) - fdt? ( >=sys-apps/dtc-1.2.0[static-libs(+)] ) - jpeg? ( virtual/jpeg[static-libs(+)] ) - ncurses? ( sys-libs/ncurses[static-libs(+)] ) - png? ( media-libs/libpng[static-libs(+)] ) - rbd? ( sys-cluster/ceph[static-libs(+)] ) - sasl? ( dev-libs/cyrus-sasl[static-libs(+)] ) - sdl? ( >=media-libs/libsdl-1.2.11[static-libs(+)] ) - seccomp? ( >=sys-libs/libseccomp-1.0.1[static-libs(+)] ) - spice? ( >=app-emulation/spice-0.9.0[static-libs(+)] ) - tls? ( net-libs/gnutls[static-libs(+)] ) - uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] ) - vde? ( net-misc/vde[static-libs(+)] ) - xattr? ( sys-apps/attr[static-libs(+)] ) - xfs? ( sys-fs/xfsprogs[static-libs(+)] )" -RDEPEND="!static-softmmu? ( ${LIB_DEPEND//\[static-libs(+)]} ) - !app-emulation/kqemu - qemu_softmmu_targets_i386? ( - sys-firmware/ipxe - ~sys-firmware/seabios-1.7.1 - ~sys-firmware/sgabios-0.1_pre8 - ~sys-firmware/vgabios-0.7a - ) - qemu_softmmu_targets_x86_64? ( - sys-firmware/ipxe - ~sys-firmware/seabios-1.7.1 - ~sys-firmware/sgabios-0.1_pre8 - ~sys-firmware/vgabios-0.7a - ) - alsa? ( >=media-libs/alsa-lib-1.0.13 ) - bluetooth? ( net-wireless/bluez ) - brltty? ( app-accessibility/brltty ) - opengl? ( virtual/opengl ) - pulseaudio? ( media-sound/pulseaudio ) - python? ( =dev-lang/python-2*[ncurses] ) - sdl? ( media-libs/libsdl[X] ) - selinux? ( sec-policy/selinux-qemu ) - smartcard? ( dev-libs/nss ) - spice? ( >=app-emulation/spice-protocol-0.12.2 ) - systemtap? ( dev-util/systemtap ) - usbredir? ( ~sys-apps/usbredir-0.4.4 ) - virtfs? ( sys-libs/libcap ) - xen? ( app-emulation/xen-tools )" - -DEPEND="${RDEPEND} - virtual/pkgconfig - doc? ( app-text/texi2html ) - kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 ) - static-softmmu? ( ${LIB_DEPEND} )" - -S="${WORKDIR}/${MY_P}" - -STRIP_MASK="/usr/share/qemu/palcode-clipper" - -QA_PREBUILT=" - usr/share/qemu/openbios-ppc - usr/share/qemu/openbios-sparc64 - usr/share/qemu/openbios-sparc32 - usr/share/qemu/palcode-clipper" - -QA_WX_LOAD="usr/bin/qemu-i386 - usr/bin/qemu-x86_64 - usr/bin/qemu-alpha - usr/bin/qemu-arm - usr/bin/qemu-cris - usr/bin/qemu-m68k - usr/bin/qemu-microblaze - usr/bin/qemu-microblazeel - usr/bin/qemu-mips - usr/bin/qemu-mipsel - usr/bin/qemu-or32 - usr/bin/qemu-ppc - usr/bin/qemu-ppc64 - usr/bin/qemu-ppc64abi32 - usr/bin/qemu-sh4 - usr/bin/qemu-sh4eb - usr/bin/qemu-sparc - usr/bin/qemu-sparc64 - usr/bin/qemu-armeb - usr/bin/qemu-sparc32plus - usr/bin/qemu-s390x - usr/bin/qemu-unicore32" - -qemu_support_kvm() { - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 \ - use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64 \ - use qemu_softmmu_targets_s390x; then - return 0 - fi - - return 1 -} - -pkg_pretend() { - if use kernel_linux && kernel_is lt 2 6 25; then - eerror "This version of KVM requres a host kernel of 2.6.25 or higher." - elif use kernel_linux; then - if ! linux_config_exists; then - eerror "Unable to check your kernel for KVM support" - else - CONFIG_CHECK="~KVM ~TUN ~BRIDGE" - ERROR_KVM="You must enable KVM in your kernel to continue" - ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in" - ERROR_KVM_AMD+=" your kernel configuration." - ERROR_KVM_INTEL="If you have an Intel CPU, you must enable" - ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration." - ERROR_TUN="You will need the Universal TUN/TAP driver compiled" - ERROR_TUN+=" into your kernel or loaded as a module to use the" - ERROR_TUN+=" virtual network device if using -net tap." - ERROR_BRIDGE="You will also need support for 802.1d" - ERROR_BRIDGE+=" Ethernet Bridging for some network configurations." - use vhost-net && CONFIG_CHECK+=" ~VHOST_NET" - ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net" - ERROR_VHOST_NET+=" support" - - if use amd64 || use x86 || use amd64-linux || use x86-linux; then - CONFIG_CHECK+=" ~KVM_AMD ~KVM_INTEL" - fi - - use python && CONFIG_CHECK+=" ~DEBUG_FS" - ERROR_DEBUG_FS="debugFS support required for kvm_stat" - - # Now do the actual checks setup above - check_extra_config - fi - fi -} - -pkg_setup() { - python_set_active_version 2 - python_pkg_setup - - enewgroup kvm 78 -} - -src_prepare() { - # Alter target makefiles to accept CFLAGS set via flag-o - sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \ - Makefile Makefile.target || die - - python_convert_shebangs -r 2 "${S}/scripts/kvm/kvm_stat" - python_convert_shebangs -r 2 "${S}/scripts/kvm/vmxcap" - - epatch "${FILESDIR}"/qemu-1.2.0-cflags.patch - [[ -n ${BACKPORTS} ]] && \ - EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \ - epatch - - # Fix ld and objcopy being called directly - tc-export LD OBJCOPY - - # Verbose builds - MAKEOPTS+=" V=1" - - epatch_user -} - -## -# configures qemu based on the build directory and the build type -# we are using. -# -qemu_src_configure() { - debug-print-function $FUNCNAME "$@" - - local buildtype=$1 - local builddir=$2 - local conf_opts audio_opts - local static_flag="static-${buildtype}" - - conf_opts="--prefix=/usr" - conf_opts+=" --sysconfdir=/etc" - conf_opts+=" --docdir=/usr/share/doc/${PF}/html" - conf_opts+=" --disable-bsd-user" - conf_opts+=" --disable-guest-agent" - conf_opts+=" --disable-libiscsi" - conf_opts+=" --disable-strip" - conf_opts+=" --disable-werror" - conf_opts+=" --python=python2" - - # audio options - audio_opts="oss" - use alsa && audio_opts="alsa,${audio_opts}" - use sdl && audio_opts="sdl,${audio_opts}" - use pulseaudio && audio_opts="pa,${audio_opts}" - - if [[ ${buildtype} == "user" ]]; then - conf_opts+=" --enable-linux-user" - conf_opts+=" --disable-system" - conf_opts+=" --target-list=${user_targets}" - conf_opts+=" --disable-bluez" - conf_opts+=" --disable-sdl" - fi - - if [[ ${buildtype} == "softmmu" ]]; then - conf_opts+=" --disable-linux-user" - conf_opts+=" --enable-system" - conf_opts+=" --target-list=${softmmu_targets}" - conf_opts+=" $(use_enable bluetooth bluez)" - conf_opts+=" $(use_enable sdl)" - conf_opts+=" $(use_enable aio linux-aio)" - conf_opts+=" $(use_enable brltty brlapi)" - conf_opts+=" $(use_enable caps cap-ng)" - conf_opts+=" $(use_enable curl)" - conf_opts+=" $(use_enable fdt)" - conf_opts+=" $(use_enable jpeg vnc-jpeg)" - conf_opts+=" $(use_enable kernel_linux kvm)" - conf_opts+=" $(use_enable kernel_linux nptl)" - conf_opts+=" $(use_enable ncurses curses)" - conf_opts+=" $(use_enable opengl)" - conf_opts+=" $(use_enable png vnc-png)" - conf_opts+=" $(use_enable rbd)" - conf_opts+=" $(use_enable sasl vnc-sasl)" - conf_opts+=" $(use_enable seccomp)" - conf_opts+=" $(use_enable smartcard smartcard)" - conf_opts+=" $(use_enable smartcard smartcard-nss)" - conf_opts+=" $(use_enable spice)" - conf_opts+=" $(use_enable tls vnc-tls)" - conf_opts+=" $(use_enable usbredir usb-redir)" - conf_opts+=" $(use_enable uuid)" - conf_opts+=" $(use_enable vde)" - conf_opts+=" $(use_enable vhost-net)" - conf_opts+=" $(use_enable virtfs)" - conf_opts+=" $(use_enable vnc)" - conf_opts+=" $(use_enable xattr attr)" - conf_opts+=" $(use_enable xen)" - conf_opts+=" $(use_enable xen xen-pci-passthrough)" - conf_opts+=" $(use_enable xfs xfsctl)" - use mixemu && conf_opts+=" --enable-mixemu" - conf_opts+=" --audio-drv-list=${audio_opts}" - fi - - conf_opts+=" $(use_enable debug debug-info)" - conf_opts+=" $(use_enable debug debug-tcg)" - conf_opts+=" $(use_enable doc docs)" - conf_opts+=" $(use_enable tci tcg-interpreter)" - - # Add support for SystemTAP - use systemtap && conf_opts="${conf_opts} --enable-trace-backend=dtrace" - - # Add support for static builds - use ${static_flag} && conf_opts="${conf_opts} --static --disable-pie" - - # We always want to attempt to build with PIE support as it results - # in a more secure binary. But it doesn't work with static or if - # the current GCC doesn't have PIE support. - if ! use ${static_flag} && gcc-specs-pie; then - conf_opts="${conf_opts} --enable-pie" - fi - - einfo "./configure ${conf_opts}" - cd ${builddir} - ../configure \ - --cc="$(tc-getCC)" \ - --host-cc="$(tc-getBUILD_CC)" \ - ${conf_opts} \ - || die "configure failed" - - # FreeBSD's kernel does not support QEMU assigning/grabbing - # host USB devices yet - use kernel_FreeBSD && \ - sed -E -e "s|^(HOST_USB=)bsd|\1stub|" -i "${S}"/config-host.mak -} - -src_configure() { - softmmu_targets= - 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 - - [[ -n ${softmmu_targets} ]] && \ - einfo "Building the following softmmu targets: ${softmmu_targets}" - - [[ -n ${user_targets} ]] && \ - einfo "Building the following user targets: ${user_targets}" - - if [[ -n ${softmmu_targets} ]]; then - mkdir "${S}/softmmu-build" - qemu_src_configure "softmmu" "${S}/softmmu-build" - fi - - if [[ -n ${user_targets} ]]; then - mkdir "${S}/user-build" - qemu_src_configure "user" "${S}/user-build" - fi -} - -src_compile() { - if [[ -n ${user_targets} ]]; then - cd "${S}/user-build" - default - fi - - if [[ -n ${softmmu_targets} ]]; then - cd "${S}/softmmu-build" - default - fi -} - -src_install() { - if [[ -n ${user_targets} ]]; then - cd "${S}/user-build" - emake DESTDIR="${ED}" install - - # Install binfmt handler init script for user targets - newinitd "${FILESDIR}/qemu-binfmt.initd-r1" qemu-binfmt - fi - - if [[ -n ${softmmu_targets} ]]; then - cd "${S}/softmmu-build" - emake DESTDIR="${ED}" install - - if use kernel_linux; then - udev_dorules "${FILESDIR}"/65-kvm.rules - fi - - if use qemu_softmmu_targets_x86_64 ; then - dosym /usr/bin/qemu-system-x86_64 /usr/bin/qemu-kvm - ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed" - ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit" - ewarn "your libvirt configs or other wrappers for ${PN}" - elif use x86 || use amd64; then - elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install" - elog "of the /usr/bin/qemu-kvm symlink." - fi - - use python && dobin "${S}/scripts/kvm/kvm_stat" - use python && dobin "${S}/scripts/kvm/vmxcap" - fi - - # Install config file example for qemu-bridge-helper - insinto "/etc/qemu" - doins "${FILESDIR}/bridge.conf" - - cd "${S}" - dodoc Changelog MAINTAINERS TODO pci-ids.txt - newdoc pc-bios/README README.pc-bios - - # Avoid collision with app-emulation/libcacard - use smartcard && mv "${ED}/usr/bin/vscclient" "${ED}/usr/bin/qemu-vscclient" - - # Remove SeaBIOS since we're using the SeaBIOS packaged one - rm "${ED}/usr/share/qemu/bios.bin" - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../seabios/bios.bin /usr/share/qemu/bios.bin - fi - - # Remove vgabios since we're using the vgabios packaged one - rm "${ED}/usr/share/qemu/vgabios.bin" - rm "${ED}/usr/share/qemu/vgabios-cirrus.bin" - rm "${ED}/usr/share/qemu/vgabios-qxl.bin" - rm "${ED}/usr/share/qemu/vgabios-stdvga.bin" - rm "${ED}/usr/share/qemu/vgabios-vmware.bin" - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../vgabios/vgabios.bin /usr/share/qemu/vgabios.bin - dosym ../vgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin - dosym ../vgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin - dosym ../vgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin - dosym ../vgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin - fi - - # Remove sgabios since we're using the sgabios packaged one - rm "${ED}/usr/share/qemu/sgabios.bin" - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin - fi - - # Remove iPXE since we're using the iPXE packaged one - rm "${ED}"/usr/share/qemu/pxe-*.rom - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../ipxe/808610de.rom /usr/share/qemu/pxe-e1000.rom - dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom - dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom - dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom - dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom - dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom - fi -} - -pkg_postinst() { - if qemu_support_kvm; 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 - fi - - elog "The ssl USE flag was renamed to tls, so adjust your USE flags." - elog "The nss USE flag was renamed to smartcard, so adjust your USE flags." -} diff --git a/app-emulation/qemu/qemu-1.2.2-r4.ebuild b/app-emulation/qemu/qemu-1.2.2-r4.ebuild deleted file mode 100644 index ac63fe2a8041..000000000000 --- a/app-emulation/qemu/qemu-1.2.2-r4.ebuild +++ /dev/null @@ -1,478 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-1.2.2-r4.ebuild,v 1.4 2013/05/07 15:56:29 cardoe Exp $ - -EAPI=5 - -MY_PN="qemu-kvm" -MY_P=${MY_PN}-1.2.0 - -PYTHON_DEPEND="2:2.4" -inherit eutils flag-o-matic linux-info toolchain-funcs multilib python \ - user udev fcaps -BACKPORTS=7c9a3a87 - -if [[ ${PV} = *9999* ]]; then - EGIT_REPO_URI="git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm.git" - inherit git-2 - SRC_URI="" - KEYWORDS="" -else - SRC_URI="mirror://sourceforge/kvm/${MY_PN}/${MY_P}.tar.gz - ${BACKPORTS:+ - http://dev.gentoo.org/~cardoe/distfiles/${MY_P}-${BACKPORTS}.tar.xz}" - KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~x86-fbsd" -fi - -DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" -HOMEPAGE="http://www.qemu.org http://www.linux-kvm.org" - -LICENSE="GPL-2 LGPL-2 BSD-2" -SLOT="0" -IUSE="+aio alsa bluetooth brltty +caps +curl debug doc fdt +jpeg kernel_linux \ -kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python rbd sasl +seccomp \ -sdl selinux smartcard spice static static-softmmu static-user systemtap tci \ -+threads tls usbredir +uuid vde +vhost-net virtfs +vnc xattr xen xfs" - -COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips -mipsel or32 ppc ppc64 sh4 sh4eb sparc sparc64 s390x unicore32" -IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} lm32 mips64 mips64el ppcemb xtensa xtensaeb" -IUSE_USER_TARGETS="${COMMON_TARGETS} armeb ppc64abi32 sparc32plus" - -# Setup the default SoftMMU targets, while using the loops -# below to setup the other targets. -REQUIRED_USE="|| (" - -for target in ${IUSE_SOFTMMU_TARGETS}; do - IUSE="${IUSE} qemu_softmmu_targets_${target}" - REQUIRED_USE="${REQUIRED_USE} qemu_softmmu_targets_${target}" -done -REQUIRED_USE="${REQUIRED_USE} )" - -for target in ${IUSE_USER_TARGETS}; do - IUSE="${IUSE} qemu_user_targets_${target}" -done - -# Block USE flag configurations known to not work -REQUIRED_USE="${REQUIRED_USE} - static? ( static-softmmu static-user ) - static-softmmu? ( !alsa !pulseaudio !bluetooth !opengl ) - virtfs? ( xattr )" - -# Yep, you need both libcap and libcap-ng since virtfs only uses libcap. -LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)] - sys-apps/pciutils[static-libs(+)] - sys-libs/zlib[static-libs(+)] - aio? ( dev-libs/libaio[static-libs(+)] ) - caps? ( sys-libs/libcap-ng[static-libs(+)] ) - curl? ( >=net-misc/curl-7.15.4[static-libs(+)] ) - fdt? ( >=sys-apps/dtc-1.2.0[static-libs(+)] ) - jpeg? ( virtual/jpeg[static-libs(+)] ) - ncurses? ( sys-libs/ncurses[static-libs(+)] ) - png? ( media-libs/libpng[static-libs(+)] ) - rbd? ( sys-cluster/ceph[static-libs(+)] ) - sasl? ( dev-libs/cyrus-sasl[static-libs(+)] ) - sdl? ( >=media-libs/libsdl-1.2.11[static-libs(+)] ) - seccomp? ( >=sys-libs/libseccomp-1.0.1[static-libs(+)] ) - spice? ( >=app-emulation/spice-0.9.0[static-libs(+)] ) - tls? ( net-libs/gnutls[static-libs(+)] ) - uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] ) - vde? ( net-misc/vde[static-libs(+)] ) - xattr? ( sys-apps/attr[static-libs(+)] ) - xfs? ( sys-fs/xfsprogs[static-libs(+)] )" -RDEPEND="!static-softmmu? ( ${LIB_DEPEND//\[static-libs(+)]} ) - !app-emulation/kqemu - qemu_softmmu_targets_i386? ( - sys-firmware/ipxe - ~sys-firmware/seabios-1.7.1 - ~sys-firmware/sgabios-0.1_pre8 - ~sys-firmware/vgabios-0.7a - ) - qemu_softmmu_targets_x86_64? ( - sys-firmware/ipxe - ~sys-firmware/seabios-1.7.1 - ~sys-firmware/sgabios-0.1_pre8 - ~sys-firmware/vgabios-0.7a - ) - alsa? ( >=media-libs/alsa-lib-1.0.13 ) - bluetooth? ( net-wireless/bluez ) - brltty? ( app-accessibility/brltty ) - opengl? ( virtual/opengl ) - pulseaudio? ( media-sound/pulseaudio ) - python? ( =dev-lang/python-2*[ncurses] ) - sdl? ( media-libs/libsdl[X] ) - selinux? ( sec-policy/selinux-qemu ) - smartcard? ( dev-libs/nss ) - spice? ( >=app-emulation/spice-protocol-0.12.2 ) - systemtap? ( dev-util/systemtap ) - usbredir? ( ~sys-apps/usbredir-0.4.4 ) - virtfs? ( sys-libs/libcap ) - xen? ( app-emulation/xen-tools )" - -DEPEND="${RDEPEND} - virtual/pkgconfig - doc? ( app-text/texi2html ) - kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 ) - static-softmmu? ( ${LIB_DEPEND} )" - -S="${WORKDIR}/${MY_P}" - -STRIP_MASK="/usr/share/qemu/palcode-clipper" - -QA_PREBUILT=" - usr/share/qemu/openbios-ppc - usr/share/qemu/openbios-sparc64 - usr/share/qemu/openbios-sparc32 - usr/share/qemu/palcode-clipper" - -QA_WX_LOAD="usr/bin/qemu-i386 - usr/bin/qemu-x86_64 - usr/bin/qemu-alpha - usr/bin/qemu-arm - usr/bin/qemu-cris - usr/bin/qemu-m68k - usr/bin/qemu-microblaze - usr/bin/qemu-microblazeel - usr/bin/qemu-mips - usr/bin/qemu-mipsel - usr/bin/qemu-or32 - usr/bin/qemu-ppc - usr/bin/qemu-ppc64 - usr/bin/qemu-ppc64abi32 - usr/bin/qemu-sh4 - usr/bin/qemu-sh4eb - usr/bin/qemu-sparc - usr/bin/qemu-sparc64 - usr/bin/qemu-armeb - usr/bin/qemu-sparc32plus - usr/bin/qemu-s390x - usr/bin/qemu-unicore32" - -qemu_support_kvm() { - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 \ - use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64 \ - use qemu_softmmu_targets_s390x; then - return 0 - fi - - return 1 -} - -pkg_pretend() { - if use kernel_linux && kernel_is lt 2 6 25; then - eerror "This version of KVM requres a host kernel of 2.6.25 or higher." - elif use kernel_linux; then - if ! linux_config_exists; then - eerror "Unable to check your kernel for KVM support" - else - CONFIG_CHECK="~KVM ~TUN ~BRIDGE" - ERROR_KVM="You must enable KVM in your kernel to continue" - ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in" - ERROR_KVM_AMD+=" your kernel configuration." - ERROR_KVM_INTEL="If you have an Intel CPU, you must enable" - ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration." - ERROR_TUN="You will need the Universal TUN/TAP driver compiled" - ERROR_TUN+=" into your kernel or loaded as a module to use the" - ERROR_TUN+=" virtual network device if using -net tap." - ERROR_BRIDGE="You will also need support for 802.1d" - ERROR_BRIDGE+=" Ethernet Bridging for some network configurations." - use vhost-net && CONFIG_CHECK+=" ~VHOST_NET" - ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net" - ERROR_VHOST_NET+=" support" - - if use amd64 || use x86 || use amd64-linux || use x86-linux; then - CONFIG_CHECK+=" ~KVM_AMD ~KVM_INTEL" - fi - - use python && CONFIG_CHECK+=" ~DEBUG_FS" - ERROR_DEBUG_FS="debugFS support required for kvm_stat" - - # Now do the actual checks setup above - check_extra_config - fi - fi -} - -pkg_setup() { - python_set_active_version 2 - python_pkg_setup - - enewgroup kvm 78 -} - -src_prepare() { - # Alter target makefiles to accept CFLAGS set via flag-o - sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \ - Makefile Makefile.target || die - - python_convert_shebangs -r 2 "${S}/scripts/kvm/kvm_stat" - python_convert_shebangs -r 2 "${S}/scripts/kvm/vmxcap" - - epatch "${FILESDIR}"/qemu-1.2.0-cflags.patch - [[ -n ${BACKPORTS} ]] && \ - EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \ - epatch - - # Fix ld and objcopy being called directly - tc-export LD OBJCOPY - - # Verbose builds - MAKEOPTS+=" V=1" - - epatch_user -} - -## -# configures qemu based on the build directory and the build type -# we are using. -# -qemu_src_configure() { - debug-print-function $FUNCNAME "$@" - - local buildtype=$1 - local builddir=$2 - local conf_opts audio_opts - local static_flag="static-${buildtype}" - - conf_opts="--prefix=/usr" - conf_opts+=" --sysconfdir=/etc" - conf_opts+=" --docdir=/usr/share/doc/${PF}/html" - conf_opts+=" --disable-bsd-user" - conf_opts+=" --disable-guest-agent" - conf_opts+=" --disable-libiscsi" - conf_opts+=" --disable-strip" - conf_opts+=" --disable-werror" - conf_opts+=" --python=python2" - - # audio options - audio_opts="oss" - use alsa && audio_opts="alsa,${audio_opts}" - use sdl && audio_opts="sdl,${audio_opts}" - use pulseaudio && audio_opts="pa,${audio_opts}" - - if [[ ${buildtype} == "user" ]]; then - conf_opts+=" --enable-linux-user" - conf_opts+=" --disable-system" - conf_opts+=" --target-list=${user_targets}" - conf_opts+=" --disable-bluez" - conf_opts+=" --disable-sdl" - fi - - if [[ ${buildtype} == "softmmu" ]]; then - conf_opts+=" --disable-linux-user" - conf_opts+=" --enable-system" - conf_opts+=" --target-list=${softmmu_targets}" - conf_opts+=" $(use_enable bluetooth bluez)" - conf_opts+=" $(use_enable sdl)" - conf_opts+=" $(use_enable aio linux-aio)" - conf_opts+=" $(use_enable brltty brlapi)" - conf_opts+=" $(use_enable caps cap-ng)" - conf_opts+=" $(use_enable curl)" - conf_opts+=" $(use_enable fdt)" - conf_opts+=" $(use_enable jpeg vnc-jpeg)" - conf_opts+=" $(use_enable kernel_linux kvm)" - conf_opts+=" $(use_enable kernel_linux nptl)" - conf_opts+=" $(use_enable ncurses curses)" - conf_opts+=" $(use_enable opengl)" - conf_opts+=" $(use_enable png vnc-png)" - conf_opts+=" $(use_enable rbd)" - conf_opts+=" $(use_enable sasl vnc-sasl)" - conf_opts+=" $(use_enable seccomp)" - conf_opts+=" $(use_enable smartcard smartcard)" - conf_opts+=" $(use_enable smartcard smartcard-nss)" - conf_opts+=" $(use_enable spice)" - conf_opts+=" $(use_enable tls vnc-tls)" - conf_opts+=" $(use_enable usbredir usb-redir)" - conf_opts+=" $(use_enable uuid)" - conf_opts+=" $(use_enable vde)" - conf_opts+=" $(use_enable vhost-net)" - conf_opts+=" $(use_enable virtfs)" - conf_opts+=" $(use_enable vnc)" - conf_opts+=" $(use_enable xattr attr)" - conf_opts+=" $(use_enable xen)" - conf_opts+=" $(use_enable xen xen-pci-passthrough)" - conf_opts+=" $(use_enable xfs xfsctl)" - use mixemu && conf_opts+=" --enable-mixemu" - conf_opts+=" --audio-drv-list=${audio_opts}" - fi - - conf_opts+=" $(use_enable debug debug-info)" - conf_opts+=" $(use_enable debug debug-tcg)" - conf_opts+=" $(use_enable doc docs)" - conf_opts+=" $(use_enable tci tcg-interpreter)" - - # Add support for SystemTAP - use systemtap && conf_opts="${conf_opts} --enable-trace-backend=dtrace" - - # Add support for static builds - use ${static_flag} && conf_opts="${conf_opts} --static --disable-pie" - - # We always want to attempt to build with PIE support as it results - # in a more secure binary. But it doesn't work with static or if - # the current GCC doesn't have PIE support. - if ! use ${static_flag} && gcc-specs-pie; then - conf_opts="${conf_opts} --enable-pie" - fi - - einfo "./configure ${conf_opts}" - cd ${builddir} - ../configure \ - --cc="$(tc-getCC)" \ - --host-cc="$(tc-getBUILD_CC)" \ - ${conf_opts} \ - || die "configure failed" - - # FreeBSD's kernel does not support QEMU assigning/grabbing - # host USB devices yet - use kernel_FreeBSD && \ - sed -E -e "s|^(HOST_USB=)bsd|\1stub|" -i "${S}"/config-host.mak -} - -src_configure() { - softmmu_targets= - 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 - - [[ -n ${softmmu_targets} ]] && \ - einfo "Building the following softmmu targets: ${softmmu_targets}" - - [[ -n ${user_targets} ]] && \ - einfo "Building the following user targets: ${user_targets}" - - if [[ -n ${softmmu_targets} ]]; then - mkdir "${S}/softmmu-build" - qemu_src_configure "softmmu" "${S}/softmmu-build" - fi - - if [[ -n ${user_targets} ]]; then - mkdir "${S}/user-build" - qemu_src_configure "user" "${S}/user-build" - fi -} - -src_compile() { - if [[ -n ${user_targets} ]]; then - cd "${S}/user-build" - default - fi - - if [[ -n ${softmmu_targets} ]]; then - cd "${S}/softmmu-build" - default - fi -} - -src_install() { - if [[ -n ${user_targets} ]]; then - cd "${S}/user-build" - emake DESTDIR="${ED}" install - - # Install binfmt handler init script for user targets - newinitd "${FILESDIR}/qemu-binfmt.initd-r1" qemu-binfmt - fi - - if [[ -n ${softmmu_targets} ]]; then - cd "${S}/softmmu-build" - emake DESTDIR="${ED}" install - - if use kernel_linux; then - udev_dorules "${FILESDIR}"/65-kvm.rules - fi - - if use qemu_softmmu_targets_x86_64 ; then - dosym /usr/bin/qemu-system-x86_64 /usr/bin/qemu-kvm - ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed" - ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit" - ewarn "your libvirt configs or other wrappers for ${PN}" - elif use x86 || use amd64; then - elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install" - elog "of the /usr/bin/qemu-kvm symlink." - fi - - use python && dobin "${S}/scripts/kvm/kvm_stat" - use python && dobin "${S}/scripts/kvm/vmxcap" - fi - - # Install config file example for qemu-bridge-helper - insinto "/etc/qemu" - doins "${FILESDIR}/bridge.conf" - - cd "${S}" - dodoc Changelog MAINTAINERS TODO pci-ids.txt - newdoc pc-bios/README README.pc-bios - - # Avoid collision with app-emulation/libcacard - use smartcard && mv "${ED}/usr/bin/vscclient" "${ED}/usr/bin/qemu-vscclient" - - # Remove SeaBIOS since we're using the SeaBIOS packaged one - rm "${ED}/usr/share/qemu/bios.bin" - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../seabios/bios.bin /usr/share/qemu/bios.bin - fi - - # Remove vgabios since we're using the vgabios packaged one - rm "${ED}/usr/share/qemu/vgabios.bin" - rm "${ED}/usr/share/qemu/vgabios-cirrus.bin" - rm "${ED}/usr/share/qemu/vgabios-qxl.bin" - rm "${ED}/usr/share/qemu/vgabios-stdvga.bin" - rm "${ED}/usr/share/qemu/vgabios-vmware.bin" - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../vgabios/vgabios.bin /usr/share/qemu/vgabios.bin - dosym ../vgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin - dosym ../vgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin - dosym ../vgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin - dosym ../vgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin - fi - - # Remove sgabios since we're using the sgabios packaged one - rm "${ED}/usr/share/qemu/sgabios.bin" - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin - fi - - # Remove iPXE since we're using the iPXE packaged one - rm "${ED}"/usr/share/qemu/pxe-*.rom - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../ipxe/808610de.rom /usr/share/qemu/pxe-e1000.rom - dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom - dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom - dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom - dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom - dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom - fi -} - -pkg_postinst() { - local virtfs_caps= - - if qemu_support_kvm; 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 - fi - - virtfs_caps+="cap_chown,cap_dac_override,cap_fowner,cap_fsetid," - virtfs_caps+="cap_setgid,cap_mknod,cap_setuid" - - fcaps cap_net_admin /usr/libexec/qemu-bridge-helper - use virtfs && fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper - - elog "The ssl USE flag was renamed to tls, so adjust your USE flags." - elog "The nss USE flag was renamed to smartcard, so adjust your USE flags." -} diff --git a/app-emulation/qemu/qemu-1.4.0-r1.ebuild b/app-emulation/qemu/qemu-1.4.0-r1.ebuild deleted file mode 100644 index f6dbeffa0922..000000000000 --- a/app-emulation/qemu/qemu-1.4.0-r1.ebuild +++ /dev/null @@ -1,511 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-1.4.0-r1.ebuild,v 1.7 2013/05/23 17:24:13 ago Exp $ - -EAPI=5 - -PYTHON_DEPEND="2:2.4" -inherit eutils flag-o-matic linux-info toolchain-funcs multilib python \ - user udev fcaps -BACKPORTS=4114896d - -if [[ ${PV} = *9999* ]]; then - EGIT_REPO_URI="git://git.qemu.org/qemu.git" - inherit git-2 - SRC_URI="" - KEYWORDS="" -else - SRC_URI="http://wiki.qemu-project.org/download//${P}.tar.bz2 - ${BACKPORTS:+ - http://dev.gentoo.org/~cardoe/distfiles/${P}-${BACKPORTS}.tar.xz}" - KEYWORDS="amd64 ~ppc ~ppc64 ~x86 ~x86-fbsd" -fi - -DESCRIPTION="QEMU + Kernel-based Virtual Machine userland tools" -HOMEPAGE="http://www.qemu.org http://www.linux-kvm.org" - -LICENSE="GPL-2 LGPL-2 BSD-2" -SLOT="0" -IUSE="+aio alsa bluetooth brltty +caps +curl debug doc fdt iscsi +jpeg \ -kernel_linux kernel_FreeBSD mixemu ncurses opengl +png pulseaudio python \ -rbd sasl +seccomp sdl selinux smartcard spice static static-softmmu \ -static-user systemtap tci test +threads tls usbredir +uuid vde +vhost-net \ -virtfs +vnc xattr xen xfs" - -COMMON_TARGETS="i386 x86_64 alpha arm cris m68k microblaze microblazeel mips -mipsel or32 ppc ppc64 sh4 sh4eb sparc sparc64 s390x unicore32" -IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} lm32 mips64 mips64el ppcemb xtensa xtensaeb" -IUSE_USER_TARGETS="${COMMON_TARGETS} armeb ppc64abi32 sparc32plus" - -# Setup the default SoftMMU targets, while using the loops -# below to setup the other targets. -REQUIRED_USE="|| (" - -for target in ${IUSE_SOFTMMU_TARGETS}; do - IUSE="${IUSE} qemu_softmmu_targets_${target}" - REQUIRED_USE="${REQUIRED_USE} qemu_softmmu_targets_${target}" -done -REQUIRED_USE="${REQUIRED_USE} )" - -for target in ${IUSE_USER_TARGETS}; do - IUSE="${IUSE} qemu_user_targets_${target}" -done - -# Block USE flag configurations known to not work -REQUIRED_USE="${REQUIRED_USE} - static? ( static-softmmu static-user ) - static-softmmu? ( !alsa !pulseaudio !bluetooth !opengl ) - virtfs? ( xattr )" - -# Yep, you need both libcap and libcap-ng since virtfs only uses libcap. -LIB_DEPEND=">=dev-libs/glib-2.0[static-libs(+)] - sys-apps/pciutils[static-libs(+)] - sys-libs/zlib[static-libs(+)] - >=x11-libs/pixman-0.28.0[static-libs(+)] - aio? ( dev-libs/libaio[static-libs(+)] ) - caps? ( sys-libs/libcap-ng[static-libs(+)] ) - curl? ( >=net-misc/curl-7.15.4[static-libs(+)] ) - fdt? ( >=sys-apps/dtc-1.2.0[static-libs(+)] ) - jpeg? ( virtual/jpeg[static-libs(+)] ) - ncurses? ( sys-libs/ncurses[static-libs(+)] ) - png? ( media-libs/libpng[static-libs(+)] ) - rbd? ( sys-cluster/ceph[static-libs(+)] ) - sasl? ( dev-libs/cyrus-sasl[static-libs(+)] ) - sdl? ( >=media-libs/libsdl-1.2.11[static-libs(+)] ) - seccomp? ( >=sys-libs/libseccomp-1.0.1[static-libs(+)] ) - spice? ( >=app-emulation/spice-0.12.0[static-libs(+)] ) - tls? ( net-libs/gnutls[static-libs(+)] ) - uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] ) - vde? ( net-misc/vde[static-libs(+)] ) - xattr? ( sys-apps/attr[static-libs(+)] ) - xfs? ( sys-fs/xfsprogs[static-libs(+)] )" -RDEPEND="!static-softmmu? ( ${LIB_DEPEND//\[static-libs(+)]} ) - !app-emulation/kqemu - qemu_softmmu_targets_i386? ( - sys-firmware/ipxe - ~sys-firmware/seabios-1.7.2 - ~sys-firmware/sgabios-0.1_pre8 - ~sys-firmware/vgabios-0.7a - ) - qemu_softmmu_targets_x86_64? ( - sys-firmware/ipxe - ~sys-firmware/seabios-1.7.2 - ~sys-firmware/sgabios-0.1_pre8 - ~sys-firmware/vgabios-0.7a - ) - alsa? ( >=media-libs/alsa-lib-1.0.13 ) - bluetooth? ( net-wireless/bluez ) - brltty? ( app-accessibility/brltty ) - iscsi? ( net-libs/libiscsi ) - opengl? ( virtual/opengl ) - pulseaudio? ( media-sound/pulseaudio ) - python? ( =dev-lang/python-2*[ncurses] ) - sdl? ( media-libs/libsdl[X] ) - selinux? ( sec-policy/selinux-qemu ) - smartcard? ( dev-libs/nss !app-emulation/libcacard ) - spice? ( >=app-emulation/spice-protocol-0.12.3 ) - systemtap? ( dev-util/systemtap ) - usbredir? ( >=sys-apps/usbredir-0.6 ) - virtfs? ( sys-libs/libcap ) - xen? ( app-emulation/xen-tools )" - -DEPEND="${RDEPEND} - virtual/pkgconfig - doc? ( app-text/texi2html ) - kernel_linux? ( >=sys-kernel/linux-headers-2.6.35 ) - static-softmmu? ( ${LIB_DEPEND} ) - test? ( - dev-libs/glib[utils] - sys-devel/bc - )" - -STRIP_MASK="/usr/share/qemu/palcode-clipper" - -QA_PREBUILT=" - usr/share/qemu/openbios-ppc - usr/share/qemu/openbios-sparc64 - usr/share/qemu/openbios-sparc32 - usr/share/qemu/palcode-clipper" - -QA_WX_LOAD="usr/bin/qemu-i386 - usr/bin/qemu-x86_64 - usr/bin/qemu-alpha - usr/bin/qemu-arm - usr/bin/qemu-cris - usr/bin/qemu-m68k - usr/bin/qemu-microblaze - usr/bin/qemu-microblazeel - usr/bin/qemu-mips - usr/bin/qemu-mipsel - usr/bin/qemu-or32 - usr/bin/qemu-ppc - usr/bin/qemu-ppc64 - usr/bin/qemu-ppc64abi32 - usr/bin/qemu-sh4 - usr/bin/qemu-sh4eb - usr/bin/qemu-sparc - usr/bin/qemu-sparc64 - usr/bin/qemu-armeb - usr/bin/qemu-sparc32plus - usr/bin/qemu-s390x - usr/bin/qemu-unicore32" - -qemu_support_kvm() { - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386 \ - use qemu_softmmu_targets_ppc || use qemu_softmmu_targets_ppc64 \ - use qemu_softmmu_targets_s390x; then - return 0 - fi - - return 1 -} - -pkg_pretend() { - if use kernel_linux && kernel_is lt 2 6 25; then - eerror "This version of KVM requres a host kernel of 2.6.25 or higher." - elif use kernel_linux; then - if ! linux_config_exists; then - eerror "Unable to check your kernel for KVM support" - else - CONFIG_CHECK="~KVM ~TUN ~BRIDGE" - ERROR_KVM="You must enable KVM in your kernel to continue" - ERROR_KVM_AMD="If you have an AMD CPU, you must enable KVM_AMD in" - ERROR_KVM_AMD+=" your kernel configuration." - ERROR_KVM_INTEL="If you have an Intel CPU, you must enable" - ERROR_KVM_INTEL+=" KVM_INTEL in your kernel configuration." - ERROR_TUN="You will need the Universal TUN/TAP driver compiled" - ERROR_TUN+=" into your kernel or loaded as a module to use the" - ERROR_TUN+=" virtual network device if using -net tap." - ERROR_BRIDGE="You will also need support for 802.1d" - ERROR_BRIDGE+=" Ethernet Bridging for some network configurations." - use vhost-net && CONFIG_CHECK+=" ~VHOST_NET" - ERROR_VHOST_NET="You must enable VHOST_NET to have vhost-net" - ERROR_VHOST_NET+=" support" - - if use amd64 || use x86 || use amd64-linux || use x86-linux; then - CONFIG_CHECK+=" ~KVM_AMD ~KVM_INTEL" - fi - - use python && CONFIG_CHECK+=" ~DEBUG_FS" - ERROR_DEBUG_FS="debugFS support required for kvm_stat" - - # Now do the actual checks setup above - check_extra_config - fi - fi -} - -pkg_setup() { - python_set_active_version 2 - python_pkg_setup - - enewgroup kvm 78 -} - -src_prepare() { - # Alter target makefiles to accept CFLAGS set via flag-o - sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \ - Makefile Makefile.target || die - - python_convert_shebangs -r 2 "${S}/scripts/kvm/kvm_stat" - python_convert_shebangs -r 2 "${S}/scripts/kvm/vmxcap" - - epatch "${FILESDIR}"/qemu-9999-cflags.patch - [[ -n ${BACKPORTS} ]] && \ - EPATCH_FORCE=yes EPATCH_SUFFIX="patch" EPATCH_SOURCE="${S}/patches" \ - epatch - - # Fix ld and objcopy being called directly - tc-export LD OBJCOPY - - # Verbose builds - MAKEOPTS+=" V=1" - - epatch_user -} - -## -# configures qemu based on the build directory and the build type -# we are using. -# -qemu_src_configure() { - debug-print-function $FUNCNAME "$@" - - local buildtype=$1 - local builddir=$2 - local conf_opts audio_opts - local static_flag="static-${buildtype}" - - conf_opts="--prefix=/usr" - conf_opts+=" --sysconfdir=/etc" - conf_opts+=" --libdir=/usr/$(get_libdir)" - conf_opts+=" --docdir=/usr/share/doc/${PF}/html" - conf_opts+=" --disable-bsd-user" - conf_opts+=" --disable-guest-agent" - conf_opts+=" --disable-strip" - conf_opts+=" --disable-werror" - conf_opts+=" --python=python2" - - # audio options - audio_opts="oss" - use alsa && audio_opts="alsa,${audio_opts}" - use sdl && audio_opts="sdl,${audio_opts}" - use pulseaudio && audio_opts="pa,${audio_opts}" - - if [[ ${buildtype} == "user" ]]; then - conf_opts+=" --enable-linux-user" - conf_opts+=" --disable-system" - conf_opts+=" --target-list=${user_targets}" - conf_opts+=" --disable-blobs" - conf_opts+=" --disable-bluez" - conf_opts+=" --disable-curses" - conf_opts+=" --disable-kvm" - conf_opts+=" --disable-libiscsi" - conf_opts+=" $(use_enable seccomp)" - conf_opts+=" --disable-sdl" - conf_opts+=" --disable-smartcard-nss" - conf_opts+=" --disable-tools" - conf_opts+=" --disable-vde" - fi - - if [[ ${buildtype} == "softmmu" ]]; then - conf_opts+=" --disable-linux-user" - conf_opts+=" --enable-system" - conf_opts+=" --with-system-pixman" - conf_opts+=" --target-list=${softmmu_targets}" - conf_opts+=" $(use_enable bluetooth bluez)" - conf_opts+=" $(use_enable sdl)" - conf_opts+=" $(use_enable aio linux-aio)" - conf_opts+=" $(use_enable brltty brlapi)" - conf_opts+=" $(use_enable caps cap-ng)" - conf_opts+=" $(use_enable curl)" - conf_opts+=" $(use_enable fdt)" - conf_opts+=" $(use_enable iscsi libiscsi)" - conf_opts+=" $(use_enable jpeg vnc-jpeg)" - conf_opts+=" $(use_enable kernel_linux kvm)" - conf_opts+=" $(use_enable kernel_linux nptl)" - conf_opts+=" $(use_enable ncurses curses)" - conf_opts+=" $(use_enable opengl)" - conf_opts+=" $(use_enable png vnc-png)" - conf_opts+=" $(use_enable rbd)" - conf_opts+=" $(use_enable sasl vnc-sasl)" - conf_opts+=" $(use_enable seccomp)" - conf_opts+=" $(use_enable smartcard smartcard-nss)" - conf_opts+=" $(use_enable spice)" - conf_opts+=" $(use_enable tls vnc-tls)" - conf_opts+=" $(use_enable tls vnc-ws)" - conf_opts+=" $(use_enable usbredir usb-redir)" - conf_opts+=" $(use_enable uuid)" - conf_opts+=" $(use_enable vde)" - conf_opts+=" $(use_enable vhost-net)" - conf_opts+=" $(use_enable virtfs)" - conf_opts+=" $(use_enable vnc)" - conf_opts+=" $(use_enable xattr attr)" - conf_opts+=" $(use_enable xen)" - conf_opts+=" $(use_enable xen xen-pci-passthrough)" - conf_opts+=" $(use_enable xfs xfsctl)" - use mixemu && conf_opts+=" --enable-mixemu" - conf_opts+=" --audio-drv-list=${audio_opts}" - conf_opts+=" --enable-migration-from-qemu-kvm" - fi - - conf_opts+=" $(use_enable debug debug-info)" - conf_opts+=" $(use_enable debug debug-tcg)" - conf_opts+=" $(use_enable doc docs)" - conf_opts+=" $(use_enable tci tcg-interpreter)" - - # Add support for SystemTAP - use systemtap && conf_opts="${conf_opts} --enable-trace-backend=dtrace" - - # Add support for static builds - use ${static_flag} && conf_opts="${conf_opts} --static --disable-pie" - - # We always want to attempt to build with PIE support as it results - # in a more secure binary. But it doesn't work with static or if - # the current GCC doesn't have PIE support. - if ! use ${static_flag} && gcc-specs-pie; then - conf_opts="${conf_opts} --enable-pie" - fi - - einfo "./configure ${conf_opts}" - cd ${builddir} - ../configure \ - --cc="$(tc-getCC)" \ - --host-cc="$(tc-getBUILD_CC)" \ - ${conf_opts} \ - || die "configure failed" - - # FreeBSD's kernel does not support QEMU assigning/grabbing - # host USB devices yet - use kernel_FreeBSD && \ - sed -E -e "s|^(HOST_USB=)bsd|\1stub|" -i "${S}"/config-host.mak -} - -src_configure() { - softmmu_targets= - 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 - - [[ -n ${softmmu_targets} ]] && \ - einfo "Building the following softmmu targets: ${softmmu_targets}" - - [[ -n ${user_targets} ]] && \ - einfo "Building the following user targets: ${user_targets}" - - if [[ -n ${softmmu_targets} ]]; then - mkdir "${S}/softmmu-build" - qemu_src_configure "softmmu" "${S}/softmmu-build" - fi - - if [[ -n ${user_targets} ]]; then - mkdir "${S}/user-build" - qemu_src_configure "user" "${S}/user-build" - fi -} - -src_compile() { - if [[ -n ${user_targets} ]]; then - cd "${S}/user-build" - default - fi - - if [[ -n ${softmmu_targets} ]]; then - cd "${S}/softmmu-build" - default - fi -} - -src_test() { - cd "${S}/softmmu-build" - emake -j1 check - emake -j1 check-report.html -} - -src_install() { - if [[ -n ${user_targets} ]]; then - cd "${S}/user-build" - emake DESTDIR="${ED}" install - - # Install binfmt handler init script for user targets - newinitd "${FILESDIR}/qemu-binfmt.initd-r1" qemu-binfmt - fi - - if [[ -n ${softmmu_targets} ]]; then - cd "${S}/softmmu-build" - emake DESTDIR="${ED}" install - - if use test; then - dohtml check-report.html - fi - - if use kernel_linux; then - udev_dorules "${FILESDIR}"/65-kvm.rules - fi - - if use qemu_softmmu_targets_x86_64 ; then - newbin "${FILESDIR}/qemu-kvm-1.4" qemu-kvm - ewarn "The deprecated '/usr/bin/kvm' symlink is no longer installed" - ewarn "You should use '/usr/bin/qemu-kvm', you may need to edit" - ewarn "your libvirt configs or other wrappers for ${PN}" - elif use x86 || use amd64; then - elog "You disabled QEMU_SOFTMMU_TARGETS=x86_64, this disables install" - elog "of the /usr/bin/qemu-kvm script." - fi - - use python && dobin "${S}/scripts/kvm/kvm_stat" - use python && dobin "${S}/scripts/kvm/vmxcap" - fi - - # Install config file example for qemu-bridge-helper - insinto "/etc/qemu" - doins "${FILESDIR}/bridge.conf" - - cd "${S}" - dodoc Changelog MAINTAINERS TODO docs/specs/pci-ids.txt - newdoc pc-bios/README README.pc-bios - - # Remove SeaBIOS since we're using the SeaBIOS packaged one - rm "${ED}/usr/share/qemu/bios.bin" - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../seabios/bios.bin /usr/share/qemu/bios.bin - fi - - # Remove vgabios since we're using the vgabios packaged one - rm "${ED}/usr/share/qemu/vgabios.bin" - rm "${ED}/usr/share/qemu/vgabios-cirrus.bin" - rm "${ED}/usr/share/qemu/vgabios-qxl.bin" - rm "${ED}/usr/share/qemu/vgabios-stdvga.bin" - rm "${ED}/usr/share/qemu/vgabios-vmware.bin" - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../vgabios/vgabios.bin /usr/share/qemu/vgabios.bin - dosym ../vgabios/vgabios-cirrus.bin /usr/share/qemu/vgabios-cirrus.bin - dosym ../vgabios/vgabios-qxl.bin /usr/share/qemu/vgabios-qxl.bin - dosym ../vgabios/vgabios-stdvga.bin /usr/share/qemu/vgabios-stdvga.bin - dosym ../vgabios/vgabios-vmware.bin /usr/share/qemu/vgabios-vmware.bin - fi - - # Remove sgabios since we're using the sgabios packaged one - rm "${ED}/usr/share/qemu/sgabios.bin" - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../sgabios/sgabios.bin /usr/share/qemu/sgabios.bin - fi - - # Remove iPXE since we're using the iPXE packaged one - rm "${ED}"/usr/share/qemu/pxe-*.rom - if use qemu_softmmu_targets_x86_64 || use qemu_softmmu_targets_i386; then - dosym ../ipxe/808610de.rom /usr/share/qemu/pxe-e1000.rom - dosym ../ipxe/80861209.rom /usr/share/qemu/pxe-eepro100.rom - dosym ../ipxe/10500940.rom /usr/share/qemu/pxe-ne2k_pci.rom - dosym ../ipxe/10222000.rom /usr/share/qemu/pxe-pcnet.rom - dosym ../ipxe/10ec8139.rom /usr/share/qemu/pxe-rtl8139.rom - dosym ../ipxe/1af41000.rom /usr/share/qemu/pxe-virtio.rom - fi -} - -pkg_postinst() { - local virtfs_caps= - - if qemu_support_kvm; 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 - fi - - virtfs_caps+="cap_chown,cap_dac_override,cap_fowner,cap_fsetid," - virtfs_caps+="cap_setgid,cap_mknod,cap_setuid" - - fcaps cap_net_admin /usr/libexec/qemu-bridge-helper - use virtfs && fcaps ${virtfs_caps} /usr/bin/virtfs-proxy-helper - - elog "The ssl USE flag was renamed to tls, so adjust your USE flags." - elog "The nss USE flag was renamed to smartcard, so adjust your USE flags." -} - -pkg_info() { - echo "Using:" - echo " $(best_version app-emulation/spice-protocol)" - echo " $(best_version sys-firmware/ipxe)" - echo " $(best_version sys-firmware/seabios)" - if has_version sys-firmware/seabios[binary]; then - echo " USE=binary" - else - echo " USE=''" - fi - echo " $(best_version sys-firmware/vgabios)" -} |