summaryrefslogtreecommitdiff
path: root/binfmt-qemu-static-all-arch/PKGBUILD
blob: 0cd67da4741ab27bddd9e7a36aa43e34033d044d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# Maintainer: Erich Eckner <arch at eckner dot net>
# Contributor: Michael Taboada <michael@2mb.solutions>

# ist alles absichtlich nicht any ohne ELF Dateien

pkgname=binfmt-qemu-static-all-arch
pkgver=20210506
pkgrel=1
pkgdesc="Register qemu-static interpreters for various binary formats - all archetectures, intelligently removing the current archetecture"
arch=('armv5' 'armv6h' 'armv7h' 'aarch64' 'i686' 'x86_64')
url="http://www.freedesktop.org/software/systemd/man/binfmt.d.html"
license=('GPL')
optdepends=('qemu-user-static')
provides=('binfmt-qemu-static')
conflicts=('binfmt-qemu-static')
source=("qemu-binfmt-conf-$pkgver.sh::https://raw.githubusercontent.com/qemu/qemu/master/scripts/qemu-binfmt-conf.sh")
sha512sums=('8292d797d18d7be6812a0c6fb04eb89c4ab7380f73e1cba595b89163427fcf326d91e0164b87c7a424dd5913613de5a6488a08e9434c8ca8e3c6f5995e4517e2')

build() {
  mkdir build
  chmod +x "qemu-binfmt-conf-$pkgver.sh"
  HOST_ARCH="$CARCH" "./qemu-binfmt-conf-$pkgver.sh" --systemd ALL --exportdir "$srcdir/build" --qemu-path /usr/bin --qemu-suffix -static
  cat build/* \
  | sed 's/$/CF/' \
  > qemu-static.conf
}

package() {
  install -Dm 644 "$srcdir/qemu-static.conf" "$pkgdir/usr/lib/binfmt.d/qemu-static.conf"
  case $CARCH in
    arm* | aarch64) sed -i "/qemu-arm/d" "$pkgdir/usr/lib/binfmt.d/qemu-static.conf" ;&
    aarch64) sed -i "/qemu-aarch64/d" "$pkgdir/usr/lib/binfmt.d/qemu-static.conf" ;;
    i686 | x86_64) sed -i "/qemu-i386/d" "$pkgdir/usr/lib/binfmt.d/qemu-static.conf" ;  sed -i "/qemu-x86_64/d" "$pkgdir/usr/lib/binfmt.d/qemu-static.conf" ;;
    *) sed -i "/$CARCH/d" "$pkgdir/usr/lib/binfmt.d/qemu-static.conf" ;;
  esac
}

# vim:set ts=2 sw=2 et: