# Maintainer: George Rawlinson # Contributor: graysky # Contributor: Stéphane Graber pkgname=distrobuilder pkgver=1.2 pkgrel=1 pkgdesc="System container image builder for LXC and LXD" arch=(x86_64) url="https://github.com/lxc/distrobuilder" license=(Apache) depends=(rsync squashfs-tools gnupg debootstrap) makedepends=(go git) conflicts=(distrobuilder-git) source=("$pkgname-$pkgver.tar.gz::$url/archive/$pkgname-$pkgver.tar.gz") b2sums=('e6d0bf355818020ebe304adb71c35a67698441eaf3baf62abcddb334337388d06fb1bc49910be0c716038a41f18bcf0573a484e7bbd1fc4fb46ccabd15830376') prepare() { mv "$pkgname-$pkgname-$pkgver" "$pkgname-$pkgver" cd "$pkgname-$pkgver" # create build folder mkdir build # download dependencies go mod vendor } build() { # export various Go flags export CGO_CPPFLAGS="$CPPFLAGS" export CGO_CFLAGS="$CFLAGS" export CGO_CXXFLAGS="$CXXFLAGS" export CGO_LDFLAGS="$LDFLAGS" export GOFLAGS="-buildmode=pie -trimpath -ldflags=-linkmode=external -mod=readonly -modcacherw" # build binary cd "$pkgname-$pkgver" go build -v -o build ./... } check() { cd "$pkgname-$pkgver" go test -v ./... go vet -v ./... } package() { install -Dm755 -t "$pkgdir/usr/bin" "$pkgname-$pkgver/build/$pkgname" }