Source: qemu
Section: otherosfs
Priority: optional
:debian:Maintainer: Debian QEMU Team <pkg-qemu-devel@lists.alioth.debian.org>
:ubuntu:Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
:ubuntu:XSBC-Original-Maintainer: Debian QEMU Team <pkg-qemu-devel@lists.alioth.debian.org>
Uploaders: Michael Tokarev <mjt@tls.msk.ru>
Build-Depends: debhelper-compat (= 13),
 python3:any,
 python3-venv:any,
 python3:any (>> 3.11) | python3-tomli,
 meson (>> 1.5.0~), ninja-build,
 flex, bison,
# for :native suffix see #995622
 python3-sphinx:native, python3-sphinx-rtd-theme:native,
# python3-pycotap:native,
Build-Depends-Arch:
# In comments below we also specify (system-specific) arguments
# to qemu's configure script, -- optional features which depend
# on build-dependencies.
# always needed
 pkgconf, libglib2.0-dev, zlib1g-dev,
# target/hexagon/ builds a build-time (ie: native) tool using glib
 pkgconf:native, libglib2.0-dev:native,
# iasl (from acpica-tools) is used only in a single test these days, not for building
# acpica-tools,
# libcapstone is in universe in ubuntu
:debian:# --enable-capstone
:debian: libcapstone-dev,
# --enable-linux-aio	linux-any
 libaio-dev            [linux-any],
# libsndio is in universe in ubuntu
# --disable-sndio
# --audio-drv-list=pipewire,pa,alsa,jack,oss,sdl	:system-arch-linux:
 libjack-dev    [:system-arch-linux:],
 libpulse-dev   [:system-arch:],
 libasound2-dev [:system-arch-linux:],
 libpipewire-0.3-dev [:system-arch-linux:],
# for virtfs (now in libc6)
# --enable-attr
# --enable-bpf	 :system-arch-linux:
 libbpf-dev	[:system-arch-linux:],
# --enable-blkio	:system-arch-linux-64:
 libblkio-dev	       [:system-arch-linux-64:],
# --enable-brlapi	:system-arch:
 libbrlapi-dev         [:system-arch:],
# --enable-virtfs	:system-arch-linux:
# needed for virtfs
# --enable-cap-ng	:system-arch-linux:
 libcap-ng-dev         [:system-arch-linux:],
# --enable-curl
 libcurl4-gnutls-dev,
# --enable-fdt	 :system-arch:
 libfdt-dev	[:system-arch:],
# --enable-fuse		 linux-any
 libfuse3-dev		[linux-any],
# --enable-gnutls
 gnutls-dev,
# --enable-gtk --enable-vte	:system-arch:
 libgtk-3-dev    [:system-arch:],
 libvte-2.91-dev [:system-arch:],
# --enable-libiscsi
 libiscsi-dev,
# --enable-curses	:system-arch:
 libncurses-dev        [:system-arch:],
# --enable-virglrenderer	:system-arch-linux:
 libvirglrenderer-dev          [:system-arch-linux:],
# --enable-opengl	:system-arch-linux:
 libepoxy-dev [:system-arch-linux:],
 libdrm-dev   [:system-arch-linux:],
 libgbm-dev   [:system-arch-linux:],
# --enable-libnfs
 libnfs-dev,
# --enable-numa	:system-arch-linux:
 libnuma-dev   [:system-arch-linux:],
# --enable-smartcard	 :system-arch:
 libcacard-dev		[:system-arch:],
# --enable-pixman	 :system-arch:
 libpixman-1-dev	[:system-arch:],
# --enable-rbd		amd64 arm64 loong64 mips64el ppc64el riscv64 s390x
 librbd-dev            [amd64 arm64 loong64 mips64el ppc64el riscv64 s390x],
# gluster is 64bit-only: #1039604
# --enable-glusterfs	 :system-arch-linux-64:
 libglusterfs-dev	[:system-arch-linux-64:],
# --enable-vnc-sasl	 :system-arch:
 libsasl2-dev		[:system-arch:],
# --enable-sdl	:system-arch:
 libsdl2-dev [:system-arch:],
# --enable-seccomp	amd64 arm64 armel armhf i386 loong64 mips64el mipsel ppc64 ppc64el powerpc riscv64 s390x
 libseccomp-dev        [amd64 arm64 armel armhf i386 loong64 mips64el mipsel ppc64 ppc64el powerpc riscv64 s390x],
# --enable-slirp	 :system-arch:
 libslirp-dev		[:system-arch:],
# --enable-spice	 :spice-arch:
 libspice-server-dev	[:spice-arch:],
# --enable-rdma		linux-any
 librdmacm-dev [linux-any], libibverbs-dev [linux-any], libibumad-dev [linux-any],
# --enable-linux-io-uring	linux-any
 liburing-dev                  [linux-any],
# --enable-libusb	:system-arch-linux:
 libusb-1.0-0-dev      [:system-arch-linux:],
