diff options
-rw-r--r-- | .SRCINFO | 62 | ||||
-rw-r--r-- | PKGBUILD | 137 | ||||
-rw-r--r-- | qemu-ga.service | 8 |
3 files changed, 128 insertions, 79 deletions
@@ -1,5 +1,5 @@ pkgbase = qemu-git - pkgver = 2.4.r40384.g2d69736 + pkgver = 2.5.r40527.g7df9671 pkgrel = 1 url = http://wiki.qemu.org/ arch = i686 @@ -39,55 +39,41 @@ pkgbase = qemu-git makedepends = perl makedepends = numactl source = git://git.qemu.org/qemu.git + source = qemu.sysusers + source = qemu-ga.service source = 65-kvm.rules source = qemu.install - source = qemu.sysusers sha256sums = SKIP + sha256sums = dd43e2ef062b071a0b9d0d5ea54737f41600ca8a84a8aefbebb1ff09f978acfb + sha256sums = 0b4f3283973bb3bc876735f051d8eaab68f0065502a3a5012141fad193538ea1 sha256sums = 60dcde5002c7c0b983952746e6fb2cf06d6c5b425d64f340f819356e561e7fc7 sha256sums = 0df69a77645c9a05f98635773666b6212084525d7801ef8382242b06baebe5aa - sha256sums = dd43e2ef062b071a0b9d0d5ea54737f41600ca8a84a8aefbebb1ff09f978acfb pkgname = qemu-git pkgdesc = A generic and open source processor emulator which achieves a good emulation speed by using dynamic translation. Git version. install = qemu.install - depends = glibc depends = pixman depends = libjpeg depends = libpng depends = sdl - depends = alsa-lib - depends = nss - depends = glib2 + depends = libgl depends = gnutls depends = bluez-libs - depends = vde2 - depends = util-linux - depends = libsasl - depends = libgl - depends = seabios - depends = libcap - depends = libcap-ng - depends = libaio - depends = libseccomp depends = libcacard depends = usbredir depends = lzo depends = snappy - depends = gcc-libs - depends = zlib - depends = bzip2 - depends = nspr - depends = ncurses - depends = libx11 - depends = libusb depends = libpulse - depends = libssh2 - depends = curl + depends = dtc + depends = numactl + depends = libnfs + depends = libepoxy optdepends = ovmf: Tianocore UEFI firmware for qemu optdepends = samba: SMB/CIFS server support - optdepends = qemu-block-iscsi: iSCSI block support - optdepends = qemu-block-rbd: RBD block support - optdepends = qemu-block-gluster: glusterfs block support + optdepends = qemu-arch-extra-git: extra architectures support + optdepends = qemu-block-iscsi-git: iSCSI block support + optdepends = qemu-block-rbd-git: RBD block support + optdepends = qemu-block-gluster-git: glusterfs block support provides = qemu provides = qemu-kvm provides = qemu-spice @@ -100,11 +86,17 @@ pkgname = qemu-git conflicts = seabios conflicts = seabios-git options = !strip - backup = etc/qemu/target-x86_64.conf + +pkgname = qemu-arch-extra-git + pkgdesc = QEMU with full support for non x86 architectures. Git version + depends = glib2 + depends = qemu-git + provides = qemu-arch-extra + conflicts = qemu-arch-extra + options = !strip pkgname = qemu-block-iscsi-git pkgdesc = QEMU iSCSI block module. Git version. - depends = glibc depends = glib2 depends = libiscsi provides = qemu-block-iscsi @@ -112,7 +104,6 @@ pkgname = qemu-block-iscsi-git pkgname = qemu-block-rbd-git pkgdesc = QEMU RBD block module. Git version. - depends = glibc depends = glib2 depends = ceph provides = qemu-block-rbd @@ -120,18 +111,21 @@ pkgname = qemu-block-rbd-git pkgname = qemu-block-gluster-git pkgdesc = QEMU GlusterFS block module. Git version. - depends = glibc depends = glib2 depends = glusterfs provides = qemu-block-gluster conflicts = qemu-block-gluster +pkgname = qemu-guest-agent-git + pkgdesc = QEMU Guest Agent. Git version + depends = glib2 + provides = qemu-guest-agent + conflicts = qemu-guest-agent + pkgname = libcacard-git pkgdesc = Common Access Card (CAC) Emulation. Git version. - depends = glibc depends = nss depends = nspr - depends = glib2 provides = libcacard conflicts = libcacard @@ -7,11 +7,13 @@ pkgbase=qemu-git _gitname=qemu pkgname=('qemu-git' + 'qemu-arch-extra-git' 'qemu-block-iscsi-git' 'qemu-block-rbd-git' 'qemu-block-gluster-git' + 'qemu-guest-agent-git' 'libcacard-git') -pkgver=2.4.r40384.g2d69736 +pkgver=2.5.r40527.g7df9671 pkgrel=1 arch=('i686' 'x86_64') license=('GPL2' 'LGPL2.1') @@ -23,17 +25,27 @@ makedepends=('pixman' 'libjpeg' 'libpng' 'sdl' 'alsa-lib' 'nss' 'glib2' 'usbredir' 'ceph' 'glusterfs' 'libssh2' 'lzo' 'snappy' 'dtc' 'libepoxy' 'git' 'texi2html' 'perl' 'numactl') source=(git://git.qemu.org/qemu.git + qemu.sysusers + qemu-ga.service 65-kvm.rules - qemu.install - qemu.sysusers) + qemu.install) sha256sums=('SKIP' + 'dd43e2ef062b071a0b9d0d5ea54737f41600ca8a84a8aefbebb1ff09f978acfb' + '0b4f3283973bb3bc876735f051d8eaab68f0065502a3a5012141fad193538ea1' '60dcde5002c7c0b983952746e6fb2cf06d6c5b425d64f340f819356e561e7fc7' - '0df69a77645c9a05f98635773666b6212084525d7801ef8382242b06baebe5aa' - 'dd43e2ef062b071a0b9d0d5ea54737f41600ca8a84a8aefbebb1ff09f978acfb') + '0df69a77645c9a05f98635773666b6212084525d7801ef8382242b06baebe5aa') + +_extra_arches=(aarch64 alpha arm armeb cris lm32 m68k microblaze microblazeel mips +mips64 mips64el mipsel mipsn32 mipsn32el or32 ppc ppc64 ppc64abi32 ppc64le s390x +sh4 sh4eb sparc sparc32plus sparc64 moxie ppcemb tricore unicore32 xtensa xtensaeb) +_extra_blob=(QEMU,cgthree.bin QEMU,tcx.bin bamboo.dtb openbios-ppc +openbios-sparc32 openbios-sparc64 palcode-clipper petalogix-ml605.dtb +petalogix-s3adsp1800.dtb ppc_rom.bin s390-ccw.img s390-zipl.rom slof.bin +spapr-rtas.bin u-boot.e500) pkgver() { cd "${srcdir}/$_gitname" - echo "2.4.r$(git rev-list --count master).g$(git log -1 --format="%h")" + echo "2.5.r$(git rev-list --count master).g$(git log -1 --format="%h")" } build() { @@ -47,26 +59,26 @@ build() { --python=/usr/bin/python2 --smbd=/usr/bin/smbd \ --enable-docs --libexecdir=/usr/lib/qemu \ --disable-gtk --enable-linux-aio --enable-seccomp \ - --localstatedir=/var --enable-tpm \ + --localstatedir=/var \ + --enable-tpm \ --enable-modules --enable-{rbd,glusterfs,libiscsi,curl} make V=99 } package_qemu-git() { pkgdesc='A generic and open source processor emulator which achieves a good emulation speed by using dynamic translation. Git version.' - depends=('glibc' 'pixman' 'libjpeg' 'libpng' 'sdl' 'alsa-lib' 'nss' 'glib2' - 'gnutls' 'bluez-libs' 'vde2' 'util-linux' 'libsasl' 'libgl' - 'seabios' 'libcap' 'libcap-ng' 'libaio' 'libseccomp' 'libcacard' - 'usbredir' 'lzo' 'snappy' 'gcc-libs' 'zlib' 'bzip2' 'nspr' - 'ncurses' 'libx11' 'libusb' 'libpulse' 'libssh2' 'curl') - backup=('etc/qemu/target-x86_64.conf') + depends=('pixman' 'libjpeg' 'libpng' 'sdl' 'libgl' + 'gnutls' 'bluez-libs' 'libcacard' + 'usbredir' 'lzo' 'snappy' 'libpulse' + 'dtc' 'numactl' 'libnfs' 'libepoxy') optdepends=('ovmf: Tianocore UEFI firmware for qemu' 'samba: SMB/CIFS server support' - 'qemu-block-iscsi: iSCSI block support' - 'qemu-block-rbd: RBD block support' - 'qemu-block-gluster: glusterfs block support') + 'qemu-arch-extra-git: extra architectures support' + 'qemu-block-iscsi-git: iSCSI block support' + 'qemu-block-rbd-git: RBD block support' + 'qemu-block-gluster-git: glusterfs block support') conflicts=('qemu' 'kvm' 'kvm-git' 'qemu-spice' 'seabios' 'seabios-git') -provides=('qemu' 'qemu-kvm' 'qemu-spice' 'seabios' 'seabios-git') + provides=('qemu' 'qemu-kvm' 'qemu-spice' 'seabios' 'seabios-git') options=(!strip) install=qemu.install @@ -85,66 +97,101 @@ provides=('qemu' 'qemu-kvm' 'qemu-spice' 'seabios' 'seabios-git') # https://bugs.archlinux.org/task/32565 chmod u+s usr/lib/qemu/qemu-bridge-helper - # add sample config - echo 'allow br0' > etc/qemu/bridge.conf.sample - - # manual striping in scripts directory - find usr/src/linux-${_kernver}/scripts -type f -perm -u+w 2>/dev/null|while read binary ; do - case "$(file -bi "$binary")" in - *application/x-executable*) # Binaries - /usr/bin/strip $STRIP_BINARIES "$binary";; - esac - done - # remove libcacard files rm -r usr/include/cacard + rmdir usr/include rm usr/lib/libcacard* rm usr/lib/pkgconfig/libcacard.pc + rmdir usr/lib/pkgconfig/ rm usr/bin/vscclient # remove splitted block modules rm usr/lib/qemu/block-{iscsi,rbd,gluster}.so + + # remove guest agent + rm usr/bin/qemu-ga + + # remove extra arch + for _arch in "${_extra_arches[@]}"; do + rm -f usr/bin/qemu-${_arch} usr/bin/qemu-system-${_arch} + done + for _blob in "${_extra_blob[@]}"; do + rm usr/share/qemu/${_blob} + done } -package_libcacard-git() { - pkgdesc='Common Access Card (CAC) Emulation. Git version.' - depends=('glibc' 'nss' 'nspr' 'glib2') - conflicts=(libcacard) - provides=(libcacard) +package_qemu-arch-extra-git() { + pkgdesc='QEMU with full support for non x86 architectures. Git version' + depends=('glib2' 'qemu-git') + conflicts=(qemu-arch-extra) + provides=(qemu-arch-extra) + options=(!strip) - cd "${pkgdir}" - install -d usr/{bin,lib/pkgconfig,include/cacard} - cp -a "${srcdir}"/qemu-${pkgver}/libcacard/*.h usr/include/cacard/ - cp -a "${srcdir}"/qemu-${pkgver}/libcacard.pc usr/lib/pkgconfig/ - cp -a "${srcdir}"/qemu-${pkgver}/.libs/vscclient usr/bin/ - cp -a "${srcdir}"/qemu-${pkgver}/.libs/libcacard.so* usr/lib/ + cd $_gitname + install -dm755 "${pkgdir}"/usr/bin + for _arch in "${_extra_arches[@]}"; do + install -m755 ${_arch}-*/qemu-*${_arch} "${pkgdir}"/usr/bin + done + + cd pc-bios + for _blob in "${_extra_blob[@]}"; do + install -Dm644 ${_blob} "${pkgdir}"/usr/share/qemu/${_blob} + done + + # manually stripping + find "${pkgdir}"/usr/bin -type f -exec strip {} \; } package_qemu-block-iscsi-git() { pkgdesc='QEMU iSCSI block module. Git version.' - depends=('glibc' 'glib2' 'libiscsi') + depends=('glib2' 'libiscsi') conflicts=(qemu-block-iscsi) provides=(qemu-block-iscsi) - install -D qemu-${pkgver}/block-iscsi.so "${pkgdir}"/usr/lib/qemu/block-iscsi.so + install -D $_gitname/block-iscsi.so "${pkgdir}"/usr/lib/qemu/block-iscsi.so } package_qemu-block-rbd-git() { pkgdesc='QEMU RBD block module. Git version.' - depends=('glibc' 'glib2' 'ceph') + depends=('glib2' 'ceph') conflicts=(qemu-block-rbd) provides=(qemu-block-rbd) - install -D qemu-${pkgver}/block-rbd.so "${pkgdir}"/usr/lib/qemu/block-rbd.so + install -D $_gitname/block-rbd.so "${pkgdir}"/usr/lib/qemu/block-rbd.so } package_qemu-block-gluster-git() { pkgdesc='QEMU GlusterFS block module. Git version.' - depends=('glibc' 'glib2' 'glusterfs') + depends=('glib2' 'glusterfs') conflicts=(qemu-block-gluster) provides=(qemu-block-gluster) - install -D qemu-${pkgver}/block-gluster.so "${pkgdir}"/usr/lib/qemu/block-gluster.so + install -D $_gitname/block-gluster.so "${pkgdir}"/usr/lib/qemu/block-gluster.so } +package_qemu-guest-agent-git() { + pkgdesc='QEMU Guest Agent. Git version' + depends=('glib2') + conflicts=(qemu-guest-agent) + provides=(qemu-guest-agent) + + install -D $_gitname/qemu-ga "${pkgdir}"/usr/bin/qemu-ga + install -D qemu-ga.service "${pkgdir}"/usr/lib/systemd/system/qemu-ga.service +} + +package_libcacard-git() { + pkgdesc='Common Access Card (CAC) Emulation. Git version.' + depends=('nss' 'nspr') + conflicts=(libcacard) + provides=(libcacard) + + cd "${pkgdir}" + install -d usr/{bin,lib/pkgconfig,include/cacard} + cp -a "${srcdir}"/$_gitname/libcacard/*.h usr/include/cacard/ + cp -a "${srcdir}"/$_gitname/libcacard.pc usr/lib/pkgconfig/ + cp -a "${srcdir}"/$_gitname/.libs/vscclient usr/bin/ + cp -a "${srcdir}"/$_gitname/.libs/libcacard.so* usr/lib/ +} + + # vim:set ts=2 sw=2 et: diff --git a/qemu-ga.service b/qemu-ga.service new file mode 100644 index 000000000000..e5eb469f9d49 --- /dev/null +++ b/qemu-ga.service @@ -0,0 +1,8 @@ +[Unit] +Description=QEMU Guest Agent + +[Service] +ExecStart=/usr/bin/qemu-ga + +[Install] +WantedBy=multi-user.target |