- Issue #15234: For BerkelyDB and Sqlite, only add the found library and
include directories if they aren't already being searched. This avoids an explicit runtime library dependency.
This commit is contained in:
parent
aad7cc9dba
commit
a3818a3043
|
@ -167,6 +167,10 @@ IDLE
|
||||||
Build
|
Build
|
||||||
-----
|
-----
|
||||||
|
|
||||||
|
- Issue #15234: For BerkelyDB and Sqlite, only add the found library and
|
||||||
|
include directories if they aren't already being searched. This avoids
|
||||||
|
an explicit runtime library dependency.
|
||||||
|
|
||||||
- Issue #20644: OS X installer build support for documentation build changes
|
- Issue #20644: OS X installer build support for documentation build changes
|
||||||
in 3.4.1: assume externally supplied sphinx-build is available in /usr/bin.
|
in 3.4.1: assume externally supplied sphinx-build is available in /usr/bin.
|
||||||
|
|
||||||
|
|
15
setup.py
15
setup.py
|
@ -1022,8 +1022,16 @@ class PyBuildExt(build_ext):
|
||||||
if db_setup_debug:
|
if db_setup_debug:
|
||||||
print("bsddb using BerkeleyDB lib:", db_ver, dblib)
|
print("bsddb using BerkeleyDB lib:", db_ver, dblib)
|
||||||
print("bsddb lib dir:", dblib_dir, " inc dir:", db_incdir)
|
print("bsddb lib dir:", dblib_dir, " inc dir:", db_incdir)
|
||||||
db_incs = [db_incdir]
|
|
||||||
dblibs = [dblib]
|
dblibs = [dblib]
|
||||||
|
# Only add the found library and include directories if they aren't
|
||||||
|
# already being searched. This avoids an explicit runtime library
|
||||||
|
# dependency.
|
||||||
|
if db_incdir in inc_dirs:
|
||||||
|
db_incs = None
|
||||||
|
else:
|
||||||
|
db_incs = [db_incdir]
|
||||||
|
if dblib_dir[0] in lib_dirs:
|
||||||
|
dblib_dir = None
|
||||||
else:
|
else:
|
||||||
if db_setup_debug: print("db: no appropriate library found")
|
if db_setup_debug: print("db: no appropriate library found")
|
||||||
db_incs = None
|
db_incs = None
|
||||||
|
@ -1134,6 +1142,9 @@ class PyBuildExt(build_ext):
|
||||||
# can end up with a bad search path order.
|
# can end up with a bad search path order.
|
||||||
if sqlite_incdir not in self.compiler.include_dirs:
|
if sqlite_incdir not in self.compiler.include_dirs:
|
||||||
include_dirs.append(sqlite_incdir)
|
include_dirs.append(sqlite_incdir)
|
||||||
|
# avoid a runtime library path for a system library dir
|
||||||
|
if sqlite_libdir and sqlite_libdir[0] in lib_dirs:
|
||||||
|
sqlite_libdir = None
|
||||||
exts.append(Extension('_sqlite3', sqlite_srcs,
|
exts.append(Extension('_sqlite3', sqlite_srcs,
|
||||||
define_macros=sqlite_defines,
|
define_macros=sqlite_defines,
|
||||||
include_dirs=include_dirs,
|
include_dirs=include_dirs,
|
||||||
|
@ -1202,7 +1213,7 @@ class PyBuildExt(build_ext):
|
||||||
libraries = gdbm_libs)
|
libraries = gdbm_libs)
|
||||||
break
|
break
|
||||||
elif cand == "bdb":
|
elif cand == "bdb":
|
||||||
if db_incs is not None:
|
if dblibs:
|
||||||
if dbm_setup_debug: print("building dbm using bdb")
|
if dbm_setup_debug: print("building dbm using bdb")
|
||||||
dbmext = Extension('_dbm', ['_dbmmodule.c'],
|
dbmext = Extension('_dbm', ['_dbmmodule.c'],
|
||||||
library_dirs=dblib_dir,
|
library_dirs=dblib_dir,
|
||||||
|
|
Loading…
Reference in New Issue