Package: qemu Version: 0.8.0-2 Severity: wishlist Tags: patch New version, modified to apply after #356279 (qemu_0.8.0-2_build_outside_tree.patch). Also fixed a bug in postinst/prerm scripts.
-- Anderson Lizardo Embedded Linux Lab - 10LE Nokia Institute of Technology - INdT Manaus - Brazil
Changelog: * Add binfmt-support hooks, allowing "transparent" user emulation. Idea borrowed from qemu-binfmt-conf.sh. - Recommends binfmt-support. Index: qemu-0.8.0/debian/control =================================================================== --- qemu-0.8.0.orig/debian/control 2006-03-11 22:54:20.000000000 -0400 +++ qemu-0.8.0/debian/control 2006-03-11 22:54:44.000000000 -0400 @@ -14,7 +14,7 @@ Package: qemu Architecture: amd64 i386 powerpc alpha sparc arm s390 Depends: ${shlibs:Depends}, vgabios (>= 0.5a-1), bochsbios (>= 2.2.1-1), proll, openhackware -Recommends: debootstrap, sharutils +Recommends: debootstrap, sharutils, binfmt-support Suggests: sudo, dpkg-cross Description: fast processor emulator QEMU is a FAST! processor emulator: currently the package supports Index: qemu-0.8.0/debian/rules =================================================================== --- qemu-0.8.0.orig/debian/rules 2006-03-11 22:54:20.000000000 -0400 +++ qemu-0.8.0/debian/rules 2006-03-11 22:54:44.000000000 -0400 @@ -7,6 +7,8 @@ CC = gcc-3.4 # WARNING: Removing no-strict-aliasing will make qemu insta-segfault. CFLAGS = -Wall -g -fno-strict-aliasing +DEB_HOST_ARCH_CPU := $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU) + ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) CFLAGS += -O0 else @@ -81,6 +83,14 @@ install: build for i in $(qemu_bios_files); do \ rm -f $(build_dir)/pc-bios/$$i $(D)/usr/share/qemu/$$i; \ done + + # Install binfmt-support format files (except for DEB_HOST_ARCH_CPU) + install -m755 -d $(D)/usr/share/binfmts + -for i in `ls $(CURDIR)/debian/binfmts`; do \ + test "$(DEB_HOST_ARCH_CPU)" != "$$i" && \ + install -m644 $(CURDIR)/debian/binfmts/$$i/* \ + $(D)/usr/share/binfmts; \ + done binary-indep: # Nothing to do. Index: qemu-0.8.0/debian/qemu.prerm =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ qemu-0.8.0/debian/qemu.prerm 2006-03-11 22:54:44.000000000 -0400 @@ -0,0 +1,43 @@ +#! /bin/sh +# prerm script for qemu +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * <prerm> `remove' +# * <old-prerm> `upgrade' <new-version> +# * <new-prerm> `failed-upgrade' <old-version> +# * <conflictor's-prerm> `remove' `in-favour' <package> <new-version> +# * <deconfigured's-prerm> `deconfigure' `in-favour' +# <package-being-installed> <version> `removing' +# <conflicting-package> <version> +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + +case "$1" in + remove|upgrade|deconfigure) + if [ -x /usr/sbin/update-binfmts ]; then + for i in `cd /usr/share/binfmts; ls qemu-*`; do + qemu_bin=$i + if [ "$i" = "i486" ]; then qemu_bin=i386; fi + update-binfmts --package qemu --remove $i \ + /usr/bin/$qemu_bin || true + done + fi + ;; + failed-upgrade) + ;; + *) + echo "prerm called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 Index: qemu-0.8.0/debian/qemu.postinst =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ qemu-0.8.0/debian/qemu.postinst 2006-03-11 22:54:44.000000000 -0400 @@ -0,0 +1,44 @@ +#! /bin/sh +# postinst script for qemu +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * <postinst> `configure' <most-recently-configured-version> +# * <old-postinst> `abort-upgrade' <new version> +# * <conflictor's-postinst> `abort-remove' `in-favour' <package> +# <new-version> +# * <deconfigured's-postinst> `abort-deconfigure' `in-favour' +# <failed-install-package> <version> `removing' +# <conflicting-package> <version> +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package +# + +case "$1" in + configure) + if [ -x /usr/sbin/update-binfmts ]; then + for i in `cd /usr/share/binfmts; ls qemu-*`; do + update-binfmts --import $i || true + done + fi + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 Index: qemu-0.8.0/debian/binfmts/i386/qemu-i486 =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ qemu-0.8.0/debian/binfmts/i386/qemu-i486 2006-03-11 22:54:44.000000000 -0400 @@ -0,0 +1,4 @@ +package qemu +interpreter /usr/bin/qemu-i386 +magic \x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x06\x00 +mask \xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff Index: qemu-0.8.0/debian/binfmts/i386/qemu-i386 =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ qemu-0.8.0/debian/binfmts/i386/qemu-i386 2006-03-11 22:54:44.000000000 -0400 @@ -0,0 +1,4 @@ +package qemu +interpreter /usr/bin/qemu-i386 +magic \x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x03\x00 +mask \xff\xff\xff\xff\xff\xfe\xfe\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff Index: qemu-0.8.0/debian/binfmts/arm/qemu-armeb =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ qemu-0.8.0/debian/binfmts/arm/qemu-armeb 2006-03-11 22:54:44.000000000 -0400 @@ -0,0 +1,4 @@ +package qemu +interpreter /usr/bin/qemu-armeb +magic \x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28 +mask \xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff Index: qemu-0.8.0/debian/binfmts/arm/qemu-arm =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ qemu-0.8.0/debian/binfmts/arm/qemu-arm 2006-03-11 22:54:44.000000000 -0400 @@ -0,0 +1,4 @@ +package qemu +interpreter /usr/bin/qemu-arm +magic \x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00 +mask \xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff Index: qemu-0.8.0/debian/binfmts/sparc/qemu-sparc =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ qemu-0.8.0/debian/binfmts/sparc/qemu-sparc 2006-03-11 22:54:44.000000000 -0400 @@ -0,0 +1,4 @@ +package qemu +interpreter /usr/bin/qemu-sparc +magic \x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x02 +mask \xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff Index: qemu-0.8.0/debian/binfmts/powerpc/qemu-ppc =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ qemu-0.8.0/debian/binfmts/powerpc/qemu-ppc 2006-03-11 22:54:44.000000000 -0400 @@ -0,0 +1,4 @@ +package qemu +interpreter /usr/bin/qemu-ppc +magic \x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x14 +mask \xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff Index: qemu-0.8.0/debian/binfmts/mips/qemu-mipsel =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ qemu-0.8.0/debian/binfmts/mips/qemu-mipsel 2006-03-11 22:54:44.000000000 -0400 @@ -0,0 +1,4 @@ +package qemu +interpreter /usr/bin/qemu-mipsel +magic \x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08\x00 +mask \xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff Index: qemu-0.8.0/debian/binfmts/mips/qemu-mips =================================================================== --- /dev/null 1970-01-01 00:00:00.000000000 +0000 +++ qemu-0.8.0/debian/binfmts/mips/qemu-mips 2006-03-11 22:54:44.000000000 -0400 @@ -0,0 +1,4 @@ +package qemu +interpreter /usr/bin/qemu-mips +magic \x7fELF\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08 +mask \xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff