diff options
author | Gregory P. Smith <greg@mad-scientist.com> | 2007-10-06 08:23:10 (GMT) |
---|---|---|
committer | Gregory P. Smith <greg@mad-scientist.com> | 2007-10-06 08:23:10 (GMT) |
commit | e43bd62b87b450bbd37e25629c6c3e8b1c75beae (patch) | |
tree | fc20e46f99690f7d9924765de9ad1b27c4b0c0c2 /setup.py | |
parent | 9e780cc4e7466fdaf657633eabbc69974949be32 (diff) | |
download | cpython-e43bd62b87b450bbd37e25629c6c3e8b1c75beae.zip cpython-e43bd62b87b450bbd37e25629c6c3e8b1c75beae.tar.gz cpython-e43bd62b87b450bbd37e25629c6c3e8b1c75beae.tar.bz2 |
Merge 58344: allow BerkeleyDB 4.6.x >= 4.6.21 for the bsddb module
Diffstat (limited to 'setup.py')
-rw-r--r-- | setup.py | 18 |
1 files changed, 13 insertions, 5 deletions
@@ -630,16 +630,15 @@ class PyBuildExt(build_ext): # implementation independent wrapper for these; dumbdbm.py provides # similar functionality (but slower of course) implemented in Python. - # Sleepycat^WOracle Berkeley DB interface. http://www.sleepycat.com + # Sleepycat^WOracle Berkeley DB interface. + # http://www.oracle.com/database/berkeley-db/db/index.html # # This requires the Sleepycat^WOracle DB code. The supported versions - # are set below. Visit http://www.sleepycat.com/ to download + # are set below. Visit the URL above to download # a release. Most open source OSes come with one or more # versions of BerkeleyDB already installed. - # XXX(gps) - Do not allow BerkeleyDB 4.6.x until Oracle fixes - # the DB_HASH lockup bug that is present in 4.6.19. - max_db_ver = (4, 5) + max_db_ver = (4, 6) min_db_ver = (3, 3) db_setup_debug = False # verbose debug prints from this script? @@ -710,6 +709,15 @@ class PyBuildExt(build_ext): db_minor = int(m.group(1)) db_ver = (db_major, db_minor) + # Avoid 4.6 prior to 4.6.21 due to a BerkeleyDB bug + if db_ver == (4, 6): + m = re.search(r"#define\WDB_VERSION_PATCH\W(\d+)", f) + db_patch = int(m.group(1)) + if db_patch < 21: + print("db.h:", db_ver, "patch", db_patch, + "being ignored (4.6.x must be >= 4.6.21)") + continue + if ( (db_ver not in db_ver_inc_map) and (db_ver <= max_db_ver and db_ver >= min_db_ver) ): # save the include directory with the db.h version |