[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH 4/9] raisin: add a component to build qemu_traditional



On 15/04/15 16:44, Stefano Stabellini wrote:
> 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 <stefano.stabellini@xxxxxxxxxxxxx>
>>> ---
>>>  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?

I am not sure that there was ever a patch - it may have been a
discussion I had with ijc in person.

I would be +1 for a --with-system-qemu-trad= option to mirror the
--with-system-qemu, especially as I am now not the only advocate of one.

~Andrew

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.