diff --git a/mingw-w64-python-shtab/PKGBUILD b/mingw-w64-python-shtab/PKGBUILD new file mode 100644 index 0000000000..c0af2a87de --- /dev/null +++ b/mingw-w64-python-shtab/PKGBUILD @@ -0,0 +1,65 @@ +# Maintainer: Maksim Bondarenkov + +_realname=shtab +pkgbase=mingw-w64-python-${_realname} +pkgname=("${MINGW_PACKAGE_PREFIX}-python-${_realname}") +pkgver=1.6.4 +pkgrel=1 +pkgdesc="Automagic shell tab completion for Python CLI applications (mingw-w64)" +arch=('any') +mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32' 'clangarm64') +msys2_references=( + 'pypi: shtab' +) +url='https://github.com/iterative/shtab' +license=('spdx:Apache-2.0') +depends=("${MINGW_PACKAGE_PREFIX}-python") +makedepends=("${MINGW_PACKAGE_PREFIX}-python-build" + "${MINGW_PACKAGE_PREFIX}-python-installer" + "${MINGW_PACKAGE_PREFIX}-python-wheel" + "${MINGW_PACKAGE_PREFIX}-python-setuptools-scm") +checkdepends=("${MINGW_PACKAGE_PREFIX}-python-pytest" + "${MINGW_PACKAGE_PREFIX}-python-pytest-cov" + "${MINGW_PACKAGE_PREFIX}-python-pytest-timeout") +options=('!strip') +source=("https://pypi.org/packages/source/${_realname::1}/${_realname}/${_realname}-${pkgver}.tar.gz") +sha256sums=('aba9e049bed54ffdb650cb2e02657282d8c0148024b0f500277052df124d47de') + +prepare() { + cd "${srcdir}/${_realname}-${pkgver}" + + export SETUPTOOLS_SCM_PRETEND_VERSION=${pkgver} +} + +build() { + msg "Python build for ${MSYSTEM}" + cd "${srcdir}" + cp -r "${_realname}-${pkgver}" "python-build-${MSYSTEM}" && cd "python-build-${MSYSTEM}" + + ${MINGW_PREFIX}/bin/python -m build --wheel --skip-dependency-check --no-isolation +} + +check() { + msg "Python test for ${MSYSTEM}" + cd "${srcdir}/python-build-${MSYSTEM}" + + ${MINGW_PREFIX}/bin/python -m pytest +} + +package() { + msg "Python install for ${MSYSTEM}" + cd "${srcdir}/python-build-${MSYSTEM}" + + MSYS2_ARG_CONV_EXCL="--prefix=" \ + ${MINGW_PREFIX}/bin/python -m installer --prefix=${MINGW_PREFIX} \ + --destdir="${pkgdir}" dist/*.whl + + # Generate shell completions + for _shell in bash zsh; do + python -m shtab --print-own-completion "${_shell}" > "${_shell}.completion" + done + + install -Dm644 bash.completion "${pkgdir}${MINGW_PREFIX}/share/bash-completion/completions/shtab" + install -Dm644 zsh.completion "${pkgdir}${MINGW_PREFIX}/share/zsh/site-functions/_shtab" + install -Dm644 LICENCE "${pkgdir}${MINGW_PREFIX}/share/licenses/python-${_realname}/LICENCE" +}