diff -Naur Python-2.7/setup.py Python-2.7-gdbm/setup.py --- Python-2.7/setup.py 2010-06-27 14:36:16.000000000 +0200 +++ Python-2.7-gdbm/setup.py 2010-07-29 19:23:32.000000000 +0200 @@ -1119,20 +1119,16 @@ dbmext = None for cand in dbm_order: if cand == "ndbm": - if find_file("ndbm.h", inc_dirs, []) is not None: - # Some systems have -lndbm, others don't - if self.compiler.find_library_file(lib_dirs, - 'ndbm'): - ndbm_libs = ['ndbm'] - else: - ndbm_libs = [] - print "building dbm using ndbm" - dbmext = Extension('dbm', ['dbmmodule.c'], + if self.compiler.find_library_file(lib_dirs, 'ndbm'): + ndbm_libs = ['ndbm'] + if find_file("ndbm.h", inc_dirs, []) is not None: + print "building dbm using ndbm" + dbmext = Extension('dbm', ['dbmmodule.c'], define_macros=[ ('HAVE_NDBM_H',None), ], libraries=ndbm_libs) - break + break elif cand == "gdbm": if self.compiler.find_library_file(lib_dirs, 'gdbm'): @@ -1140,6 +1136,15 @@ if self.compiler.find_library_file(lib_dirs, 'gdbm_compat'): gdbm_libs.append('gdbm_compat') + if find_file("ndbm.h", inc_dirs, []) is not None: + print "building dbm using gdbm" + dbmext = Extension( + 'dbm', ['dbmmodule.c'], + define_macros=[ + ('HAVE_NDBM_H',None), + ], + libraries = gdbm_libs) + break if find_file("gdbm/ndbm.h", inc_dirs, []) is not None: print "building dbm using gdbm" dbmext = Extension(