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

pkgbase=shiboken2
pkgname=(shiboken2 python-shiboken2)
_qtver=5.15.2
_clangver=12.0.1
pkgver=${_qtver/-/}
pkgrel=9
arch=(x86_64)
url='https://www.qt.io'
license=(GPL2 LGPL)
pkgdesc='Generates bindings for C++ libraries using CPython source code'
makedepends=(clang llvm cmake libxslt qt5-xmlpatterns python-sphinx)
_pkgfqn=pyside-setup-opensource-src-$_qtver
source=("https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-$pkgver-src/${_pkgfqn}.tar.xz")
sha256sums=('b306504b0b8037079a8eab772ee774b9e877a2d84bab2dbefbe4fa6f83941418')

build() {
  cmake -B build -S ${_pkgfqn}/sources/shiboken2 \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DBUILD_TESTS=OFF \
    -DUSE_PYTHON_VERSION=3
  cmake --build build
}

package_shiboken2() {
  depends=(clang=$_clangver llvm libxslt qt5-xmlpatterns)

  DESTDIR="$pkgdir" cmake --install build
# Provided in python-shiboken2
  rm -r "$pkgdir"/usr/lib/{python*,libshiboken*}
# Conflicts with shiboken6 and doesn't work anyway
  rm "$pkgdir"/usr/bin/shiboken_tool.py
}

package_python-shiboken2() {
  depends=(python)

  DESTDIR="$pkgdir" cmake --install build
# Provided in shiboken2
  rm -r "$pkgdir"/usr/{bin,include,lib/{cmake,pkgconfig}}

# Install egg-info
  cd $_pkgfqn
  python setup.py egg_info --build-type=shiboken2
  _pythonpath=`python -c "from sysconfig import get_path; print(get_path('platlib'))"`
  cp -r shiboken2.egg-info "$pkgdir"/$_pythonpath
}
