[arch-commits] Commit in python2/repos (8 files)

Stéphane Gaudreault stephane at archlinux.org
Thu Feb 2 19:30:11 UTC 2012


    Date: Thursday, February 2, 2012 @ 14:30:11
  Author: stephane
Revision: 148498

db-move: moved python2 from [testing] to [extra] (i686)

Added:
  python2/repos/extra-i686/13156-revert-tls-changeset-subinterpreter.patch
    (from rev 148497, python2/repos/testing-i686/13156-revert-tls-changeset-subinterpreter.patch)
  python2/repos/extra-i686/PKGBUILD
    (from rev 148497, python2/repos/testing-i686/PKGBUILD)
  python2/repos/extra-i686/gdbm-magic-values.patch
    (from rev 148497, python2/repos/testing-i686/gdbm-magic-values.patch)
  python2/repos/extra-i686/linux2.patch
    (from rev 148497, python2/repos/testing-i686/linux2.patch)
Deleted:
  python2/repos/extra-i686/PKGBUILD
  python2/repos/extra-i686/gdbm-magic-values.patch
  python2/repos/extra-i686/linux2.patch
  python2/repos/testing-i686/

-------------------------------------------------+
 13156-revert-tls-changeset-subinterpreter.patch |   61 ++++++
 PKGBUILD                                        |  197 +++++++++++-----------
 gdbm-magic-values.patch                         |   25 +-
 linux2.patch                                    |   46 ++---
 4 files changed, 197 insertions(+), 132 deletions(-)

