|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
"""
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
This is a test backend for pyproject-rpm-macros' integration tests
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
It is not compliant with PEP 517 and omits some required hooks.
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
"""
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
from flit_core import buildapi
|
|
![](https://seccdn.libravatar.org/avatar/3c06a168eac5e10baa83f960445b9b006df35865b76dcf7a899f6215ea86b54f?s=16&d=retro) |
d14a2db |
from packaging.version import parse
|
|
![](https://seccdn.libravatar.org/avatar/3c06a168eac5e10baa83f960445b9b006df35865b76dcf7a899f6215ea86b54f?s=16&d=retro) |
d14a2db |
from pip import __version__ as pip_version
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
|
|
![](https://seccdn.libravatar.org/avatar/3c06a168eac5e10baa83f960445b9b006df35865b76dcf7a899f6215ea86b54f?s=16&d=retro) |
d14a2db |
EXPECTED_CONFIG_SETTINGS = [{"abc": "123", "xyz": "456", "--option-with-dashes": ["1", "2"]}]
|
|
![](https://seccdn.libravatar.org/avatar/3c06a168eac5e10baa83f960445b9b006df35865b76dcf7a899f6215ea86b54f?s=16&d=retro) |
d14a2db |
# Older pip did not accept multiple values,
|
|
![](https://seccdn.libravatar.org/avatar/3c06a168eac5e10baa83f960445b9b006df35865b76dcf7a899f6215ea86b54f?s=16&d=retro) |
d14a2db |
# but we might backport that later,
|
|
![](https://seccdn.libravatar.org/avatar/3c06a168eac5e10baa83f960445b9b006df35865b76dcf7a899f6215ea86b54f?s=16&d=retro) |
d14a2db |
# hence we accept it both ways with older pips
|
|
![](https://seccdn.libravatar.org/avatar/3c06a168eac5e10baa83f960445b9b006df35865b76dcf7a899f6215ea86b54f?s=16&d=retro) |
d14a2db |
if parse(pip_version) < parse("23.1"):
|
|
![](https://seccdn.libravatar.org/avatar/3c06a168eac5e10baa83f960445b9b006df35865b76dcf7a899f6215ea86b54f?s=16&d=retro) |
d14a2db |
EXPECTED_CONFIG_SETTINGS.append(
|
|
![](https://seccdn.libravatar.org/avatar/3c06a168eac5e10baa83f960445b9b006df35865b76dcf7a899f6215ea86b54f?s=16&d=retro) |
d14a2db |
EXPECTED_CONFIG_SETTINGS[0] | {"--option-with-dashes": "2"}
|
|
![](https://seccdn.libravatar.org/avatar/3c06a168eac5e10baa83f960445b9b006df35865b76dcf7a899f6215ea86b54f?s=16&d=retro) |
d14a2db |
)
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
def _verify_config_settings(config_settings):
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
print(f"config_settings={config_settings}")
|
|
![](https://seccdn.libravatar.org/avatar/3c06a168eac5e10baa83f960445b9b006df35865b76dcf7a899f6215ea86b54f?s=16&d=retro) |
d14a2db |
if config_settings not in EXPECTED_CONFIG_SETTINGS:
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
raise ValueError(
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
f"{config_settings!r} does not match expected {EXPECTED_CONFIG_SETTINGS!r}"
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
)
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
def build_wheel(wheel_directory, config_settings=None, metadata_directory=None):
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
_verify_config_settings(config_settings)
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
return buildapi.build_wheel(wheel_directory, None, metadata_directory)
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
def get_requires_for_build_wheel(config_settings=None):
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
_verify_config_settings(config_settings)
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
return buildapi.get_requires_for_build_wheel(None)
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
def prepare_metadata_for_build_wheel(metadata_directory, config_settings=None):
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
_verify_config_settings(config_settings)
|
|
![](https://seccdn.libravatar.org/avatar/844f8c837ed6aa76734b561a03adc13f3582a12a4d758d2ed0ca5001a8dd1d5c?s=16&d=retro) |
156e2fc |
return buildapi.prepare_metadata_for_build_wheel(metadata_directory, None)
|