diff -Naur Python-2.7-orig//Modules/_bsddb.c Python-2.7/Modules/_bsddb.c
--- Python-2.7-orig//Modules/_bsddb.c	2010-05-10 00:46:46.000000000 +1000
+++ Python-2.7/Modules/_bsddb.c	2010-10-20 13:19:26.436669911 +1000
@@ -9765,8 +9765,11 @@
 
     ADD_INT(d, DB_REP_PERMANENT);
 
-#if (DBVER >= 44)
+#if (DBVER >= 44) && (DBVER <= 48)
     ADD_INT(d, DB_REP_CONF_NOAUTOINIT);
+#endif
+    
+#if (DBVER >= 44)
     ADD_INT(d, DB_REP_CONF_DELAYCLIENT);
     ADD_INT(d, DB_REP_CONF_BULK);
     ADD_INT(d, DB_REP_CONF_NOWAIT);
diff -Naur Python-2.7-orig//setup.py Python-2.7/setup.py
--- Python-2.7-orig//setup.py	2010-06-27 22:36:16.000000000 +1000
+++ Python-2.7/setup.py	2010-10-20 13:10:48.256670026 +1000
@@ -765,7 +765,7 @@
         # a release.  Most open source OSes come with one or more
         # versions of BerkeleyDB already installed.
 
-        max_db_ver = (4, 8)
+        max_db_ver = (5, 1)
         min_db_ver = (4, 1)
         db_setup_debug = False   # verbose debug prints from this script?
 
@@ -787,8 +787,12 @@
             return True
 
         def gen_db_minor_ver_nums(major):
-            if major == 4:
+            if major == 5:
                 for x in range(max_db_ver[1]+1):
+                    if allow_db_ver((5, x)):
+                        yield x
+            if major == 4:
+                for x in range(9):
                     if allow_db_ver((4, x)):
                         yield x
             elif major == 3: