# $Id: PKGBUILD 212784 2014-05-15 06:48:51Z tpowa $ # Maintainer: Tobias Powalowski pkgname=('qemu' 'libcacard') pkgver=2.0.0 pkgrel=3 arch=('i686' 'x86_64') license=('GPL2' 'LGPL2.1') url="http://wiki.qemu.org/Index.html" makedepends=('pixman' 'libjpeg' 'libpng' 'sdl' 'alsa-lib' 'nss' 'glib2' 'gnutls>=2.4.1' 'bluez-libs' 'vde2' 'util-linux' 'curl' 'libsasl' 'libgl' 'libpulse' 'seabios' 'libcap-ng' 'libaio' 'libseccomp' 'libiscsi' 'libcacard' 'spice' 'spice-protocol' 'python2' 'usbredir') replaces=('qemu-kvm') options=(!strip) source=(http://wiki.qemu.org/download/${pkgname}-${pkgver}.tar.bz2 65-kvm.rules 2.0.0-usb-stack.patch) prepare () { cd "${srcdir}/${pkgname}-${pkgver}" patch -Np1 -i "${srcdir}/2.0.0-usb-stack.patch" } build () { cd "${srcdir}/${pkgname}-${pkgver}" # qemu vs. make 4 == bad export ARFLAGS="rv" # http://permalink.gmane.org/gmane.comp.emulators.qemu/238740 # gtk gui breaks keymappings at the moment ./configure --prefix=/usr --sysconfdir=/etc --audio-drv-list='pa alsa sdl' \ --python=/usr/bin/python2 --smbd=/usr/bin/smbd \ --enable-docs --libexecdir=/usr/lib/qemu \ --disable-gtk --enable-linux-aio --enable-seccomp \ --enable-spice --localstatedir=/var \ --enable-tpm make V=99 } package_qemu() { pkgdesc="A generic and open source processor emulator which achieves a good emulation speed by using dynamic translation." depends=('pixman' 'libjpeg' 'libpng' 'sdl' 'alsa-lib' 'nss' 'glib2' 'gnutls>=2.4.1' 'bluez-libs' 'vde2' 'util-linux' 'curl' 'libsasl' 'libgl' 'libpulse' 'seabios' 'libcap-ng' 'libaio' 'libseccomp' 'libiscsi' 'libcacard' 'spice' 'usbredir') backup=('etc/qemu/target-x86_64.conf') install=qemu.install cd "${srcdir}/${pkgname}-${pkgver}" make DESTDIR="${pkgdir}" libexecdir="/usr/lib/qemu" install # provided by seabios package rm "${pkgdir}/usr/share/qemu/bios.bin" rm "${pkgdir}/usr/share/qemu/acpi-dsdt.aml" rm "${pkgdir}/usr/share/qemu/q35-acpi-dsdt.aml" # remove conflicting /var/run directory rm -r "${pkgdir}/var" install -D -m644 "${srcdir}/65-kvm.rules" \ "${pkgdir}/usr/lib/udev/rules.d/65-kvm.rules" # bridge_helper needs suid # https://bugs.archlinux.org/task/32565 chmod u+s "${pkgdir}/usr/lib/qemu/qemu-bridge-helper" # add sample config echo "allow br0" > ${pkgdir}/etc/qemu/bridge.conf.sample # strip scripts directory find "${pkgdir}/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 -rf ${pkgdir}/usr/include/cacard rm -rf ${pkgdir}/usr/lib/libcacard* rm -rf ${pkgdir}/usr/lib/pkgconfig/libcacard.pc rm -rf ${pkgdir}/usr/bin/vscclient } package_libcacard() { pkgdesc="Common Access Card (CAC) Emulation" options=('strip') depends=('nss' 'libaio' 'libcap-ng' 'libiscsi' 'curl' 'vde2' 'glib2') mkdir -p ${pkgdir}/usr/bin mkdir -p ${pkgdir}/usr/lib/pkgconfig mkdir -p ${pkgdir}/usr/include/cacard cp -a ${srcdir}/qemu-${pkgver}/libcacard/*.h ${pkgdir}/usr/include/cacard/ cp -a ${srcdir}/qemu-${pkgver}/.libs/libcacard.so* ${pkgdir}/usr/lib/ cp -a ${srcdir}/qemu-${pkgver}/libcacard.pc ${pkgdir}/usr/lib/pkgconfig/ cp -a ${srcdir}/qemu-${pkgver}/.libs/vscclient ${pkgdir}/usr/bin/ } md5sums=('2790f44fd76da5de5024b4aafeb594c2' '33ab286a20242dda7743a900f369d68a' 'f98a479ec4e656403f5f05b1914f7f1f')