churchyard / rpms / python3

Forked from rpms/python3 3 years ago
Clone
Blob Blame History Raw
diff --git a/Lib/site.py b/Lib/site.py
index ad1033e..f2fb028 100644
--- a/Lib/site.py
+++ b/Lib/site.py
@@ -537,6 +537,23 @@ def execusercustomize():
                 (err.__class__.__name__, err))


+def set_prefixes():
+    """Set values of prefix and exec_prefix to /usr/local if executable is
+    /usr/bin/python* to make pip and distutils install into separate location.
+
+    New value of sys.prefix is inserted to PREFIXES list that contains
+    it's previous value. Both paths /usr/lib/pythonX.Y/site-packages and
+    /usr/local/lib/pythonX.Y/site-packages will be included in sys.path.
+    """
+    global PREFIXES
+    global ENABLE_USER_SITE
+
+    if sys.executable.startswith("/usr/bin/python"):
+        sys.prefix = sys.exec_prefix = "/usr/local"
+        if ENABLE_USER_SITE:
+            PREFIXES.insert(0, sys.prefix)
+
+
 def main():
     """Add standard site-specific directories to the module search path.

@@ -550,6 +567,7 @@ def main():
     known_paths = venv(known_paths)
     if ENABLE_USER_SITE is None:
         ENABLE_USER_SITE = check_enableusersite()
+    set_prefixes()
     known_paths = addusersitepackages(known_paths)
     known_paths = addsitepackages(known_paths)
     setquit()