# Maintainer: George Rawlinson <grawlinson@archlinux.org>

pkgname=cloud-hypervisor
pkgver=22.1
pkgrel=1
pkgdesc="A Virtual Machine Monitor for modern cloud workloads"
url="https://www.cloudhypervisor.org"
arch=('x86_64')
license=('Apache')
depends=('gcc-libs')
makedepends=('git' 'rust')
optdepends=('qemu-headless: for virtiofsd')
install="$pkgname.install"
options=('!lto')
_commit='f6557acf6080bc1354c50b843f0a635c6de40f28' # v22.1
source=("$pkgname::git+https://github.com/cloud-hypervisor/cloud-hypervisor.git#commit=$_commit")
b2sums=('SKIP')

pkgver() {
  cd "$pkgname"
  git describe --tags | sed 's/^v//'
}

prepare() {
  cd "$pkgname"

  # download dependencies
  cargo fetch --locked --target "$CARCH-unknown-linux-gnu"
}

build() {
  cd "$pkgname"
  # FTBFS: --all-features due to hypervisor not compiling
  # cargo build --release --frozen --all-features
  cargo build --release --frozen
}

package() {
   find "$pkgname/target/release" \
     -maxdepth 1 \
     -executable \
     -type f \
     -exec install -vDm755 -t "$pkgdir/usr/bin" "{}" \+
}