# --enable-usb-redir	:system-arch-linux:
 libusbredirparser-dev [:system-arch-linux:],
# --enable-libssh
 libssh-dev,
# --enable-zstd
 libzstd-dev,
# vde is debian-only since ubuntu/vde2 is in universe
:debian:# --enable-vde	 :system-arch:
:debian: libvdeplug-dev	[:system-arch:],
 libxen-dev [linux-amd64],
# --enable-nettle	 :system-arch:
 nettle-dev		[:system-arch:],
# other optional features we enable
# --enable-libudev
# needed for qga?
 libudev-dev [linux-any],
# --enable-vnc	 :system-arch:
# --enable-vnc-jpeg	:system-arch:
 libjpeg-dev	[:system-arch:],
# --enable-png	 :system-arch:
 libpng-dev	[:system-arch:],
# --enable-libpmem	amd64 arm64
 libpmem-dev           [amd64 arm64],
# --enable-kvm		:system-arch-linux:
# --enable-vhost-net	:system-arch-linux:	# is it really linux-specific?
##--enable-lzo todo, for (memory) dumps
##--enable-netmap todo bsd
##--enable-xen-pci-passthrough todo
## auth-pam - for auth for vnc&Co using PAM
#
# the testsuite:
# ipxe-qemu [:system-arch-linux:] <!nocheck>,
:debian: seabios (>> 1.16.3-1~) [:system-arch-linux:] <!nocheck>,
:debian: qemu-system-data (>> 1:9.0) [:system-arch-linux:] <!nocheck>,
#
# vdso: for linux-user, we need small arch-specific .so files to embed them
#       into linux-user for many architectures.
#    On debian, arch and indep parts are built separately, and cross-compilers
#    to build all vdsos aren't available on all architectures.  So we build a
#    tarball of them in indep build and place it in qemu-system-data.  When
#    building both arch+indep parts in one go, d/rules has magic to always
#    (re)build vdso files and use the result immediately.
#  pkg.qemu.use-upstream-vdso - always use upstream pre-built vdso files,
#    do not embed vdso files into qemu-system-data binary package
#  pkg.qemu.omit-vdso-build-dep - do not Build-Depend-Arch: qemu-system-data for
#    vdso (allows to build and use vdso files with single arch+indep build)
# Ubuntu builds both arch+indep parts (on amd64), so there this is irrelevant.
#    Effectively it always enables pkg.qemu.omit-vdso-build-dep build-profile.
# With each upstream, check if vdso code changed and bump the version:
:debian: qemu-system-data (>> 1:9.0.2+ds-2~) [:user-arch:] <!pkg.qemu.use-upstream-vdso !pkg.qemu.omit-vdso-build-dep>,
Build-Depends-Indep:
# x86_64 firmware
 gcc-x86-64-linux-gnu,
# compiler used to build i386 firmware
 gcc-i686-linux-gnu,
# pc-bios/*.dts => *.dtb (PPC firmware)
 device-tree-compiler,
 gcc-s390x-linux-gnu,
# qemu-palcode/palcode-clipper
 gcc-alpha-linux-gnu,
# u-boot code
 gcc-powerpc-linux-gnu,
# skiboot firmware, openbios
 gcc-powerpc64-linux-gnu,
# skiboot includes <openssl/something.h>
 libssl-dev,
# openbios
 gcc-sparc64-linux-gnu, fcode-utils, xsltproc,
# hppa-firmware (32 and 64 bit)
 gcc-hppa-linux-gnu, gcc-hppa64-linux-gnu,
 gcc-riscv64-linux-gnu,
# vbootrom/npcm7xx_bootrom
 gcc-arm-linux-gnueabi, libc6-dev-armel-cross,
# vdso (configure:probe_target_compiler() needs libc too):
 gcc-aarch64-linux-gnu <!pkg.qemu.use-upstream-vdso>, libc6-dev-arm64-cross <!pkg.qemu.use-upstream-vdso>,
 gcc-arm-linux-gnueabi <!pkg.qemu.use-upstream-vdso>, libc6-dev-armel-cross <!pkg.qemu.use-upstream-vdso>,
 gcc-hppa-linux-gnu <!pkg.qemu.use-upstream-vdso>, libc6-dev-hppa-cross <!pkg.qemu.use-upstream-vdso>,
 gcc-i686-linux-gnu <!pkg.qemu.use-upstream-vdso>, libc6-dev-i386-cross <!pkg.qemu.use-upstream-vdso>,
 gcc-loongarch64-linux-gnu <!pkg.qemu.use-upstream-vdso>, libc6-dev-loong64-cross <!pkg.qemu.use-upstream-vdso>,
 gcc-powerpc64-linux-gnu <!pkg.qemu.use-upstream-vdso>, libc6-dev-ppc64-cross <!pkg.qemu.use-upstream-vdso>,
 gcc-riscv64-linux-gnu <!pkg.qemu.use-upstream-vdso>, libc6-dev-riscv64-cross <!pkg.qemu.use-upstream-vdso>,
 gcc-s390x-linux-gnu <!pkg.qemu.use-upstream-vdso>, libc6-dev-s390x-cross <!pkg.qemu.use-upstream-vdso>,
 gcc-x86-64-linux-gnu <!pkg.qemu.use-upstream-vdso>,
