Files
MINGW-packages/mingw-w64-python-ipython/PKGBUILD
Jeremy Drake 36139ca5cc add clang32 to more packages. …
All packages which successfully built on clang64, for which all of their
dependencies are already available for clang32, and one more level of
packages that depend on those, as the batches were getting kind of
small.

Batch 6
2021-06-29 16:41:01 -07:00

92 lines
3.7 KiB
Bash

# Maintainer: Kyle Kauffman <kyle.j.kauffman@gmail.com>
_realname=ipython
pkgbase=mingw-w64-python-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-python-${_realname}")
provides=("${MINGW_PACKAGE_PREFIX}-python3-${_realname}")
conflicts=("${MINGW_PACKAGE_PREFIX}-python3-${_realname}")
replaces=("${MINGW_PACKAGE_PREFIX}-python3-${_realname}")
pkgver=7.25.0
pkgrel=1
pkgdesc="An enhanced Interactive Python shell (mingw-w64)"
arch=('any')
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32')
url="https://ipython.org/"
license=('BSD')
# Note: prompt_toolkit 2.0 is required for this series.
# There is some breakage between prompt_toolkit 1.0 and 2.0.
depends=("${MINGW_PACKAGE_PREFIX}-python-backcall"
"${MINGW_PACKAGE_PREFIX}-python-colorama"
"${MINGW_PACKAGE_PREFIX}-python-decorator"
"${MINGW_PACKAGE_PREFIX}-python-jedi"
"${MINGW_PACKAGE_PREFIX}-python-matplotlib-inline"
"${MINGW_PACKAGE_PREFIX}-python-pickleshare"
"${MINGW_PACKAGE_PREFIX}-python-prompt_toolkit"
"${MINGW_PACKAGE_PREFIX}-python-pygments"
"${MINGW_PACKAGE_PREFIX}-python-setuptools"
"${MINGW_PACKAGE_PREFIX}-python-traitlets"
"${MINGW_PACKAGE_PREFIX}-sqlite3"
"winpty")
# new optional thing: ipyparallel
optdepends=("${MINGW_PACKAGE_PREFIX}-python-nose: for IPython's test suite"
"${MINGW_PACKAGE_PREFIX}-python-qtconsole: for ipython qtconsole"
"${MINGW_PACKAGE_PREFIX}-python-ipython-ipyparallel: for IPython.parallel")
makedepends=("${MINGW_PACKAGE_PREFIX}-python-setuptools")
checkdepends=("${MINGW_PACKAGE_PREFIX}-python-requests"
"${MINGW_PACKAGE_PREFIX}-python-testpath"
"${MINGW_PACKAGE_PREFIX}-python-pygments"
"${MINGW_PACKAGE_PREFIX}-python-jupyter-nbformat"
"${MINGW_PACKAGE_PREFIX}-python-ipykernel"
"${MINGW_PACKAGE_PREFIX}-python-numpy")
source=("${_realname}-${pkgver}.tar.gz::https://github.com/ipython/ipython/archive/${pkgver}.tar.gz")
sha256sums=('e4a61cde3dddf9d81099511d6906c87c3a01e0e39903fa9a6e725d74d76f337d')
prepare() {
cd "${srcdir}"
rm -rf python-build-${CARCH} | true
cp -r "${_realname}-${pkgver}" "python-build-${CARCH}"
}
build() {
msg "Python build for ${CARCH}"
cd "${srcdir}/python-build-${CARCH}"
${MINGW_PREFIX}/bin/python setup.py build
}
check() {
msg "Python test for ${CARCH}"
cd "${srcdir}/python-build-${CARCH}"
${MINGW_PREFIX}/bin/python -m test || warning "Tests fail"
}
package() {
cd "${srcdir}/python-build-${CARCH}"
# see https://github.com/ipython/ipython/issues/2057
#export LC_ALL=en_US.UTF-8
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
${MINGW_PREFIX}/bin/python setup.py install \
--prefix=${MINGW_PREFIX} --root=${pkgdir} --optimize=1 --skip-build
find "${pkgdir}/" -name "*.pyc" -delete
find "${pkgdir}/" -type d -empty -delete
# setuptools doesnt see mingw-w64-python's readline
find "${pkgdir}/" -name 'requires.txt' -delete
local PREFIX_WIN=$(cygpath -wm ${MINGW_PREFIX})
for _f in "${pkgdir}${MINGW_PREFIX}"/bin/*.cmd; do
sed -e "s|${PREFIX_WIN}/bin/||g" -i ${_f}
done
# For the command to work on the bash prompt, you must use
# winpty so include that in the Shebang before the python command.
# I don't like this but what I like really doesn't matter.
for _f in iptest iptest3 ipython ipython3; do
sed -e "s|/usr/bin/env |${MINGW_PREFIX}/|g" \
-e "s|${PREFIX_WIN}|${MINGW_PREFIX}|g" \
-e "s|#!|#!winpty |" -i "${pkgdir}${MINGW_PREFIX}/bin/${_f}"
done
install -Dm644 docs/source/about/license_and_copyright.rst "${pkgdir}${MINGW_PREFIX}/share/licenses/python-ipython/LICENSE"
}