From ebeaee292a5a8e7dc402b0d21840cda1cc3d04ac Mon Sep 17 00:00:00 2001
From: James Meyer <james.meyer@operamail.com>
Date: Tue, 7 Aug 2012 13:23:32 -0500
Subject: python 2.7.3

---
 abs/core/python2/PKGBUILD | 109 +++++++++++++++++++++++++---------------------
 1 file changed, 59 insertions(+), 50 deletions(-)

diff --git a/abs/core/python2/PKGBUILD b/abs/core/python2/PKGBUILD
index da78268..0273175 100644
--- a/abs/core/python2/PKGBUILD
+++ b/abs/core/python2/PKGBUILD
@@ -1,75 +1,84 @@
-# $Id: PKGBUILD 75257 2010-04-01 05:30:58Z allan $
-# Maintainer: Allan McRae <allan@archlinux.org>
+# $Id: PKGBUILD 157413 2012-04-28 09:27:14Z allan $
+# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
+# Contributer: Allan McRae <allan@archlinux.org>
 # Contributer: Jason Chu <jason@archlinux.org>
 
 pkgname=python2
-pkgver=2.6.6
-pkgrel=5
-_pybasever=2.6
+pkgver=2.7.3
+pkgrel=2
+_pybasever=2.7
 pkgdesc="A high-level scripting language"
 arch=('i686' 'x86_64')
 license=('PSF')
