# Maintainer: Konstantin Podsvirov _pyname=Flask-SQLAlchemy _realname=flask-sqlalchemy pkgbase=mingw-w64-python-${_realname} pkgname=("${MINGW_PACKAGE_PREFIX}-python-${_realname}" "${MINGW_PACKAGE_PREFIX}-python-${_realname}-docs") pkgver=3.1.1 pkgrel=2 pkgdesc='Adds SQLAlchemy support to your Flask application (mingw-w64)' arch=('any') mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64') url='https://github.com/pallets-eco/flask-sqlalchemy' msys2_references=( 'purl: pkg:pypi/flask-sqlalchemy' ) license=('spdx:BSD-3-Clause') depends=("${MINGW_PACKAGE_PREFIX}-python-flask" "${MINGW_PACKAGE_PREFIX}-python-sqlalchemy") makedepends=("${MINGW_PACKAGE_PREFIX}-python-build" "${MINGW_PACKAGE_PREFIX}-python-installer" "${MINGW_PACKAGE_PREFIX}-python-flit-core" "${MINGW_PACKAGE_PREFIX}-python-sphinx" "${MINGW_PACKAGE_PREFIX}-python-pallets-sphinx-themes" "${MINGW_PACKAGE_PREFIX}-python-sphinx-issues") checkdepends=("${MINGW_PACKAGE_PREFIX}-python-pytest" "${MINGW_PACKAGE_PREFIX}-python-blinker" "${MINGW_PACKAGE_PREFIX}-python-mock") source=("https://pypi.org/packages/source/${_pyname::1}/${_pyname}/${_realname/-/_}-${pkgver}.tar.gz") sha256sums=('e4b68bb881802dda1a7d878b2fc84c06d1ee57fb40b874d3dc97dabfa36b8312') prepare() { rm -rf "python-build-${MSYSTEM}" | true cp -r "${_realname/-/_}-${pkgver}" "python-build-${MSYSTEM}" } build() { cd "${srcdir}/python-build-${MSYSTEM}" ${MINGW_PREFIX}/bin/python -m build --wheel --skip-dependency-check --no-isolation # Forward installation for building documentation and checking _pkgdir="${srcdir}/python-install-${MSYSTEM}" MSYS2_ARG_CONV_EXCL="--prefix=" \ "${MINGW_PREFIX}"/bin/python -m installer --prefix=${MINGW_PREFIX} \ --destdir="${_pkgdir}" dist/*.whl msg "Build documentation" cd "${srcdir}/python-build-${MSYSTEM}/docs" _pyver=$("${MINGW_PREFIX}"/bin/python -c "import sys; print(f'{sys.version_info.major}.{sys.version_info.minor}')") PYTHONPATH="${_pkgdir}${MINGW_PREFIX}/lib/python${_pyver}/site-packages" \ "${MINGW_PREFIX}"/bin/sphinx-build -M html . _build } check() { cd "${srcdir}/python-build-${MSYSTEM}" _pkgdir="${srcdir}/python-install-${MSYSTEM}" _pyver=$("${MINGW_PREFIX}"/bin/python -c "import sys; print(f'{sys.version_info.major}.{sys.version_info.minor}')") PYTHONPATH="${_pkgdir}${MINGW_PREFIX}/lib/python${_pyver}/site-packages" \ "${MINGW_PREFIX}"/bin/python -m pytest || warning "Tests failed" } package_python-flask-sqlalchemy() { cd "${srcdir}/python-build-${MSYSTEM}" MSYS2_ARG_CONV_EXCL="--prefix=" \ "${MINGW_PREFIX}"/bin/python -m installer --prefix=${MINGW_PREFIX} \ --destdir="${pkgdir}" dist/*.whl install -Dm644 LICENSE.rst "${pkgdir}${MINGW_PREFIX}/share/licenses/python-${_realname}/LICENSE.rst" } package_python-flask-sqlalchemy-docs() { pkgdesc+=" (documentation)" depends=() mkdir -p "${pkgdir}${MINGW_PREFIX}/share/doc/python-${_realname}" cp -a "${srcdir}/python-build-${MSYSTEM}/docs/_build/html" "${pkgdir}${MINGW_PREFIX}/share/doc/python-${_realname}/html" } # template start; name=mingw-w64-splitpkg-wrappers; version=1.0; # vim: set ft=bash : # generate wrappers for _name in "${pkgname[@]}"; do _short="package_${_name#${MINGW_PACKAGE_PREFIX}-}" _func="$(declare -f "${_short}")" eval "${_func/#${_short}/package_${_name}}" done # template end;