Build-Conflicts: oss4-dev
Standards-Version: 4.6.2
Homepage: http://www.qemu.org/
Rules-Requires-Root: no
:debian:Vcs-Browser: https://salsa.debian.org/qemu-team/qemu
:debian:Vcs-Git: https://salsa.debian.org/qemu-team/qemu.git
:ubuntu:XS-Debian-Vcs-Browser: https://salsa.debian.org/qemu-team/qemu
:ubuntu:XS-Debian-Vcs-Git: https://salsa.debian.org/qemu-team/qemu.git
:ubuntu:Vcs-Browser: https://git.launchpad.net/ubuntu/+source/qemu
:ubuntu:Vcs-Git: https://git.launchpad.net/ubuntu/+source/qemu

Package: qemu-system
Architecture: :system-arch:
Multi-Arch: foreign
Build-Profiles: <!pkg.qemu.omit-system>
Depends: ${misc:Depends},
 qemu-system-arm,
 qemu-system-mips,
 qemu-system-ppc,
 qemu-system-riscv,
 qemu-system-s390x,
 qemu-system-sparc,
 qemu-system-x86,
 qemu-system-misc
Description: QEMU full system emulation binaries
 QEMU is a fast processor emulator: currently the package supports Alpha, ARM,
 CRIS, i386, LoongArch, M68k (ColdFire), MicroBlaze, MIPS, PowerPC, RISC-V,
 S390x, SH4, SPARC, x86-64, Xtensa and other emulations. By using dynamic
 translation it achieves reasonable speed while being easy to port on new host
 CPUs.
 .
 This metapackage provides the full system emulation binaries for all supported
 targets, by depending on all per-architecture system emulation packages which
 QEMU supports.

Package: qemu-block-extra
Architecture: :utils-arch:
Multi-Arch: no
Depends: ${misc:Depends}, ${shlibs:Depends},
# we need to ensure qemu-block-extra is upgraded with qemu-system-* or qemu-utils
 qemu-system-any (= ${binary:Version}) [:system-arch:] | qemu-utils (= ${binary:Version}),
Enhances: qemu-utils,
 qemu-system-arm,
 qemu-system-mips,
 qemu-system-ppc,
 qemu-system-riscv,
 qemu-system-s390x,
 qemu-system-sparc,
 qemu-system-x86,
 qemu-system-misc,
:debian:Provides: qemu-block-supplemental [amd64 arm64 ppc64el riscv64 s390x],
Description: extra block backend modules for qemu-system and qemu-utils
 QEMU is a fast processor emulator: currently the package supports Alpha, ARM,
 CRIS, i386, LoongArch, M68k (ColdFire), MicroBlaze, MIPS, PowerPC, RISC-V,
 S390x, SH4, SPARC, x86-64, Xtensa and other emulations. By using dynamic
 translation it achieves reasonable speed while being easy to port on new host
 CPUs.
 .
 This package provides extra block device backend modules for qemu-system
 emulation and qemu-img from qemu-utils package, which are rarely used and
 has extra dependencies.
:ubuntu:
:ubuntu:Package: qemu-block-supplemental
:ubuntu:Architecture: amd64 arm64 ppc64el riscv64 s390x
:ubuntu:Multi-Arch: no
:ubuntu:Depends: ${misc:Depends}, ${shlibs:Depends},
:ubuntu:# we need to ensure qemu-block-supplemental is upgraded with qemu-system-* or qemu-utils
:ubuntu: qemu-system-any (= ${binary:Version}) [amd64 arm64 armhf ppc64el riscv64 s390x] | qemu-utils (= ${binary:Version}),
:ubuntu:Enhances: qemu-utils,
:ubuntu: qemu-system-arm,
:ubuntu: qemu-system-mips,
:ubuntu: qemu-system-ppc,
:ubuntu: qemu-system-riscv,
:ubuntu: qemu-system-s390x,
:ubuntu: qemu-system-sparc,
:ubuntu: qemu-system-x86,
:ubuntu: qemu-system-misc,
:ubuntu:Breaks: qemu-block-extra (<< 1:8.2.0+ds-4ubuntu2~)
:ubuntu:Replaces: qemu-block-extra (<< 1:8.2.0+ds-4ubuntu2~)
:ubuntu:Description: supplemental block backend modules for qemu-system and qemu-utils
:ubuntu: QEMU is a fast processor emulator: currently the package supports Alpha, ARM,
:ubuntu: CRIS, i386, LoongArch, M68k (ColdFire), MicroBlaze, MIPS, PowerPC, RISC-V,
:ubuntu: S390x, SH4, SPARC, x86-64, Xtensa and other emulations. By using dynamic
:ubuntu: translation it achieves reasonable speed while being easy to port on new host
:ubuntu: CPUs.
:ubuntu: .
:ubuntu: This package provides supplemental block device backend modules for qemu-system
:ubuntu: emulation and qemu-img from qemu-utils package.
:ubuntu: .
:ubuntu: Currently, the following modules are shipped in this package:
:ubuntu:  block-glusterfs block-blkio

