- update to 2.6.5: http://www.python.org/download/releases/2.6.5/
- replace our patch to compile against db4.8 with a patch from upstream (patch 53, from r78974); update patch 54 since part of it is now in that upstream patch - update patch 110 so that it still applies in the face of upstream r78380
This commit is contained in:
parent
f5df1f8343
commit
912b4112f7
|
@ -1 +1 @@
|
|||
Python-2.6.4.tar.bz2
|
||||
Python-2.6.5.tar.bz2
|
||||
|
|
|
@ -9,7 +9,7 @@ diff -ur Python-2.6~/Modules/_ctypes/callbacks.c Python-2.6/Modules/_ctypes/call
|
|||
- FreeClosure(self->pcl);
|
||||
+ if (self->pcl_write)
|
||||
+ ffi_closure_free(self->pcl_write);
|
||||
PyObject_Del(self);
|
||||
PyObject_GC_Del(self);
|
||||
}
|
||||
|
||||
@@ -373,7 +373,8 @@
|
||||
|
|
|
@ -10,18 +10,4 @@ diff -up Python-2.6.4/Modules/Setup.dist.setup-db48 Python-2.6.4/Modules/Setup.d
|
|||
DBINC=/usr/include/db4
|
||||
DBLIB=/usr/lib
|
||||
_bsddb _bsddb.c -I$(DBINC) -L$(DBLIB) -ldb-$(DBLIBVER)
|
||||
diff -up Python-2.6.4/setup.py.setup-db48 Python-2.6.4/setup.py
|
||||
--- Python-2.6.4/setup.py.setup-db48 2009-12-17 22:03:58.048015993 -0500
|
||||
+++ Python-2.6.4/setup.py 2009-12-17 22:03:58.169016398 -0500
|
||||
@@ -705,9 +705,9 @@ class PyBuildExt(build_ext):
|
||||
# a release. Most open source OSes come with one or more
|
||||
# versions of BerkeleyDB already installed.
|
||||
|
||||
- max_db_ver = (4, 7)
|
||||
+ max_db_ver = (4, 8)
|
||||
min_db_ver = (3, 3)
|
||||
- db_setup_debug = False # verbose debug prints from this script?
|
||||
+ db_setup_debug = True # verbose debug prints from this script?
|
||||
|
||||
def allow_db_ver(db_ver):
|
||||
"""Returns a boolean if the given BerkeleyDB version is acceptable.
|
||||
|
||||
|
|
|
@ -0,0 +1,167 @@
|
|||
Index: setup.py
|
||||
===================================================================
|
||||
--- setup.py (revision 78973)
|
||||
+++ setup.py (revision 78974)
|
||||
@@ -707,7 +707,7 @@
|
||||
# a release. Most open source OSes come with one or more
|
||||
# versions of BerkeleyDB already installed.
|
||||
|
||||
- max_db_ver = (4, 7)
|
||||
+ max_db_ver = (4, 8)
|
||||
min_db_ver = (3, 3)
|
||||
db_setup_debug = False # verbose debug prints from this script?
|
||||
|
||||
Index: Lib/bsddb/test/test_basics.py
|
||||
===================================================================
|
||||
--- Lib/bsddb/test/test_basics.py (revision 78973)
|
||||
+++ Lib/bsddb/test/test_basics.py (revision 78974)
|
||||
@@ -1000,11 +1000,12 @@
|
||||
# # See http://bugs.python.org/issue3307
|
||||
# self.assertRaises(db.DBInvalidArgError, db.DB, None, 65535)
|
||||
|
||||
- def test02_DBEnv_dealloc(self):
|
||||
- # http://bugs.python.org/issue3885
|
||||
- import gc
|
||||
- self.assertRaises(db.DBInvalidArgError, db.DBEnv, ~db.DB_RPCCLIENT)
|
||||
- gc.collect()
|
||||
+ if db.version() < (4, 8) :
|
||||
+ def test02_DBEnv_dealloc(self):
|
||||
+ # http://bugs.python.org/issue3885
|
||||
+ import gc
|
||||
+ self.assertRaises(db.DBInvalidArgError, db.DBEnv, ~db.DB_RPCCLIENT)
|
||||
+ gc.collect()
|
||||
|
||||
|
||||
#----------------------------------------------------------------------
|
||||
Index: Lib/bsddb/test/test_distributed_transactions.py
|
||||
===================================================================
|
||||
--- Lib/bsddb/test/test_distributed_transactions.py (revision 78973)
|
||||
+++ Lib/bsddb/test/test_distributed_transactions.py (revision 78974)
|
||||
@@ -35,7 +35,7 @@
|
||||
db.DB_INIT_TXN | db.DB_INIT_LOG | db.DB_INIT_MPOOL |
|
||||
db.DB_INIT_LOCK, 0666)
|
||||
self.db = db.DB(self.dbenv)
|
||||
- self.db.set_re_len(db.DB_XIDDATASIZE)
|
||||
+ self.db.set_re_len(db.DB_GID_SIZE)
|
||||
if must_open_db :
|
||||
if db.version() > (4,1) :
|
||||
txn=self.dbenv.txn_begin()
|
||||
@@ -76,7 +76,7 @@
|
||||
# let them be garbage collected.
|
||||
for i in xrange(self.num_txns) :
|
||||
txn = self.dbenv.txn_begin()
|
||||
- gid = "%%%dd" %db.DB_XIDDATASIZE
|
||||
+ gid = "%%%dd" %db.DB_GID_SIZE
|
||||
gid = adapt(gid %i)
|
||||
self.db.put(i, gid, txn=txn, flags=db.DB_APPEND)
|
||||
txns.add(gid)
|
||||
Index: Modules/_bsddb.c
|
||||
===================================================================
|
||||
--- Modules/_bsddb.c (revision 78973)
|
||||
+++ Modules/_bsddb.c (revision 78974)
|
||||
@@ -215,7 +215,11 @@
|
||||
#define DB_BUFFER_SMALL ENOMEM
|
||||
#endif
|
||||
|
||||
+#if (DBVER < 48)
|
||||
+#define DB_GID_SIZE DB_XIDDATASIZE
|
||||
+#endif
|
||||
|
||||
+
|
||||
/* --------------------------------------------------------------------- */
|
||||
/* Structure definitions */
|
||||
|
||||
@@ -4501,7 +4505,11 @@
|
||||
DBTxnObject *txn;
|
||||
#define PREPLIST_LEN 16
|
||||
DB_PREPLIST preplist[PREPLIST_LEN];
|
||||
+#if (DBVER < 48)
|
||||
long retp;
|
||||
+#else
|
||||
+ u_int32_t retp;
|
||||
+#endif
|
||||
|
||||
CHECK_ENV_NOT_CLOSED(self);
|
||||
|
||||
@@ -4522,7 +4530,7 @@
|
||||
flags=DB_NEXT; /* Prepare for next loop pass */
|
||||
for (i=0; i<retp; i++) {
|
||||
gid=PyBytes_FromStringAndSize((char *)(preplist[i].gid),
|
||||
- DB_XIDDATASIZE);
|
||||
+ DB_GID_SIZE);
|
||||
if (!gid) {
|
||||
Py_DECREF(list);
|
||||
return NULL;
|
||||
@@ -5047,6 +5055,7 @@
|
||||
}
|
||||
|
||||
|
||||
+#if (DBVER < 48)
|
||||
static PyObject*
|
||||
DBEnv_set_rpc_server(DBEnvObject* self, PyObject* args, PyObject* kwargs)
|
||||
{
|
||||
@@ -5068,6 +5077,7 @@
|
||||
RETURN_IF_ERR();
|
||||
RETURN_NONE();
|
||||
}
|
||||
+#endif
|
||||
|
||||
static PyObject*
|
||||
DBEnv_set_verbose(DBEnvObject* self, PyObject* args)
|
||||
@@ -5949,9 +5959,9 @@
|
||||
if (!PyArg_ParseTuple(args, "s#:prepare", &gid, &gid_size))
|
||||
return NULL;
|
||||
|
||||
- if (gid_size != DB_XIDDATASIZE) {
|
||||
+ if (gid_size != DB_GID_SIZE) {
|
||||
PyErr_SetString(PyExc_TypeError,
|
||||
- "gid must be DB_XIDDATASIZE bytes long");
|
||||
+ "gid must be DB_GID_SIZE bytes long");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
@@ -6541,8 +6551,10 @@
|
||||
#endif
|
||||
{"set_get_returns_none",(PyCFunction)DBEnv_set_get_returns_none, METH_VARARGS},
|
||||
{"txn_recover", (PyCFunction)DBEnv_txn_recover, METH_NOARGS},
|
||||
+#if (DBVER < 48)
|
||||
{"set_rpc_server", (PyCFunction)DBEnv_set_rpc_server,
|
||||
METH_VARARGS||METH_KEYWORDS},
|
||||
+#endif
|
||||
{"set_verbose", (PyCFunction)DBEnv_set_verbose, METH_VARARGS},
|
||||
#if (DBVER >= 42)
|
||||
{"get_verbose", (PyCFunction)DBEnv_get_verbose, METH_VARARGS},
|
||||
@@ -7091,6 +7103,7 @@
|
||||
ADD_INT(d, DB_MAX_PAGES);
|
||||
ADD_INT(d, DB_MAX_RECORDS);
|
||||
|
||||
+#if (DBVER < 48)
|
||||
#if (DBVER >= 42)
|
||||
ADD_INT(d, DB_RPCCLIENT);
|
||||
#else
|
||||
@@ -7098,7 +7111,11 @@
|
||||
/* allow apps to be written using DB_RPCCLIENT on older Berkeley DB */
|
||||
_addIntToDict(d, "DB_RPCCLIENT", DB_CLIENT);
|
||||
#endif
|
||||
+#endif
|
||||
+
|
||||
+#if (DBVER < 48)
|
||||
ADD_INT(d, DB_XA_CREATE);
|
||||
+#endif
|
||||
|
||||
ADD_INT(d, DB_CREATE);
|
||||
ADD_INT(d, DB_NOMMAP);
|
||||
@@ -7115,7 +7132,13 @@
|
||||
ADD_INT(d, DB_INIT_TXN);
|
||||
ADD_INT(d, DB_JOINENV);
|
||||
|
||||
+#if (DBVER >= 48)
|
||||
+ ADD_INT(d, DB_GID_SIZE);
|
||||
+#else
|
||||
ADD_INT(d, DB_XIDDATASIZE);
|
||||
+ /* Allow new code to work in old BDB releases */
|
||||
+ _addIntToDict(d, "DB_GID_SIZE", DB_XIDDATASIZE);
|
||||
+#endif
|
||||
|
||||
ADD_INT(d, DB_RECOVER);
|
||||
ADD_INT(d, DB_RECOVER_FATAL);
|
23
python.spec
23
python.spec
|
@ -51,8 +51,8 @@
|
|||
|
||||
Summary: An interpreted, interactive, object-oriented programming language
|
||||
Name: %{python}
|
||||
Version: 2.6.4
|
||||
Release: 23%{?dist}
|
||||
Version: 2.6.5
|
||||
Release: 1%{?dist}
|
||||
License: Python
|
||||
Group: Development/Languages
|
||||
Provides: python-abi = %{pybasever}
|
||||
|
@ -246,11 +246,11 @@ Patch51: python-2.6-distutils_rpm.patch
|
|||
Patch52: disable-pymalloc-on-valgrind-py26.patch
|
||||
|
||||
|
||||
# Patch generated by jwboyer@gmail.com to compile against db-4.8, using upstream
|
||||
# http://www.jcea.es/programacion/pybsddb.htm
|
||||
# See https://bugzilla.redhat.com/show_bug.cgi?id=544275
|
||||
Patch53: python-2.6-update-bsddb3-4.8.patch
|
||||
# ...and a further patch to setup.py so that it searches for 4.8:
|
||||
# Upstream patch to compile against db-4.8
|
||||
# http://bugs.python.org/issue6949
|
||||
# Based on http://svn.python.org/view?view=rev&revision=78974
|
||||
Patch53: python-2.6.5-db48.patch
|
||||
# ...and a further patch to setup.py so that it links against 4.8:
|
||||
Patch54: python-2.6.4-setup-db48.patch
|
||||
|
||||
# Systemtap support: add statically-defined probe points
|
||||
|
@ -481,7 +481,7 @@ rm -r Modules/zlib || exit 1
|
|||
|
||||
%patch51 -p1 -b .brprpm
|
||||
%patch52 -p0 -b .valgrind
|
||||
%patch53 -p1 -b .db48
|
||||
%patch53 -p0 -b .db48
|
||||
%patch54 -p1 -b .setup-db48
|
||||
%if 0%{?with_systemtap}
|
||||
%patch55 -p1 -b .systemtap
|
||||
|
@ -960,6 +960,13 @@ rm -fr %{buildroot}
|
|||
# payload file would be unpackaged)
|
||||
|
||||
%changelog
|
||||
* Fri Mar 19 2010 David Malcolm <dmalcolm@redhat.com> - 2.6.5-1
|
||||
- update to 2.6.5: http://www.python.org/download/releases/2.6.5/
|
||||
- replace our patch to compile against db4.8 with a patch from
|
||||
upstream (patch 53, from r78974); update patch 54 since part of it is now in
|
||||
that upstream patch
|
||||
- update patch 110 so that it still applies in the face of upstream r78380
|
||||
|
||||
* Tue Mar 16 2010 David Malcolm <dmalcolm@redhat.com> - 2.6.4-23
|
||||
- fixup distutils/unixccompiler.py to remove standard library path from
|
||||
rpath (patch 17)
|
||||
|
|
Loading…
Reference in New Issue