Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 282803

Summary: xen-tools-3.4.1 does not build qemu-dm (tools/ioemu-qemu-xen) USE=-hvm
Product: Gentoo Linux Reporter: Spooky Ghost <spookyghost>
Component: Current packagesAssignee: Gentoo Xen Devs <xen>
Status: RESOLVED WORKSFORME    
Severity: normal CC: patrick
Priority: High    
Version: unspecified   
Hardware: AMD64   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: xen-tools-3.4.1-r1.ebuild: patched version which builds qemu-dm

Description Spooky Ghost 2009-08-26 14:05:23 UTC
In order to create a framebuffer on a PV domU qemu-dm is required.  However I do not have USE=hvm as my hardware is not capable, also I do not have USE=multilib.  I have manually compiled tools/ioemu-qemu-xen from the xen-3.4.1 release and installed it providing the necessary capabilities to my PV domU.

Reproducible: Always

Steps to Reproduce:
1. USE="-hvm -multilib" emerge =app-emulation/xen-tools-3.4.1
2.
3.

Actual Results:  
tools/ioemu-qemu-xen (qemu-dm) is not built/installed by the ebuild

Expected Results:  
tools/ioemu-qemu-xen should be built and installed

$ emerge --info
Portage 2.1.6.13 (default/linux/amd64/2008.0/no-multilib, gcc-4.1.2, glibc-2.9_p20081201-r2, 2.6.29-xen-r4 x86_64)
=================================================================
System uname: Linux-2.6.29-xen-r4-x86_64-AMD_Opteron-tm-_Processor_242-with-gentoo-1.12.11.1
Timestamp of tree: Wed, 26 Aug 2009 07:15:02 +0000
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p39
dev-java/java-config: 1.3.7-r1, 2.1.8-r1
dev-lang/python:     2.4.4-r13, 2.5.4-r3, 2.6.2-r1
dev-python/pycrypto: 2.0.1-r8
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 1.12.11.1
sys-apps/sandbox:    1.6-r2
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2
sys-devel/binutils:  2.18-r3
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.27-r2
ACCEPT_KEYWORDS="amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=opteron -O3 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-march=opteron -O3 -pipe"
DISTDIR="/misc/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps y"
FEATURES="ccache distlocks fixpackages noautoaccts parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://gentoo.virginmedia.com http://www.mirrorservice.org/sites/www.ibiblio.org/gentoo http://gentoo.oregonstate.edu http://www.ibiblio.org/pub/Linux/distributions/gentoo"
LDFLAGS="-Wl,-O1"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_EXTRA_OPTS="--progress --stats"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="3dnow X Xaw3d aac aalib acl acpi aim alsa amd64 apache2 arts audiofile avi bash-completion berkdb bluetooth bmp bonobo bzip2 caps cdb cdr cjk cli cpdflib cracklib crypt cups curl dba dbm dbus dga directfb divx4linux doc dri dts dvb dvd dvdr encode esd exif expat fam fbcon fftw flac flash foomaticdb fortran ftp gd gdbm gif gnome gphoto2 gpm gtk gtk2 gtkhtml hal iconv icq imagemagick imap imlib innodb ipv6 irmc isdnlog jabber jadetex java jbig joystick jpeg jpeg2k kde kerberos lcms ldap libedit libwww lirc lm_sensors mad maildir mailwrapper mhash mime ming mmx mng mp3 mpeg msn mudflap mysql ncurses nls nptl nptlonly offensive ogg openal opengl openmp oscar pam pcre pdf pdflib perl php png postgres ppds pppd python qt3 qt4 quicktime readline reflection samba sasl sdl seamonkey session slp snmp spell spl sse sse2 ssl svg sysfs tcl tcltk tcpd tetex theora tiff tk truetype unicode usb v4l v4l2 videos vorbis wmf xattr xine xinerama xml xml2 xorg xpm xsl xv xvid yahoo zlib" ALSA_CARDS="emu10k1 intel8x0" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd                  authn_dbm authn_default authn_file authz_dbm authz_default                  authz_groupfile authz_host authz_owner authz_user autoindex                  cache dav dav_fs dav_lock dbd deflate dir disk_cache env                  expires ext_filter file_cache filter headers ident imagemap                  include info log_config logio mem_cache mime mime_magic                  negotiation proxy proxy_ajp proxy_balancer proxy_connect                  proxy_http rewrite setenvif so speling status unique_id                  userdir usertrack vhost_alias" CAMERAS="canon" ELIBC="glibc" INPUT_DEVICES="keyboard mouse vmmouse joystick" KERNEL="linux" LCD_DEVICES="mtxorb xosd text ncurses svga" LIRC_DEVICES="hauppauge" USERLAND="GNU" VIDEO_CARDS="fbdev intel nv nvidia mga vesa r128 radeon vmware vga"
Unset:  CPPFLAGS, CTARGET, FFLAGS, INSTALL_MASK, LANG, LC_ALL, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS
Comment 1 Spooky Ghost 2009-08-26 14:38:57 UTC
Checking the ebuild I find this block:

        # Disable hvm support on systems that don't support x86_32 binaries.
        if ! use hvm; then
                chmod 644 tools/check/check_x11_devel
                sed -i -e '/^CONFIG_IOEMU := y$/d' "${S}"/config/*.mk
                sed -i -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' "${S}"/tools/Makefile
        fi

I think the sed expression should be applied to CONFIG_HVM not CONFIG_IOEMU.
Comment 2 Spooky Ghost 2009-08-26 14:51:46 UTC
The following patch solves the bug for me:

$ diff -u xen-tools-3.4.1.ebuild xen-tools-3.4.1-r1.ebuild
--- xen-tools-3.4.1.ebuild      2009-08-26 15:51:01.028428568 +0100
+++ xen-tools-3.4.1-r1.ebuild   2009-08-26 15:50:40.167805340 +0100
@@ -108,7 +108,7 @@
        # Disable hvm support on systems that don't support x86_32 binaries.
        if ! use hvm; then
                chmod 644 tools/check/check_x11_devel
-               sed -i -e '/^CONFIG_IOEMU := y$/d' "${S}"/config/*.mk
+               sed -i -e '/^CONFIG_HVM := y$/d' "${S}"/config/*.mk
                sed -i -e '/SUBDIRS-$(CONFIG_X86) += firmware/d' "${S}"/tools/Makefile
        fi
Comment 3 Spooky Ghost 2009-08-26 14:54:14 UTC
Created attachment 202321 [details]
xen-tools-3.4.1-r1.ebuild: patched version which builds qemu-dm

Full ebuild incorporating patch in comment #3
Comment 4 Alexey Shvetsov archtester gentoo-dev 2011-03-26 11:39:55 UTC
Xen 4.1 in tree. Please test with it and reopen if it doesnt work