Package: qemu-system-data
Architecture: all
Multi-Arch: foreign
Conflicts: sgabios, qemu-skiboot, openbios-sparc, openbios-ppc, qemu-slof,
Replaces:  sgabios, openbios-sparc, openbios-ppc, qemu-slof,
 qemu-system-ppc (<< 1:6.1-4~),
 qemu-system-common (<< 1:8.2.2+ds-1~),
Breaks: qemu-system-ppc (<< 1:6.1-4~),
 qemu-system-common (<< 1:8.2.2+ds-1~),
# s390x-netboot dropped in 9.2, breaks qemu-system-s390x
:debian: qemu-system-misc (<< 1:9.1.1+ds-1~),
 qemu-system-s390x (<< 1:9.2.0~),
Provides: qemu-keymaps, sgabios, qemu-skiboot, openbios-sparc, openbios-ppc, qemu-slof,
Depends: ${misc:Depends}
Description: QEMU full system emulation (data files)
 This package provides architecture-neutral data files
 (such as keyboard definitions, icons) for system-mode
 QEMU emulation (qemu-system-*) packages.

Package: qemu-system-common
Architecture: :system-arch:
Multi-Arch: no
Build-Profiles: <!pkg.qemu.omit-system>
Breaks: libvirt-daemon (<< 7.2.0-1)
Depends: ${misc:Depends}, ${shlibs:Depends},
# to fix wrong acl for newly created device node on ubuntu:
:ubuntu: acl
Description: QEMU full system emulation binaries (common files)
 QEMU is a fast processor emulator: currently the package supports Alpha, ARM,
 CRIS, i386, LoongArch, M68k (ColdFire), MicroBlaze, MIPS, PowerPC, RISC-V,
 S390x, SH4, SPARC, x86-64, Xtensa and other emulations. By using dynamic
 translation it achieves reasonable speed while being easy to port on new host
 CPUs.
 .
 This package provides common files needed for target-specific
 full system emulation (qemu-system-*) packages.

Package: qemu-system-gui
Architecture: :system-arch:
#XXX M-A: same does not really work for now due to /usr/lib/qemu/vhost-user-gpu
#XXX we'll deal with this if some actual need arises,
#XXX by moving that binary back to q-s-common or packaging it separately
#Multi-Arch: same
Build-Profiles: <!pkg.qemu.omit-system>
Depends: ${misc:Depends}, ${shlibs:Depends},
# ui-* depends on ui-opengl
 qemu-system-modules-opengl (= ${binary:Version}),
# we need to ensure qemu-system-gui is upgraded with qemu-system-*
 qemu-system-any (= ${binary:Version}),
# libgl1 is dynamically loaded by sdl display code
 libgl1,
# we moved vhost-user-gpu files here from qemu-system-common at 6.1-4
Replaces: qemu-system-common (<< 1:6.1+dfsg-4~)
Description: QEMU full system emulation binaries (graphical display and audio modules)
 This package provides optional graphical guest display modules (currently GTK
 and SDL) and audio backend modules for full system emulation (qemu-system-*)
 packages.
 .
 This package is not a management/control/GUI interface for qemu, use something
 else (like virt-manager) for that.

Package: qemu-system-modules-spice
Architecture: :spice-arch:
Build-Profiles: <!pkg.qemu.omit-system>
Depends: ${misc:Depends}, ${shlibs:Depends},
# spice modules depends on ui-opengl
 qemu-system-modules-opengl (= ${binary:Version}),
# we need to ensure qemu-system-modules-spice is upgraded with qemu-system-*
 qemu-system-any (= ${binary:Version}),
Replaces: qemu-system-common (<< 1:8.1.0+ds-1~exp2~)
Breaks:   qemu-system-common (<< 1:8.1.0+ds-1~exp2~)
Description: QEMU full system emulation binaries (spice display modules)
 This package provides optional spice display (qxl and spice-app) and audio
 support modules for QEMU full system emulation (qemu-system-*) packages.

Package: qemu-system-modules-opengl
Architecture: :system-arch:
Build-Profiles: <!pkg.qemu.omit-system>
Depends: ${misc:Depends}, ${shlibs:Depends},
# we need to ensure qemu-system-modules-opengl is upgraded when qemu-system is upgraded
 qemu-system-any (= ${binary:Version}),
Replaces: qemu-system-common (<< 1:8.1.0+ds-1~exp2~), qemu-system-gui (<< 1:8.1.0+ds-1~exp2~)
Breaks:   qemu-system-common (<< 1:8.1.0+ds-1~exp2~), qemu-system-gui (<< 1:8.1.0+ds-1~exp2~)
Description: QEMU full system emulation binaries (OpenGL display modules)
 This package provides optional OpenGL display support modules for QEMU full
 system emulation (qemu-system-*) packages.  It also provides D-Bus display
 type.

