Skip to content

Commit

Permalink
Python (msys2#1839)
Browse files Browse the repository at this point in the history
* openjpeg 2.1.2 - rel. 2 - Disable JPIP because causing compilation failures -not sure why

* Revert "openjpeg 2.1.2 - rel. 2 - Disable JPIP because causing compilation failures -not sure why"

This reverts commit ea56c3c.

* harfbuzz: Update to 1.3.2

* cppcheck: Update to 1.76

* libvirt: Update to 2.3.0

* libbluray: Update to 0.9.3

* libebml: Update to 1.3.4

* libmatroska: Update to 1.4.5

* libbluray: Place in proper folder

* x264: Is git package. Update to r2721.72d53ab

* l-smash: Rebuild

* x265: Update to 2.1

* ffmpeg: Update to 3.1.4

* nspr: Update to 4.13

* Fix PKGBUILDs. Rebuild

* gdl: Update to 3.22.0

* Python updates and additions

PKGBUILD-templates - Update for new SF, add build, and make dirs for
each py version and arch.
python-distutils-extra - 2.39 - new package
python-mock - 2.0 Update to altest version
python-pbr: 1.10.0 - Update to latest version
python-pgen2 -  0.1.0 - New package
python-pip: rebuildm, fix issue with symlink, and rework slightly to
match updated template
python-pyparsing - 2.1.10 - Update to latest version
python-pytest - 3.0.3 - Update to latest version
python-setuptools - 28.6.0 - Update ot latest version
python-cython - 0.24.1 - Update to latest version
  • Loading branch information
JPeterMugaas authored and Alexpux committed Oct 20, 2016
1 parent 09fb769 commit e9395ba
Show file tree
Hide file tree
Showing 10 changed files with 258 additions and 58 deletions.
30 changes: 26 additions & 4 deletions mingw-w64-PKGBUILD-templates/PKGBUILD.setup-py-python-pkg
Expand Up @@ -35,6 +35,18 @@ prepare() {
done
}

# Note that build() is sometimes skipped because it's done in
# the packages setup.py install for simplicity if you can do so.
# but sometimes, you want to do a check before install which would
# also trigger the build.
build() {
for pver in {2,3}; do
msg "Python ${pver} build for ${CARCH}"
cd "${srcdir}/python${pver}-build-${CARCH}"
${MINGW_PREFIX}/bin/python${pver} setup.py build
done
}

check() {
for pver in {2,3}; do
msg "Python ${pver} test for ${CARCH}"
Expand All @@ -43,17 +55,21 @@ check() {
done
}

# Note that build() is sometimes skipped because it's done in
# the packages setup.py install for simplicity if you can do so.
package_python3-somepackage() {
depends=("${MINGW_PACKAGE_PREFIX}-python3")

cd "${srcdir}/python3-build"
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
${MINGW_PREFIX}/bin/python3 setup.py install --prefix=${MINGW_PREFIX} \
--root="${pkgdir}" --optimize=1
--root="${pkgdir}" --optimize=1 --skip-build

install -Dm644 LICENSE "${pkgdir}${MINGW_PREFIX}/share/licenses/python3-${_realname}/COPYING"

local PREFIX_WIN=$(cygpath -wm ${MINGW_PREFIX})
# fix python command in files
for _f in "${pkgdir}${MINGW_PREFIX}"/bin/*.py; do
sed -e "s|${PREFIX_WIN}/bin/|/usr/bin/env |g" -i ${_f}
done
}

package_python2-somepackage() {
Expand All @@ -62,9 +78,15 @@ package_python2-somepackage() {
cd "${srcdir}/python2-build"
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
${MINGW_PREFIX}/bin/python2 setup.py install --prefix=${MINGW_PREFIX} \
--root="${pkgdir}" --optimize=1
--root="${pkgdir}" --optimize=1 --skip-build

install -Dm644 LICENSE "${pkgdir}${MINGW_PREFIX}/share/licenses/python2-${_realname}/COPYING"

local PREFIX_WIN=$(cygpath -wm ${MINGW_PREFIX})
# fix python command in files
for _f in "${pkgdir}${MINGW_PREFIX}"/bin/*.py; do
sed -e "s|${PREFIX_WIN}/bin/|/usr/bin/env |g" -i ${_f}
done
}

package_mingw-w64-i686-python2-somepackage() {
Expand Down
19 changes: 12 additions & 7 deletions mingw-w64-cython/PKGBUILD
Expand Up @@ -4,7 +4,7 @@
_realname=cython
pkgbase=mingw-w64-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-cython" "${MINGW_PACKAGE_PREFIX}-cython2")
pkgver=0.23.5
pkgver=0.24.1
pkgrel=1
pkgdesc="C-Extensions for Python (mingw-w64)"
arch=('any')
Expand All @@ -15,17 +15,22 @@ makedepends=(
"${MINGW_PACKAGE_PREFIX}-python2-setuptools"
"${MINGW_PACKAGE_PREFIX}-gcc"
)
source=("http://cython.org/release/Cython-${pkgver}.tar.gz")
sha256sums=('0ae5a5451a190e03ee36922c4189ca2c88d1df40a89b4f224bc842d388a0d1b6')
_dtoken="97319581905de40f1be7015a0ea1bd336a756f6249914b148a17eefa75dc"
source=("https://pypi.python.org/packages/c6/fe/${_dtoken}/Cython-${pkgver}.tar.gz")
sha256sums=('84808fda00508757928e1feadcf41c9f78e9a9b7167b6649ab0933b76f75e7b9')

prepare() {
cp -a ${_realname}-${pkgver} ${_realname}-py2-${pkgver}-${CARCH}
mv ${_realname}-${pkgver} ${_realname}-${pkgver}-${CARCH}
cd "$srcdir"/
for pver in {2,3}; do
rm -rf python${pver}-build-${CARCH}| true
cp -r "${_realname}-${pkgver}" "python${pver}-build-${CARCH}"
sed -e "s|\/usr\/bin\/python|${MINGW_PREFIX}\/bin\/python${pver}|" -i python${pver}-build-${CARCH}/setup.py
done
}

package_cython() {
depends=("${MINGW_PACKAGE_PREFIX}-python3-setuptools")
cd ${_realname}-${pkgver}-${CARCH}
cd "${srcdir}/python3-build-${CARCH}"
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
DISTUTILS_DEBUG=1 \
${MINGW_PREFIX}/bin/python3 setup.py install --prefix=${MINGW_PREFIX} \
Expand All @@ -38,7 +43,7 @@ package_cython() {

package_cython2() {
depends=("${MINGW_PACKAGE_PREFIX}-python2-setuptools")
cd ${_realname}-py2-${pkgver}-${CARCH}
cd "${srcdir}/python2-build-${CARCH}"
DISTUTILS_DEBUG=1 \
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
${MINGW_PREFIX}/bin/python2 setup.py install --prefix=${MINGW_PREFIX} \
Expand Down
76 changes: 76 additions & 0 deletions mingw-w64-python-distutils-extra/PKGBUILD
@@ -0,0 +1,76 @@
# Maintainer: Alexey Pavlov <alexpux@gmail.com>

_realname=python-distutils-extra
pkgname=("${MINGW_PACKAGE_PREFIX}-python3-distutils-extra" "${MINGW_PACKAGE_PREFIX}-python2-distutils-extra")
pkgver=2.39
pkgrel=1
pkgdesc="Enhancements to the Python build system (mingw-w64)"
arch=('any')
license=('GPL')
url="https://launchpad.net/python-distutils-extra"
makedepends=("${MINGW_PACKAGE_PREFIX}-python3-setuptools" "${MINGW_PACKAGE_PREFIX}-python2-setuptools")
source=("https://launchpad.net/${_realname}/trunk/$pkgver/+download/${_realname}-$pkgver.tar.gz"
"https://launchpad.net/${_realname}/trunk/$pkgver/+download/${_realname}-$pkgver.tar.gz.asc")
validpgpkeys=("3DB46B55EFA59D40E6232148D14EF15DAFE11347") # Martin Pitt <martinpitt@gnome.org>
md5sums=('16e06db0ef73a35b4bff4b9eed5699b5'
'SKIP')

prepare() {
cd "$srcdir"/
for pver in {2,3}; do
rm -rf python${pver}-build-${CARCH}| true
cp -r "${_realname}-${pkgver}" "python${pver}-build-${CARCH}"
done
}

build() {
for pver in {2,3}; do
msg "Python ${pver} build for ${CARCH}"
cd "${srcdir}/python${pver}-build-${CARCH}"
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
${MINGW_PREFIX}/bin/python${pver} setup.py build
done
}
check() {
for pver in {2,3}; do
msg "Python ${pver} test for ${CARCH}"
cd "${srcdir}/python${pver}-build-${CARCH}"
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
${MINGW_PREFIX}/bin/python${pver} setup.py test
done
}

package_python3-distutils-extra() {
depends=("${MINGW_PACKAGE_PREFIX}-python3>=3.3" "intltool")

cd "${srcdir}/python3-build-${CARCH}"
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
${MINGW_PREFIX}/bin/python3 setup.py install --root="${pkgdir}" --skip-build
}

package_python2-distutils-extra() {
depends=("${MINGW_PACKAGE_PREFIX}-python2>=2.7" "intltool")

cd "${srcdir}/python2-build-${CARCH}"
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
${MINGW_PREFIX}/bin/python2 setup.py install --root="${pkgdir}" --skip-build
}


# Wrappers
package_mingw-w64-i686-python2-distutils-extra() {
package_python2-distutils-extra
}

package_mingw-w64-i686-python3-distutils-extra() {
package_python3-distutils-extra
}

package_mingw-w64-x86_64-python2-distutils-extra() {
package_python2-distutils-extra
}

package_mingw-w64-x86_64-python3-distutils-extra() {
package_python3-distutils-extra
}

4 changes: 2 additions & 2 deletions mingw-w64-python-mock/PKGBUILD
Expand Up @@ -3,7 +3,7 @@
_realname=mock
pkgbase=mingw-w64-python-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-python2-${_realname}" "${MINGW_PACKAGE_PREFIX}-python3-${_realname}")
pkgver=1.3.0
pkgver=2.0.0
pkgrel=1
pkgdesc='Rolling backport of unittest.mock for all Pythons (mingw-w64)'
arch=('any')
Expand All @@ -18,7 +18,7 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-python3"
"${MINGW_PACKAGE_PREFIX}-python3-pbr"
"${MINGW_PACKAGE_PREFIX}-python2-pbr")
source=("https://pypi.python.org/packages/source/m/${_realname}/${_realname}-${pkgver}.tar.gz")
sha256sums=('1e247dbecc6ce057299eb7ee019ad68314bb93152e81d9a6110d35f4d5eca0f6')
sha256sums=('b158b6df76edd239b8208d481dc46b6afd45a846b7812ff0ce58971cf5bc8bba')
noextract=(${_realname}-${pkgver}.tar.gz)

prepare() {
Expand Down
17 changes: 10 additions & 7 deletions mingw-w64-python-pbr/PKGBUILD
Expand Up @@ -3,7 +3,7 @@
_realname=pbr
pkgbase=mingw-w64-python-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-python2-${_realname}" "${MINGW_PACKAGE_PREFIX}-python3-${_realname}")
pkgver=1.8.1
pkgver=1.10.0
pkgrel=1
pkgdesc="Python Build Reasonableness (mingw-w64)"
url="https://launchpad.net/pbr"
Expand All @@ -13,19 +13,22 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-python2-setuptools"
"${MINGW_PACKAGE_PREFIX}-python3-setuptools"
"${MINGW_PACKAGE_PREFIX}-python2-six"
"${MINGW_PACKAGE_PREFIX}-python3-six")
source=("https://pypi.python.org/packages/source/p/${_realname}/${_realname}-${pkgver}.tar.gz")
sha256sums=('e2127626a91e6c885db89668976db31020f0af2da728924b56480fc7ccf09649')
_dtoken="63275fab26a0fd8cadafca71a3623e4d0f0ee8ed7124a5bb128853d178a7"
source=("https://pypi.python.org/packages/c3/2c/${_dtoken}/${_realname}-${pkgver}.tar.gz")
sha256sums=('186428c270309e6fdfe2d5ab0949ab21ae5f7dea831eab96701b86bd666af39c')

prepare() {
cd ${srcdir}
cp -r ${_realname}-${pkgver} build-python2
cp -r ${_realname}-${pkgver} build-python3
for pver in {2,3}; do
rm -rf python${pver}-build-${CARCH}| true
cp -r "${_realname}-${pkgver}" "python${pver}-build-${CARCH}"
done
}

package_python3-pbr() {
depends=("${MINGW_PACKAGE_PREFIX}-python3-six")

cd ${srcdir}/build-python3
cd ${srcdir}/python3-build-${CARCH}
${MINGW_PREFIX}/bin/python3 setup.py build
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
${MINGW_PREFIX}/bin/python3 setup.py install --prefix=${MINGW_PREFIX} --root="${pkgdir}"
Expand All @@ -42,7 +45,7 @@ package_python3-pbr() {
package_python2-pbr() {
depends=("${MINGW_PACKAGE_PREFIX}-python2-six")

cd ${srcdir}/build-python2
cd ${srcdir}/python2-build-${CARCH}
${MINGW_PREFIX}/bin/python2 setup.py build
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
${MINGW_PREFIX}/bin/python2 setup.py install --prefix=${MINGW_PREFIX} --root="${pkgdir}"
Expand Down
82 changes: 82 additions & 0 deletions mingw-w64-python-pgen2/PKGBUILD
@@ -0,0 +1,82 @@
# Maintainer: J. Peter Mugaas <jpmugaas@suddenlink.net>
#This value is here because some python package names have capital letters
#while there is a strong preference for lowercase letters in ArchLinux and
#MSYS packages.
_pyname=pgen2
_realname=pgen2
pkgbase=mingw-w64-python-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-python2-${_realname}" "${MINGW_PACKAGE_PREFIX}-python3-${_realname}")
pkgver=0.1.0
pkgrel=1
pkgdesc="Pure Python implementation of pgen, the Python parser generator (mingw-w64)"
arch=('any')
url='https://github.com/mythonlang/pgen2/'
license=('MIT')
makedepends=("${MINGW_PACKAGE_PREFIX}-python2"
"${MINGW_PACKAGE_PREFIX}-python3"
"${MINGW_PACKAGE_PREFIX}-python3-setuptools"
"${MINGW_PACKAGE_PREFIX}-python2-setuptools")
options=('staticlibs' 'strip' '!debug')
_dtoken="2f/95/c36839d594d4f58b17e01a8e6f661f96337b546b8e4fd281d166cb5dc22a"
source=("https://pypi.python.org/packages/${_dtoken}/${_pyname}-${pkgver}.tar.gz")
sha256sums=('a5057017c99eb45512f1cc772bae5953ed64104c1c705f0438aa00d06ee65804')

prepare() {
cd "$srcdir"/
for pver in {2,3}; do
rm -rf python${pver}-build-${CARCH} | true
cp -r "${_pyname}-${pkgver}" "python${pver}-build-${CARCH}"
done
}

build() {
for pver in {2,3}; do
msg "Python ${pver} build for ${CARCH}"
cd "${srcdir}/python${pver}-build-${CARCH}"
${MINGW_PREFIX}/bin/python${pver} setup.py build
done
}

check() {
for pver in {2,3}; do
msg "Python ${pver} test for ${CARCH}"
cd "${srcdir}/python${pver}-build-${CARCH}"
${MINGW_PREFIX}/bin/python${pver} setup.py check -v -m
done
}

# Note that build() is sometimes skipped because it's done in
# the packages setup.py install for simplicity if you can do so.
package_python3-pgen2() {
depends=("${MINGW_PACKAGE_PREFIX}-python3")

cd "${srcdir}/python3-build-${CARCH}"
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
${MINGW_PREFIX}/bin/python3 setup.py install --prefix=${MINGW_PREFIX} \
--root="${pkgdir}" --optimize=1 --skip-build
}

package_python2-pgen2() {
depends=("${MINGW_PACKAGE_PREFIX}-python2")

cd "${srcdir}/python2-build-${CARCH}"
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
${MINGW_PREFIX}/bin/python2 setup.py install --prefix=${MINGW_PREFIX} \
--root="${pkgdir}" --optimize=1 --skip-build
}

package_mingw-w64-i686-python2-pgen2() {
package_python2-pgen2
}

package_mingw-w64-i686-python3-pgen2() {
package_python3-pgen2
}

package_mingw-w64-x86_64-python2-pgen2() {
package_python2-pgen2
}

package_mingw-w64-x86_64-python3-pgen2() {
package_python3-pgen2
}
31 changes: 19 additions & 12 deletions mingw-w64-python-pip/PKGBUILD
Expand Up @@ -4,7 +4,7 @@ _realname=pip
pkgbase=mingw-w64-python-${_realname}
pkgname=("${MINGW_PACKAGE_PREFIX}-python2-${_realname}" "${MINGW_PACKAGE_PREFIX}-python3-${_realname}")
pkgver=8.1.2
pkgrel=1
pkgrel=2
pkgdesc="An easy_install replacement for installing pypi python packages (mingw-w64)"
arch=('any')
license=('MIT')
Expand All @@ -14,29 +14,36 @@ depends=("${MINGW_PACKAGE_PREFIX}-python2"
"${MINGW_PACKAGE_PREFIX}-python3"
"${MINGW_PACKAGE_PREFIX}-python3-setuptools")
source=(${_realname}-${pkgver}.tar.gz::https://github.com/pypa/pip/archive/${pkgver}.tar.gz)
noextract=(${_realname}-${pkgver}.tar.gz)
sha256sums=('8dae1fb72e29c2b6ff6ed267861179216bf98d3bda6d30e527dbed0db5ac7e1d')

prepare() {
cp -r ${_realname}-${pkgver} ${_realname}-python2
cp -r ${_realname}-${pkgver} ${_realname}-python3
cd "$srcdir"/

# work around symlinks in pip package that can cause problems with some building
# where dirs are not removed after being used.
rm -rf pip-8.1.2/tests/data/packages/symlinks/docs || true 2> /dev/nul
bsdtar zxf ${_realname}-${pkgver}.tar.gz || true
for pver in {2,3}; do
rm -rf python${pver}-build-${CARCH}| true
cp -r "${_realname}-${pkgver}" "python${pver}-build-${CARCH}"
done
}

build() {
# Build python 3 module
cd "${srcdir}"/${_realname}-python3
${MINGW_PREFIX}/bin/python3 setup.py build

# Build python 2 module
cd "${srcdir}"/${_realname}-python2
${MINGW_PREFIX}/bin/python2 setup.py build
for pver in {2,3}; do
msg "Python ${pver} build for ${CARCH}"
cd "${srcdir}/python${pver}-build-${CARCH}"
${MINGW_PREFIX}/bin/python${pver} setup.py build
done
}

package_python2-pip() {
depends=("${MINGW_PACKAGE_PREFIX}-python2" "${MINGW_PACKAGE_PREFIX}-python2-setuptools")

local _mingw_prefix=$(cygpath -am ${MINGW_PREFIX})

cd "${srcdir}/${_realname}-python2"
cd "${srcdir}/python2-build-${CARCH}"
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
${MINGW_PREFIX}/bin/python2 setup.py install --prefix=${MINGW_PREFIX#\/} --root="${pkgdir}" --optimize=1 --skip-build

Expand All @@ -50,7 +57,7 @@ package_python3-pip() {

local _mingw_prefix=$(cygpath -am ${MINGW_PREFIX})

cd "${srcdir}/${_realname}-python3"
cd "${srcdir}/python3-build-${CARCH}"
MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \
${MINGW_PREFIX}/bin/python3 setup.py install --prefix=${MINGW_PREFIX#\/} --root="${pkgdir}" --optimize=1 --skip-build -v

Expand Down

0 comments on commit e9395ba

Please sign in to comment.