This allows us to include a version and we already use PURL for other things, so might as well remove the pypi special case. Normalize the names, since that is required for PURLs.
85 lines
3.0 KiB
Bash
85 lines
3.0 KiB
Bash
# Maintainer: Konstantin Podsvirov <konstantin@podsvirov.pro>
|
|
|
|
_pyname=Bootstrap-Flask
|
|
_realname=${_pyname,,}
|
|
pkgbase=mingw-w64-python-${_realname}
|
|
pkgname=("${MINGW_PACKAGE_PREFIX}-python-${_realname}"
|
|
"${MINGW_PACKAGE_PREFIX}-python-${_realname}-docs")
|
|
pkgver=2.4.1
|
|
pkgrel=2
|
|
pkgdesc='Bootstrap 4 & 5 helper for your Flask projects (mingw-w64)'
|
|
arch=('any')
|
|
mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64')
|
|
url='https://bootstrap-flask.readthedocs.io/'
|
|
msys2_repository_url='https://github.com/helloflask/bootstrap-flask'
|
|
msys2_references=(
|
|
'purl: pkg:pypi/bootstrap-flask'
|
|
)
|
|
license=('spdx:MIT')
|
|
depends=("${MINGW_PACKAGE_PREFIX}-python-flask"
|
|
"${MINGW_PACKAGE_PREFIX}-python-wtforms")
|
|
makedepends=("${MINGW_PACKAGE_PREFIX}-python-build"
|
|
"${MINGW_PACKAGE_PREFIX}-python-installer"
|
|
"${MINGW_PACKAGE_PREFIX}-python-setuptools"
|
|
"${MINGW_PACKAGE_PREFIX}-python-pallets-sphinx-themes"
|
|
"${MINGW_PACKAGE_PREFIX}-python-sphinx")
|
|
# We do not use the pypi tarball, as there is no docs directory in it
|
|
#source=("https://pypi.org/packages/source/${_pyname::1}/${_pyname}/${_pyname}-${pkgver}.tar.gz")
|
|
source=("${msys2_repository_url}/archive/${pkgver}/${_realname}-${pkgver}.tar.gz")
|
|
sha256sums=('2fcd774800765123ba4f52340e6de77ebdbcb86e1f228660a1d41d151f1f4a80')
|
|
|
|
prepare() {
|
|
rm -rf "python-build-${MSYSTEM}" | true
|
|
cp -r "${_realname}-${pkgver}" "python-build-${MSYSTEM}"
|
|
|
|
rm -rf "python-install-${MSYSTEM}" | true
|
|
}
|
|
|
|
build() {
|
|
cd "${srcdir}/python-build-${MSYSTEM}"
|
|
|
|
${MINGW_PREFIX}/bin/python -m build --wheel --skip-dependency-check --no-isolation
|
|
|
|
# Forward installation for building documentation
|
|
_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
|
|
}
|
|
|
|
package_python-bootstrap-flask() {
|
|
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 "${pkgdir}${MINGW_PREFIX}/share/licenses/python-${_realname}/LICENSE"
|
|
}
|
|
|
|
package_python-bootstrap-flask-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;
|
|
|