Package: qemu-system-misc
Architecture: :system-arch:
Multi-Arch: foreign
Build-Profiles: <!pkg.qemu.omit-system>
Depends: ${shlibs:Depends}, ${misc:Depends},
 qemu-system-common (= ${binary:Version}),
 qemu-system-data (>> ${source:Upstream-Version}~),
# depends on qemu-system-riscv & -s390x since 9.1.1 for now to avoid breaking
# existing setups which used to get riscv&s390 binaries from -misc.
# Downgrade to Recommends for one release cycle once tests are fixed
 qemu-system-riscv,
:debian: qemu-system-s390x,
Recommends: qemu-utils,
# alpha uses vgabios
# alpha m68k sh4 uses bootroms
 seabios,
 ipxe-qemu,
 qemu-system-gui (= ${binary:Version}),
 qemu-system-modules-spice (= ${binary:Version}) [:spice-arch:],
 qemu-system-modules-opengl (= ${binary:Version}),
 qemu-block-extra (= ${binary:Version}),
Suggests: samba, vde2,
Provides: ${qemu:Provides}
Conflicts: ${qemu:Conflicts}
Description: QEMU full system emulation binaries (miscellaneous)
 QEMU is a fast processor emulator: currently the package supports Alpha, ARM,
 CRIS, i386, LoongArch, M68k (ColdFire), MicroBlaze, MIPS, PowerPC, RISC-V,
 S390x, SH4, SPARC, x86-64, Xtensa and other emulations. By using dynamic
 translation it achieves reasonable speed while being easy to port on new host
 CPUs.
 .
 This package provides the full system emulation binaries to emulate
 various other hardware which did not made into separate packages.
 Emulators for the following architectures are provided:
  ${qemu:archlist}.
 .
 In system emulation mode QEMU emulates a full system, including a processor
 and various peripherals.  It enables easier testing and debugging of system
 code.  It can also be used to provide virtual hosting of several virtual
 machines on a single server.

Package: qemu-system-arm
Architecture: :system-arch:
Multi-Arch: foreign
Build-Profiles: <!pkg.qemu.omit-system>
Depends: ${shlibs:Depends}, ${misc:Depends}, qemu-system-common (= ${binary:Version}), qemu-system-data (>> ${source:Upstream-Version}~),
Recommends: qemu-utils,
# aarch64 arm uses bootroms
 ipxe-qemu,
:ubuntu: ipxe-qemu-256k-compat-efi-roms,
# for now virtio-vga won't check arch and insist on vgabios-virtio.bin
 seabios,
 qemu-efi-aarch64, qemu-efi-arm,
 qemu-system-gui (= ${binary:Version}),
 qemu-system-modules-spice (= ${binary:Version}) [:spice-arch:],
 qemu-system-modules-opengl (= ${binary:Version}),
 qemu-block-extra (= ${binary:Version}),
Suggests: samba, vde2,
Provides: ${qemu:Provides}
Conflicts: ${qemu:Conflicts}
Description: QEMU full system emulation binaries (arm)
 QEMU is a fast processor emulator: currently the package supports
 ARM emulation. By using dynamic translation it achieves
 reasonable speed while being easy to port on new host CPUs.
 .
 This package provides the full system emulation binaries to emulate
 the following arm hardware: ${qemu:archlist}.
 .
 In system emulation mode QEMU emulates a full system, including a processor
 and various peripherals.  It enables easier testing and debugging of system
 code.  It can also be used to provide virtual hosting of several virtual
 machines on a single server.

Package: qemu-system-mips
Architecture: :system-arch:
Multi-Arch: foreign
Build-Profiles: <!pkg.qemu.omit-system>
Depends: ${shlibs:Depends}, ${misc:Depends}, qemu-system-common (= ${binary:Version}), qemu-system-data (>> ${source:Upstream-Version}~),
Recommends: qemu-utils,
# all mips targets uses vgabios and bootroms
 seabios,
 ipxe-qemu,
 qemu-system-gui (= ${binary:Version}),
 qemu-system-modules-spice (= ${binary:Version}) [:spice-arch:],
 qemu-system-modules-opengl (= ${binary:Version}),
 qemu-block-extra (= ${binary:Version}),
Suggests: samba, vde2,
Provides: ${qemu:Provides}
Conflicts: ${qemu:Conflicts}
Description: QEMU full system emulation binaries (mips)
 QEMU is a fast processor emulator: currently the package supports
 MIPS emulation. By using dynamic translation it achieves
 reasonable speed while being easy to port on new host CPUs.
 .
 This package provides the full system emulation binaries to emulate
 the following mips hardware: ${qemu:archlist}.
 .
 In system emulation mode QEMU emulates a full system, including a processor
 and various peripherals.  It enables easier testing and debugging of system
 code.  It can also be used to provide virtual hosting of several virtual
 machines on a single server.

Package: qemu-system-ppc
Architecture: :system-arch:
Multi-Arch: foreign
Build-Profiles: <!pkg.qemu.omit-system>
Depends: ${shlibs:Depends}, ${misc:Depends}, qemu-system-common (= ${binary:Version}), qemu-system-data (>> ${source:Upstream-Version}~),
Recommends: qemu-utils,
:ubuntu: ipxe-qemu-256k-compat-efi-roms,
# ppc targets use vgabios-stdvga and bootroms
 seabios,
 ipxe-qemu,
 qemu-system-gui (= ${binary:Version}),
 qemu-system-modules-spice (= ${binary:Version}) [:spice-arch:],
 qemu-system-modules-opengl (= ${binary:Version}),
 qemu-block-extra (= ${binary:Version}),
Suggests: samba, vde2,
Provides: ${qemu:Provides}
Conflicts: ${qemu:Conflicts}
Description: QEMU full system emulation binaries (ppc)
 QEMU is a fast processor emulator: currently the package supports
 PowerPC emulation. By using dynamic translation it achieves
 reasonable speed while being easy to port on new host CPUs.
 .
 This package provides the full system emulation binaries to emulate
 the following PowerPC hardware: ${qemu:archlist}.
 .
 In system emulation mode QEMU emulates a full system, including a processor
 and various peripherals.  It enables easier testing and debugging of system
 code.  It can also be used to provide virtual hosting of several virtual
 machines on a single server.

Package: qemu-system-riscv
Architecture: :system-arch:
Multi-Arch: foreign
Build-Profiles: <!pkg.qemu.omit-system>
Depends: ${shlibs:Depends}, ${misc:Depends},
 qemu-system-common (= ${binary:Version}),
 qemu-system-data (>> ${source:Upstream-Version}~),
 opensbi (>> 1.5.1-1~),
Recommends: qemu-utils,
 ipxe-qemu,
Breaks:   qemu-system-data (<< 1:9.1.0+ds-4~), qemu-system-misc (<< 1:9.1.0+ds-9~)
Replaces: qemu-system-data (<< 1:9.1.0+ds-4~), qemu-system-misc (<< 1:9.1.0+ds-9~)
Suggests: samba, vde2,
Provides: ${qemu:Provides}
Conflicts: ${qemu:Conflicts}
Description: QEMU full system emulation binaries (riscv)
 QEMU is a fast processor emulator: currently the package supports
 riscv emulation. By using dynamic translation it achieves
 reasonable speed while being easy to port on new host CPUs.
 .
 This package provides the full system emulation binaries to emulate
 the following riscv hardware: ${qemu:archlist}.

Package: qemu-system-s390x
Architecture: :system-arch:
Multi-Arch: foreign
Build-Profiles: <!pkg.qemu.omit-system>
Depends: ${shlibs:Depends}, ${misc:Depends}, qemu-system-common (= ${binary:Version}), qemu-system-data (>> ${source:Upstream-Version}~),
Recommends: qemu-utils,
 qemu-system-gui (= ${binary:Version}),
 qemu-system-modules-spice (= ${binary:Version}) [:spice-arch:],
 qemu-system-modules-opengl (= ${binary:Version}),
 qemu-block-extra (= ${binary:Version}),
:debian:Breaks:   qemu-system-misc (<< 1:9.1.0+ds-9~)
:debian:Replaces: qemu-system-misc (<< 1:9.1.0+ds-9~)
Provides: ${qemu:Provides}
Conflicts: ${qemu:Conflicts}
Description: QEMU full system emulation binaries (s390x)
 QEMU is a fast processor emulator: currently the package supports
 s390x emulation. By using dynamic translation it achieves reasonable
 speed while being easy to port on new host CPUs.
 .
 This package provides the full system emulation binaries to emulate
 the following s390x hardware: ${qemu:archlist}.
 .
 In system emulation mode QEMU emulates a full system, including a processor
 and various peripherals.  It enables easier testing and debugging of system
 code.  It can also be used to provide virtual hosting of several virtual
 machines on a single server.

Package: qemu-system-sparc
Architecture: :system-arch:
Multi-Arch: foreign
Build-Profiles: <!pkg.qemu.omit-system>
Depends: ${shlibs:Depends}, ${misc:Depends}, qemu-system-common (= ${binary:Version}), qemu-system-data (>> ${source:Upstream-Version}~),
Recommends: qemu-utils,
# sparc64 uses vgabios-stdvga and bootroms
 seabios,
 ipxe-qemu,
 qemu-system-gui (= ${binary:Version}),
 qemu-system-modules-spice (= ${binary:Version}) [:spice-arch:],
 qemu-system-modules-opengl (= ${binary:Version}),
 qemu-block-extra (= ${binary:Version}),
