diff options
Diffstat (limited to 'setuptools/command/install.py')
| -rw-r--r-- | setuptools/command/install.py | 28 |
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 |
