mirror of
https://github.com/kennethreitz/pipenv.git
synced 2026-06-05 22:50:18 +00:00
+7
-4
@@ -221,19 +221,22 @@ class SetupInfo(object):
|
||||
def run_setup(self):
|
||||
if self.setup_py is not None and self.setup_py.exists():
|
||||
with cd(self.setup_py.parent), _suppress_distutils_logs():
|
||||
from setuptools.dist import distutils
|
||||
save_argv = sys.argv.copy()
|
||||
try:
|
||||
if sys.version_info < (3, 5):
|
||||
save_argv = sys.argv[:]
|
||||
else:
|
||||
save_argv = sys.argv.copy()
|
||||
# This is for you, Hynek
|
||||
# see https://github.com/hynek/environ_config/blob/69b1c8a/setup.py
|
||||
try:
|
||||
global _setup_distribution, _setup_stop_after
|
||||
_setup_stop_after = "run"
|
||||
script_name = self.setup_py.as_posix()
|
||||
g = {"__file__": script_name, "__name__": "__main__"}
|
||||
l = {}
|
||||
sys.argv[0] = script_name
|
||||
sys.argv[1:] = ["egg_info", "--egg-base", self.base_dir]
|
||||
with open(script_name, 'rb') as f:
|
||||
exec(f.read(), g)
|
||||
exec(f.read(), g, l)
|
||||
finally:
|
||||
_setup_stop_after = None
|
||||
sys.argv = save_argv
|
||||
|
||||
Reference in New Issue
Block a user