# Maintainer: Felix Yan <felixonmars@archlinux.org>

pkgname=golang-deepin-lib
pkgver=5.0.0
pkgrel=1
pkgdesc='A library containing many useful go routines for things such as glib, gettext, archive, graphic,etc.'
arch=('any')
url="https://github.com/linuxdeepin/go-lib"
license=('GPL3')
depends=('dbus' 'go-pie' 'libpulse' 'gdk-pixbuf2' 'mobile-broadband-provider-info' 'libx11'
         'golang-gopkg-alecthomas-kingpin.v2' 'golang-deepin-gir'
         'golang-github-linuxdeepin-go-x11-client' 'golang-golang-x-net' 'golang-golang-x-image')
         # 'golang-github-cryptix-wav' not packaged yet, paused until our go packaging standards formed
checkdepends=('iso-codes' 'git') # git needed only for go get
replaces=('deepin-go-lib')
conflicts=('deepin-go-lib')
provides=('deepin-go-lib')
source=("$pkgname-$pkgver.tar.gz::https://github.com/linuxdeepin/go-lib/archive/$pkgver.tar.gz")
sha512sums=('999c8ea41b7adc2c850fdabfd52ae3613278098747a5c628fa18771cbebe79d1a8e4e1e7bfa53ad229583f58997a42b0b075ca504f8ab804c2e6cc9fd538a9c2')

check() {
  export GOPATH="$srcdir/build:/usr/share/gocode"
  mkdir -p "$srcdir"/build/src/pkg.deepin.io
  cp -a "$srcdir"/go-lib-$pkgver "$srcdir"/build/src/pkg.deepin.io/lib
  cd "$srcdir"/build/src/pkg.deepin.io/lib
  # TODO: make packages for them
  go get github.com/cryptix/wav github.com/smartystreets/goconvey/convey 
  # TODO: figure out why pulse tests hang
  # passwd: test needs to access /etc/passwd
  # group & timer & log & dbus: build failed
  # shell: TestEncode failed
  go test -v $(go list ./... | grep -v -e lib/pulse -e lib/users/passwd -e lib/users/group -e lib/timer -e lib/log -e lib/dbus -e lib/shell)
}

package() {
  mkdir -p "$pkgdir"/usr/share/gocode/src/pkg.deepin.io
  cp -a "$srcdir"/go-lib-$pkgver "$pkgdir"/usr/share/gocode/src/pkg.deepin.io/lib

  rm -r "$pkgdir"/usr/share/gocode/src/pkg.deepin.io/lib/debian
}
