summaryrefslogtreecommitdiff
path: root/binfmt-qemu-static-all-arch/PKGBUILD
blob: e50e8078f8fd6177f736c46690a353d44a8061e5 (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=20210225
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=('cafd74c0a71d813afeb1882b5dad91a486a8acbbd0f5c5dabb726f6923264dcae8b80af605bc7ee04064c2f2893c3617d0cb7a36e74076866213e735fb3ec80b')

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: