diff options
author | Luca Barbato <lu_zero@gentoo.org> | 2009-05-17 10:40:44 +0000 |
---|---|---|
committer | Luca Barbato <lu_zero@gentoo.org> | 2009-05-17 10:40:44 +0000 |
commit | dc837473654835e3f69aea487549255b5b890362 (patch) | |
tree | 827803c84ae2c63686d0442db71e021d3d9b60c3 /app-emulation | |
parent | Update HOMEPAGE, bug 270152. Thanks to Justin Lecher (jlec) <jlec@j-schmitz.n... (diff) | |
download | gentoo-2-dc837473654835e3f69aea487549255b5b890362.tar.gz gentoo-2-dc837473654835e3f69aea487549255b5b890362.tar.bz2 gentoo-2-dc837473654835e3f69aea487549255b5b890362.zip |
New unified ebuild
(Portage version: 2.1.6.13/cvs/Linux x86_64)
Diffstat (limited to 'app-emulation')
-rw-r--r-- | app-emulation/qemu/ChangeLog | 9 | ||||
-rw-r--r-- | app-emulation/qemu/files/qemu-0.10.3-nopl-fix.patch | 32 | ||||
-rw-r--r-- | app-emulation/qemu/metadata.xml | 13 | ||||
-rw-r--r-- | app-emulation/qemu/qemu-0.10.3.ebuild | 148 |
4 files changed, 200 insertions, 2 deletions
diff --git a/app-emulation/qemu/ChangeLog b/app-emulation/qemu/ChangeLog index 8cd664b14dc1..59e85832846b 100644 --- a/app-emulation/qemu/ChangeLog +++ b/app-emulation/qemu/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for app-emulation/qemu # Copyright 2000-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/ChangeLog,v 1.62 2009/03/22 23:27:12 lu_zero Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/ChangeLog,v 1.63 2009/05/17 10:40:43 lu_zero Exp $ + +*qemu-0.10.3 (17 May 2009) + + 17 May 2009; Luca Barbato <lu_zero@gentoo.org> + +files/qemu-0.10.3-nopl-fix.patch, +qemu-0.10.3.ebuild: + New ebuild, thanks to Xake <xake@rymdraket.net> for contributing it in bug + #190298 *qemu-0.10.1 (22 Mar 2009) diff --git a/app-emulation/qemu/files/qemu-0.10.3-nopl-fix.patch b/app-emulation/qemu/files/qemu-0.10.3-nopl-fix.patch new file mode 100644 index 000000000000..bdef0efc3516 --- /dev/null +++ b/app-emulation/qemu/files/qemu-0.10.3-nopl-fix.patch @@ -0,0 +1,32 @@ +--- i386-dis.c 2009-03-22 00:05:48.000000000 +0100 ++++ i386-dis_new.c 2009-04-21 08:31:08.000000000 +0200 +@@ -784,13 +784,13 @@ + { "movhpX", EX, XM, SIMD_Fixup, 'l' }, + /* 18 */ + { GRP14 }, +- { "(bad)", XX, XX, XX }, +- { "(bad)", XX, XX, XX }, +- { "(bad)", XX, XX, XX }, +- { "(bad)", XX, XX, XX }, +- { "(bad)", XX, XX, XX }, +- { "(bad)", XX, XX, XX }, +- { "(bad)", XX, XX, XX }, ++ { "nopQ", Ev, XX, XX }, ++ { "nopQ", Ev, XX, XX }, ++ { "nopQ", Ev, XX, XX }, ++ { "nopQ", Ev, XX, XX }, ++ { "nopQ", Ev, XX, XX }, ++ { "nopQ", Ev, XX, XX }, ++ { "nopQ", Ev, XX, XX }, + /* 20 */ + { "movL", Rm, Cm, XX }, + { "movL", Rm, Dm, XX }, +@@ -1072,7 +1072,7 @@ + /* 0 1 2 3 4 5 6 7 8 9 a b c d e f */ + /* ------------------------------- */ + /* 00 */ 1,1,1,1,0,0,0,0,0,0,0,0,0,1,0,1, /* 0f */ +- /* 10 */ 1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0, /* 1f */ ++ /* 10 */ 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, /* 1f */ + /* 20 */ 1,1,1,1,1,0,1,0,1,1,1,1,1,1,1,1, /* 2f */ + /* 30 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* 3f */ + /* 40 */ 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, /* 4f */ diff --git a/app-emulation/qemu/metadata.xml b/app-emulation/qemu/metadata.xml index d0708491d2d5..c0983a49be36 100644 --- a/app-emulation/qemu/metadata.xml +++ b/app-emulation/qemu/metadata.xml @@ -3,6 +3,17 @@ <pkgmetadata> <herd>no-herd</herd> <maintainer> - <email>lu_zero@gentoo.org</email> + <email>lu_zero@gentoo.org</email> </maintainer> +<use> + <flag name='kqemu'>Enables the kernel acceleration module on a x86/x86-64 cpu</flag> + <flag name='kvm'>Use the KVM (Kernel Virtual Machine) infrastructure on compatible hardware</flag> + <flag name='alsa'>Enable alsa output for sound emulation</flag> + <flag name='esd'>Enable esound output for sound emulation</flag> + <flag name='gnutls'>Enable TLS support for the VNC console server</flag> + <flag name='ncurses'>Enable the ncurses-based console</flag> + <flag name='pulseaudio'>Enable pulseaudio output for sound emulation</flag> + <flag name='sdl'>Enable the SDL-based console</flag> + <flag name='vde'>Enable VDE-based networking</flag> +</use> </pkgmetadata> diff --git a/app-emulation/qemu/qemu-0.10.3.ebuild b/app-emulation/qemu/qemu-0.10.3.ebuild new file mode 100644 index 000000000000..f8baae060f18 --- /dev/null +++ b/app-emulation/qemu/qemu-0.10.3.ebuild @@ -0,0 +1,148 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-emulation/qemu/qemu-0.10.3.ebuild,v 1.1 2009/05/17 10:40:43 lu_zero Exp $ + +EAPI="2" + +inherit eutils flag-o-matic toolchain-funcs linux-info + +DESCRIPTION="QEMU emulator and ABI wrapper" +HOMEPAGE="http://www.qemu.org" +SRC_URI="http://download.savannah.gnu.org/releases/qemu/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" +IUSE="alsa esd gnutls ncurses pulseaudio +sdl vde kqemu kvm" + +COMMON_TARGETS="i386 x86_64 arm cris m68k mips mipsel mips64 mips64el ppc ppc64 sh4 sh4eb sparc" + +IUSE_SOFTMMU_TARGETS="${COMMON_TARGETS} ppcemb" +IUSE_USER_TARGETS="${COMMON_TARGETS} alpha armeb ppc64abi32 sparc64 sparc32plus" + +for target in ${IUSE_SOFTMMU_TARGETS}; do + IUSE="${IUSE} +qemu_softmmu_targets_${target}" +done + +for target in ${IUSE_USER_TARGETS}; do + IUSE="${IUSE} +qemu_user_targets_${target}" +done + +RDEPEND="!app-emulation/qemu-softmmu + !app-emulation/qemu-user + !<app-emulation/qemu-0.10.3 + sys-libs/zlib + alsa? ( >=media-libs/alsa-lib-1.0.13 ) + esd? ( media-sound/esound ) + pulseaudio? ( media-sound/pulseaudio ) + gnutls? ( net-libs/gnutls ) + ncurses? ( sys-libs/ncurses ) + sdl? ( >=media-libs/libsdl-1.2.11 ) + vde? ( net-misc/vde ) + kvm? ( >=sys-kernel/linux-headers-2.6.29 ) + kqemu? ( >=app-emulation/kqemu-1.4.0_pre1 )" +# fdt? ( sys-apps/dtc ) + +DEPEND="${RDEPEND} + gnutls? ( dev-util/pkgconfig ) + app-text/texi2html" + +src_prepare() { + # avoid fdt till an updated release appears + sed -i -e 's:fdt="yes":fdt="no":' configure + # prevent docs to get automatically installed + sed -i '/$(DESTDIR)$(docdir)/d' Makefile + # Alter target makefiles to accept CFLAGS set via flag-o + sed -i 's/^\(C\|OP_C\|HELPER_C\)FLAGS=/\1FLAGS+=/' \ + Makefile Makefile.target tests/Makefile + [[ -x /sbin/paxctl ]] && \ + sed -i 's/^VL_LDFLAGS=$/VL_LDFLAGS=-Wl,-z,execheap/' \ + Makefile.target + # avoid strip + sed -i 's/$(INSTALL) -m 755 -s/$(INSTALL) -m 755/' \ + Makefile Makefile.target */Makefile + epatch "${FILESDIR}/${P}-nopl-fix.patch" +} + +src_configure() { + local mycc conf_opts audio_opts softmmu_targets user_targets target_list + + 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 + + conf_opts="--disable-darwin-user --disable-bsd-user" + + if test ! -z "${softmmu_targets}" ; then + einfo "Building following softmmu targets: ${softmmu_targets}" + use gnutls || conf_opts="$conf_opts --disable-vnc-tls" + use ncurses || conf_opts="$conf_opts --disable-curses" + use sdl || conf_opts="$conf_opts --disable-gfx-check --disable-sdl" + use vde || conf_opts="$conf_opts --disable-vde" + use kqemu || conf_opts="$conf_opts --disable-kqemu" + use kvm || conf_opts="$conf_opts --disable-kvm" + + audio_opts="oss" + use alsa && audio_opts="alsa $audio_opts" + use esd && audio_opts="esd $audio_opts" + use pulseaudio && audio_opts="pa $audio_opts" + use sdl && audio_opts="sdl $audio_opts" + else + einfo "Disabling softmmu emulation (no softmmu targets specified)" + conf_opts="$conf_opts --disable-system --disable-vnc-tls \ + --disable-curses --disable-gfx-check --disable-sdl --disable-vde \ + --disable-kqemu --disable-kvm" + fi + + if test ! -z "${user_targets}" ; then + einfo "Building following user targets: ${user_targets}" + conf_opts="$conf_opts --enable-linux-user" + else + einfo "Disabling usermode emulation (no usermode targets specified)" + conf_opts="--disable-linux-user" + fi + +# use fdt || conf_opts="$conf_opts --disable-fdt" + + conf_opts="$conf_opts --prefix=/usr --disable-bluez" + + target_list="${softmmu_targets} ${user_targets}" + + filter-flags -fpie -fstack-protector + + ./configure ${conf_opts} \ + --audio-drv-list="$audio_opts" \ + --kerneldir="${KV_DIR}" \ + --cc=$(tc-getCC) --host-cc=$(tc-getCC) \ + --target-list="${target_list}" \ + || die "configure failed" +} + +src_install() { + emake DESTDIR="${D}" install || die "make install failed" + + insinto /etc/qemu + insopts -m0755 + doins "${FILESDIR}/qemu-ifup" + doins "${FILESDIR}/qemu-ifdown" + + dodoc pc-bios/README + dodoc qemu-doc.html + dodoc qemu-tech.html +} + +pkg_postinst() { + 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 "qemu-ifup script from /etc/qemu." + echo +} + |