mirror of
https://github.com/python/cpython.git
synced 2026-01-06 15:32:22 +00:00
Correct db3 /opt/sfw library path. Link ndbm with libc only if ndbm.h
is present and libndbm is not. Add runtime libs to dbm if linked against Berkeley DB.
This commit is contained in:
parent
065c06a622
commit
a37d61f1d6
1 changed files with 10 additions and 10 deletions
20
setup.py
20
setup.py
|
|
@ -476,7 +476,7 @@ def detect_modules(self):
|
|||
'/usr/local/BerkeleyDB.3.1/lib',
|
||||
'/usr/local/BerkeleyDB.3.0/lib',
|
||||
'/usr/local/lib',
|
||||
'/opt/sfw',
|
||||
'/opt/sfw/lib',
|
||||
'/sw/lib',
|
||||
),
|
||||
'incdirs': ('/usr/local/BerkeleyDB.3.3/include',
|
||||
|
|
@ -542,16 +542,15 @@ class found(Exception): pass
|
|||
|
||||
# The standard Unix dbm module:
|
||||
if platform not in ['cygwin']:
|
||||
if (self.compiler.find_library_file(lib_dirs, 'ndbm')
|
||||
and find_file("ndbm.h", inc_dirs, []) is not None):
|
||||
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 = []
|
||||
exts.append( Extension('dbm', ['dbmmodule.c'],
|
||||
define_macros=[('HAVE_NDBM_H',None)],
|
||||
libraries = ['ndbm'] ) )
|
||||
elif (platform in ['darwin']
|
||||
and find_file("ndbm.h", inc_dirs, []) is not None):
|
||||
# Darwin has ndbm in libc
|
||||
exts.append( Extension('dbm', ['dbmmodule.c'],
|
||||
define_macros=[('HAVE_NDBM_H',None)]) )
|
||||
libraries = ndbm_libs ) )
|
||||
elif (self.compiler.find_library_file(lib_dirs, 'gdbm')
|
||||
and find_file("gdbm/ndbm.h", inc_dirs, []) is not None):
|
||||
exts.append( Extension('dbm', ['dbmmodule.c'],
|
||||
|
|
@ -559,7 +558,8 @@ class found(Exception): pass
|
|||
libraries = ['gdbm'] ) )
|
||||
elif db_incs is not None:
|
||||
exts.append( Extension('dbm', ['dbmmodule.c'],
|
||||
library_dirs=[dblib_dir],
|
||||
library_dirs=dblib_dir,
|
||||
runtime_library_dirs=dblib_dir,
|
||||
include_dirs=db_incs,
|
||||
define_macros=[('HAVE_BERKDB_H',None),
|
||||
('DB_DBM_HSEARCH',None)],
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue