db-move: moved seahorse from [testing] to [extra] (x86_64)
[arch-packages.git] / qemu / repos / extra-x86_64 / PKGBUILD
blob49f9e87dc711e9f1b11e9940ce9e74288538325a
1 # Maintainer: David Runge <dvzrv@archlinux.org>
2 # Contributor: Tobias Powalowski <tpowa@archlinux.org>
3 # Contributor: Sébastien "Seblu" Luttringer <seblu@seblu.net>
5 pkgbase=qemu
6 pkgname=(
7   qemu-common
8   qemu-audio-{alsa,dbus,jack,oss,pa,sdl,spice}
9   qemu-block-{curl,dmg,gluster,iscsi,nfs,ssh}
10   qemu-chardev-{baum,spice}
11   qemu-docs
12   qemu-guest-agent
13   qemu-hw-display-{qxl,virtio-{gpu{,-{gl,pci,pci-gl}},vga{,-gl}}}
14   qemu-hw-s390x-virtio-gpu-ccw
15   qemu-hw-usb-{host,redirect,smartcard}
16   qemu-img
17   qemu-pr-helper
18   qemu-system-{aarch64,alpha,arm,avr,cris,hppa,loongarch64,m68k,microblaze,mips,nios2,or1k,ppc,riscv,rx,s390x,sh4,sparc,tricore,x86,xtensa}
19   qemu-system-{alpha,arm,hppa,microblaze,ppc,riscv,s390x,sparc,x86}-firmware
20   qemu-tests
21   qemu-tools
22   qemu-ui-{curses,dbus,egl-headless,gtk,opengl,sdl,spice-{app,core}}
23   qemu-user{,-static}{,-binfmt}
24   qemu-vhost-user-gpu
25   qemu-{base,desktop,emulators-full,full}
27 pkgver=8.0.0
28 pkgrel=1
29 pkgdesc="A generic and open source machine emulator and virtualizer"
30 arch=(x86_64)
31 url="https://www.qemu.org/"
32 license=(GPL2 LGPL2.1)
33 # TODO: consider providing rdma-core
34 # TODO: consider providing lzfse
35 # TODO: package systemtap
36 # TODO: package openbios for qemu-system-{ppc,sparc}
37 # TODO: package /usr/share/qemu/{efi,pxe}-* for qemu (ipxe)
38 # TODO: package /usr/share/qemu/slof.bin for qemu-system-ppc (slof)
39 makedepends=(
40   alsa-lib
41   brltty
42   bzip2
43   cairo
44   capstone
45   curl
46   dtc
47   fuse3
48   gcc-libs
49   gdk-pixbuf2
50   glib2
51   glusterfs
52   gnutls
53   gtk3
54   jack
55   libaio
56   libbpf
57   libcacard
58   libcap-ng
59   libepoxy
60   libiscsi
61   libnfs
62   libpng
63   libpulse
64   libsasl
65   libseccomp
66   libslirp
67   libssh
68   liburing
69   libusb
70   libx11
71   libxml2
72   libxkbcommon
73   lzo
74   mesa
75   meson
76   multipath-tools
77   ncurses
78   ndctl
79   numactl
80   pam
81   pcre2
82   python
83   python-sphinx
84   python-sphinx_rtd_theme
85   sdl2
86   sdl2_image
87   snappy
88   spice-protocol
89   spice
90   systemd
91   usbredir
92   vde2
93   virglrenderer
94   vte3
95   zlib
96   zstd
98 source=(
99   https://download.qemu.org/qemu-$pkgver.tar.xz{,.sig}
100   bridge.conf
101   qemu-ga.conf
102   qemu-sysusers.conf
103   65-kvm.rules
104   99-qemu-guest-agent.rules
106 sha512sums=('1f31d1e653dec2d35f1b7a5468ee3f471553b48eca8c8afafffcf9243c6b2260e78a5b73da3fe567f9b85d4133573eebd397747b3aec501fb24076263eb07b27'
107             'SKIP'
108             '7b412ffa5dcda47b0a4ec9e2c5e5e1d9eaaaf0a087b7ea3ead3e706ba4c9cafb919beadd088a0299b6f7aab753b81a5eafb545b4842ee5f26646d16544dd02a7'
109             '6e838773d63ae0ffdffe2b891bf611d8f5f3c67a9bc4cbbedf8363c150c2c9971c8e44d92270bc581af40eb0ece02192760bcdd6aee229fff55635f3a4825afa'
110             '985c2c7a6b5217c87a15b45368089ee91b2f9027b070f9eafa448a18b27ae0d9edd964d52e134b9c1f4aeef4d6aae88afd3f454551ca898affef7f9d28b99b8f'
111             'bdf05f99407491e27a03aaf845b7cc8acfa2e0e59968236f10ffc905e5e3d5e8569df496fd71c887da2b5b8d1902494520c7da2d3a8258f7fd93a881dd610c99'
112             '93b905046fcea8a0a89513b9259c222494ab3b91319dde23baebcb40dc17376a56661b159b99785d6e816831974a0f3cbd7b2f7d89e5fc3c258f88f4492f3839')
113 b2sums=('9b54aae10fe09691a26e68374723ded5fdda6409673b4de9461a25ee060cfd03968a16ddeadc21d48b9262e53aa6d4e5eb645376969f97c65807fad19607b04f'
114         'SKIP'
115         'b1eca364aa60f130ff5e649f5d004d3fcb75356d3421a4542efdfc410d39b40d9434d15e1dd7bbdbd315cb72b5290d3ea5f77f9c41961a5601cd28ef7bbe72e8'
116         '2102e4a34e11e406e9606c97e026e7b92e887e296a7f77b9cede1b37119d0df33735f3588628167b2b8e32244c196c491bfab623e2caddac9014d445aa2a6d98'
117         '69177b962d2fda20cafdbc6226fd017b5ca5a0f69f866d055dc1c744b7b2955059f47c693cfb5b4c863ec159569fdabd4327ab4b8a95566a68cd8ce38e339c7a'
118         '3559fe9c4f744194939770047a0a02d07ff791c845a80726d0bc7b8c4801ed5f11150e7d5adab813844b3dab1cf38c3a5a87fb6efbb8fc9dccdda9fa56409ed8'
119         'a9a2bdfeeb44eb86cbe88ac7c65f72800bdb2fd5cecb02f3a258cf9470b52832180aab43c89d481f7fd4d067342a9a27dd6c8a94d625b95d6e2b912e47d274e7')
120 validpgpkeys=('CEACC9E15534EBABB82D3FA03353C9CEF108B584') # Michael Roth <flukshun@gmail.com>
122 _qemu_system_deps=(
123   capstone
124   dtc
125   fuse3
126   gcc-libs
127   glibc
128   glib2 libgio-2.0.so libglib-2.0.so libgmodule-2.0.so
129   gnutls
130   keyutils
131   libaio
132   libelf
133   libbpf libbpf.so
134   libjpeg-turbo libjpeg.so
135   libpng
136   libsasl
137   libseccomp libseccomp.so
138   libslirp libslirp.so
139   liburing liburing.so
140   lzo
141   ndctl
142   numactl libnuma.so
143   pam libpam.so
144   pixman libpixman-1.so
145   qemu-common=$pkgver-$pkgrel
146   snappy
147   vde2
148   zlib
149   zstd libzstd.so
152 _qemu_common_optdepends=(
153   'qemu-user-static: for static user mode emulation of QEMU targets'
154   'samba: for SMB/CIFS server support'
157 _qemu_desktop_optdepends=(
158   "${_qemu_common_optdepends[@]}"
159   'qemu-block-gluster: for Gluster block driver'
160   'qemu-block-iscsi: for iSCSI block driver'
161   'qemu-chardev-baum: for Baum chardev driver'
162   'qemu-docs: for documentation'
163   'qemu-system-aarch64: for AARCH64 system emulator'
164   'qemu-system-alpha: for Alpha system emulator'
165   'qemu-system-arm: for ARM system emulator'
166   'qemu-system-avr: for AVR system emulator'
167   'qemu-system-cris: for CRIS system emulator'
168   'qemu-system-hppa: for HPPA system emulator'
169   'qemu-system-m68k: for ColdFire (m68k) system emulator'
170   'qemu-system-microblaze: for Microblaze system emulator'
171   'qemu-system-mips: for MIPS system emulator'
172   'qemu-system-nios2: for nios2 system emulator'
173   'qemu-system-or1k: for OpenRisc32 system emulator'
174   'qemu-system-ppc: for PPC system emulator'
175   'qemu-system-riscv: for RISC-V system emulator'
176   'qemu-system-rx: for RX system emulator'
177   'qemu-system-s390x: for S390 system emulator'
178   'qemu-system-sh4: for SH4 system emulator'
179   'qemu-system-sparc: for SPARC system emulator'
180   'qemu-system-tricore: for tricore system emulator'
181   'qemu-system-xtensa: for Xtensa system emulator'
182   'qemu-tests: for QEMU tests'
183   'qemu-user: for user mode emulation of QEMU targets'
184   'qemu-user-static: for static user mode emulation of QEMU targets'
185   'samba: for SMB/CIFS server support'
188 _qemu_base_optdepends=(
189   "${_qemu_desktop_optdepends[@]}"
190   'qemu-audio-alsa: for ALSA audio driver'
191   'qemu-audio-dbus: for D-Bus audio driver'
192   'qemu-audio-jack: for JACK audio driver'
193   'qemu-audio-oss: for OSS audio driver'
194   'qemu-audio-pa: for PulseAudio audio driver'
195   'qemu-audio-sdl: for SDL audio driver'
196   'qemu-ui-dbus: for D-Bus UI driver'
197   'qemu-ui-egl-headless: for EGL headless UI driver'
198   'qemu-ui-gtk: for GTK UI driver'
199   'qemu-ui-opengl: for OpenGL UI driver'
200   'qemu-ui-sdl: for SDL UI driver'
201   'qemu-user: for user mode emulation of QEMU targets'
202   'qemu-vhost-user-gpu: for vhost-user-gpu display device'
205 _pick() {
206   local p="$1" f d; shift
207   for f; do
208     d="$srcdir/$p/${f#$pkgdir/}"
209     mkdir -p "$(dirname "$d")"
210     mv "$f" "$d"
211     rmdir -p --ignore-fail-on-non-empty "$(dirname "$f")"
212   done
215 prepare() {
217   # extract licenses for TCG
218   sed -n '1,23p' $pkgbase-$pkgver/tcg/tcg-internal.h > tcg.LICENSE.MIT
219   sed -n '1,23p' $pkgbase-$pkgver/tcg/arm/tcg-target.c.inc > tcg-arm.LICENSE.MIT
220   sed -n '1,23p' $pkgbase-$pkgver/tcg/tci/tcg-target.h > tci.LICENSE.MIT
222   # install qemu-pr-helper.socket to sockets.target
223   sed -e 's/multi-user.target/sockets.target/g' -i $pkgbase-$pkgver/contrib/systemd/qemu-pr-helper.socket
225   # create build dir
226   mkdir -vp build
227   mkdir -vp build-static
230 build() {
231   local common_configure_options=(
232     --prefix=/usr
233     --sysconfdir=/etc
234     --libexecdir=/usr/lib/qemu
235     --localstatedir=/var
236     --docdir=/usr/share/doc/qemu
237   )
238   local configure_options=(
239     "${common_configure_options[@]}"
240     --enable-modules
241     --enable-sdl
242     --enable-slirp
243     --enable-tpm
244     --smbd=/usr/bin/smbd
245     --with-coroutine=ucontext
246   )
247   local configure_static_options=(
248     "${common_configure_options[@]}"
249     --enable-attr
250     --enable-linux-user
251     --enable-tcg
252     --disable-bpf
253     --disable-bsd-user
254     --disable-capstone
255     --disable-docs
256     --disable-fdt
257     --disable-gcrypt
258     --disable-glusterfs
259     --disable-gnutls
260     --disable-gtk
261     --disable-install-blobs
262     --disable-kvm
263     --disable-libiscsi
264     --disable-libnfs
265     --disable-libssh
266     --disable-linux-io-uring
267     --disable-nettle
268     --disable-opengl
269     --disable-qom-cast-debug
270     --disable-sdl
271     --disable-system
272     --disable-tools
273     --disable-tpm
274     --disable-vde
275     --disable-vhost-crypto
276     --disable-vhost-kernel
277     --disable-vhost-net
278     --disable-vhost-user
279     --disable-vnc
280     --disable-werror
281     --disable-xen
282     --disable-zstd
283     --static
284   )
286   (
287     cd build-static
288     ../$pkgbase-$pkgver/configure "${configure_static_options[@]}"
289     ninja
290   )
292   # Build only minimal debug info to reduce size
293   CFLAGS+=' -g1'
294   CXXFLAGS+=' -g1'
296   (
297     cd build
298     ../$pkgbase-$pkgver/configure "${configure_options[@]}"
299     ninja
300   )
304 package_qemu-common() {
305   local binfmt_conf_options=(
306     --systemd ALL
307     --exportdir "$pkgdir/usr/lib/binfmt.d/"
308     --qemu-path "/usr/bin"
309     --persistent yes
310     --preserve-argv0 yes
311   )
313   license+=(BSD MIT)
314   depends=(gcc-libs glibc glib2 libglib-2.0.so libgmodule-2.0.so hicolor-icon-theme libcap-ng libcap-ng.so numactl libnuma.so)
315   backup=(
316     etc/$pkgbase/bridge.conf
317     etc/sasl2/$pkgbase.conf
318   )
319   install=$pkgname.install
321   # install static binaries
322   meson install -C build-static --destdir "$pkgdir"
323   install -vdm 755 "$pkgdir/usr/lib/binfmt.d/"
324   $pkgbase-$pkgver/scripts/qemu-binfmt-conf.sh "${binfmt_conf_options[@]}"
326   # rename static binaries to prevent name conflicts
327   for _src in "$pkgdir/usr/bin/qemu-"*; do
328     mv -v "$_src" "$pkgdir/usr/bin/$(basename "$_src")-static"
329   done
330   # modify and rename binfmt.d configs to prevent name conflicts
331   for _conf in "$pkgdir/usr/lib/binfmt.d/"*; do
332     _exe_name="$(basename "${_conf/.conf/}")"
333     _new_exe_name="${_exe_name}-static"
334     _new_conf_name="${_conf/.conf/-static.conf}"
335     sed -e "s|usr/bin/${_exe_name}|usr/bin/${_new_exe_name}|" "$_conf" > "${_new_conf_name}"
336   done
338   # install default binaries
339   meson install -C build --destdir "$pkgdir"
341   install -vdm 755 "$pkgdir/usr/lib/binfmt.d/"
342   $pkgbase-$pkgver/scripts/qemu-binfmt-conf.sh "${binfmt_conf_options[@]}"
344   install -vDm 644 bridge.conf -t "$pkgdir/etc/$pkgbase/"
345   install -vDm 644 $pkgbase-$pkgver/$pkgbase.sasl "$pkgdir/etc/sasl2/$pkgbase.conf"
346   install -vDm 644 $pkgbase-$pkgver/LICENSE *LICENSE* -t "$pkgdir/usr/share/licenses/$pkgbase/"
347   install -vDm 644 $pkgbase-sysusers.conf "$pkgdir/usr/lib/sysusers.d/$pkgbase.conf"
349   # bridge_helper needs suid: https://bugs.archlinux.org/task/32565
350   chmod u+s "$pkgdir/usr/lib/qemu/qemu-bridge-helper"
352   # remoe invalid directory
353   rm -frv "$pkgdir/var"
355   # remove unneeded files
356   find "$pkgdir" -name .buildinfo -delete
358   # remove files provided by seabios
359   rm -fv "$pkgdir/usr/share/$pkgbase/"{bios,vgabios}*
361   # remove files provided by edk2-{aarch64,arm,ovmf}
362   rm -fv "$pkgdir/usr/share/$pkgbase/"edk2-*
363   rm -frv "$pkgdir/usr/share/$pkgbase/firmware"
365   (
366     # create man page symlinks for all system emulators
367     cd "$pkgdir/usr/share/man/man1"
368     for _name in qemu-system-{aarch64,alpha,arm,avr,cris,hppa,i386,loongarch64,m68k,microblaze{,el},mips{,64,64el,el},nios2,or1k,ppc{,64},riscv{32,64},rx,s390x,sh4{,eb},sparc{,64},tricore,x86_64,xtensa{,eb}}; do
369       ln -sv $pkgbase.1.gz "$pkgdir/usr/share/man/man1/$_name.1.gz"
370     done
371   )
373   (
374     # pick files for all split packages
375     cd "$pkgdir"
377     _pick qemu-guest-agent usr/bin/qemu-ga
378     _pick qemu-guest-agent usr/share/man/man8/qemu-ga.8*
380     _pick qemu-audio-alsa usr/lib/qemu/audio-alsa.so
381     _pick qemu-audio-dbus usr/lib/qemu/audio-dbus.so
382     _pick qemu-audio-jack usr/lib/qemu/audio-jack.so
383     _pick qemu-audio-oss usr/lib/qemu/audio-oss.so
384     _pick qemu-audio-pa usr/lib/qemu/audio-pa.so
385     _pick qemu-audio-sdl usr/lib/qemu/audio-sdl.so
386     _pick qemu-audio-spice usr/lib/qemu/audio-spice.so
388     _pick qemu-block-curl usr/lib/qemu/block-curl.so
389     _pick qemu-block-dmg usr/lib/qemu/block-dmg*.so
390     _pick qemu-block-gluster usr/lib/qemu/block-gluster.so
391     _pick qemu-block-iscsi usr/lib/qemu/block-iscsi.so
392     _pick qemu-block-nfs usr/lib/qemu/block-nfs.so
393     _pick qemu-block-ssh usr/lib/qemu/block-ssh.so
395     _pick qemu-chardev-baum usr/lib/qemu/chardev-baum.so
396     _pick qemu-chardev-spice usr/lib/qemu/chardev-spice.so
398     _pick qemu-docs usr/share/doc/qemu
400     _pick qemu-hw-display-qxl usr/lib/qemu/hw-display-qxl.so
401     _pick qemu-hw-display-virtio-gpu usr/lib/qemu/hw-display-virtio-gpu.so
402     _pick qemu-hw-display-virtio-gpu-gl usr/lib/qemu/hw-display-virtio-gpu-gl.so
403     _pick qemu-hw-display-virtio-gpu-pci usr/lib/qemu/hw-display-virtio-gpu-pci.so
404     _pick qemu-hw-display-virtio-gpu-pci-gl usr/lib/qemu/hw-display-virtio-gpu-pci-gl.so
405     _pick qemu-hw-display-virtio-vga usr/lib/qemu/hw-display-virtio-vga.so
406     _pick qemu-hw-display-virtio-vga-gl usr/lib/qemu/hw-display-virtio-vga-gl.so
408     _pick qemu-hw-usb-host usr/lib/qemu/hw-usb-host.so
409     _pick qemu-hw-usb-redirect usr/lib/qemu/hw-usb-redirect.so
410     _pick qemu-hw-usb-smartcard usr/lib/qemu/hw-usb-smartcard.so
412     _pick qemu-img usr/bin/qemu-{img,io,nbd,storage-daemon}
413     _pick qemu-img usr/share/man/man1/qemu-{img,storage-daemon}.1*
414     _pick qemu-img usr/share/man/man7/qemu-storage-daemon-qmp-ref.7*
415     _pick qemu-img usr/share/man/man8/qemu-nbd.8*
417     _pick qemu-pr-helper usr/bin/qemu-pr-helper
418     _pick qemu-pr-helper usr/share/man/man8/qemu-pr-helper.8*
420     _pick qemu-hw-s390x-virtio-gpu-ccw usr/lib/qemu/hw-s390x-virtio-gpu-ccw.so
422     _pick qemu-system-aarch64 usr/bin/qemu-system-aarch64
423     _pick qemu-system-aarch64 usr/share/man/man1/qemu-system-aarch64.1*
425     _pick qemu-system-alpha usr/bin/qemu-system-alpha
426     _pick qemu-system-alpha usr/share/man/man1/qemu-system-alpha.1*
428     _pick qemu-system-alpha-firmware usr/share/qemu/palcode-clipper
430     _pick qemu-system-arm usr/bin/qemu-system-arm
431     _pick qemu-system-arm usr/share/man/man1/qemu-system-arm.1*
433     _pick qemu-system-arm-firmware usr/share/qemu/npcm7xx_bootrom.bin
435     _pick qemu-system-avr usr/bin/qemu-system-avr
436     _pick qemu-system-avr usr/share/man/man1/qemu-system-avr.1*
438     _pick qemu-system-cris usr/bin/qemu-system-cris
439     _pick qemu-system-cris usr/share/man/man1/qemu-system-cris.1*
441     _pick qemu-system-hppa usr/bin/qemu-system-hppa
442     _pick qemu-system-hppa usr/share/man/man1/qemu-system-hppa.1*
444     _pick qemu-system-hppa-firmware usr/share/qemu/hppa-firmware.img
446     _pick qemu-system-loongarch64 usr/bin/qemu-system-loongarch64
447     _pick qemu-system-loongarch64 usr/share/man/man1/qemu-system-loongarch64.1*
449     _pick qemu-system-m68k usr/bin/qemu-system-m68k
450     _pick qemu-system-m68k usr/share/man/man1/qemu-system-m68k.1*
452     _pick qemu-system-microblaze usr/bin/qemu-system-microblaze{,el}
453     _pick qemu-system-microblaze usr/share/man/man1/qemu-system-microblaze{,el}.1*
455     _pick qemu-system-microblaze-firmware usr/share/qemu/petalogix-*.dtb
457     _pick qemu-system-mips usr/bin/qemu-system-mips{,64,64el,el}
458     _pick qemu-system-mips usr/share/man/man1/qemu-system-mips{,64,64el,el}.1*
460     _pick qemu-system-nios2 usr/bin/qemu-system-nios2
461     _pick qemu-system-nios2 usr/share/man/man1/qemu-system-nios2.1*
463     _pick qemu-system-or1k usr/bin/qemu-system-or1k
464     _pick qemu-system-or1k usr/share/man/man1/qemu-system-or1k.1*
466     _pick qemu-system-ppc usr/bin/qemu-system-ppc{,64}
467     _pick qemu-system-ppc usr/share/man/man1/qemu-system-ppc{,64}.1*
469     _pick qemu-system-ppc-firmware usr/share/qemu/{bamboo,canyonlands}.dtb
470     # NOTE: needs to be replaced by openbios
471     _pick qemu-system-ppc-firmware usr/share/qemu/openbios-ppc
472     _pick qemu-system-ppc-firmware usr/share/qemu/qemu_vga.ndrv
473     _pick qemu-system-ppc-firmware usr/share/qemu/skiboot.lid
474     # NOTE: needs to be replaced by slof
475     _pick qemu-system-ppc-firmware usr/share/qemu/slof.bin
476     _pick qemu-system-ppc-firmware usr/share/qemu/u-boot.e500
477     _pick qemu-system-ppc-firmware usr/share/qemu/u-boot-sam460-20100605.bin
479     _pick qemu-system-riscv usr/bin/qemu-system-riscv{32,64}
480     _pick qemu-system-riscv usr/share/man/man1/qemu-system-riscv{32,64}.1*
482     _pick qemu-system-riscv-firmware usr/share/qemu/opensbi-riscv{32,64}*.bin
484     _pick qemu-system-rx usr/bin/qemu-system-rx
485     _pick qemu-system-rx usr/share/man/man1/qemu-system-rx.1*
487     _pick qemu-system-s390x usr/bin/qemu-system-s390x
488     _pick qemu-system-s390x usr/share/man/man1/qemu-system-s390x.1*
490     _pick qemu-system-s390x-firmware usr/share/qemu/s390-{ccw,netboot}.img
492     _pick qemu-system-sh4 usr/bin/qemu-system-sh4{,eb}
493     _pick qemu-system-sh4 usr/share/man/man1/qemu-system-sh4{,eb}.1*
495     _pick qemu-system-sparc usr/bin/qemu-system-sparc{,64}
496     _pick qemu-system-sparc usr/share/man/man1/qemu-system-sparc{,64}.1*
498     # NOTE: needs to be replaced by openbios
499     _pick qemu-system-sparc-firmware usr/share/qemu/openbios-sparc{32,64}
500     _pick qemu-system-sparc-firmware usr/share/qemu/QEMU,{cgthree,tcx}.bin
502     _pick qemu-system-tricore usr/bin/qemu-system-tricore
503     _pick qemu-system-tricore usr/share/man/man1/qemu-system-tricore.1*
505     _pick qemu-system-x86 usr/bin/qemu-system-{i386,x86_64}
506     _pick qemu-system-x86 usr/lib/qemu/accel-tcg-{i386,x86_64}.so
507     _pick qemu-system-x86 usr/share/man/man1/qemu-system-{i386,x86_64}.1*
509     _pick qemu-system-x86-firmware usr/share/qemu/{kvmvapic,linuxboot,multiboot{,_dma},pvh}.bin
510     _pick qemu-system-x86-firmware usr/share/qemu/qboot.rom
512     _pick qemu-system-xtensa usr/bin/qemu-system-xtensa{,eb}
513     _pick qemu-system-xtensa usr/share/man/man1/qemu-system-xtensa{,eb}.1*
515     _pick qemu-tests usr/lib/qemu/accel-qtest-*.so
517     _pick qemu-tools usr/bin/{elf2dmp,qemu-{edid,keymap}}
518     _pick qemu-tools usr/share/qemu/trace-events-all
520     _pick qemu-ui-curses usr/lib/qemu/ui-curses.so
521     _pick qemu-ui-dbus usr/lib/qemu/ui-dbus.so
522     _pick qemu-ui-egl-headless usr/lib/qemu/ui-egl-headless.so
523     _pick qemu-ui-gtk usr/lib/qemu/ui-gtk.so
524     _pick qemu-ui-opengl usr/lib/qemu/ui-opengl.so
525     _pick qemu-ui-sdl usr/lib/qemu/ui-sdl.so
526     _pick qemu-ui-spice-app usr/lib/qemu/ui-spice-app.so
527     _pick qemu-ui-spice-core usr/lib/qemu/ui-spice-core.so
529     _pick qemu-user-static usr/bin/qemu-*-static
530     _pick qemu-user-static-binfmt usr/lib/binfmt.d/*-static.conf
532     _pick qemu-user usr/bin/qemu-{aarch64{,_be},alpha,arm{,eb},cris,hexagon,hppa,i386,loongarch64,m68k,microblaze{,el},mips{,64,64el,el,n32,n32el},nios2,or1k,ppc{,64,64le},riscv{32,64},s390x,sh4{,eb},sparc{,32plus,64},x86_64,xtensa{,eb}}
533     _pick qemu-user-binfmt usr/lib/binfmt.d/*.conf
535     _pick qemu-vhost-user-gpu usr/lib/qemu/vhost-user-gpu
536     _pick qemu-vhost-user-gpu usr/share/qemu/vhost-user/50-qemu-gpu.json
537   )
540 package_qemu-audio-alsa() {
541   pkgdesc="QEMU ALSA audio driver"
542   depends=(alsa-lib libasound.so glibc qemu-common=$pkgver-$pkgrel)
543   mv -v $pkgname/* "$pkgdir"
546 package_qemu-audio-dbus() {
547   pkgdesc="QEMU D-Bus audio driver"
548   depends=(gcc-libs glib2 libgio-2.0.so libgobject-2.0.so libglib-2.0.so glibc qemu-common=$pkgver-$pkgrel)
549   mv -v $pkgname/* "$pkgdir"
552 package_qemu-audio-jack() {
553   pkgdesc="QEMU JACK audio driver"
554   depends=(jack libjack.so glibc qemu-common=$pkgver-$pkgrel)
555   mv -v $pkgname/* "$pkgdir"
558 package_qemu-audio-oss() {
559   pkgdesc="QEMU OSS audio driver"
560   depends=(glibc qemu-common=$pkgver-$pkgrel)
561   mv -v $pkgname/* "$pkgdir"
564 package_qemu-audio-pa() {
565   pkgdesc="QEMU PulseAudio audio driver"
566   depends=(glibc libpulse libpulse.so qemu-common=$pkgver-$pkgrel)
567   mv -v $pkgname/* "$pkgdir"
570 package_qemu-audio-sdl() {
571   pkgdesc="QEMU SDL audio driver"
572   depends=(glibc qemu-common=$pkgver-$pkgrel sdl2)
573   mv -v $pkgname/* "$pkgdir"
576 package_qemu-audio-spice() {
577   pkgdesc="QEMU spice audio driver"
578   depends=(glibc qemu-common=$pkgver-$pkgrel qemu-ui-spice-core=$pkgver-$pkgrel spice libspice-server.so)
579   mv -v $pkgname/* "$pkgdir"
582 package_qemu-block-curl() {
583   pkgdesc="QEMU curl block driver"
584   depends=(curl libcurl.so gcc-libs glibc qemu-common=$pkgver-$pkgrel)
585   mv -v $pkgname/* "$pkgdir"
588 package_qemu-block-dmg() {
589   pkgdesc="QEMU DMG block driver"
590   depends=(bzip2 libbz2.so glibc qemu-common=$pkgver-$pkgrel)
591   mv -v $pkgname/* "$pkgdir"
594 package_qemu-block-gluster() {
595   pkgdesc="QEMU Gluster block driver"
596   depends=(glibc glusterfs qemu-common=$pkgver-$pkgrel)
597   mv -v $pkgname/* "$pkgdir"
600 package_qemu-block-iscsi() {
601   pkgdesc="QEMU iSCSI block driver"
602   depends=(gcc-libs glibc libiscsi qemu-common=$pkgver-$pkgrel)
603   mv -v $pkgname/* "$pkgdir"
606 package_qemu-block-nfs() {
607   pkgdesc="QEMU NFS block driver"
608   depends=(gcc-libs glibc libnfs qemu-common=$pkgver-$pkgrel)
609   mv -v $pkgname/* "$pkgdir"
612 package_qemu-block-ssh() {
613   pkgdesc="QEMU SSH block driver"
614   depends=(gcc-libs glibc libssh libssh.so qemu-common=$pkgver-$pkgrel)
615   mv -v $pkgname/* "$pkgdir"
618 package_qemu-chardev-baum() {
619   pkgdesc="QEMU Baum chardev driver"
620   depends=(brltty libbrlapi.so gcc-libs glibc qemu-common=$pkgver-$pkgrel)
621   mv -v $pkgname/* "$pkgdir"
624 package_qemu-chardev-spice() {
625   pkgdesc="QEMU spice chardev driver"
626   depends=(libspice-server.so glibc qemu-common=$pkgver-$pkgrel qemu-ui-spice-core=$pkgver-$pkgrel)
627   mv -v $pkgname/* "$pkgdir"
630 package_qemu-docs() {
631   pkgdesc+=" - documentation"
632   mv -v $pkgname/* "$pkgdir"
635 package_qemu-guest-agent() {
636   pkgdesc="QEMU Guest Agent"
637   depends=(gcc-libs glib2 libglib-2.0.so libgmodule-2.0.so glibc liburing liburing.so numactl libnuma.so sh systemd-libs libudev.so)
638   backup=(
639     etc/$pkgbase/$pkgbase-ga.conf
640     etc/$pkgbase/fsfreeze-hook
641   )
642   install=$pkgname.install
643   mv -v $pkgname/* "$pkgdir"
644   install -vDm 644 $pkgbase-$pkgver/contrib/systemd/$pkgname.service -t "$pkgdir/usr/lib/systemd/system/"
645   install -vDm 644 99-$pkgname.rules -t "$pkgdir/usr/lib/udev/rules.d/"
646   install -vDm 644 $pkgbase-ga.conf -t "$pkgdir/etc/$pkgbase/"
647   install -vDm 755 $pkgbase-$pkgver/scripts/$pkgname/fsfreeze-hook -t "$pkgdir/etc/$pkgbase/"
648   install -vdm 755 "$pkgdir/etc/$pkgbase/fsfreeze-hook.d"
651 package_qemu-hw-display-qxl() {
652   pkgdesc="QEMU QXL display device"
653   depends=(gcc-libs glibc pixman libpixman-1.so qemu-common=$pkgver-$pkgrel qemu-ui-spice-core=$pkgver-$pkgrel spice libspice-server.so)
654   mv -v $pkgname/* "$pkgdir"
657 package_qemu-hw-display-virtio-gpu() {
658   pkgdesc="QEMU virtio-gpu display device"
659   depends=(glibc pixman libpixman-1.so qemu-common=$pkgver-$pkgrel)
660   mv -v $pkgname/* "$pkgdir"
663 package_qemu-hw-display-virtio-gpu-gl() {
664   pkgdesc="QEMU virtio-gpu-gl display device"
665   depends=(glibc qemu-common=$pkgver-$pkgrel virglrenderer)
666   mv -v $pkgname/* "$pkgdir"
669 package_qemu-hw-display-virtio-gpu-pci() {
670   pkgdesc="QEMU virtio-gpu-pci display device"
671   depends=(qemu-common=$pkgver-$pkgrel)
672   mv -v $pkgname/* "$pkgdir"
675 package_qemu-hw-display-virtio-gpu-pci-gl() {
676   pkgdesc="QEMU virtio-gpu-pci-gl display device"
677   depends=(qemu-common=$pkgver-$pkgrel)
678   mv -v $pkgname/* "$pkgdir"
681 package_qemu-hw-display-virtio-vga() {
682   pkgdesc="QEMU virtio-vga display device"
683   depends=(qemu-common=$pkgver-$pkgrel)
684   mv -v $pkgname/* "$pkgdir"
687 package_qemu-hw-display-virtio-vga-gl() {
688   pkgdesc="QEMU virtio-vga-gl display device"
689   depends=(qemu-common=$pkgver-$pkgrel)
690   mv -v $pkgname/* "$pkgdir"
693 package_qemu-hw-s390x-virtio-gpu-ccw() {
694   pkgdesc="QEMU s390x-virtio-gpu-ccw display device"
695   depends=(qemu-common=$pkgver-$pkgrel)
696   mv -v $pkgname/* "$pkgdir"
699 package_qemu-system-aarch64() {
700   pkgdesc="QEMU system emulator for AARCH64"
701   depends=("${_qemu_system_deps[@]}" edk2-aarch64 systemd-libs libudev.so)
702   mv -v $pkgname/* "$pkgdir"
705 package_qemu-system-alpha() {
706   pkgdesc="QEMU system emulator for Alpha"
707   depends=("${_qemu_system_deps[@]}" qemu-system-alpha-firmware=$pkgver-$pkgrel systemd-libs libudev.so)
708   mv -v $pkgname/* "$pkgdir"
711 package_qemu-system-alpha-firmware() {
712   pkgdesc="Firmware for QEMU system emulator for Alpha"
713   options=(!strip)
714   mv -v $pkgname/* "$pkgdir"
717 package_qemu-system-arm() {
718   pkgdesc="QEMU system emulator for ARM"
719   depends=("${_qemu_system_deps[@]}" edk2-arm qemu-system-arm-firmware=$pkgver-$pkgrel systemd-libs libudev.so)
720   mv -v $pkgname/* "$pkgdir"
723 package_qemu-system-arm-firmware() {
724   pkgdesc="Firmware for QEMU system emulator for ARM"
725   options=(!strip)
726   mv -v $pkgname/* "$pkgdir"
729 package_qemu-system-avr() {
730   pkgdesc="QEMU system emulator for AVR"
731   depends=("${_qemu_system_deps[@]}")
732   mv -v $pkgname/* "$pkgdir"
735 package_qemu-system-cris() {
736   pkgdesc="QEMU system emulator for CRIS"
737   depends=("${_qemu_system_deps[@]}")
738   mv -v $pkgname/* "$pkgdir"
741 package_qemu-system-hppa() {
742   pkgdesc="QEMU system emulator for HPPA"
743   depends=("${_qemu_system_deps[@]}" qemu-system-hppa-firmware=$pkgver-$pkgrel systemd-libs libudev.so)
744   mv -v $pkgname/* "$pkgdir"
747 package_qemu-system-hppa-firmware() {
748   pkgdesc="Firmware for QEMU system emulator for HPPA"
749   options=(!strip)
750   mv -v $pkgname/* "$pkgdir"
753 package_qemu-system-loongarch64() {
754   pkgdesc="QEMU system emulator for LoongArch64"
755   depends=("${_qemu_system_deps[@]}" systemd-libs)
756   mv -v $pkgname/* "$pkgdir"
759 package_qemu-system-m68k() {
760   pkgdesc="QEMU system emulator for ColdFire (m68k)"
761   depends=("${_qemu_system_deps[@]}")
762   mv -v $pkgname/* "$pkgdir"
765 package_qemu-system-microblaze() {
766   pkgdesc="QEMU system emulator for Microblaze"
767   depends=("${_qemu_system_deps[@]}" qemu-system-microblaze-firmware=$pkgver-$pkgrel)
768   mv -v $pkgname/* "$pkgdir"
771 package_qemu-system-microblaze-firmware() {
772   pkgdesc="Firmware for QEMU system emulator for Microblaze"
773   options=(!strip)
774   mv -v $pkgname/* "$pkgdir"
777 package_qemu-system-mips() {
778   pkgdesc="QEMU system emulator for MIPS"
779   depends=("${_qemu_system_deps[@]}" systemd-libs libudev.so)
780   mv -v $pkgname/* "$pkgdir"
783 package_qemu-system-nios2() {
784   pkgdesc="QEMU system emulator for nios2"
785   depends=("${_qemu_system_deps[@]}")
786   mv -v $pkgname/* "$pkgdir"
789 package_qemu-system-or1k() {
790   pkgdesc="QEMU system emulator for OpenRisc32"
791   depends=("${_qemu_system_deps[@]}" systemd-libs)
792   mv -v $pkgname/* "$pkgdir"
795 package_qemu-system-ppc() {
796   pkgdesc="QEMU system emulator for PPC"
797   depends=("${_qemu_system_deps[@]}" qemu-system-ppc-firmware=$pkgver-$pkgrel systemd-libs libudev.so)
798   mv -v $pkgname/* "$pkgdir"
801 package_qemu-system-ppc-firmware() {
802   pkgdesc="Firmware for QEMU system emulator for PPC"
803   options=(!strip)
804   mv -v $pkgname/* "$pkgdir"
807 package_qemu-system-riscv() {
808   pkgdesc="QEMU system emulator for RISC-V"
809   depends=("${_qemu_system_deps[@]}" qemu-system-riscv-firmware=$pkgver-$pkgrel systemd-libs libudev.so)
810   mv -v $pkgname/* "$pkgdir"
813 package_qemu-system-riscv-firmware() {
814   pkgdesc="Firmware for QEMU system emulator for RISC-V"
815   options=(!strip)
816   mv -v $pkgname/* "$pkgdir"
819 package_qemu-system-rx() {
820   pkgdesc="QEMU system emulator for RX"
821   depends=("${_qemu_system_deps[@]}")
822   mv -v $pkgname/* "$pkgdir"
825 package_qemu-system-s390x() {
826   pkgdesc="QEMU system emulator for S390"
827   depends=("${_qemu_system_deps[@]}" qemu-system-s390x-firmware=$pkgver-$pkgrel)
828   mv -v $pkgname/* "$pkgdir"
831 package_qemu-system-s390x-firmware() {
832   pkgdesc="Firmware for QEMU system emulator for S390"
833   options=(!strip)
834   mv -v $pkgname/* "$pkgdir"
837 package_qemu-system-sh4() {
838   pkgdesc="QEMU system emulator for SH4"
839   depends=("${_qemu_system_deps[@]}" systemd-libs libudev.so)
840   mv -v $pkgname/* "$pkgdir"
843 package_qemu-system-sparc() {
844   pkgdesc="QEMU system emulator for SPARC"
845   depends=("${_qemu_system_deps[@]}" qemu-system-sparc-firmware=$pkgver-$pkgrel systemd-libs libudev.so)
846   mv -v $pkgname/* "$pkgdir"
849 package_qemu-system-sparc-firmware() {
850   pkgdesc="Firmware for QEMU system emulator for SPARC"
851   options=(!strip)
852   # NOTE: will require openbios
853   mv -v $pkgname/* "$pkgdir"
856 package_qemu-system-tricore() {
857   pkgdesc="QEMU system emulator for tricore"
858   depends=("${_qemu_system_deps[@]}")
859   mv -v $pkgname/* "$pkgdir"
862 package_qemu-system-x86() {
863   pkgdesc="QEMU system emulator for x86"
864   depends=("${_qemu_system_deps[@]}" edk2-ovmf qemu-system-x86-firmware=$pkgver-$pkgrel seabios systemd-libs libudev.so)
865   mv -v $pkgname/* "$pkgdir"
868 package_qemu-system-x86-firmware() {
869   pkgdesc="Firmware for QEMU system emulator for x86"
870   options=(!strip)
871   mv -v $pkgname/* "$pkgdir"
874 package_qemu-system-xtensa() {
875   pkgdesc="QEMU system emulator for Xtensa"
876   depends=("${_qemu_system_deps[@]}" systemd-libs libudev.so)
877   mv -v $pkgname/* "$pkgdir"
880 package_qemu-hw-usb-host() {
881   pkgdesc="QEMU USB host device"
882   depends=(glibc libusb libusb-1.0.so qemu-common=$pkgver-$pkgrel)
883   mv -v $pkgname/* "$pkgdir"
886 package_qemu-hw-usb-redirect() {
887   pkgdesc="QEMU usbredir device"
888   depends=(gcc-libs glibc qemu-common=$pkgver-$pkgrel usbredir)
889   mv -v $pkgname/* "$pkgdir"
892 package_qemu-hw-usb-smartcard() {
893   pkgdesc="QEMU USB smartcard device"
894   depends=(gcc-libs libcacard glib2 libglib-2.0.so glibc qemu-common=$pkgver-$pkgrel)
895   mv -v $pkgname/* "$pkgdir"
898 package_qemu-img() {
899   pkgdesc="QEMU tooling for manipulating disk images"
900   depends=(fuse3 gcc-libs glib2 libglib-2.0.so libgmodule-2.0.so glibc gnutls libaio liburing liburing.so numactl libnuma.so pam libpam.so zlib zstd libzstd.so)
901   mv -v $pkgname/* "$pkgdir"
904 package_qemu-pr-helper() {
905   pkgdesc="QEMU persistent reservation utility"
906   depends=(gcc-libs glib2 libglib-2.0.so libgmodule-2.0.so glibc gnutls libcap-ng libcap-ng.so liburing liburing.so multipath-tools numactl libnuma.so pam libpam.so qemu-common=$pkgver-$pkgrel systemd-libs)
907   mv -v $pkgname/* "$pkgdir"
908   install -vDm 644 $pkgbase-$pkgver/contrib/systemd/$pkgname.{service,socket} -t "$pkgdir/usr/lib/systemd/system/"
911 package_qemu-tests() {
912   pkgdesc="QEMU tests"
913   depends=(qemu-common=$pkgver-$pkgrel)
914   mv -v $pkgname/* "$pkgdir"
917 package_qemu-tools() {
918   pkgdesc="QEMU tools"
919   depends=(curl libcurl.so gcc-libs glib2 libglib-2.0.so libgmodule-2.0.so glibc libxkbcommon libxkbcommon.so numactl libnuma.so python qemu-common=$pkgver-$pkgrel)
920   mv -v $pkgname/* "$pkgdir"
921   install -vDm 644 $pkgbase-$pkgver/scripts/dump-guest-memory.py -t "$pkgdir/usr/share/$pkgbase/"
922   install -vDm 755 $pkgbase-$pkgver/scripts/simpletrace.py -t "$pkgdir/usr/share/$pkgbase/"
923   install -vDm 644 $pkgbase-$pkgver/scripts/tracetool/*.py -t "$pkgdir/usr/share/$pkgbase/tracetool/"
924   install -vDm 644 $pkgbase-$pkgver/scripts/tracetool/backend/*.py -t "$pkgdir/usr/share/$pkgbase/tracetool/backend/"
925   install -vDm 644 $pkgbase-$pkgver/scripts/tracetool/format/*.py -t "$pkgdir/usr/share/$pkgbase/tracetool/format/"
928 package_qemu-ui-curses() {
929   pkgdesc="QEMU curses UI driver"
930   depends=(gcc-libs glib2 libglib-2.0.so glibc ncurses libncursesw.so qemu-common=$pkgver-$pkgrel)
931   mv -v $pkgname/* "$pkgdir"
934 package_qemu-ui-dbus() {
935   pkgdesc="QEMU D-Bus UI driver"
936   depends=(gcc-libs glib2 libgio-2.0.so libgobject-2.0.so libglib-2.0.so glibc libepoxy pixman libpixman-1.so qemu-common=$pkgver-$pkgrel)
937   mv -v $pkgname/* "$pkgdir"
940 package_qemu-ui-egl-headless() {
941   pkgdesc="QEMU EGL headless UI driver"
942   depends=(glibc libepoxy qemu-common=$pkgver-$pkgrel qemu-ui-opengl=$pkgver-$pkgrel)
943   mv -v $pkgname/* "$pkgdir"
946 package_qemu-ui-gtk() {
947   pkgdesc="QEMU GTK UI driver"
948   depends=(
949     cairo
950     gdk-pixbuf2 libgdk_pixbuf-2.0.so
951     glib2 libgobject-2.0.so libglib-2.0.so
952     glibc
953     gtk3 libgdk-3.so libgtk-3.so
954     libepoxy
955     libx11
956     pixman libpixman-1.so
957     qemu-common=$pkgver-$pkgrel
958     qemu-ui-opengl
959     vte3 libvte-2.91.so
960   )
961   mv -v $pkgname/* "$pkgdir"
964 package_qemu-ui-opengl() {
965   pkgdesc="QEMU OpenGL UI driver"
966   depends=(gcc-libs glibc libepoxy mesa pixman libpixman-1.so qemu-common=$pkgver-$pkgrel)
967   mv -v $pkgname/* "$pkgdir"
970 package_qemu-ui-sdl() {
971   pkgdesc="QEMU SDL UI driver"
972   depends=(glib2 libglib-2.0.so glibc libx11 pixman libpixman-1.so qemu-common=$pkgver-$pkgrel sdl2_image sdl2)
973   mv -v $pkgname/* "$pkgdir"
976 package_qemu-ui-spice-app() {
977   pkgdesc="QEMU spice app UI driver"
978   depends=(glib2 libgio-2.0.so libglib-2.0.so glibc qemu-common=$pkgver-$pkgrel qemu-chardev-spice=$pkgver-$pkgrel qemu-ui-spice-core=$pkgver-$pkgrel)
979   mv -v $pkgname/* "$pkgdir"
982 package_qemu-ui-spice-core() {
983   pkgdesc="QEMU spice core UI driver"
984   depends=(gcc-libs glibc pixman libpixman-1.so qemu-common=$pkgver-$pkgrel qemu-ui-opengl=$pkgver-$pkgrel spice libspice-server.so)
985   mv -v $pkgname/* "$pkgdir"
988 package_qemu-user() {
989   pkgdesc="QEMU user mode emulation"
990   depends=(capstone gcc-libs glib2 libglib-2.0.so libgmodule-2.0.so glibc gnutls libelf liburing liburing.so numactl libnuma.so qemu-common=$pkgver-$pkgrel zlib)
991   optdepends=('qemu-user-binfmt: for binary format rules')
992   mv -v $pkgname/* "$pkgdir"
995 package_qemu-user-binfmt() {
996   pkgdesc="Binary format rules for QEMU user mode emulation"
997   depends=(qemu-user=$pkgver-$pkgrel)
998   provides=(qemu-user-binfmt-provider)
999   conflicts=(qemu-user-binfmt-provider)
1000   mv -v $pkgname/* "$pkgdir"
1003 package_qemu-user-static() {
1004   pkgdesc="QEMU static user mode emulation"
1005   depends=(glibc)
1006   optdepends=('qemu-user-static-binfmt: for binary format rules')
1007   mv -v $pkgname/* "$pkgdir"
1010 package_qemu-user-static-binfmt() {
1011   pkgdesc="Binary format rules for QEMU static user mode emulation"
1012   depends=(qemu-user-static=$pkgver-$pkgrel)
1013   provides=(qemu-user-binfmt-provider)
1014   conflicts=(qemu-user-binfmt-provider)
1015   mv -v $pkgname/* "$pkgdir"
1018 package_qemu-vhost-user-gpu() {
1019   pkgdesc="QEMU vhost-user-gpu display device"
1020   depends=(gcc-libs glib2 libglib-2.0.so libgmodule-2.0.so glibc pixman libepoxy libpixman-1.so mesa numactl libnuma.so qemu-common=$pkgver-$pkgrel virglrenderer)
1021   mv -v $pkgname/* "$pkgdir"
1024 package_qemu-base() {
1025   pkgdesc="A basic QEMU setup for headless environments"
1026   depends=(
1027     qemu-common=$pkgver-$pkgrel
1028     qemu-audio-spice=$pkgver-$pkgrel
1029     qemu-block-{curl,dmg,nfs,ssh}=$pkgver-$pkgrel
1030     qemu-chardev-spice=$pkgver-$pkgrel
1031     qemu-hw-display-{qxl,virtio-gpu{,-{gl,pci,pci-gl}}}=$pkgver-$pkgrel
1032     qemu-hw-display-virtio-vga{,-gl}=$pkgver-$pkgrel
1033     qemu-hw-s390x-virtio-gpu-ccw=$pkgver-$pkgrel
1034     qemu-hw-usb-{host,redirect,smartcard}=$pkgver-$pkgrel
1035     qemu-img=$pkgver-$pkgrel
1036     qemu-pr-helper=$pkgver-$pkgrel
1037     qemu-system-x86=$pkgver-$pkgrel
1038     qemu-tools=$pkgver-$pkgrel
1039     qemu-ui-{curses,spice-{app,core}}=$pkgver-$pkgrel
1040     virtiofsd
1041   )
1042   optdepends=("${_qemu_base_optdepends[@]}")
1043   # TODO: remove conflicts/provides/replaces for qemu-headless after 2022-10-01
1044   conflicts=(qemu qemu-headless)
1045   provides=(qemu=$pkgver qemu-headless)
1046   replaces=(qemu-headless)
1049 package_qemu-desktop() {
1050   pkgdesc="A QEMU setup for desktop environments"
1051   depends=(
1052     qemu-common=$pkgver-$pkgrel
1053     qemu-audio-{alsa,dbus,jack,oss,pa,sdl,spice}=$pkgver-$pkgrel
1054     qemu-block-{curl,dmg,nfs,ssh}=$pkgver-$pkgrel
1055     qemu-chardev-spice=$pkgver-$pkgrel
1056     qemu-hw-display-{qxl,virtio-gpu{,-{gl,pci,pci-gl}}}=$pkgver-$pkgrel
1057     qemu-hw-display-virtio-vga{,-gl}=$pkgver-$pkgrel
1058     qemu-hw-s390x-virtio-gpu-ccw=$pkgver-$pkgrel
1059     qemu-hw-usb-{host,redirect,smartcard}=$pkgver-$pkgrel
1060     qemu-img=$pkgver-$pkgrel
1061     qemu-pr-helper=$pkgver-$pkgrel
1062     qemu-system-x86=$pkgver-$pkgrel
1063     qemu-tools=$pkgver-$pkgrel
1064     qemu-ui-{curses,dbus,egl-headless,gtk,opengl,sdl,spice-{app,core}}=$pkgver-$pkgrel
1065     qemu-vhost-user-gpu=$pkgver-$pkgrel
1066     virtiofsd
1067   )
1068   optdepends=("${_qemu_desktop_optdepends[@]}")
1069   conflicts=(qemu)
1070   provides=(qemu=$pkgver)
1071   replaces=('qemu<7')
1074 package_qemu-emulators-full() {
1075   pkgdesc="All QEMU user mode and system emulators"
1076   depends=(
1077     qemu-system-{aarch64,alpha,arm,avr,cris,hppa,loongarch64,m68k,microblaze,mips,nios2,or1k,ppc,riscv,rx,s390x,sh4,sparc,tricore,x86,xtensa}=$pkgver-$pkgrel
1078     qemu-user=$pkgver-$pkgrel
1079   )
1080   # TODO: remove conflicts/provides/replaces after 2022-10-01
1081   conflicts=(qemu-arch-extra qemu-headless-arch-extra)
1082   provides=(qemu-arch-extra qemu-headless-arch-extra)
1083   replaces=(qemu-arch-extra qemu-headless-arch-extra)
1086 package_qemu-full() {
1087   pkgdesc="A full QEMU setup"
1088   depends=(
1089     qemu-common=$pkgver-$pkgrel
1090     qemu-audio-{alsa,dbus,jack,oss,pa,sdl,spice}=$pkgver-$pkgrel
1091     qemu-block-{curl,dmg,gluster,iscsi,nfs,ssh}=$pkgver-$pkgrel
1092     qemu-chardev-{baum,spice}=$pkgver-$pkgrel
1093     qemu-docs=$pkgver-$pkgrel
1094     qemu-hw-display-{qxl,virtio-{gpu{,-{gl,pci,pci-gl}},vga{,-gl}}}=$pkgver-$pkgrel
1095     qemu-hw-s390x-virtio-gpu-ccw=$pkgver-$pkgrel
1096     qemu-hw-usb-{host,redirect,smartcard}=$pkgver-$pkgrel
1097     qemu-img=$pkgver-$pkgrel
1098     qemu-pr-helper=$pkgver-$pkgrel
1099     qemu-system-{aarch64,alpha,arm,avr,cris,hppa,loongarch64,m68k,microblaze,mips,nios2,or1k,ppc,riscv,rx,s390x,sh4,sparc,tricore,x86,xtensa}=$pkgver-$pkgrel
1100     qemu-tests=$pkgver-$pkgrel
1101     qemu-tools=$pkgver-$pkgrel
1102     qemu-ui-{curses,dbus,egl-headless,gtk,opengl,sdl,spice-{app,core}}=$pkgver-$pkgrel
1103     qemu-user=$pkgver-$pkgrel
1104     qemu-vhost-user-gpu=$pkgver-$pkgrel
1105     virtiofsd
1106   )
1107   optdepends=("${_qemu_common_optdepends[@]}")
1108   conflicts=(qemu)
1109   provides=(qemu=$pkgver)
1112 # vim:set ts=2 sw=2 et: