summaryrefslogtreecommitdiffstats
path: root/abs/core/python/python-2.6-db-4.8.patch
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core/python/python-2.6-db-4.8.patch')
-rw-r--r--abs/core/python/python-2.6-db-4.8.patch123
1 files changed, 123 insertions, 0 deletions
diff --git a/abs/core/python/python-2.6-db-4.8.patch b/abs/core/python/python-2.6-db-4.8.patch
new file mode 100644
index 0000000..2032f92
--- /dev/null
+++ b/abs/core/python/python-2.6-db-4.8.patch
@@ -0,0 +1,123 @@
+Index: setup.py
+===================================================================
+--- setup.py (revision 74955)
++++ setup.py (working copy)
+@@ -695,7 +695,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: Modules/_bsddb.c
+===================================================================
+--- Modules/_bsddb.c (revision 74955)
++++ Modules/_bsddb.c (working copy)
+@@ -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)
+@@ -5947,9 +5957,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;
+ }
+
+@@ -6539,8 +6549,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},
+@@ -7089,6 +7101,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
+@@ -7096,7 +7109,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);
+@@ -7113,7 +7130,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);