Suggests: samba, vde2,
Provides: ${qemu:Provides}
Conflicts: ${qemu:Conflicts}
Description: QEMU full system emulation binaries (sparc)
 QEMU is a fast processor emulator: currently the package supports
 SPARC emulation. By using dynamic translation it achieves
 reasonable speed while being easy to port on new host CPUs.
 .
 This package provides the full system emulation binaries to emulate
 the following sparc hardware: ${qemu:archlist}.
 .
 In system emulation mode QEMU emulates a full system, including a processor
 and various peripherals.  It enables easier testing and debugging of system
 code.  It can also be used to provide virtual hosting of several virtual
 machines on a single server.

:ubuntu:# xen support generally is disabled on ubuntu, for a while we used
:ubuntu:# an extra build with xen enabled. In the meantime Debian followed that
:ubuntu:# approach but with a different name, so add a transitional until
:ubuntu:# after 24.04
:ubuntu:Package: qemu-system-x86-xen
:ubuntu:Architecture: amd64
:ubuntu:Multi-Arch: foreign
:ubuntu:Section: oldlibs
:ubuntu:Depends: qemu-system-xen (>= 1:7.0+dfsg-7ubuntu1), ${misc:Depends}
:ubuntu:Description: QEMU full system emulation binaries (x86)
:ubuntu: The former qemu-system-x86-xen binaries are now in qemu-system-xen.
:ubuntu: .
:ubuntu: This is a transitional package. You can safely remove it.

Package: qemu-system-x86
Architecture: :system-arch:
Multi-Arch: foreign
Build-Profiles: <!pkg.qemu.omit-system>
Depends: ${shlibs:Depends}, ${misc:Depends}, qemu-system-common (= ${binary:Version}), qemu-system-data (>> ${source:Upstream-Version}~),
 seabios (>> 1.16.3-1~),
 ipxe-qemu,
Recommends: qemu-utils,
:ubuntu: ipxe-qemu-256k-compat-efi-roms,
 ovmf,
 qemu-system-gui (= ${binary:Version}),
 qemu-system-modules-spice (= ${binary:Version}) [:spice-arch:],
 qemu-system-modules-opengl (= ${binary:Version}),
 qemu-block-extra (= ${binary:Version}),
:ubuntu: cpu-checker,
Suggests: samba, vde2,
Provides: ${qemu:Provides}
Conflicts: ${qemu:Conflicts}
Description: QEMU full system emulation binaries (x86)
 QEMU is a fast processor emulator: currently the package supports
 i386 and x86-64 emulation. By using dynamic translation it achieves
 reasonable speed while being easy to port on new host CPUs.
 .
 This package provides the full system emulation binaries to emulate
 the following x86 hardware: ${qemu:archlist}.
 .
 In system emulation mode QEMU emulates a full system, including a processor
 and various peripherals.  It enables easier testing and debugging of system
 code.  It can also be used to provide virtual hosting of several virtual
 machines on a single server.
 .
 On x86 host hardware this package also enables KVM kernel virtual machine
 usage on systems which supports it.

Package: qemu-system-xen
Architecture: amd64
Multi-Arch: no
Build-Profiles: <!pkg.qemu.omit-system-xen>
# do we really need qemu-system-data? keymaps only?
Depends: ${shlibs:Depends}, ${misc:Depends}, qemu-system-data (>> ${source:Upstream-Version}~),
 seabios
Recommends: qemu-utils,
 ovmf,
:ubuntu:# For the transition from the former qemu-system-x86-xen name
:ubuntu:Breaks: qemu-system-x86-xen (<<1:7.0+dfsg-7ubuntu1)
:ubuntu:Replaces: qemu-system-x86-xen (<<1:7.0+dfsg-7ubuntu1)
:ubuntu:Provides: qemu-system-x86-xen
Description: QEMU full system emulation (Xen helper package)
 This package provides the i386 system emulation binary to work
 together with the Xen hypervisor for some types of DomUs.
 This package is not useful by its own.

Package: qemu-user
Architecture: :user-arch:
Multi-Arch: foreign
Static-Built-Using: ${built-using}
Build-Profiles: <!pkg.qemu.omit-user>
Depends: ${misc:Depends}
Breaks:   qemu-user-static (<< 1:9.1.0)
Replaces: qemu-user-static (<< 1:9.1.0)
Recommends: qemu-user-binfmt
Description: QEMU user mode emulation (static binaries)
 QEMU is a fast processor emulator: currently the package supports Alpha, ARM,
 CRIS, i386, LoongArch, M68k (ColdFire), MicroBlaze, MIPS, PowerPC, RISC-V,
 S390x, SH4, SPARC, x86-64, Xtensa and other emulations. By using dynamic
 translation it achieves reasonable speed while being easy to port on new host
 CPUs.
 .
 This package provides statically linked user mode emulation binaries.
 In user mode QEMU can launch Linux processes compiled for one CPU
 on another CPU.
 .
 If qemu-user-binfmt package is also installed, it will register binary
 format handlers from this qemu-user package with the kernel automatically
 so it will be possible to run foreign binaries directly.  Without
 qemu-user-binfmt, it is possible to register certain binfmt(s) by using:
     cat /usr/share/qemu/binfmt.d/qemu-ARCH.conf \
       > /proc/sys/fs/binfmt_misc/register