Copied: python2/repos/extra-i686/13156-revert-tls-changeset-subinterpreter.patch (from rev 148497, python2/repos/testing-i686/13156-revert-tls-changeset-subinterpreter.patch)
===================================================================
--- extra-i686/13156-revert-tls-changeset-subinterpreter.patch	                        (rev 0)
+++ extra-i686/13156-revert-tls-changeset-subinterpreter.patch	2012-02-02 19:30:11 UTC (rev 148498)
@@ -0,0 +1,61 @@
+
+# HG changeset patch
+# User Charles-François Natali <neologix at free.fr>
+# Date 1318446474 -7200
+# Node ID ee4fe16d9b4822457ad855ea6c44e65030166304
+# Parent  f6feed6ec3f9b024cecd0fd587595c403f55624f
+Issue #13156: revert changeset f6feed6ec3f9, which was only relevant for native
+TLS implementations, and fails with the ad-hoc TLS implementation when a thread
+doesn't have an auto thread state (e.g. a thread created outside of Python
+calling into a subinterpreter).
+
+diff --git a/Include/pystate.h b/Include/pystate.h
+--- a/Include/pystate.h
++++ b/Include/pystate.h
+@@ -111,7 +111,6 @@ PyAPI_FUNC(void) PyThreadState_Clear(PyT
+ PyAPI_FUNC(void) PyThreadState_Delete(PyThreadState *);
+ #ifdef WITH_THREAD
+ PyAPI_FUNC(void) PyThreadState_DeleteCurrent(void);
+-PyAPI_FUNC(void) _PyGILState_Reinit(void);
+ #endif
+ 
+ PyAPI_FUNC(PyThreadState *) PyThreadState_Get(void);
+diff --git a/Modules/signalmodule.c b/Modules/signalmodule.c
+--- a/Modules/signalmodule.c
++++ b/Modules/signalmodule.c
+@@ -976,7 +976,6 @@ void
+ PyOS_AfterFork(void)
+ {
+ #ifdef WITH_THREAD
+-    _PyGILState_Reinit();
+     PyEval_ReInitThreads();
+     main_thread = PyThread_get_thread_ident();
+     main_pid = getpid();
+diff --git a/Python/pystate.c b/Python/pystate.c
+--- a/Python/pystate.c
++++ b/Python/pystate.c
+@@ -537,23 +537,6 @@ void
+     autoInterpreterState = NULL;
+ }
+ 
+-/* Reset the TLS key - called by PyOS_AfterFork.
+- * This should not be necessary, but some - buggy - pthread implementations
+- * don't flush TLS on fork, see issue #10517.
+- */
+-void
+-_PyGILState_Reinit(void)
+-{
+-    PyThreadState *tstate = PyGILState_GetThisThreadState();
+-    PyThread_delete_key(autoTLSkey);
+-    if ((autoTLSkey = PyThread_create_key()) == -1)
+-        Py_FatalError("Could not allocate TLS entry");
+-
+-    /* re-associate the current thread state with the new key */
+-    if (PyThread_set_key_value(autoTLSkey, (void *)tstate) < 0)
+-        Py_FatalError("Couldn't create autoTLSkey mapping");
+-}
+-
+ /* When a thread state is created for a thread by some mechanism other than
+    PyGILState_Ensure, it's important that the GILState machinery knows about
+    it so it doesn't try to create another thread state for the thread (this is
+

Deleted: extra-i686/PKGBUILD
===================================================================
--- extra-i686/PKGBUILD	2012-02-02 17:27:11 UTC (rev 148497)
+++ extra-i686/PKGBUILD	2012-02-02 19:30:11 UTC (rev 148498)
@@ -1,96 +0,0 @@
-# $Id$
-# Maintainer: Stéphane Gaudreault <stephane at archlinux.org>
-# Contributer: Allan McRae <allan at archlinux.org>
-# Contributer: Jason Chu <jason at archlinux.org>
-
-pkgname=python2
-pkgver=2.7.2
-pkgrel=4
-_pybasever=2.7
-pkgdesc="A high-level scripting language"
-arch=('i686' 'x86_64')
-license=('PSF')
-url="http://www.python.org/"
-depends=('bzip2' 'gdbm' 'openssl' 'zlib' 'expat' 'sqlite3' '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
-        linux2.patch
-        gdbm-magic-values.patch)
-sha1sums=('56700044141402dc35e7a0a24aa7ffda1a8c1a53'
-          '937c06190899a491d662c7918658313e7640070e'
-          '0f4cd9508c9ace620a829a688a9285e0480b5fb5')
-
-build() {
-  cd "${srcdir}/Python-${pkgver}"
-
-  # Temporary workaround for FS#22322
-  # See http://bugs.python.org/issue10835 for upstream report
-  sed -i "/progname =/s/python/python${_pybasever}/" Python/pythonrun.c
-
-  # Enable built-in SQLite3 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
-
-  # Make sure sys.platform is set to linux2, even on kernel 3.X
-  # cf http://bugs.python.org/issue12326
-  patch -Np1 -i ../linux2.patch
-
-  # 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}*
-
-  export OPT="${CFLAGS}"
-  ./configure --prefix=/usr --enable-shared --with-threads --enable-ipv6 \
-              --enable-unicode=ucs4 --with-system-expat --with-system-ffi \
-              --with-dbmliborder=gdbm:ndbm
-
-  make MACHDEP=linux2
-}
-
-package() {
-  cd "${srcdir}/Python-${pkgver}"
-  make DESTDIR="${pkgdir}" altinstall maninstall
-
-  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"
-
-  mv "${pkgdir}/usr/bin/smtpd.py" "${pkgdir}/usr/lib/python${_pybasever}/"
-
-  # 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/"
-
-  # fix conflicts with python
-  mv "${pkgdir}"/usr/bin/idle{,2}
-  mv "${pkgdir}"/usr/bin/pydoc{,2}
-  mv "${pkgdir}"/usr/bin/2to3{,-2.7}
-
-  # clean up #!s
-  find "${pkgdir}/usr/lib/python${_pybasever}/" -name '*.py' | \
-    xargs sed -i "s|#[ ]*![ ]*/usr/bin/env python$|#!/usr/bin/env python2|"
-
-  # 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"
-}

