# Contributor: Stuart Cardall # Maintainer: Stuart Cardall # wireguard version _ver=0.0.20190601 _rel=0 # kernel version _kver=4.19.61 _krel=0 _kpkgver="$_kver-r$_krel" # for custom kernels set $FLAVOR _extra_flavors= if [ -z "$FLAVOR" ]; then _flavor=vanilla case $CARCH in x86|x86_64) _extra_flavors="virt";; esac else _flavor=$FLAVOR fi _kpkg=linux-$_flavor pkgname=wireguard-$_flavor pkgver=$_kver pkgrel=$(( $_rel + $_krel)) pkgdesc="Next generation secure network tunnel: kernel modules for $_flavor" arch="all" url="https://www.wireguard.com" license="GPL-2.0" depends="linux-$_flavor=$_kpkgver" makedepends=" libmnl-dev linux-$_flavor-dev=$_kpkgver linux-firmware-none " install_if="wireguard-tools-wg=$_ver-r$_rel linux-$_flavor=$_kpkgver" options="!check" source="https://git.zx2c4.com/WireGuard/snapshot/WireGuard-$_ver.tar.xz" builddir="$srcdir"/WireGuard-$_ver for f in $_extra_flavors; do makedepends="$makedepends linux-$f-dev=$_kpkgver" subpackages="$subpackages wireguard-$f:_extra" done prepare() { default_prepare if [ -z "$FLAVOR" ]; then ( . "$startdir"/../../main/linux-$_flavor/APKBUILD [ "$_kver" != "$pkgver" ] && die "please update _kver to $pkgver" [ "$_krel" != "$pkgrel" ] && die "please update _krel to $pkgrel" return 0 ) fi local flavor= for flavor in $_flavor $_extra_flavors; do cp -r "$builddir" "$srcdir"/$flavor done } build() { unset LDFLAGS local flavor= kabi= for flavor in $_flavor $_extra_flavors; do kabi="$_kver-$_krel-$flavor" make -C "$srcdir/$flavor"/src \ KERNELDIR=/lib/modules/$kabi/build module done } package() { local kabi="$_kver-$_krel-$_flavor" install -Dm644 "$srcdir"/$_flavor/src/wireguard.ko \ "$pkgdir/lib/modules/$kabi/extra/wireguard.ko" } _extra() { flavor=${subpkgname##*-} depends="linux-$flavor=$_kpkgver" install_if="wireguard-tools-wg=$_ver-r$_rel linux-$flavor=$_kpkgver" pkgdesc="Next generation secure network tunnel: kernel modules for $flavor" local kabi="$_kver-$_krel-$flavor" install -Dm644 "$srcdir"/virt/src/wireguard.ko \ "$subpkgdir/lib/modules/$kabi/extra/wireguard.ko" } sha512sums="d667e42b90fbda85b005ae2966689dadc9975c1a53ca5ddfff44214ed55ad7d55d451008c225a4619c834bd7af598af1f127d76a8a3a86cf2e6d886ea0638cf3 WireGuard-0.0.20190601.tar.xz"