Comment 38 for bug 723871

Revision history for this message
Boris Derzhavets (bderzhavets) wrote :

Uncompress regular Natty qemu-kvm package :-

qemu-kvm_0.14.0+noroms-0ubuntu4.diff.gz
qemu-kvm_0.14.0+noroms-0ubuntu4.dsc
qemu-kvm_0.14.0+noroms.orig.tar.gz

# dpkg-source -x qemu-kvm_0.14.0+noroms-0ubuntu4.dsc
# cd qemu-kvm_0.14.0+noroms-0ubuntu4

Edit debian/rules and comment following line ( per Serge Hallyn)

# $(MAKE) -f debian/rules unpatch

to get patching to work !!

That's a reason why hack "spice-qxl-locking-fix-for-qemu-kvm.patch" didn't work originally.

Change ./configure part of debian/rules adding "--enable-spice" :-

config-host.mak: $(QUILT_STAMPFN)
        dh_testdir
        ./configure \
            --target-list="x86_64-softmmu i386-softmmu x86_64-linux-user i386-linux-user" \
            --prefix=/usr \
            --interp-prefix=/etc/qemu-binfmt/%M \
            --disable-blobs \
            --disable-strip \
            --enable-spice \
            $(conf_arch)
Save

Edit debian/patches/series:-

larger_default_ram_size.patch
Detect-and-use-GCC-atomic-builtins-for-locking.patch
# spice-qxl-locking-fix-for-qemu-kvm.patch
0001-qxl-spice-display-move-pipe-to-ssd.patch
0002-qxl-implement-get_command-in-vga-mode-without-locks.patch
0003-qxl-spice-remove-qemu_mutex_-un-lock_iothread-around.patch
0004-hw-qxl-render-drop-cursor-locks-replace-with-pipe.patch

Save and copy required patches to debian/patches.

Edit debian/control like in SPICE2 PPA:-

Build-Depends: bcc,
               bzip2,
               debhelper (>= 7),
               device-tree-compiler [powerpc],
               iasl,
               libaio-dev,
               libasound2-dev,
               libcelt051-dev,
               libcurl4-gnutls-dev,
               libgnutls-dev,
               libncurses5-dev,
               libpci-dev,
               libpixman-1-dev,
               libpulse-dev,
               libsasl2-dev,
               libsdl1.2-dev (>= 1.2.14),
               libssl-dev,
               libx11-dev,
               nasm,
               perl,
               pkg-config,
               quilt (>= 0.40),
               libspice-server-dev,
               spice-protocol-dev,
               sysv-rc (>= 2.86.ds1-14.1ubuntu2),
               texi2html,
               texinfo,
               uuid-dev,
               zlib1g-dev
Save.

# touch -f debian/chagelog
# cd ..
# dpkg-buildpackage -rfakeroot -b -us -uc
# cd ..

Remove regular qemu-kvm package via Synaptic Manager
Install been built just now :-

root@boris-System-P5Q3:~/QEMU14# dpkg -i ./qemu_0.14.0+noroms-0ubuntu4_amd64.deb \
> qemu-common_0.14.0+noroms-0ubuntu4_all.deb

root@boris-System-P5Q3:~/QEMU14# ls -l /usr/bin/kvm*
lrwxrwxrwx 1 root root 18 2011-05-06 15:24 /usr/bin/kvm -> qemu-system-x86_64
lrwxrwxrwx 1 root root 8 2011-05-06 15:24 /usr/bin/kvm-img -> qemu-img
lrwxrwxrwx 1 root root 8 2011-05-06 15:24 /usr/bin/kvm-nbd -> qemu-nbd
-rwxr-xr-x 1 root root 11792 2011-02-22 16:34 /usr/bin/kvm_stat

root@boris-System-P5Q3:~/QEMU14# ls -l /usr/bin/qemu*
-rwxr-xr-x 1 root root 3520568 2011-05-06 15:08 /usr/bin/qemu
-rwxr-xr-x 1 root root 2014976 2011-05-06 15:08 /usr/bin/qemu-i386
-rwxr-xr-x 1 root root 270 2011-05-06 14:04 /usr/bin/qemu-ifdown
-rwxr-xr-x 1 root root 138 2011-02-22 16:34 /usr/bin/qemu-ifup
-rwxr-xr-x 1 root root 350640 2011-05-06 15:08 /usr/bin/qemu-img
-rwxr-xr-x 1 root root 362928 2011-05-06 15:08 /usr/bin/qemu-io
-rwxr-xr-x 1 root root 338384 2011-05-06 15:08 /usr/bin/qemu-nbd
lrwxrwxrwx 1 root root 4 2011-05-06 15:24 /usr/bin/qemu-system-i386 -> qemu
-rwxr-xr-x 1 root root 3590968 2011-05-06 15:08 /usr/bin/qemu-system-x86_64
-rwxr-xr-x 1 root root 2055128 2011-05-06 15:08 /usr/bin/qemu-x86_64

Done.