From 6a642c093f29814cdd0fdefeee3ab9400eae490f Mon Sep 17 00:00:00 2001 From: root Date: Fri, 25 Nov 2011 23:14:55 +0000 Subject: Fri Nov 25 23:14:55 UTC 2011 --- testing/python/PKGBUILD | 81 ++++++++++++++++++++++++++++++++++ testing/python/gdbm-magic-values.patch | 13 ++++++ 2 files changed, 94 insertions(+) create mode 100644 testing/python/PKGBUILD create mode 100644 testing/python/gdbm-magic-values.patch (limited to 'testing/python') diff --git a/testing/python/PKGBUILD b/testing/python/PKGBUILD new file mode 100644 index 000000000..15e95141f --- /dev/null +++ b/testing/python/PKGBUILD @@ -0,0 +1,81 @@ +# $Id: PKGBUILD 143476 2011-11-24 17:03:18Z stephane $ +# Maintainer: Stéphane Gaudreault +# Maintainer: Allan McRae +# Contributor: Jason Chu + +pkgname=python +pkgver=3.2.2 +pkgrel=2 +_pybasever=3.2 +pkgdesc="Next generation of the python high-level scripting language" +arch=('i686' 'x86_64') +license=('custom') +url="http://www.python.org/" +depends=('expat' 'bzip2' 'gdbm' 'openssl' 'libffi' 'zlib') +makedepends=('tk' 'sqlite3' 'valgrind') +optdepends=('tk: for tkinter' 'sqlite3') +provides=('python3') +replaces=('python3') +options=('!makeflags') +source=(http://www.python.org/ftp/python/${pkgver%rc*}/Python-${pkgver}.tar.xz + gdbm-magic-values.patch) +sha1sums=('5e654dbd48476193ccdef4d604ed4f45b48c6769' + '43bfbe3e23360f412b95cb284ff29b2cbe338be9') + +build() { + cd "${srcdir}/Python-${pkgver}" + + # FS#23997 + sed -i -e "s|^#.* /usr/local/bin/python|#!/usr/bin/python|" Lib/cgi.py + + # gdbm has new magic that whichdb does not recognize + # http://bugs.python.org/issue13007 + patch -Np1 -i ../gdbm-magic-values.patch + + # Ensure that we are using the system copy of various libraries (expat, zlib and libffi), + # rather than copies shipped in the tarball + rm -r Modules/expat + rm -r Modules/zlib + rm -r Modules/_ctypes/{darwin,libffi}* + + ./configure --prefix=/usr \ + --enable-shared \ + --with-threads \ + --with-computed-gotos \ + --enable-ipv6 \ + --with-valgrind \ + --with-wide-unicode \ + --with-system-expat \ + --with-dbmliborder=gdbm:ndbm \ + --with-system-ffi + + make +} + +check() { + cd "${srcdir}/Python-${pkgver}" + LD_LIBRARY_PATH="${srcdir}/Python-${pkgver}":${LD_LIBRARY_PATH} \ + "${srcdir}/Python-${pkgver}/python" -m test.regrtest -x test_distutils test_site test_uuid +} + +package() { + cd "${srcdir}/Python-${pkgver}" + make DESTDIR="${pkgdir}" install maninstall + + # Why are these not done by default... + ln -sf python3 "${pkgdir}/usr/bin/python" + ln -sf python3-config "${pkgdir}/usr/bin/python-config" + ln -sf idle3 "${pkgdir}/usr/bin/idle" + ln -sf pydoc3 "${pkgdir}/usr/bin/pydoc" + ln -sf python${_pybasever}.1 "${pkgdir}/usr/share/man/man1/python3.1" + + # Fix FS#22552 + ln -sf ../../libpython${_pybasever}mu.so \ + "${pkgdir}/usr/lib/python${_pybasever}/config-${_pybasever}mu/libpython${_pybasever}mu.so" + + # Clean-up reference to build directory + sed -i "s|$srcdir/Python-${pkgver}:||" "$pkgdir/usr/lib/python${_pybasever}/config-${_pybasever}mu/Makefile" + + # License + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/testing/python/gdbm-magic-values.patch b/testing/python/gdbm-magic-values.patch new file mode 100644 index 000000000..e8ce828cf --- /dev/null +++ b/testing/python/gdbm-magic-values.patch @@ -0,0 +1,13 @@ +diff -up Python-3.2.2/Lib/dbm/__init__.py.gdbm-1.9-magic Python-3.2.2/Lib/dbm/__init__.py +--- Python-3.2.2/Lib/dbm/__init__.py.gdbm-1.9-magic 2011-09-03 12:16:40.000000000 -0400 ++++ Python-3.2.2/Lib/dbm/__init__.py 2011-09-30 15:47:27.488863694 -0400 +@@ -166,7 +166,7 @@ def whichdb(filename): + return "" + + # Check for GNU dbm +- if magic == 0x13579ace: ++ if magic in (0x13579ace, 0x13579acd, 0x13579acf): + return "dbm.gnu" + + # Later versions of Berkeley db hash file have a 12-byte pad in +diff -up Python-3.2.2/Misc/NEWS.gdbm-1.9-magic Python-3.2.2/Misc/NEWS -- cgit v1.2.3-54-g00ecf