PKGBUILDs/extra/qemu/PKGBUILD

1085 lines
37 KiB
Bash
Raw Normal View History

2022-05-09 13:42:41 +00:00
# Maintainer: David Runge <dvzrv@archlinux.org>
# Contributor: Tobias Powalowski <tpowa@archlinux.org>
2016-10-15 15:45:40 +00:00
# Contributor: Sébastien "Seblu" Luttringer <seblu@seblu.net>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
2023-01-24 02:35:06 +00:00
# - remove makedepends on seabios, revert not installing qemu seabios files
# ALARM: Qu Wenruo <wqu@suse.com>
# - remove static build, make qemu-base/qemu-desktop meta packages to use their native system emulator as default dependency
2016-10-15 15:45:40 +00:00
pkgbase=qemu
2021-10-14 17:36:38 +00:00
pkgname=(
2022-05-09 13:42:41 +00:00
qemu-common
2023-08-29 12:51:43 +00:00
qemu-audio-{alsa,dbus,jack,oss,pa,pipewire,sdl,spice}
2022-05-09 13:42:41 +00:00
qemu-block-{curl,dmg,gluster,iscsi,nfs,ssh}
qemu-chardev-{baum,spice}
qemu-docs
2021-10-14 17:36:38 +00:00
qemu-guest-agent
2022-05-09 13:42:41 +00:00
qemu-hw-display-{qxl,virtio-{gpu{,-{gl,pci,pci-gl}},vga{,-gl}}}
qemu-hw-s390x-virtio-gpu-ccw
qemu-hw-usb-{host,redirect,smartcard}
qemu-img
qemu-pr-helper
2022-09-07 23:35:58 +00:00
qemu-system-{aarch64,alpha,arm,avr,cris,hppa,loongarch64,m68k,microblaze,mips,nios2,or1k,ppc,riscv,rx,s390x,sh4,sparc,tricore,x86,xtensa}
2022-10-05 00:14:18 +00:00
qemu-system-{alpha,arm,hppa,microblaze,ppc,riscv,s390x,sparc,x86}-firmware
2022-05-09 13:42:41 +00:00
qemu-tests
qemu-tools
qemu-ui-{curses,dbus,egl-headless,gtk,opengl,sdl,spice-{app,core}}
2023-01-24 02:35:06 +00:00
qemu-user{,-binfmt}
2022-05-09 13:42:41 +00:00
qemu-vhost-user-gpu
qemu-{base,desktop,emulators-full,full}
2021-10-14 17:36:38 +00:00
)
2023-12-25 21:36:58 +00:00
pkgver=8.2.0
2024-01-15 23:21:31 +00:00
pkgrel=3
2016-10-15 15:45:40 +00:00
pkgdesc="A generic and open source machine emulator and virtualizer"
2017-12-18 18:51:07 +00:00
arch=(x86_64)
2022-05-09 13:42:41 +00:00
url="https://www.qemu.org/"
2023-08-29 12:51:43 +00:00
license=(
Apache-2.0
BSD-2-Clause
BSD-3-Clause
2024-01-07 16:00:34 +00:00
CC-BY-3.0
2023-08-29 12:51:43 +00:00
FSFAP
GPL-1.0-or-later
GPL-2.0-only
GPL-2.0-or-later
2023-12-25 21:36:58 +00:00
'GPL-2.0-or-later WITH GCC-exception-2.0'
2023-08-29 12:51:43 +00:00
LGPL-2.0-only
LGPL-2.0-or-later
LGPL-2.1-only
LGPL-2.1-or-later
2024-01-07 16:00:34 +00:00
LicenseRef-Public-Domain
2023-08-29 12:51:43 +00:00
MIT
)
2021-10-14 17:36:38 +00:00
# TODO: consider providing rdma-core
# TODO: consider providing lzfse
2022-05-09 13:42:41 +00:00
# TODO: package systemtap
# TODO: package openbios for qemu-system-{ppc,sparc}
# TODO: package /usr/share/qemu/{efi,pxe}-* for qemu (ipxe)
# TODO: package /usr/share/qemu/slof.bin for qemu-system-ppc (slof)
2021-10-14 17:36:38 +00:00
makedepends=(
alsa-lib
brltty
bzip2
cairo
2022-09-07 23:35:58 +00:00
capstone
2021-10-14 17:36:38 +00:00
curl
dtc
fuse3
gcc-libs
gdk-pixbuf2
glib2
glusterfs
gnutls
gtk3
jack
2023-08-29 12:51:43 +00:00
keyutils
2021-10-14 17:36:38 +00:00
libaio
libbpf
libcacard
libcap-ng
libepoxy
libiscsi
libnfs
2023-08-29 12:51:43 +00:00
libpipewire
2021-10-14 17:36:38 +00:00
libpng
libpulse
libsasl
libseccomp
libslirp
libssh
liburing
libusb
libx11
2024-01-15 23:21:31 +00:00
libxdp
2022-05-09 13:42:41 +00:00
libxml2
2021-10-14 17:36:38 +00:00
libxkbcommon
lzo
mesa
meson
2022-05-09 13:42:41 +00:00
multipath-tools
2021-10-14 17:36:38 +00:00
ncurses
ndctl
2023-01-24 02:35:06 +00:00
numactl
2021-10-14 17:36:38 +00:00
pam
2022-10-01 15:41:56 +00:00
pcre2
2021-10-14 17:36:38 +00:00
python
2023-08-29 12:51:43 +00:00
python-distlib
python-setuptools
python-pip
2021-10-14 17:36:38 +00:00
python-sphinx
python-sphinx_rtd_theme
sdl2
sdl2_image
snappy
spice-protocol
spice
systemd
usbredir
vde2
virglrenderer
vte3
zlib
zstd
)
2022-05-09 13:42:41 +00:00
source=(
https://download.qemu.org/qemu-$pkgver.tar.xz{,.sig}
bridge.conf
qemu-ga.conf
qemu-sysusers.conf
65-kvm.rules
99-qemu-guest-agent.rules
2023-10-06 17:53:11 +00:00
$pkgbase-8.1.1-static_regression.patch
2024-01-07 16:00:34 +00:00
$pkgbase-8.2.0-virtio-gpu_redrawing.patch::https://gitlab.com/qemu-project/qemu/-/commit/9d5b42beb6978dc6219d5dc029c9d453c6b8d503.patch
2024-01-15 23:21:31 +00:00
$pkgbase-8.2.0-fix_tcg.patch
2022-05-09 13:42:41 +00:00
)
2023-12-25 21:36:58 +00:00
sha512sums=('92ec41196ff145cdbb98948f6b6e43214fa4b4419554a8a1927fb4527080c8212ccb703e184baf8ee0bdfa50ad7a84689e8f5a69eba1bd7bbbdfd69e3b91256c'
2016-12-19 00:44:56 +00:00
'SKIP'
2022-05-09 13:42:41 +00:00
'7b412ffa5dcda47b0a4ec9e2c5e5e1d9eaaaf0a087b7ea3ead3e706ba4c9cafb919beadd088a0299b6f7aab753b81a5eafb545b4842ee5f26646d16544dd02a7'
'6e838773d63ae0ffdffe2b891bf611d8f5f3c67a9bc4cbbedf8363c150c2c9971c8e44d92270bc581af40eb0ece02192760bcdd6aee229fff55635f3a4825afa'
'985c2c7a6b5217c87a15b45368089ee91b2f9027b070f9eafa448a18b27ae0d9edd964d52e134b9c1f4aeef4d6aae88afd3f454551ca898affef7f9d28b99b8f'
'bdf05f99407491e27a03aaf845b7cc8acfa2e0e59968236f10ffc905e5e3d5e8569df496fd71c887da2b5b8d1902494520c7da2d3a8258f7fd93a881dd610c99'
2023-08-29 12:51:43 +00:00
'93b905046fcea8a0a89513b9259c222494ab3b91319dde23baebcb40dc17376a56661b159b99785d6e816831974a0f3cbd7b2f7d89e5fc3c258f88f4492f3839'
2024-01-07 16:00:34 +00:00
'c7d086a951e9a378434ea95a843a4b01f0eb2ae430135a81365147cf6806a7ba1b49014a3aa66904970853ba84a4a28dbaded7bccb99a0bc3730572c80fb8b12'
2024-01-15 23:21:31 +00:00
'3f052f87406c47849def7e21900cd9773ed061658e6f568b5918157650e0803c6b9c3bbfec69b577202cc2ce224d1d0339b615e419112f2ac351e44cd9f33539'
'eb6a9c9ba7143b1ff937aeff06b07d6b4b718d92e6623743ecf7f1e50f01d259c2d8f7543f526948a14a865d4478b6dd3dfac56e17f5b27d78fda3380767615e')
2023-12-25 21:36:58 +00:00
b2sums=('a63667042e1e19c635568072d8dcc117320117e81e374a93cfb79e2363ebf505df3217fb098638e53c899eb6f83435221e8031f2aae003c27ec25af8654683b3'
2022-05-09 13:42:41 +00:00
'SKIP'
'b1eca364aa60f130ff5e649f5d004d3fcb75356d3421a4542efdfc410d39b40d9434d15e1dd7bbdbd315cb72b5290d3ea5f77f9c41961a5601cd28ef7bbe72e8'
'2102e4a34e11e406e9606c97e026e7b92e887e296a7f77b9cede1b37119d0df33735f3588628167b2b8e32244c196c491bfab623e2caddac9014d445aa2a6d98'
'69177b962d2fda20cafdbc6226fd017b5ca5a0f69f866d055dc1c744b7b2955059f47c693cfb5b4c863ec159569fdabd4327ab4b8a95566a68cd8ce38e339c7a'
'3559fe9c4f744194939770047a0a02d07ff791c845a80726d0bc7b8c4801ed5f11150e7d5adab813844b3dab1cf38c3a5a87fb6efbb8fc9dccdda9fa56409ed8'
2023-08-29 12:51:43 +00:00
'a9a2bdfeeb44eb86cbe88ac7c65f72800bdb2fd5cecb02f3a258cf9470b52832180aab43c89d481f7fd4d067342a9a27dd6c8a94d625b95d6e2b912e47d274e7'
2024-01-07 16:00:34 +00:00
'209ec05e161d157aaa08a9fcbea45cf87aa22fe9360f9b3c477a78a274e4ecee989c16121f9e6b7765bb479c9db718c98db047c27fd426c127c4c95e28877a16'
2024-01-15 23:21:31 +00:00
'0d5ea661bfc2afe0bb68dce7504f872a2d30a2f46e2463bc7bfb4a0d63f01b3090c42780a221cca00a64b0e5c9a6970d8ba444c6d182d6f4867541da9a993512'
'5dcd51530db4253a3787d49be34988fbe2d240e50f8771123b853bf3413d26fd3a442580f89c009f15dfc48521279bd2302be1eaa329726330c0cf964e3ea6b2')
2020-10-21 13:48:55 +00:00
validpgpkeys=('CEACC9E15534EBABB82D3FA03353C9CEF108B584') # Michael Roth <flukshun@gmail.com>
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
_qemu_system_deps=(
2022-09-07 23:35:58 +00:00
capstone
2022-05-09 13:42:41 +00:00
dtc
fuse3
gcc-libs
2023-03-26 20:51:39 +00:00
glibc
2022-05-09 13:42:41 +00:00
glib2 libgio-2.0.so libglib-2.0.so libgmodule-2.0.so
gnutls
2023-03-26 20:51:39 +00:00
keyutils
2022-05-09 13:42:41 +00:00
libaio
2023-04-25 16:57:20 +00:00
libelf
2022-05-09 13:42:41 +00:00
libbpf libbpf.so
libjpeg-turbo libjpeg.so
libpng
libsasl
libseccomp libseccomp.so
libslirp libslirp.so
liburing liburing.so
2024-01-15 23:21:31 +00:00
libxdp libxdp.so
2022-05-09 13:42:41 +00:00
lzo
ndctl
2023-01-24 02:35:06 +00:00
numactl libnuma.so
2022-05-09 13:42:41 +00:00
pam libpam.so
pixman libpixman-1.so
2022-09-07 23:35:58 +00:00
qemu-common=$pkgver-$pkgrel
2022-05-09 13:42:41 +00:00
snappy
vde2
zlib
zstd libzstd.so
)
2023-08-20 22:52:55 +00:00
_qemu_full_optdepends=(
2023-04-25 16:57:20 +00:00
'qemu-user-static: for static user mode emulation of QEMU targets'
'samba: for SMB/CIFS server support'
)
_qemu_desktop_optdepends=(
2023-08-20 22:52:55 +00:00
"${_qemu_full_optdepends[@]}"
2022-05-09 13:42:41 +00:00
'qemu-block-gluster: for Gluster block driver'
'qemu-block-iscsi: for iSCSI block driver'
'qemu-chardev-baum: for Baum chardev driver'
'qemu-docs: for documentation'
2023-08-20 22:52:55 +00:00
'qemu-emulators-full: for all system emulators'
'qemu-full: for a full QEMU installation'
'qemu-hw-s390x-virtio-gpu-ccw: for s390x-virtio-gpu-ccw display device'
'qemu-pr-helper: for persistent reservation utility'
2022-05-09 13:42:41 +00:00
'qemu-system-aarch64: for AARCH64 system emulator'
'qemu-system-alpha: for Alpha system emulator'
'qemu-system-arm: for ARM system emulator'
'qemu-system-avr: for AVR system emulator'
'qemu-system-cris: for CRIS system emulator'
'qemu-system-hppa: for HPPA system emulator'
'qemu-system-m68k: for ColdFire (m68k) system emulator'
'qemu-system-microblaze: for Microblaze system emulator'
'qemu-system-mips: for MIPS system emulator'
'qemu-system-nios2: for nios2 system emulator'
'qemu-system-or1k: for OpenRisc32 system emulator'
'qemu-system-ppc: for PPC system emulator'
'qemu-system-riscv: for RISC-V system emulator'
'qemu-system-rx: for RX system emulator'
'qemu-system-s390x: for S390 system emulator'
'qemu-system-sh4: for SH4 system emulator'
'qemu-system-sparc: for SPARC system emulator'
'qemu-system-tricore: for tricore system emulator'
'qemu-system-xtensa: for Xtensa system emulator'
'qemu-tests: for QEMU tests'
2023-08-20 22:52:55 +00:00
'qemu-tools: for QEMU tools'
2023-04-25 16:57:20 +00:00
'qemu-user: for user mode emulation of QEMU targets'
)
_qemu_base_optdepends=(
"${_qemu_desktop_optdepends[@]}"
'qemu-audio-alsa: for ALSA audio driver'
'qemu-audio-dbus: for D-Bus audio driver'
'qemu-audio-jack: for JACK audio driver'
'qemu-audio-oss: for OSS audio driver'
'qemu-audio-pa: for PulseAudio audio driver'
2023-08-29 12:51:43 +00:00
'qemu-audio-pipewire: for PipeWire audio driver'
2023-04-25 16:57:20 +00:00
'qemu-audio-sdl: for SDL audio driver'
2023-08-20 22:52:55 +00:00
'qemu-audio-spice: for spice audio driver'
'qemu-block-curl: for curl block driver'
'qemu-block-dmg: for DMG block driver'
'qemu-block-nfs: for NFS block driver'
'qemu-block-ssh: for SSH block driver'
'qemu-chardev-spice: for the spice chardev driver'
'qemu-desktop: for dependencies commonly used on a desktop'
2023-08-29 12:51:43 +00:00
'qemu-hw-display-qxl: for the QXL display device'
2023-08-20 22:52:55 +00:00
'qemu-hw-display-virtio-vga: for the virtio-vga display device'
'qemu-hw-display-virtio-vga-gl: for the virtio-vga-gl display device'
'qemu-hw-display-virtio-gpu: for the virtio-gpu display device'
'qemu-hw-display-virtio-gpu-gl: for the virtio-gpu-gl display device'
'qemu-hw-display-virtio-gpu-pci: for the virtio-gpu-pci display device'
'qemu-hw-display-virtio-gpu-pci-gl: for the virtio-gpu-pci-gl display device'
'qemu-hw-usb-host: for host USB support'
'qemu-hw-usb-redirect: for USB redirect support'
'qemu-hw-usb-smartcard: for USB smartcard support'
'qemu-ui-curses: for ncurses UI driver'
2022-05-09 13:42:41 +00:00
'qemu-ui-dbus: for D-Bus UI driver'
'qemu-ui-egl-headless: for EGL headless UI driver'
'qemu-ui-gtk: for GTK UI driver'
'qemu-ui-opengl: for OpenGL UI driver'
'qemu-ui-sdl: for SDL UI driver'
2023-08-20 22:52:55 +00:00
'qemu-ui-spice-app: for spice app UI driver'
'qemu-ui-spice-core: for spice core UI driver'
2022-05-09 13:42:41 +00:00
'qemu-user: for user mode emulation of QEMU targets'
'qemu-vhost-user-gpu: for vhost-user-gpu display device'
)
_pick() {
local p="$1" f d; shift
for f; do
d="$srcdir/$p/${f#$pkgdir/}"
2023-08-29 12:51:43 +00:00
mkdir -vp "$(dirname "$d")"
mv -v "$f" "$d"
rmdir -vp --ignore-fail-on-non-empty "$(dirname "$f")"
2022-05-09 13:42:41 +00:00
done
}
2016-10-15 15:45:40 +00:00
prepare() {
2023-10-06 17:53:11 +00:00
# fix crash with static binaries: https://gitlab.com/qemu-project/qemu/-/issues/1913
patch -Np1 -d $pkgbase-$pkgver -i ../$pkgbase-8.1.1-static_regression.patch
2024-01-07 16:00:34 +00:00
# fix virtio-gpu redrawingi issues: https://gitlab.com/qemu-project/qemu/-/issues/2051
patch -Np1 -d $pkgbase-$pkgver -i ../$pkgbase-8.2.0-virtio-gpu_redrawing.patch
2024-01-15 23:21:31 +00:00
# fix issue with TCG + EDK2: https://gitlab.com/qemu-project/qemu/-/issues/2070
patch -Np1 -d $pkgbase-$pkgver -i ../$pkgbase-8.2.0-fix_tcg.patch
2022-05-09 13:42:41 +00:00
# extract licenses for TCG
sed -n '1,23p' $pkgbase-$pkgver/tcg/tcg-internal.h > tcg.LICENSE.MIT
sed -n '1,23p' $pkgbase-$pkgver/tcg/arm/tcg-target.c.inc > tcg-arm.LICENSE.MIT
sed -n '1,23p' $pkgbase-$pkgver/tcg/tci/tcg-target.h > tci.LICENSE.MIT
# install qemu-pr-helper.socket to sockets.target
sed -e 's/multi-user.target/sockets.target/g' -i $pkgbase-$pkgver/contrib/systemd/qemu-pr-helper.socket
2022-02-20 17:10:51 +00:00
2022-05-09 13:42:41 +00:00
# create build dir
mkdir -vp build
2016-10-15 15:45:40 +00:00
}
build() {
2023-03-26 20:51:39 +00:00
local common_configure_options=(
--prefix=/usr
--sysconfdir=/etc
--libexecdir=/usr/lib/qemu
--localstatedir=/var
--docdir=/usr/share/doc/qemu
)
local configure_options=(
"${common_configure_options[@]}"
--enable-modules
--enable-sdl
--enable-slirp
--enable-tpm
--smbd=/usr/bin/smbd
--with-coroutine=ucontext
)
2022-09-07 23:35:58 +00:00
2022-05-09 13:42:41 +00:00
(
cd build
2023-03-26 20:51:39 +00:00
../$pkgbase-$pkgver/configure "${configure_options[@]}"
2022-05-09 13:42:41 +00:00
ninja
)
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
}
package_qemu-common() {
2022-12-01 00:31:57 +00:00
local binfmt_conf_options=(
--systemd ALL
--exportdir "$pkgdir/usr/lib/binfmt.d/"
--qemu-path "/usr/bin"
2023-01-20 22:26:29 +00:00
--persistent yes
--preserve-argv0 yes
2022-12-01 00:31:57 +00:00
)
2023-03-26 20:51:39 +00:00
depends=(gcc-libs glibc glib2 libglib-2.0.so libgmodule-2.0.so hicolor-icon-theme libcap-ng libcap-ng.so numactl libnuma.so)
2022-09-07 23:35:58 +00:00
backup=(
etc/$pkgbase/bridge.conf
etc/sasl2/$pkgbase.conf
)
2022-05-09 13:42:41 +00:00
install=$pkgname.install
2022-09-07 23:35:58 +00:00
# install default binaries
2022-05-09 13:42:41 +00:00
meson install -C build --destdir "$pkgdir"
install -vdm 755 "$pkgdir/usr/lib/binfmt.d/"
2022-12-01 00:31:57 +00:00
$pkgbase-$pkgver/scripts/qemu-binfmt-conf.sh "${binfmt_conf_options[@]}"
2022-05-09 13:42:41 +00:00
install -vDm 644 bridge.conf -t "$pkgdir/etc/$pkgbase/"
install -vDm 644 $pkgbase-$pkgver/$pkgbase.sasl "$pkgdir/etc/sasl2/$pkgbase.conf"
install -vDm 644 $pkgbase-$pkgver/LICENSE *LICENSE* -t "$pkgdir/usr/share/licenses/$pkgbase/"
install -vDm 644 $pkgbase-sysusers.conf "$pkgdir/usr/lib/sysusers.d/$pkgbase.conf"
# bridge_helper needs suid: https://bugs.archlinux.org/task/32565
chmod u+s "$pkgdir/usr/lib/qemu/qemu-bridge-helper"
# remoe invalid directory
rm -frv "$pkgdir/var"
# remove unneeded files
find "$pkgdir" -name .buildinfo -delete
2022-12-01 00:31:57 +00:00
# remove files provided by edk2-{aarch64,arm,ovmf}
2022-05-09 13:42:41 +00:00
rm -fv "$pkgdir/usr/share/$pkgbase/"edk2-*
rm -frv "$pkgdir/usr/share/$pkgbase/firmware"
(
# create man page symlinks for all system emulators
cd "$pkgdir/usr/share/man/man1"
2022-10-01 15:41:56 +00:00
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
2022-05-09 13:42:41 +00:00
ln -sv $pkgbase.1.gz "$pkgdir/usr/share/man/man1/$_name.1.gz"
done
2021-10-14 17:36:38 +00:00
)
2022-05-09 13:42:41 +00:00
(
# pick files for all split packages
cd "$pkgdir"
_pick qemu-guest-agent usr/bin/qemu-ga
_pick qemu-guest-agent usr/share/man/man8/qemu-ga.8*
_pick qemu-audio-alsa usr/lib/qemu/audio-alsa.so
_pick qemu-audio-dbus usr/lib/qemu/audio-dbus.so
_pick qemu-audio-jack usr/lib/qemu/audio-jack.so
_pick qemu-audio-oss usr/lib/qemu/audio-oss.so
_pick qemu-audio-pa usr/lib/qemu/audio-pa.so
2023-08-29 12:51:43 +00:00
_pick qemu-audio-pipewire usr/lib/qemu/audio-pipewire.so
2022-05-09 13:42:41 +00:00
_pick qemu-audio-sdl usr/lib/qemu/audio-sdl.so
_pick qemu-audio-spice usr/lib/qemu/audio-spice.so
_pick qemu-block-curl usr/lib/qemu/block-curl.so
_pick qemu-block-dmg usr/lib/qemu/block-dmg*.so
_pick qemu-block-gluster usr/lib/qemu/block-gluster.so
_pick qemu-block-iscsi usr/lib/qemu/block-iscsi.so
_pick qemu-block-nfs usr/lib/qemu/block-nfs.so
_pick qemu-block-ssh usr/lib/qemu/block-ssh.so
_pick qemu-chardev-baum usr/lib/qemu/chardev-baum.so
_pick qemu-chardev-spice usr/lib/qemu/chardev-spice.so
_pick qemu-docs usr/share/doc/qemu
_pick qemu-hw-display-qxl usr/lib/qemu/hw-display-qxl.so
_pick qemu-hw-display-virtio-gpu usr/lib/qemu/hw-display-virtio-gpu.so
_pick qemu-hw-display-virtio-gpu-gl usr/lib/qemu/hw-display-virtio-gpu-gl.so
_pick qemu-hw-display-virtio-gpu-pci usr/lib/qemu/hw-display-virtio-gpu-pci.so
_pick qemu-hw-display-virtio-gpu-pci-gl usr/lib/qemu/hw-display-virtio-gpu-pci-gl.so
_pick qemu-hw-display-virtio-vga usr/lib/qemu/hw-display-virtio-vga.so
_pick qemu-hw-display-virtio-vga-gl usr/lib/qemu/hw-display-virtio-vga-gl.so
_pick qemu-hw-usb-host usr/lib/qemu/hw-usb-host.so
_pick qemu-hw-usb-redirect usr/lib/qemu/hw-usb-redirect.so
_pick qemu-hw-usb-smartcard usr/lib/qemu/hw-usb-smartcard.so
_pick qemu-img usr/bin/qemu-{img,io,nbd,storage-daemon}
_pick qemu-img usr/share/man/man1/qemu-{img,storage-daemon}.1*
_pick qemu-img usr/share/man/man7/qemu-storage-daemon-qmp-ref.7*
_pick qemu-img usr/share/man/man8/qemu-nbd.8*
_pick qemu-pr-helper usr/bin/qemu-pr-helper
_pick qemu-pr-helper usr/share/man/man8/qemu-pr-helper.8*
_pick qemu-hw-s390x-virtio-gpu-ccw usr/lib/qemu/hw-s390x-virtio-gpu-ccw.so
_pick qemu-system-aarch64 usr/bin/qemu-system-aarch64
_pick qemu-system-aarch64 usr/share/man/man1/qemu-system-aarch64.1*
_pick qemu-system-alpha usr/bin/qemu-system-alpha
_pick qemu-system-alpha usr/share/man/man1/qemu-system-alpha.1*
2022-10-01 15:41:56 +00:00
_pick qemu-system-alpha-firmware usr/share/qemu/palcode-clipper
2022-05-09 13:42:41 +00:00
_pick qemu-system-arm usr/bin/qemu-system-arm
_pick qemu-system-arm usr/share/man/man1/qemu-system-arm.1*
2022-10-01 15:41:56 +00:00
_pick qemu-system-arm-firmware usr/share/qemu/npcm7xx_bootrom.bin
2022-05-09 13:42:41 +00:00
_pick qemu-system-avr usr/bin/qemu-system-avr
_pick qemu-system-avr usr/share/man/man1/qemu-system-avr.1*
_pick qemu-system-cris usr/bin/qemu-system-cris
_pick qemu-system-cris usr/share/man/man1/qemu-system-cris.1*
_pick qemu-system-hppa usr/bin/qemu-system-hppa
_pick qemu-system-hppa usr/share/man/man1/qemu-system-hppa.1*
2022-10-01 15:41:56 +00:00
_pick qemu-system-hppa-firmware usr/share/qemu/hppa-firmware.img
2022-09-07 23:35:58 +00:00
_pick qemu-system-loongarch64 usr/bin/qemu-system-loongarch64
2022-10-01 15:41:56 +00:00
_pick qemu-system-loongarch64 usr/share/man/man1/qemu-system-loongarch64.1*
2022-05-09 13:42:41 +00:00
_pick qemu-system-m68k usr/bin/qemu-system-m68k
_pick qemu-system-m68k usr/share/man/man1/qemu-system-m68k.1*
_pick qemu-system-microblaze usr/bin/qemu-system-microblaze{,el}
_pick qemu-system-microblaze usr/share/man/man1/qemu-system-microblaze{,el}.1*
2022-10-01 15:41:56 +00:00
_pick qemu-system-microblaze-firmware usr/share/qemu/petalogix-*.dtb
2022-05-09 13:42:41 +00:00
_pick qemu-system-mips usr/bin/qemu-system-mips{,64,64el,el}
_pick qemu-system-mips usr/share/man/man1/qemu-system-mips{,64,64el,el}.1*
_pick qemu-system-nios2 usr/bin/qemu-system-nios2
_pick qemu-system-nios2 usr/share/man/man1/qemu-system-nios2.1*
_pick qemu-system-or1k usr/bin/qemu-system-or1k
_pick qemu-system-or1k usr/share/man/man1/qemu-system-or1k.1*
_pick qemu-system-ppc usr/bin/qemu-system-ppc{,64}
2022-10-01 15:41:56 +00:00
_pick qemu-system-ppc usr/share/man/man1/qemu-system-ppc{,64}.1*
_pick qemu-system-ppc-firmware usr/share/qemu/{bamboo,canyonlands}.dtb
2022-05-09 13:42:41 +00:00
# NOTE: needs to be replaced by openbios
2022-10-01 15:41:56 +00:00
_pick qemu-system-ppc-firmware usr/share/qemu/openbios-ppc
_pick qemu-system-ppc-firmware usr/share/qemu/qemu_vga.ndrv
_pick qemu-system-ppc-firmware usr/share/qemu/skiboot.lid
2022-05-09 13:42:41 +00:00
# NOTE: needs to be replaced by slof
2022-10-01 15:41:56 +00:00
_pick qemu-system-ppc-firmware usr/share/qemu/slof.bin
_pick qemu-system-ppc-firmware usr/share/qemu/u-boot.e500
_pick qemu-system-ppc-firmware usr/share/qemu/u-boot-sam460-20100605.bin
2022-05-09 13:42:41 +00:00
_pick qemu-system-riscv usr/bin/qemu-system-riscv{32,64}
_pick qemu-system-riscv usr/share/man/man1/qemu-system-riscv{32,64}.1*
2022-10-01 15:41:56 +00:00
_pick qemu-system-riscv-firmware usr/share/qemu/opensbi-riscv{32,64}*.bin
2022-05-09 13:42:41 +00:00
_pick qemu-system-rx usr/bin/qemu-system-rx
_pick qemu-system-rx usr/share/man/man1/qemu-system-rx.1*
_pick qemu-system-s390x usr/bin/qemu-system-s390x
_pick qemu-system-s390x usr/share/man/man1/qemu-system-s390x.1*
2022-10-01 15:41:56 +00:00
_pick qemu-system-s390x-firmware usr/share/qemu/s390-{ccw,netboot}.img
2022-05-09 13:42:41 +00:00
_pick qemu-system-sh4 usr/bin/qemu-system-sh4{,eb}
_pick qemu-system-sh4 usr/share/man/man1/qemu-system-sh4{,eb}.1*
_pick qemu-system-sparc usr/bin/qemu-system-sparc{,64}
_pick qemu-system-sparc usr/share/man/man1/qemu-system-sparc{,64}.1*
2022-10-01 15:41:56 +00:00
# NOTE: needs to be replaced by openbios
_pick qemu-system-sparc-firmware usr/share/qemu/openbios-sparc{32,64}
_pick qemu-system-sparc-firmware usr/share/qemu/QEMU,{cgthree,tcx}.bin
2022-05-09 13:42:41 +00:00
_pick qemu-system-tricore usr/bin/qemu-system-tricore
_pick qemu-system-tricore usr/share/man/man1/qemu-system-tricore.1*
_pick qemu-system-x86 usr/bin/qemu-system-{i386,x86_64}
_pick qemu-system-x86 usr/lib/qemu/accel-tcg-{i386,x86_64}.so
_pick qemu-system-x86 usr/share/man/man1/qemu-system-{i386,x86_64}.1*
2022-10-01 15:41:56 +00:00
_pick qemu-system-x86-firmware usr/share/qemu/{kvmvapic,linuxboot,multiboot{,_dma},pvh}.bin
_pick qemu-system-x86-firmware usr/share/qemu/qboot.rom
2022-05-09 13:42:41 +00:00
_pick qemu-system-xtensa usr/bin/qemu-system-xtensa{,eb}
_pick qemu-system-xtensa usr/share/man/man1/qemu-system-xtensa{,eb}.1*
_pick qemu-tests usr/lib/qemu/accel-qtest-*.so
_pick qemu-tools usr/bin/{elf2dmp,qemu-{edid,keymap}}
_pick qemu-tools usr/share/qemu/trace-events-all
_pick qemu-ui-curses usr/lib/qemu/ui-curses.so
_pick qemu-ui-dbus usr/lib/qemu/ui-dbus.so
_pick qemu-ui-egl-headless usr/lib/qemu/ui-egl-headless.so
_pick qemu-ui-gtk usr/lib/qemu/ui-gtk.so
_pick qemu-ui-opengl usr/lib/qemu/ui-opengl.so
_pick qemu-ui-sdl usr/lib/qemu/ui-sdl.so
_pick qemu-ui-spice-app usr/lib/qemu/ui-spice-app.so
_pick qemu-ui-spice-core usr/lib/qemu/ui-spice-core.so
2022-09-07 23:35:58 +00:00
_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}}
2022-10-01 15:41:56 +00:00
_pick qemu-user-binfmt usr/lib/binfmt.d/*.conf
2022-05-09 13:42:41 +00:00
_pick qemu-vhost-user-gpu usr/lib/qemu/vhost-user-gpu
_pick qemu-vhost-user-gpu usr/share/qemu/vhost-user/50-qemu-gpu.json
2021-10-14 17:36:38 +00:00
)
2022-05-09 13:42:41 +00:00
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-audio-alsa() {
pkgdesc="QEMU ALSA audio driver"
2022-09-07 23:35:58 +00:00
depends=(alsa-lib libasound.so glibc qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
2016-10-15 15:45:40 +00:00
}
2022-05-09 13:42:41 +00:00
package_qemu-audio-dbus() {
pkgdesc="QEMU D-Bus audio driver"
2022-09-07 23:35:58 +00:00
depends=(gcc-libs glib2 libgio-2.0.so libgobject-2.0.so libglib-2.0.so glibc qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-audio-jack() {
pkgdesc="QEMU JACK audio driver"
2023-12-25 21:36:58 +00:00
depends=(gcc-libs glibc jack libjack.so qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-audio-oss() {
pkgdesc="QEMU OSS audio driver"
2022-09-07 23:35:58 +00:00
depends=(glibc qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-audio-pa() {
pkgdesc="QEMU PulseAudio audio driver"
2022-09-07 23:35:58 +00:00
depends=(glibc libpulse libpulse.so qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2023-08-29 12:51:43 +00:00
package_qemu-audio-pipewire() {
pkgdesc="QEMU PipeWire audio driver"
depends=(gcc-libs glibc libpipewire libpipewire-0.3.so qemu-common=$pkgver-$pkgrel)
mv -v $pkgname/* "$pkgdir"
}
2022-05-09 13:42:41 +00:00
package_qemu-audio-sdl() {
pkgdesc="QEMU SDL audio driver"
2022-09-07 23:35:58 +00:00
depends=(glibc qemu-common=$pkgver-$pkgrel sdl2)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-audio-spice() {
pkgdesc="QEMU spice audio driver"
2022-09-07 23:35:58 +00:00
depends=(glibc qemu-common=$pkgver-$pkgrel qemu-ui-spice-core=$pkgver-$pkgrel spice libspice-server.so)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-block-curl() {
pkgdesc="QEMU curl block driver"
2022-09-07 23:35:58 +00:00
depends=(curl libcurl.so gcc-libs glibc qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-block-dmg() {
pkgdesc="QEMU DMG block driver"
2022-09-07 23:35:58 +00:00
depends=(bzip2 libbz2.so glibc qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-block-gluster() {
pkgdesc="QEMU Gluster block driver"
2022-09-07 23:35:58 +00:00
depends=(glibc glusterfs qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-block-iscsi() {
pkgdesc="QEMU iSCSI block driver"
2022-09-07 23:35:58 +00:00
depends=(gcc-libs glibc libiscsi qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-block-nfs() {
pkgdesc="QEMU NFS block driver"
2022-09-07 23:35:58 +00:00
depends=(gcc-libs glibc libnfs qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-block-ssh() {
pkgdesc="QEMU SSH block driver"
2022-09-07 23:35:58 +00:00
depends=(gcc-libs glibc libssh libssh.so qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-chardev-baum() {
pkgdesc="QEMU Baum chardev driver"
2023-03-26 20:51:39 +00:00
depends=(brltty libbrlapi.so gcc-libs glibc qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-chardev-spice() {
pkgdesc="QEMU spice chardev driver"
2023-08-29 12:51:43 +00:00
depends=(glibc qemu-common=$pkgver-$pkgrel qemu-ui-spice-core=$pkgver-$pkgrel spice libspice-server.so)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-docs() {
pkgdesc+=" - documentation"
mv -v $pkgname/* "$pkgdir"
}
package_qemu-guest-agent() {
pkgdesc="QEMU Guest Agent"
2023-03-26 20:51:39 +00:00
depends=(gcc-libs glib2 libglib-2.0.so libgmodule-2.0.so glibc liburing liburing.so numactl libnuma.so sh systemd-libs libudev.so)
2022-05-09 13:42:41 +00:00
backup=(
etc/$pkgbase/$pkgbase-ga.conf
etc/$pkgbase/fsfreeze-hook
2021-10-14 17:36:38 +00:00
)
2022-05-09 13:42:41 +00:00
install=$pkgname.install
mv -v $pkgname/* "$pkgdir"
install -vDm 644 $pkgbase-$pkgver/contrib/systemd/$pkgname.service -t "$pkgdir/usr/lib/systemd/system/"
install -vDm 644 99-$pkgname.rules -t "$pkgdir/usr/lib/udev/rules.d/"
install -vDm 644 $pkgbase-ga.conf -t "$pkgdir/etc/$pkgbase/"
2022-09-07 23:35:58 +00:00
install -vDm 755 $pkgbase-$pkgver/scripts/$pkgname/fsfreeze-hook -t "$pkgdir/etc/$pkgbase/"
2022-05-09 13:42:41 +00:00
install -vdm 755 "$pkgdir/etc/$pkgbase/fsfreeze-hook.d"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-hw-display-qxl() {
pkgdesc="QEMU QXL display device"
2022-09-07 23:35:58 +00:00
depends=(gcc-libs glibc pixman libpixman-1.so qemu-common=$pkgver-$pkgrel qemu-ui-spice-core=$pkgver-$pkgrel spice libspice-server.so)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
2016-10-15 15:45:40 +00:00
}
2022-05-09 13:42:41 +00:00
package_qemu-hw-display-virtio-gpu() {
pkgdesc="QEMU virtio-gpu display device"
2022-09-07 23:35:58 +00:00
depends=(glibc pixman libpixman-1.so qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-hw-display-virtio-gpu-gl() {
pkgdesc="QEMU virtio-gpu-gl display device"
2022-09-07 23:35:58 +00:00
depends=(glibc qemu-common=$pkgver-$pkgrel virglrenderer)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-hw-display-virtio-gpu-pci() {
pkgdesc="QEMU virtio-gpu-pci display device"
2022-09-07 23:35:58 +00:00
depends=(qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-hw-display-virtio-gpu-pci-gl() {
pkgdesc="QEMU virtio-gpu-pci-gl display device"
2022-09-07 23:35:58 +00:00
depends=(qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-hw-display-virtio-vga() {
pkgdesc="QEMU virtio-vga display device"
2022-09-07 23:35:58 +00:00
depends=(qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-hw-display-virtio-vga-gl() {
pkgdesc="QEMU virtio-vga-gl display device"
2022-09-07 23:35:58 +00:00
depends=(qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-hw-s390x-virtio-gpu-ccw() {
pkgdesc="QEMU s390x-virtio-gpu-ccw display device"
2022-09-07 23:35:58 +00:00
depends=(qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-system-aarch64() {
pkgdesc="QEMU system emulator for AARCH64"
2023-01-24 02:35:06 +00:00
depends=("${_qemu_system_deps[@]}" systemd-libs libudev.so)
optdepends=(edk2-armvirt)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-system-alpha() {
pkgdesc="QEMU system emulator for Alpha"
2022-10-05 00:14:18 +00:00
depends=("${_qemu_system_deps[@]}" qemu-system-alpha-firmware=$pkgver-$pkgrel systemd-libs libudev.so)
2022-10-01 15:41:56 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-system-alpha-firmware() {
pkgdesc="Firmware for QEMU system emulator for Alpha"
options=(!strip)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-system-arm() {
pkgdesc="QEMU system emulator for ARM"
2022-12-01 00:31:57 +00:00
depends=("${_qemu_system_deps[@]}" edk2-arm qemu-system-arm-firmware=$pkgver-$pkgrel systemd-libs libudev.so)
2022-10-01 15:41:56 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-system-arm-firmware() {
pkgdesc="Firmware for QEMU system emulator for ARM"
options=(!strip)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-system-avr() {
pkgdesc="QEMU system emulator for AVR"
depends=("${_qemu_system_deps[@]}")
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-system-cris() {
pkgdesc="QEMU system emulator for CRIS"
depends=("${_qemu_system_deps[@]}")
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-system-hppa() {
pkgdesc="QEMU system emulator for HPPA"
2022-10-05 00:14:18 +00:00
depends=("${_qemu_system_deps[@]}" qemu-system-hppa-firmware=$pkgver-$pkgrel systemd-libs libudev.so)
2022-10-01 15:41:56 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-system-hppa-firmware() {
pkgdesc="Firmware for QEMU system emulator for HPPA"
options=(!strip)
2022-09-07 23:35:58 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-system-loongarch64() {
pkgdesc="QEMU system emulator for LoongArch64"
2023-03-26 20:51:39 +00:00
depends=("${_qemu_system_deps[@]}" systemd-libs)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-system-m68k() {
pkgdesc="QEMU system emulator for ColdFire (m68k)"
depends=("${_qemu_system_deps[@]}")
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-system-microblaze() {
pkgdesc="QEMU system emulator for Microblaze"
2022-10-05 00:14:18 +00:00
depends=("${_qemu_system_deps[@]}" qemu-system-microblaze-firmware=$pkgver-$pkgrel)
2022-10-01 15:41:56 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-system-microblaze-firmware() {
pkgdesc="Firmware for QEMU system emulator for Microblaze"
options=(!strip)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2020-05-06 20:52:15 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-system-mips() {
pkgdesc="QEMU system emulator for MIPS"
depends=("${_qemu_system_deps[@]}" systemd-libs libudev.so)
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-system-nios2() {
pkgdesc="QEMU system emulator for nios2"
depends=("${_qemu_system_deps[@]}")
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-system-or1k() {
pkgdesc="QEMU system emulator for OpenRisc32"
2023-03-26 20:51:39 +00:00
depends=("${_qemu_system_deps[@]}" systemd-libs)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-system-ppc() {
pkgdesc="QEMU system emulator for PPC"
2022-10-05 00:14:18 +00:00
depends=("${_qemu_system_deps[@]}" qemu-system-ppc-firmware=$pkgver-$pkgrel systemd-libs libudev.so)
2022-10-01 15:41:56 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-system-ppc-firmware() {
pkgdesc="Firmware for QEMU system emulator for PPC"
2022-09-11 19:08:44 +00:00
options=(!strip)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2020-05-06 20:52:15 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-system-riscv() {
pkgdesc="QEMU system emulator for RISC-V"
2022-10-05 00:14:18 +00:00
depends=("${_qemu_system_deps[@]}" qemu-system-riscv-firmware=$pkgver-$pkgrel systemd-libs libudev.so)
2022-10-01 15:41:56 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-system-riscv-firmware() {
pkgdesc="Firmware for QEMU system emulator for RISC-V"
options=(!strip)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2020-05-06 20:52:15 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-system-rx() {
pkgdesc="QEMU system emulator for RX"
depends=("${_qemu_system_deps[@]}")
mv -v $pkgname/* "$pkgdir"
2016-10-15 15:45:40 +00:00
}
2022-05-09 13:42:41 +00:00
package_qemu-system-s390x() {
pkgdesc="QEMU system emulator for S390"
2023-08-29 12:51:43 +00:00
depends=("${_qemu_system_deps[@]}" qemu-system-s390x-firmware=$pkgver-$pkgrel systemd-libs libudev.so)
2022-10-05 00:14:18 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-system-s390x-firmware() {
pkgdesc="Firmware for QEMU system emulator for S390"
options=(!strip)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-system-sh4() {
pkgdesc="QEMU system emulator for SH4"
depends=("${_qemu_system_deps[@]}" systemd-libs libudev.so)
mv -v $pkgname/* "$pkgdir"
}
package_qemu-system-sparc() {
pkgdesc="QEMU system emulator for SPARC"
2022-10-05 00:14:18 +00:00
depends=("${_qemu_system_deps[@]}" qemu-system-sparc-firmware=$pkgver-$pkgrel systemd-libs libudev.so)
2022-10-01 15:41:56 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-system-sparc-firmware() {
pkgdesc="Firmware for QEMU system emulator for SPARC"
options=(!strip)
2022-05-09 13:42:41 +00:00
# NOTE: will require openbios
mv -v $pkgname/* "$pkgdir"
}
package_qemu-system-tricore() {
pkgdesc="QEMU system emulator for tricore"
depends=("${_qemu_system_deps[@]}")
mv -v $pkgname/* "$pkgdir"
}
package_qemu-system-x86() {
pkgdesc="QEMU system emulator for x86"
2022-10-05 00:14:18 +00:00
depends=("${_qemu_system_deps[@]}" edk2-ovmf qemu-system-x86-firmware=$pkgver-$pkgrel seabios systemd-libs libudev.so)
2022-10-01 15:41:56 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-system-x86-firmware() {
pkgdesc="Firmware for QEMU system emulator for x86"
options=(!strip)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-system-xtensa() {
pkgdesc="QEMU system emulator for Xtensa"
depends=("${_qemu_system_deps[@]}" systemd-libs libudev.so)
mv -v $pkgname/* "$pkgdir"
}
package_qemu-hw-usb-host() {
pkgdesc="QEMU USB host device"
2022-09-07 23:35:58 +00:00
depends=(glibc libusb libusb-1.0.so qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-hw-usb-redirect() {
pkgdesc="QEMU usbredir device"
2022-09-07 23:35:58 +00:00
depends=(gcc-libs glibc qemu-common=$pkgver-$pkgrel usbredir)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
2016-10-15 15:45:40 +00:00
}
2022-05-09 13:42:41 +00:00
package_qemu-hw-usb-smartcard() {
pkgdesc="QEMU USB smartcard device"
2022-09-07 23:35:58 +00:00
depends=(gcc-libs libcacard glib2 libglib-2.0.so glibc qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-img() {
pkgdesc="QEMU tooling for manipulating disk images"
2022-12-19 02:55:59 +00:00
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)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-pr-helper() {
pkgdesc="QEMU persistent reservation utility"
2023-03-26 20:51:39 +00:00
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)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
install -vDm 644 $pkgbase-$pkgver/contrib/systemd/$pkgname.{service,socket} -t "$pkgdir/usr/lib/systemd/system/"
}
package_qemu-tests() {
pkgdesc="QEMU tests"
2022-09-07 23:35:58 +00:00
depends=(qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-tools() {
pkgdesc="QEMU tools"
2022-12-19 02:55:59 +00:00
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)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
install -vDm 644 $pkgbase-$pkgver/scripts/dump-guest-memory.py -t "$pkgdir/usr/share/$pkgbase/"
install -vDm 755 $pkgbase-$pkgver/scripts/simpletrace.py -t "$pkgdir/usr/share/$pkgbase/"
install -vDm 644 $pkgbase-$pkgver/scripts/tracetool/*.py -t "$pkgdir/usr/share/$pkgbase/tracetool/"
install -vDm 644 $pkgbase-$pkgver/scripts/tracetool/backend/*.py -t "$pkgdir/usr/share/$pkgbase/tracetool/backend/"
install -vDm 644 $pkgbase-$pkgver/scripts/tracetool/format/*.py -t "$pkgdir/usr/share/$pkgbase/tracetool/format/"
}
package_qemu-ui-curses() {
pkgdesc="QEMU curses UI driver"
2022-09-07 23:35:58 +00:00
depends=(gcc-libs glib2 libglib-2.0.so glibc ncurses libncursesw.so qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-ui-dbus() {
pkgdesc="QEMU D-Bus UI driver"
2022-09-07 23:35:58 +00:00
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)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-ui-egl-headless() {
pkgdesc="QEMU EGL headless UI driver"
2023-12-25 21:36:58 +00:00
depends=(glibc libepoxy pixman libpixman-1.so qemu-common=$pkgver-$pkgrel qemu-ui-opengl=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-ui-gtk() {
pkgdesc="QEMU GTK UI driver"
2021-10-14 17:36:38 +00:00
depends=(
2022-05-09 13:42:41 +00:00
cairo
gdk-pixbuf2 libgdk_pixbuf-2.0.so
glib2 libgobject-2.0.so libglib-2.0.so
glibc
gtk3 libgdk-3.so libgtk-3.so
libepoxy
libx11
2021-10-14 17:36:38 +00:00
pixman libpixman-1.so
2022-09-07 23:35:58 +00:00
qemu-common=$pkgver-$pkgrel
2022-05-09 13:42:41 +00:00
qemu-ui-opengl
vte3 libvte-2.91.so
2021-10-14 17:36:38 +00:00
)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-ui-opengl() {
pkgdesc="QEMU OpenGL UI driver"
2023-04-25 16:57:20 +00:00
depends=(gcc-libs glibc libepoxy mesa pixman libpixman-1.so qemu-common=$pkgver-$pkgrel)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
2016-10-15 15:45:40 +00:00
}
2022-05-09 13:42:41 +00:00
package_qemu-ui-sdl() {
pkgdesc="QEMU SDL UI driver"
2022-09-07 23:35:58 +00:00
depends=(glib2 libglib-2.0.so glibc libx11 pixman libpixman-1.so qemu-common=$pkgver-$pkgrel sdl2_image sdl2)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-ui-spice-app() {
pkgdesc="QEMU spice app UI driver"
2022-09-07 23:35:58 +00:00
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)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
2016-10-15 15:45:40 +00:00
}
2022-05-09 13:42:41 +00:00
package_qemu-ui-spice-core() {
pkgdesc="QEMU spice core UI driver"
2022-09-07 23:35:58 +00:00
depends=(gcc-libs glibc pixman libpixman-1.so qemu-common=$pkgver-$pkgrel qemu-ui-opengl=$pkgver-$pkgrel spice libspice-server.so)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-user() {
pkgdesc="QEMU user mode emulation"
2023-04-25 16:57:20 +00:00
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)
2022-10-01 15:41:56 +00:00
optdepends=('qemu-user-binfmt: for binary format rules')
mv -v $pkgname/* "$pkgdir"
}
package_qemu-user-binfmt() {
pkgdesc="Binary format rules for QEMU user mode emulation"
2022-10-05 00:14:18 +00:00
depends=(qemu-user=$pkgver-$pkgrel)
2022-10-01 15:41:56 +00:00
provides=(qemu-user-binfmt-provider)
conflicts=(qemu-user-binfmt-provider)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
2016-10-15 15:45:40 +00:00
}
2022-05-09 13:42:41 +00:00
package_qemu-vhost-user-gpu() {
pkgdesc="QEMU vhost-user-gpu display device"
2023-03-26 20:51:39 +00:00
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)
2022-05-09 13:42:41 +00:00
mv -v $pkgname/* "$pkgdir"
}
package_qemu-base() {
pkgdesc="A basic QEMU setup for headless environments"
depends=(
2022-09-07 23:35:58 +00:00
qemu-common=$pkgver-$pkgrel
qemu-img=$pkgver-$pkgrel
2023-04-25 16:57:20 +00:00
virtiofsd
2022-05-09 13:42:41 +00:00
)
2023-01-24 02:35:06 +00:00
# Add the native target as the dependency.
if [ $CARCH == "x86_64" ]; then
depends+=(qemu-system-x86=$pkgver-$pkgrel)
elif [ $CARCH == "aarch64" ]; then
depends+=(qemu-system-aarch64=$pkgver-$pkgrel)
elif [ $CARCH == "arm" ]; then
depends+=(qemu-system-arm=$pkgver-$pkgrel)
fi
2023-04-25 16:57:20 +00:00
optdepends=("${_qemu_base_optdepends[@]}")
2023-08-20 22:52:55 +00:00
provides=(qemu=$pkgver)
2022-05-09 13:42:41 +00:00
}
package_qemu-desktop() {
pkgdesc="A QEMU setup for desktop environments"
depends=(
2023-08-20 22:52:55 +00:00
qemu-base=$pkgver-$pkgrel
2023-08-29 12:51:43 +00:00
qemu-audio-{alsa,dbus,jack,oss,pa,pipewire,sdl,spice}=$pkgver-$pkgrel
2022-09-07 23:35:58 +00:00
qemu-block-{curl,dmg,nfs,ssh}=$pkgver-$pkgrel
qemu-chardev-spice=$pkgver-$pkgrel
qemu-hw-display-{qxl,virtio-gpu{,-{gl,pci,pci-gl}}}=$pkgver-$pkgrel
qemu-hw-display-virtio-vga{,-gl}=$pkgver-$pkgrel
qemu-hw-usb-{host,redirect,smartcard}=$pkgver-$pkgrel
qemu-ui-{curses,dbus,egl-headless,gtk,opengl,sdl,spice-{app,core}}=$pkgver-$pkgrel
qemu-vhost-user-gpu=$pkgver-$pkgrel
2022-05-09 13:42:41 +00:00
)
2023-01-24 02:35:06 +00:00
# Add the native target as the dependency.
if [ $CARCH == "x86_64" ]; then
depends+=(qemu-system-x86=$pkgver-$pkgrel)
elif [ $CARCH == "aarch64" ]; then
depends+=(qemu-system-aarch64=$pkgver-$pkgrel)
elif [ $CARCH == "arm" ]; then
depends+=(qemu-system-arm=$pkgver-$pkgrel)
fi
2023-04-25 16:57:20 +00:00
optdepends=("${_qemu_desktop_optdepends[@]}")
2022-05-09 13:42:41 +00:00
provides=(qemu=$pkgver)
}
2016-10-15 15:45:40 +00:00
2022-05-09 13:42:41 +00:00
package_qemu-emulators-full() {
pkgdesc="All QEMU user mode and system emulators"
depends=(
2022-09-07 23:35:58 +00:00
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
qemu-user=$pkgver-$pkgrel
2022-05-09 13:42:41 +00:00
)
}
package_qemu-full() {
pkgdesc="A full QEMU setup"
depends=(
2022-09-07 23:35:58 +00:00
qemu-audio-{alsa,dbus,jack,oss,pa,sdl,spice}=$pkgver-$pkgrel
2023-08-20 22:52:55 +00:00
qemu-block-{gluster,iscsi}=$pkgver-$pkgrel
qemu-chardev-baum=$pkgver-$pkgrel
qemu-desktop=$pkgver-$pkgrel
2022-09-07 23:35:58 +00:00
qemu-docs=$pkgver-$pkgrel
2023-08-20 22:52:55 +00:00
qemu-emulators-full=$pkgver-$pkgrel
2022-09-07 23:35:58 +00:00
qemu-hw-s390x-virtio-gpu-ccw=$pkgver-$pkgrel
qemu-pr-helper=$pkgver-$pkgrel
qemu-tests=$pkgver-$pkgrel
qemu-tools=$pkgver-$pkgrel
qemu-user=$pkgver-$pkgrel
2022-05-09 13:42:41 +00:00
)
2023-08-20 22:52:55 +00:00
optdepends=("${_qemu_full_optdepends[@]}")
2022-05-09 13:42:41 +00:00
provides=(qemu=$pkgver)
2016-10-15 15:45:40 +00:00
}
# vim:set ts=2 sw=2 et: