# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
# Contributor: Ionut Biru <ibiru@archlinux.org>

pkgbase=pygobject
pkgname=(python-gobject python2-gobject pygobject-devel)
pkgver=3.34.0
pkgrel=1
pkgdesc="Python Bindings for GLib/GObject/GIO/GTK+"
url="https://wiki.gnome.org/Projects/PyGObject"
arch=(x86_64)
license=(LGPL)
depends=(gobject-introspection-runtime)
makedepends=(python{,2}-cairo gobject-introspection git meson)
checkdepends=(python{,2}-pytest gtk3 xorg-server-xvfb)
optdepends=('cairo: Cairo bindings')
_commit=fae47858d24e9fbd6745c094db0064c5506de5cb  # tags/3.34.0^0
source=("git+https://gitlab.gnome.org/GNOME/pygobject.git#commit=$_commit")
sha256sums=('SKIP')

pkgver() {
  cd $pkgbase
  git describe --tags | sed 's/-/+/g'
}

prepare() {
  cd $pkgbase
}

_build() {
  arch-meson $pkgbase build-$1 -D python=/usr/bin/$1
  ninja -C build-$1
}

_check() {
  xvfb-run meson test -C build-$1 --print-errorlogs
}

_package() {
  DESTDIR="$pkgdir" meson install -C build-$1
  $1 -m compileall -d /usr/lib "$pkgdir/usr/lib"
  $1 -O -m compileall -d /usr/lib "$pkgdir/usr/lib"
}

build() {
  _build python
  _build python2
}

check() {
  _check python
  _check python2
}

package_python-gobject() {
  depends=("pygobject-devel=$pkgver" python)

  _package python

### Split -devel
  mkdir -p "$srcdir/devel"
  mv "$pkgdir"/usr/{include,lib/pkgconfig} "$srcdir/devel"
}

package_python2-gobject() {
  pkgdesc="${pkgdesc/Python/Python2}"
  depends=("pygobject-devel=$pkgver" python2)

  _package python2

### Remove -devel
  rm -r "$pkgdir"/usr/{include,lib/pkgconfig}
}

package_pygobject-devel() {
  pkgdesc="Common development files for pygobject"
  optdepends=()

  mkdir -p "$pkgdir/usr/lib"
  mv devel/include "$pkgdir/usr"
  mv devel/pkgconfig "$pkgdir/usr/lib"
}

# vim:set sw=2 et:
