From bf7378574e55db46ceff9cc1c207f7a851dda132 Mon Sep 17 00:00:00 2001 From: Michal Cyprian Date: Fri, 16 Feb 2018 15:33:54 +0100 Subject: [PATCH] Remove sys.executable check from change-user-install-location patch Resolves: rhbz#1532287 --- 00251-change-user-install-location.patch | 28 ++++++++++++------------ python37.spec | 6 ++++- 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/00251-change-user-install-location.patch b/00251-change-user-install-location.patch index 1dcd9f2..4104449 100644 --- a/00251-change-user-install-location.patch +++ b/00251-change-user-install-location.patch @@ -1,19 +1,20 @@ diff --git a/Lib/distutils/command/install.py b/Lib/distutils/command/install.py -index 9d31d13..ed44a93 100644 +index 0258d3d..4ebf50a 100644 --- a/Lib/distutils/command/install.py +++ b/Lib/distutils/command/install.py -@@ -424,8 +424,18 @@ class install(Command): +@@ -418,8 +418,19 @@ class install(Command): raise DistutilsOptionError( "must not supply exec-prefix without prefix") - self.prefix = os.path.normpath(sys.prefix) - self.exec_prefix = os.path.normpath(sys.exec_prefix) + # self.prefix is set to sys.prefix + /local/ -+ # if the executable is /usr/bin/python* and RPM build -+ # is not detected to make pip and distutils install into -+ # the separate location. -+ if (sys.executable.startswith("/usr/bin/python") -+ and 'RPM_BUILD_ROOT' not in os.environ): ++ # if neither RPM build nor virtual environment is ++ # detected to make pip and distutils install packages ++ # into the separate location. ++ if (not (hasattr(sys, 'real_prefix') or ++ sys.prefix != sys.base_prefix) and ++ 'RPM_BUILD_ROOT' not in os.environ): + addition = "/local" + else: + addition = "" @@ -24,22 +25,21 @@ index 9d31d13..ed44a93 100644 else: if self.exec_prefix is None: diff --git a/Lib/site.py b/Lib/site.py -index 4744eb0..b5fe571 100644 +index 0fc9200..c95202e 100644 --- a/Lib/site.py +++ b/Lib/site.py -@@ -326,7 +326,15 @@ def getsitepackages(prefixes=None): +@@ -322,7 +322,14 @@ def getsitepackages(prefixes=None): return sitepackages def addsitepackages(known_paths, prefixes=None): - """Add site-packages to sys.path""" -+ """Add site-packages to sys.path. ++ """Add site-packages to sys.path + -+ '/usr/local' is included in PREFIXES if the executable is /usr/bin/python* -+ and RPM build is not detected to make sudo pip installed packages visible. ++ '/usr/local' is included in PREFIXES if RPM build is not detected ++ to make packages installed into this location visible. + + """ -+ if (ENABLE_USER_SITE and sys.executable.startswith("/usr/bin/python") -+ and 'RPM_BUILD_ROOT' not in os.environ): ++ if ENABLE_USER_SITE and 'RPM_BUILD_ROOT' not in os.environ: + PREFIXES.insert(0, "/usr/local") for sitedir in getsitepackages(prefixes): if os.path.isdir(sitedir): diff --git a/python37.spec b/python37.spec index ccea761..a7b832b 100644 --- a/python37.spec +++ b/python37.spec @@ -18,7 +18,7 @@ URL: https://www.python.org/ # WARNING When rebasing to a new Python version, # remember to update the python3-docs package as well Version: %{pybasever}.0 -Release: 0.8.%{?prerel}%{?dist} +Release: 0.9.%{?prerel}%{?dist} License: Python @@ -1582,6 +1582,10 @@ CheckPython optimized # ====================================================== %changelog +* Thu Feb 15 2018 Michal Cyprian - 3.7.0-0.9.b1 +- Remove sys.executable check from change-user-install-location patch +Resolves: rhbz#1532287 + * Wed Feb 14 2018 Miro HronĨok - 3.7.0-0.8.b1 - Readd ldconfig scriplets via macro