From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefano Stabellini Subject: Re: [PATCH 4/9] raisin: add a component to build qemu_traditional Date: Wed, 15 Apr 2015 16:44:30 +0100 Message-ID: References: <1429110900-8286-4-git-send-email-stefano.stabellini@eu.citrix.com> <552E832A.9020900@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <552E832A.9020900@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Andrew Cooper Cc: george.dunlap@eu.citrix.com, xen-devel@lists.xensource.com, Stefano Stabellini List-Id: xen-devel@lists.xenproject.org On Wed, 15 Apr 2015, Andrew Cooper wrote: > On 15/04/15 16:14, Stefano Stabellini wrote: > > Introduce a component to build qemu-traditional out of xen-unstable. > > Do not compile qemu-traditional from xen-unstable by passing the right > > command line option to configure. > > > > Signed-off-by: Stefano Stabellini > > --- > > components/qemu_traditional | 49 +++++++++++++++++++++++++++++++++++++++++++ > > components/series | 1 + > > components/xen | 3 ++- > > defconfig | 2 ++ > > 4 files changed, 54 insertions(+), 1 deletion(-) > > create mode 100644 components/qemu_traditional > > > > diff --git a/components/qemu_traditional b/components/qemu_traditional > > new file mode 100644 > > index 0000000..cb71c94 > > --- /dev/null > > +++ b/components/qemu_traditional > > @@ -0,0 +1,49 @@ > > +#!/usr/bin/env bash > > + > > +function qemu_traditional_check_package() { > > + local DEP_Debian_common="build-essential zlib1g-dev pciutils-dev pkg-config \ > > + libncurses5-dev" > > + local DEP_Debian_x86_32="$DEP_Debian_common" > > + local DEP_Debian_x86_64="$DEP_Debian_common" > > + local DEP_Debian_arm32="$DEP_Debian_common" > > + local DEP_Debian_arm64="$DEP_Debian_common" > > + > > + local DEP_Fedora_common="make gcc zlib-devel ncurses-devel pciutils-devel" > > + local DEP_Fedora_x86_32="$DEP_Fedora_common" > > + local DEP_Fedora_x86_64="$DEP_Fedora_common" > > + > > + echo Checking QEMU dependencies > > + eval check-package \$DEP_"$DISTRO"_"$ARCH" > > +} > > + > > +function qemu_traditional_build() { > > + cd "$BASEDIR" > > + git-checkout $QEMU_TRADITIONAL_UPSTREAM_URL $QEMU_TRADITIONAL_UPSTREAM_REVISION qemu_traditional-dir > > + cd qemu_traditional-dir > > + > > + export CONFIG_BLKTAP1=n > > + export XEN_ROOT="$BASEDIR"/xen-dir > > + ./xen-setup > > + $MAKE all > > + $MAKE install DESTDIR="$INST_DIR" > > + cd "$BASEDIR" > > +} > > + > > +function qemu_traditional_clean() { > > + cd "$BASEDIR" > > + if [[ -d qemu_traditional-dir ]] > > + then > > + cd qemu_traditional-dir > > + $MAKE distclean > > + cd .. > > + rm -rf qemu_traditional-dir > > + fi > > +} > > + > > +function qemu_traditional_configure() { > > + echo Nothing to configure for qemu_traditional > > +} > > + > > +function qemu_traditional_unconfigure() { > > + echo Nothing to unconfigure for qemu_traditional > > +} > > diff --git a/components/series b/components/series > > index 8f614f0..d21243a 100644 > > --- a/components/series > > +++ b/components/series > > @@ -1,4 +1,5 @@ > > xen > > qemu > > +qemu_traditional > > grub > > libvirt > > diff --git a/components/xen b/components/xen > > index dcf2f92..9fdf37f 100644 > > --- a/components/xen > > +++ b/components/xen > > @@ -23,7 +23,8 @@ function xen_build() { > > cd "$BASEDIR" > > git-checkout $XEN_UPSTREAM_URL $XEN_UPSTREAM_REVISION xen-dir > > cd xen-dir > > - ./configure --prefix=$PREFIX --with-system-qemu=/usr/bin/qemu-system-i386 > > + ./configure --prefix=$PREFIX --with-system-qemu=/usr/bin/qemu-system-i386 \ > > + --disable-qemu-traditional > > This does more than just what you want. > > It also tells libxl that qemu-trad does not exist which compiles out any > ability to use qemu-trad as a device model. > > This is how XenServer managed to build qemu-trad externally while still > retaining libxl support: > > https://github.com/xenserver/xen-4.5.pg/blob/master/master/build-disable-qemu-trad.patch > > It would be nice if there was a --wtih-system-qemu-trad= option, but > that has been looked upon unfavourably by the maintainers. Thanks for feedback!! I think Raisin needs something like --with-system-qemu-trad=, so if Xen doesn't provide it, we'll have to carry a patch in Raisin to do it. Do you have a link to the discussion or previously rejected patch?