aboutsummarylogtreecommitdiffstats
path: root/PKGBUILD
blob: dc812f6b4cb24536018d2b76100403851d1ee4f3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# Maintainer: Andrey Novikov <envek@envek.name>

pkgname=anycable-go
pkgdesc="AnyCable WebSocket Server written in Go"
pkgver=1.6.4
pkgrel=1
arch=('i686' 'x86_64')
url="http://anycable.io"
license=('MIT')
makedepends=('go' 'rsync')
source=("https://github.com/anycable/anycable/archive/v${pkgver}.tar.gz")
sha256sums=('469d6b3ab79c14532615c47f613211dd0d842183088f62df6ee0e2e01faf5904')

# See https://wiki.archlinux.org/index.php/Go_package_guidelines
prepare(){
  mkdir -p gopath/src/github.com/anycable
  ln -rTsf anycable-${pkgver} "${srcdir}/gopath/src/github.com/anycable/anycable"
  cd "${srcdir}/gopath/src/github.com/anycable/anycable"
  export GOPATH="$srcdir"/gopath
}

build() {
  cd "anycable-${pkgver}"
  go build \
    -trimpath \
    -buildmode=pie \
    -mod=readonly \
    -modcacherw \
    -ldflags "-linkmode external -extldflags \"${LDFLAGS}\" -X main.version=$pkgver" \
    -a -o $pkgname cmd/anycable-go/main.go
}

package() {
  cd "anycable-$pkgver"
  install -Dm755 $pkgname "$pkgdir"/usr/bin/$pkgname
}