archrelease: copy trunk to community-any
[arch-community.git] / firecracker / trunk / PKGBUILD
blob359a1123bba530eae4c607c0df3c1d52d3a397e1
1 # Maintainer: George Rawlinson <grawlinson@archlinux.org>
3 pkgbase=firecracker
4 pkgname=('firecracker' 'firecracker-docs')
5 pkgver=1.3.2
6 pkgrel=1
7 pkgdesc='Secure and fast microVMs for serverless computing'
8 arch=('x86_64')
9 url='https://firecracker-microvm.github.io'
10 license=('Apache' 'BSD')
11 makedepends=('git' 'rust' 'clang')
12 options=('!lto')
13 _commit='41e786efc5b9454ec07bb5732ef5fa425636e686'
14 source=("$pkgname::git+https://github.com/firecracker-microvm/firecracker.git#commit=$_commit")
15 b2sums=('SKIP')
17 _cargo_target="$CARCH-unknown-linux-gnu"
19 pkgver() {
20   cd "$pkgbase"
22   git describe --tags | sed 's/^v//'
25 prepare() {
26   cd "$pkgbase"
28   # download dependencies
29   cargo fetch --locked --target="$_cargo_target"
32 build() {
33   cd "$pkgbase"
35   cargo build \
36     --package firecracker \
37     --package jailer \
38     --package seccompiler \
39     --package rebase-snap \
40     --release \
41     --frozen \
42     --all-features \
43     --target-dir=target \
44     --target="$_cargo_target"
47 package_firecracker() {
48   depends=('gcc-libs')
50   cd "$pkgbase"
52   # binaries
53   find "target/$_cargo_target/release" \
54     -maxdepth 1 \
55     -executable \
56     -type f \
57     -exec install -vDm755 -t "$pkgdir/usr/bin/" {} +
59   # licenses
60   install -vDm644 -t "$pkgdir/usr/share/licenses/$pkgname" \
61     LICENSE NOTICE THIRD-PARTY
64 package_firecracker-docs() {
65   #arch=('any')
66   pkgdesc+=" (documentation)"
68   cd "$pkgbase"
70   # documentation
71   install -vDm644 -t "$pkgdir/usr/share/doc/$pkgbase" ./*.md
72   cp -vr docs "$pkgdir/usr/share/doc/$pkgbase"
74   # licenses
75   install -vDm644 -t "$pkgdir/usr/share/licenses/$pkgname" \
76     LICENSE NOTICE THIRD-PARTY