mirror of
https://github.com/python/cpython.git
synced 2025-08-04 08:59:19 +00:00
Reimplement addbuilddir() in C inside getpath.c, so as to execute it
at interpreter startup before importing any non-builtin modules. Should fix #9589.
This commit is contained in:
parent
09c449c7de
commit
e9b428f997
8 changed files with 53 additions and 25 deletions
15
Lib/site.py
15
Lib/site.py
|
@ -107,18 +107,6 @@ def removeduppaths():
|
|||
sys.path[:] = L
|
||||
return known_paths
|
||||
|
||||
# XXX This should not be part of site.py, since it is needed even when
|
||||
# using the -S option for Python. See http://www.python.org/sf/586680
|
||||
def addbuilddir():
|
||||
"""Append ./build/lib.<platform> in case we're running in the build dir
|
||||
(especially for Guido :-)"""
|
||||
from sysconfig import get_platform
|
||||
s = "build/lib.%s-%.3s" % (get_platform(), sys.version)
|
||||
if hasattr(sys, 'gettotalrefcount'):
|
||||
s += '-pydebug'
|
||||
s = os.path.join(os.path.dirname(sys.path.pop()), s)
|
||||
sys.path.append(s)
|
||||
|
||||
|
||||
def _init_pathinfo():
|
||||
"""Return a set containing all existing directory entries from sys.path"""
|
||||
|
@ -529,9 +517,6 @@ def main():
|
|||
|
||||
abs_paths()
|
||||
known_paths = removeduppaths()
|
||||
if (os.name == "posix" and sys.path and
|
||||
os.path.basename(sys.path[-1]) == "Modules"):
|
||||
addbuilddir()
|
||||
if ENABLE_USER_SITE is None:
|
||||
ENABLE_USER_SITE = check_enableusersite()
|
||||
known_paths = addusersitepackages(known_paths)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue