From e6fa5dff631d7da4020889d889a42c835a4c8e70 Mon Sep 17 00:00:00 2001 From: Andrew Murray Date: Tue, 19 Mar 2024 19:14:17 +1100 Subject: [PATCH] Append custom parameter to the end of sys.argv --- _custom_build/backend.py | 4 +--- setup.py | 5 ++--- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/_custom_build/backend.py b/_custom_build/backend.py index 2c670ff0a..44ec6efe5 100644 --- a/_custom_build/backend.py +++ b/_custom_build/backend.py @@ -11,14 +11,12 @@ backend_class = build_wheel.__self__.__class__ class _CustomBuildMetaBackend(backend_class): def run_setup(self, setup_script="setup.py"): if self.config_settings: - params = [] for key, values in self.config_settings.items(): if not isinstance(values, list): values = [values] for value in values: - params.append(f"--pillow-configuration={key}={value}") + sys.argv.append(f"--pillow-configuration={key}={value}") - sys.argv = sys.argv[:1] + params + sys.argv[1:] return super().run_setup(setup_script) def build_wheel( diff --git a/setup.py b/setup.py index 9eb957716..5effe657f 100644 --- a/setup.py +++ b/setup.py @@ -998,10 +998,9 @@ ext_modules = [ # parse configuration from _custom_build/backend.py -while len(sys.argv[1]) >= 2 and sys.argv[1].startswith("--pillow-configuration="): - _, key, value = sys.argv[1].split("=", 2) +while sys.argv[-1].startswith("--pillow-configuration="): + _, key, value = sys.argv.pop().split("=", 2) configuration.setdefault(key, []).append(value) - del sys.argv[1] try: setup(