# remove this package in favour of qemu-user-binfmt in the future
Package: qemu-user-static
Architecture: :user-arch:
Multi-Arch: foreign
Build-Profiles: <!pkg.qemu.omit-user>
Depends: ${misc:Depends},
 qemu-user (>= ${binary:Version}), qemu-user-binfmt (>= ${binary:Version})
Section: oldlibs
Description: QEMU user mode emulation (compat/transitional package)
 In the past, this package provided statically-built qemu user-mode emulation
 binaries. Now this functionality is provided by qemu-user package, and this
 package just to help migration to qemu-user.
 .
 This package provides old/compatibility symlinks from qemu-user-static binaries
 pointing to corresponding qemu-user binaries, and old qemu-debootstrap script.
 Neither of these should be used in practice.
 .
 Please remove this package once you ensure nothing is using the old interfaces.

Package: qemu-user-binfmt
Architecture: :user-arch:
Multi-Arch: foreign
Build-Profiles: <!pkg.qemu.omit-user>
Depends: ${misc:Depends}, qemu-user (= ${binary:Version})
Breaks:   qemu-user-static (<< 1:9.1.0)
Replaces: qemu-user-static (<< 1:9.1.0)
# Recommend systemd for binfmt-misc registration
Recommends: systemd
# When qemu-user-static is removed, this package should provide it,
# since the old user-static provided automatic binfmt registration
#Provides: qemu-user-static
Description: QEMU user mode binfmt registration for qemu-user
 QEMU is a fast processor emulator: currently the package supports Alpha, ARM,
 CRIS, i386, LoongArch, M68k (ColdFire), MicroBlaze, MIPS, PowerPC, RISC-V,
 S390x, SH4, SPARC, x86-64, Xtensa and other emulations. By using dynamic
 translation it achieves reasonable speed while being easy to port on new host
 CPUs.
 .
 This package provides binfmt support registration for the user-mode emulation
 binaries from qemu-user.  This package does not contain additional binaries,
 just (sym)links to binfmt registration data in /usr/lib/binfmt.d/ so it is
 picked up automatically by, eg, systemd.  Actual files are provided by
 qemu-user package.

Package: qemu-utils
Architecture: :utils-arch:
Multi-Arch: foreign
Depends: ${shlibs:Depends}, ${misc:Depends},
Recommends:
 qemu-block-extra (= ${binary:Version}),
Replaces:
# qemu-storage-daemon and qemu-block-driver.7 has been moved from q-s-c.
 qemu-system-common (<< 1:8.0+dfsg-5~),
Breaks:
 qemu-system-common (<< 1:8.0+dfsg-5~),
Description: QEMU utilities
 QEMU is a fast processor emulator: currently the package supports Alpha, ARM,
 CRIS, i386, LoongArch, M68k (ColdFire), MicroBlaze, MIPS, PowerPC, RISC-V,
 S390x, SH4, SPARC, x86-64, Xtensa and other emulations. By using dynamic
 translation it achieves reasonable speed while being easy to port on new host
 CPUs.
 .
 This package provides QEMU related utilities:
  * qemu-img: QEMU disk image utility
  * qemu-io:  QEMU disk exerciser
  * qemu-nbd: QEMU disk network block device server

Package: qemu-guest-agent
Architecture: linux-any
Multi-Arch: foreign
Depends: ${shlibs:Depends}, ${misc:Depends}
Pre-Depends: ${misc:Pre-Depends}
Description: Guest-side qemu-system agent
 QEMU is a fast processor emulator: currently the package supports Alpha, ARM,
 CRIS, i386, LoongArch, M68k (ColdFire), MicroBlaze, MIPS, PowerPC, RISC-V,
 S390x, SH4, SPARC, x86-64, Xtensa and other emulations. By using dynamic
 translation it achieves reasonable speed while being easy to port on new host
 CPUs.
 .
 This package provides a daemon (agent) to run inside qemu-system
 guests (full system emulation).  It communicates with the host using
 a virtio-serial channel org.qemu.guest_agent.0, and allows one to perform
 some functions in the guest from the host, including:
  - querying and setting guest system time
  - performing guest filesystem sync operation
  - initiating guest shutdown or suspend to ram
  - accessing guest files
  - freezing/thawing guest filesystem operations
  - others.
 .
 Install this package on a system which is running as guest inside
 qemu virtual machine.  It is not used on the host.

#Package: qemu-system-for-host
## This is actually all architectures for which qemu-system (softmmu) target is implemented
#Architecture: any
#Multi-Arch: same
#Depends: ${qemu:for-host} (=${binary:Version})
#Description: QEMU full system emulation (dependency-only package for the host architecture)
# This package pulls one of qemu-system-* subpackages which contains
# qemu-system-${}{DEB_HOST_ARCH_CPU} binary specific for the host
# architecture. This one depends on ${qemu:for-host}.
#