-url="http://www.python.org"
-depends=('db>=5.1' 'bzip2' 'gdbm' 'openssl' 'zlib' 'expat' 'sqlite3')
-makedepends=('tk>=8.5.0')
-optdepends=('tk: for IDLE, pynche and modulator')
-provides=('python2' 'python' 'python-elementtree' 'python-ctypes')
-replaces=('python' 'python-elementtree' 'python-ctypes')
-source=(http://www.python.org/ftp/python/${pkgver}/Python-${pkgver}.tar.bz2
-	python-2.6-internal-expat.patch
-	python-2.6-db-4.8.patch
-	modulator-launcher
-	pynche-launcher)
+url="http://www.python.org/"
+depends=('bzip2' 'gdbm' 'openssl' 'zlib' 'expat' 'sqlite' 'libffi')
+makedepends=('tk')
+optdepends=('tk: for IDLE')
+conflicts=('python<3')
+options=('!makeflags')
+source=(http://www.python.org/ftp/python/${pkgver%rc?}/Python-${pkgver}.tar.xz)
+sha1sums=('b2b0ada7ebed4a8204a855193afbdb3aa3308357')
 
 build() {
-  cd ${srcdir}/Python-${pkgver}
+  cd "${srcdir}/Python-${pkgver}"
 
-  patch -Np0 -i ${srcdir}/python-2.6-internal-expat.patch || return 1
+  # Temporary workaround for FS#22322
+  # See http://bugs.python.org/issue10835 for upstream report
+  sed -i "/progname =/s/python/python${_pybasever}/" Python/pythonrun.c
 
-  #http://bugs.python.org/issue6949
-  patch -Np0 -i ${srcdir}/python-2.6-db-4.8.patch || return 1
+  # Enable built-in SQLite module to load extensions (fix FS#22122)
+  sed -i "/SQLITE_OMIT_LOAD_EXTENSION/d" setup.py
+
+  # FS#23997
+  sed -i -e "s|^#.* /usr/local/bin/python|#!/usr/bin/python2|" Lib/cgi.py
+
+  # 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}*
 
   export OPT="${CFLAGS}"
-  ./configure --prefix=/usr --enable-shared --with-threads --enable-unicode
+  ./configure --prefix=/usr --enable-shared --with-threads --enable-ipv6 \
+              --enable-unicode=ucs4 --with-system-expat --with-system-ffi \
+              --with-dbmliborder=gdbm:ndbm
 
-  make || return 1
+  make
 }
+
 package() {
-  cd ${srcdir}/Python-${pkgver}
-  make DESTDIR=${pkgdir} install
+  cd "${srcdir}/Python-${pkgver}"
+  make DESTDIR="${pkgdir}" altinstall maninstall
 
-  rm ${pkgdir}/usr/bin/python
-  ln -sf python${_pybasever} ${pkgdir}/usr/bin/python
-  ln -sf python${_pybasever} ${pkgdir}/usr/bin/python2
+  ln -sf python${_pybasever}        "${pkgdir}/usr/bin/python2"
+  ln -sf python${_pybasever}-config "${pkgdir}/usr/bin/python2-config"
+  ln -sf python${_pybasever}.1      "${pkgdir}/usr/share/man/man1/python2.1"
 
   ln -sf ../../libpython${_pybasever}.so \
-    ${pkgdir}/usr/lib/python${_pybasever}/config/libpython${_pybasever}.so
+    "${pkgdir}/usr/lib/python${_pybasever}/config/libpython${_pybasever}.so"
+
+  mv "${pkgdir}/usr/bin/smtpd.py" "${pkgdir}/usr/lib/python${_pybasever}/"
 
-  # Install the tools
-  #modulator
-  sed -i "s#%%PYBASEVER%%#${_pybasever}#" ${srcdir}/modulator-launcher
-  install -m755 ${srcdir}/modulator-launcher ${pkgdir}/usr/bin/modulator
-  cp -r Tools/modulator ${pkgdir}/usr/lib/python${_pybasever}/site-packages/
+  # some useful "stuff"
+  install -dm755 "${pkgdir}"/usr/lib/python${_pybasever}/Tools/{i18n,scripts}
+  install -m755 Tools/i18n/{msgfmt,pygettext}.py \
+    "${pkgdir}/usr/lib/python${_pybasever}/Tools/i18n/"
+  install -m755 Tools/scripts/{README,*py} \
+    "${pkgdir}/usr/lib/python${_pybasever}/Tools/scripts/"
 
-  #pynche
-  sed -i "s#%%PYBASEVER%%#${_pybasever}#" ${srcdir}/pynche-launcher
-  install -m755 ${srcdir}/pynche-launcher ${pkgdir}/usr/bin/pynche
-  rm -f Tools/pynche/*.pyw
-  cp -r Tools/pynche ${pkgdir}/usr/lib/python${_pybasever}/site-packages/
+  # fix conflicts with python
+  mv "${pkgdir}"/usr/bin/idle{,2}
+  mv "${pkgdir}"/usr/bin/pydoc{,2}
+  mv "${pkgdir}"/usr/bin/2to3{,-2.7}
 
-  #gettext
-  install -m755 Tools/i18n/pygettext.py ${pkgdir}/usr/bin/
-  install -m755 Tools/i18n/msgfmt.py ${pkgdir}/usr/bin/
+  # clean up #!s
+  find "${pkgdir}/usr/lib/python${_pybasever}/" -name '*.py' | \
+    xargs sed -i "s|#[ ]*![ ]*/usr/bin/env python$|#!/usr/bin/env python2|"
 
-  mkdir -p ${pkgdir}/usr/lib/python${_pybasever}/Tools/scripts
-  install -m644 Tools/scripts/README ${pkgdir}/usr/lib/python${_pybasever}/Tools/scripts/
-  install -m755 Tools/scripts/*py ${pkgdir}/usr/lib/python${_pybasever}/Tools/scripts/
+  # clean-up reference to build directory
+  sed -i "s#${srcdir}/Python-${pkgver}:##" \
+    "${pkgdir}/usr/lib/python${_pybasever}/config/Makefile"
 
   # license
-  install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+  install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
 }
-md5sums=('cf4e6881bb84a7ce6089e4a307f71f14'
-         '993800dbcc0c4f199c1ceee998a06e71'
-         '10eb5449ead95b9cb13eae9f9a65894e'
-         'b4a531570415280dc406c8d5c1fa8d83'
-         '9f731b9033db285132a3524fb36409e7')
-- 
cgit v0.12