Copied: python2/repos/extra-i686/PKGBUILD (from rev 148497, python2/repos/testing-i686/PKGBUILD)
===================================================================
--- extra-i686/PKGBUILD	                        (rev 0)
+++ extra-i686/PKGBUILD	2012-02-02 19:30:11 UTC (rev 148498)
@@ -0,0 +1,101 @@
+# $Id$
+# Maintainer: Stéphane Gaudreault <stephane at archlinux.org>
+# Contributer: Allan McRae <allan at archlinux.org>
+# Contributer: Jason Chu <jason at archlinux.org>
+
+pkgname=python2
+pkgver=2.7.2
+pkgrel=5
+_pybasever=2.7
+pkgdesc="A high-level scripting language"
+arch=('i686' 'x86_64')
+license=('PSF')
+url="http://www.python.org/"
+depends=('bzip2' 'gdbm' 'openssl' 'zlib' 'expat' 'sqlite3' '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
+        linux2.patch
+        gdbm-magic-values.patch
+        13156-revert-tls-changeset-subinterpreter.patch)
+sha1sums=('56700044141402dc35e7a0a24aa7ffda1a8c1a53'
+          '937c06190899a491d662c7918658313e7640070e'
+          'ede2c991b1a91eec5a01cc2d3a11231f17d750ae'
+          'd61fa2b8efd1d08a2ee8a9aed434dc94b8297d6b')
+
+build() {
+  cd "${srcdir}/Python-${pkgver}"
+
+  # Temporary workaround for FS#22322
+  # See http://bugs.python.org/issue10835 for upstream report
+  sed -i "/progname =/s/python/python${_pybasever}/" Python/pythonrun.c
+
+  # Enable built-in SQLite3 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
+
+  # Make sure sys.platform is set to linux2, even on kernel 3.X
+  # cf http://bugs.python.org/issue12326
+  patch -Np1 -i ../linux2.patch
+
+  # gdbm has new magic that whichdb does not recognize
+  # http://bugs.python.org/issue13007
+  patch -Np1 -i ../gdbm-magic-values.patch
+
+  # http://bugs.python.org/issue13156
+  patch -Np1 -i ../13156-revert-tls-changeset-subinterpreter.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}*
+
+  export OPT="${CFLAGS}"
+  ./configure --prefix=/usr --enable-shared --with-threads --enable-ipv6 \
+              --enable-unicode=ucs4 --with-system-expat --with-system-ffi \
+              --with-dbmliborder=gdbm:ndbm
+
+  make MACHDEP=linux2
+}
+
+package() {
+  cd "${srcdir}/Python-${pkgver}"
+  make DESTDIR="${pkgdir}" altinstall maninstall
+
+  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"
+
+  mv "${pkgdir}/usr/bin/smtpd.py" "${pkgdir}/usr/lib/python${_pybasever}/"
+
+  # 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/"
+
+  # fix conflicts with python
+  mv "${pkgdir}"/usr/bin/idle{,2}
+  mv "${pkgdir}"/usr/bin/pydoc{,2}
+  mv "${pkgdir}"/usr/bin/2to3{,-2.7}
+
+  # clean up #!s
+  find "${pkgdir}/usr/lib/python${_pybasever}/" -name '*.py' | \
+    xargs sed -i "s|#[ ]*![ ]*/usr/bin/env python$|#!/usr/bin/env python2|"
+
+  # 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"
+}

Deleted: extra-i686/gdbm-magic-values.patch
===================================================================
--- extra-i686/gdbm-magic-values.patch	2012-02-02 17:27:11 UTC (rev 148497)
+++ extra-i686/gdbm-magic-values.patch	2012-02-02 19:30:11 UTC (rev 148498)
@@ -1,13 +0,0 @@
-diff -up Python-2.7.2/Lib/whichdb.py.gdbm-1.9-magic Python-2.7.2/Lib/whichdb.py
---- Python-2.7.2/Lib/whichdb.py.gdbm-1.9-magic	2011-06-11 11:46:26.000000000 -0400
-+++ Python-2.7.2/Lib/whichdb.py	2011-09-30 15:45:21.778872290 -0400
-@@ -91,7 +91,7 @@ def whichdb(filename):
-         return ""
- 
-     # Check for GNU dbm
--    if magic == 0x13579ace:
-+    if magic in (0x13579ace, 0x13579acd, 0x13579acf):
-         return "gdbm"
- 
-     # Check for old Berkeley db hash file format v2
-diff -up Python-2.7.2/Misc/NEWS.gdbm-1.9-magic Python-2.7.2/Misc/NEWS

