Add --executable option to install.py command

This commit is contained in:
Michal Cyprian 2017-02-21 10:38:18 +01:00
parent 7973de8b00
commit ef5c6fe479
2 changed files with 55 additions and 1 deletions

View File

@ -0,0 +1,45 @@
diff --git a/Lib/distutils/cmd.py b/Lib/distutils/cmd.py
index c89d5ef..dd61621 100644
--- a/Lib/distutils/cmd.py
+++ b/Lib/distutils/cmd.py
@@ -296,7 +296,8 @@ class Command:
finalized command object.
"""
cmd_obj = self.distribution.get_command_obj(command, create)
- cmd_obj.ensure_finalized()
+ if cmd_obj is not None:
+ cmd_obj.ensure_finalized()
return cmd_obj
# XXX rename to 'get_reinitialized_command()'? (should do the
diff --git a/Lib/distutils/command/install.py b/Lib/distutils/command/install.py
index 8174192..30ca739 100644
--- a/Lib/distutils/command/install.py
+++ b/Lib/distutils/command/install.py
@@ -122,6 +122,8 @@ class install(Command):
"force installation (overwrite any existing files)"),
('skip-build', None,
"skip rebuilding everything (for testing/debugging)"),
+ ('executable=', 'e',
+ "specify final destination interpreter path (install.py)"),
# Where to install documentation (eventually!)
#('doc-format=', None, "format of documentation to generate"),
@@ -194,6 +196,7 @@ class install(Command):
# directory not in sys.path.
self.force = 0
self.skip_build = 0
+ self.executable = None
self.warn_dir = 1
# These are only here as a conduit from the 'build' command to the
@@ -365,6 +368,9 @@ class install(Command):
('build_base', 'build_base'),
('build_lib', 'build_lib'))
+ if self.executable is None:
+ self.executable = os.path.normpath(sys.executable)
+
# Punt on doc directories for now -- after all, we're punting on
# documentation completely!

View File

@ -124,7 +124,7 @@
Summary: Version 3 of the Python programming language aka Python 3000
Name: python3
Version: %{pybasever}.0
Release: 12%{?dist}
Release: 13%{?dist}
License: Python
Group: Development/Languages
@ -410,6 +410,11 @@ Patch249: 00249-fix-out-of-tree-dtrace-builds.patch
# http://bugs.python.org/issue29157
Patch250: 00250-getentropy.patch
# 00252
# Add executable option to install.py command to make it work for
# scripts specified as an entry_points
Patch252: 00252-add-executable-option.patch
# 00253 #
# Define HAVE_LONG_LONG as 1 instead of blank for backwards compatibility
# Fixed upstream: https://hg.python.org/cpython/rev/fad67c66885f
@ -681,6 +686,7 @@ sed -r -i s/'_PIP_VERSION = "[0-9.]+"'/'_PIP_VERSION = "%{pip_version}"'/ Lib/en
%patch243 -p1
%patch249 -p1
%patch250 -p1
%patch252 -p1
%patch253 -p1
%patch254 -p1
%patch258 -p1
@ -1607,6 +1613,9 @@ rm -fr %{buildroot}
# ======================================================
%changelog
* Fri Feb 17 2017 Michal Cyprian <mcyprian@redhat.com> - 3.6.0-13
- Add --executable option to install.py command
* Wed Feb 15 2017 Charalampos Stratakis <cstratak@redhat.com> - 3.6.0-12
- BuildRequire the new dependencies of setuptools when rewheel mode is enabled
in order for the virtualenvs to work properly