summaryrefslogtreecommitdiff
path: root/setuptools/command/install.py
diff options
context:
space:
mode:
Diffstat (limited to 'setuptools/command/install.py')
-rw-r--r--setuptools/command/install.py28
1 files changed, 25 insertions, 3 deletions
diff --git a/setuptools/command/install.py b/setuptools/command/install.py
index 86f0cb7b..acbe8ade 100644
--- a/setuptools/command/install.py
+++ b/setuptools/command/install.py
@@ -1,9 +1,31 @@
+import setuptools
from distutils.command.install import install as _install
class install(_install):
"""Build dependencies before installation"""
- def has_dependencies(self):
- return self.distribution.has_dependencies()
+ def handle_extra_path(self):
+ # We always ignore extra_path, because we always install eggs
+ # (you can always use install_* commands directly if needed)
+ self.path_file = None
+ self.extra_dirs = ''
+
+ def run(self):
+ from setuptools.command.easy_install import easy_install
+ cmd = easy_install(
+ self.distribution, args="x", ignore_conflicts_at_my_risk=1
+ )
+ cmd.ensure_finalized() # finalize before bdist_egg munges install cmd
+
+ self.run_command('bdist_egg')
+ args = [self.distribution.get_command_obj('bdist_egg').egg_output]
+
+ if setuptools.bootstrap_install_from:
+ # Bootstrap self-installation of setuptools
+ args.insert(0, setuptools.bootstrap_install_from)
+
+ cmd.args = args
+ cmd.run()
+ setuptools.bootstrap_install_from = None
+
- sub_commands = [('depends', has_dependencies)] + _install.sub_commands