summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2020-02-07 03:15:01 -0500
committerJason R. Coombs <jaraco@jaraco.com>2020-02-07 03:15:01 -0500
commitb519c18fad92cc6d3d2f31012362246a8467cd41 (patch)
tree4732fad4190df943b057648e896e922c02da437e
parent0559f17d4588553eb428d57ecfebab9e0e988e65 (diff)
downloadpython-setuptools-git-feature/pip-options-alignment.tar.gz
Add support for --build-option alongside --global-option and use --global-option to define options that apply before the distutils command. Fixes #1928.feature/pip-options-alignment
-rw-r--r--setuptools/build_meta.py19
1 files changed, 14 insertions, 5 deletions
diff --git a/setuptools/build_meta.py b/setuptools/build_meta.py
index eb9e815e..36cca98a 100644
--- a/setuptools/build_meta.py
+++ b/setuptools/build_meta.py
@@ -115,13 +115,18 @@ class _BuildMetaBackend(object):
def _fix_config(self, config_settings):
config_settings = config_settings or {}
config_settings.setdefault('--global-option', [])
+ config_settings.setdefault('--build-option', [])
return config_settings
def _get_build_requires(self, config_settings, requirements):
config_settings = self._fix_config(config_settings)
- sys.argv = sys.argv[:1] + ['egg_info'] + \
- config_settings["--global-option"]
+ sys.argv = (
+ sys.argv[:1] +
+ config_settings["--global-option"] +
+ ['egg_info'] +
+ config_settings["--build-option"]
+ )
try:
with Distribution.patch():
self.run_setup()
@@ -188,9 +193,13 @@ class _BuildMetaBackend(object):
# Build in a temporary directory, then copy to the target.
makedirs(result_directory, exist_ok=True)
with TemporaryDirectory(dir=result_directory) as tmp_dist_dir:
- sys.argv = (sys.argv[:1] + setup_command +
- ['--dist-dir', tmp_dist_dir] +
- config_settings["--global-option"])
+ sys.argv = (
+ sys.argv[:1] +
+ config_settings["--global-option"] +
+ setup_command +
+ ['--dist-dir', tmp_dist_dir] +
+ config_settings["--build-option"]
+ )
self.run_setup()
result_basename = _file_with_extension(tmp_dist_dir, result_extension)