# Maintainer: Sven-Hendrik Haase <svenstaro@archlinux.org>
# Contributor: Thomas Weißschuh <thomas t-8ch de>
pkgname=libnbd
pkgver=1.24.2
pkgrel=2
pkgdesc="NBD client library in userspace"
arch=('x86_64' 'aarch64')
url="https://gitlab.com/nbdkit/libnbd"
license=('LGPL-2.1-or-later')
depends=('glibc' 'gnutls' 'libxml2')
makedepends=('perl' 'ocamlbuild' 'ocaml-findlib' 'rust' 'fuse3' 'python' 'go')
optdepends=(
  'fuse3: For nbdfuse support'
  'ocaml: For OCaml bindings'
  'python>=3: For Python bindings'
)
source=(
  "https://download.libguestfs.org/libnbd/${pkgver%.*}-stable/libnbd-${pkgver}.tar.gz"{,.sig}
)
sha256sums=('4039cafb89c26f2c3f28fc16af7344d0cdd08845a27ce8c5c10efb2ca66bdfd2'
            'SKIP')
validpgpkeys=('F7774FB1AD074A7E8C8767EA91738F73E1B768A0')  # Richard W.M. Jones <rjones@redhat.com>

prepare() {
  cd "${pkgname}-${pkgver}"
  autoreconf -fiv
  cargo update --manifest-path="rust/Cargo.toml" --precise 1.51.5 tokio
}

build() {
  cd "${pkgname}-${pkgver}"
  export CFLAGS+=" -ffat-lto-objects"
  ./configure --prefix=/usr --sbindir=/usr/bin
  export GOFLAGS="-buildvcs=false"
  make
}

check() {
  cd "${pkgname}-${pkgver}"
  make check
}

package() {
  cd "${pkgname}-${pkgver}"
  make DESTDIR="$pkgdir" install
}