Copied: python2/repos/extra-i686/gdbm-magic-values.patch (from rev 148497, python2/repos/testing-i686/gdbm-magic-values.patch)
===================================================================
--- extra-i686/gdbm-magic-values.patch	                        (rev 0)
+++ extra-i686/gdbm-magic-values.patch	2012-02-02 19:30:11 UTC (rev 148498)
@@ -0,0 +1,12 @@
+diff -up Python-2.7.2/Lib/whichdb.py.gdbm-1.9-magic Python-2.7.2/Lib/whichdb.py
+--- Python-2.7.2/Lib/whichdb.py.gdbm-1.9-magic	2011-06-11 11:46:26.000000000 -0400
++++ Python-2.7.2/Lib/whichdb.py	2011-09-30 15:45:21.778872290 -0400
+@@ -91,7 +91,7 @@ def whichdb(filename):
+         return ""
+ 
+     # Check for GNU dbm
+-    if magic == 0x13579ace:
++    if magic in (0x13579ace, 0x13579acd, 0x13579acf):
+         return "gdbm"
+ 
+     # Check for old Berkeley db hash file format v2

Deleted: extra-i686/linux2.patch
===================================================================
--- extra-i686/linux2.patch	2012-02-02 17:27:11 UTC (rev 148497)
+++ extra-i686/linux2.patch	2012-02-02 19:30:11 UTC (rev 148498)
@@ -1,23 +0,0 @@
-http://hg.python.org/cpython/rev/c816479f6aaf/
-diff --git a/configure b/configure
---- a/configure
-+++ b/configure
-@@ -2995,6 +2995,7 @@ then
-	MACHDEP="$ac_md_system$ac_md_release"
-
-	case $MACHDEP in
-+	linux*) MACHDEP="linux2";;
-	cygwin*) MACHDEP="cygwin";;
-	darwin*) MACHDEP="darwin";;
-	atheos*) MACHDEP="atheos";;
-diff --git a/configure.in b/configure.in
---- a/configure.in
-+++ b/configure.in
-@@ -293,6 +293,7 @@ then
-	MACHDEP="$ac_md_system$ac_md_release"
-
-	case $MACHDEP in
-+	linux*) MACHDEP="linux2";;
-	cygwin*) MACHDEP="cygwin";;
-	darwin*) MACHDEP="darwin";;
-	atheos*) MACHDEP="atheos";;

Copied: python2/repos/extra-i686/linux2.patch (from rev 148497, python2/repos/testing-i686/linux2.patch)
===================================================================
--- extra-i686/linux2.patch	                        (rev 0)
+++ extra-i686/linux2.patch	2012-02-02 19:30:11 UTC (rev 148498)
@@ -0,0 +1,23 @@
+http://hg.python.org/cpython/rev/c816479f6aaf/
+diff --git a/configure b/configure
+--- a/configure
++++ b/configure
+@@ -2995,6 +2995,7 @@ then
+	MACHDEP="$ac_md_system$ac_md_release"
+
+	case $MACHDEP in
++	linux*) MACHDEP="linux2";;
+	cygwin*) MACHDEP="cygwin";;
+	darwin*) MACHDEP="darwin";;
+	atheos*) MACHDEP="atheos";;
+diff --git a/configure.in b/configure.in
+--- a/configure.in
++++ b/configure.in
+@@ -293,6 +293,7 @@ then
+	MACHDEP="$ac_md_system$ac_md_release"
+
+	case $MACHDEP in
++	linux*) MACHDEP="linux2";;
+	cygwin*) MACHDEP="cygwin";;
+	darwin*) MACHDEP="darwin";;
+	atheos*) MACHDEP="atheos";;




More information about the arch-commits mailing list