Set the defualt build_frontend to be "default" (which is still "pip")

Instead of using pip as the default, set it to default. This way
each platform can choose independently what to do as the default
behavior.

This is intended as part of adding Pyodide support. Pyodide cannot
use pip as the build frontend. It always uses a modified pypa/build.
So if the build_frontend is explicitly set to pip we want to raise
an error. But if it's unset, then we should be able to tell and just
do what we want.
This commit is contained in:
Hood Chatham
2023-04-07 15:56:17 -07:00
parent d018570bc4
commit 8a307031a9
6 changed files with 34 additions and 23 deletions
+6 -6
View File
@@ -17,6 +17,7 @@ from .util import (
AlreadyBuiltWheelError,
BuildSelector,
NonPlatformWheelError,
build_frontend_or_default,
find_compatible_wheel,
get_build_verbosity_extra_flags,
prepare_command,
@@ -175,6 +176,7 @@ def build_in_container(
for config in platform_configs:
log.build_start(config.identifier)
build_options = options.build_options(config.identifier)
build_frontend = build_frontend_or_default(build_options.build_frontend, "pip")
dependency_constraint_flags: list[PathOrStr] = []
@@ -241,11 +243,9 @@ def build_in_container(
container.call(["mkdir", "-p", built_wheel_dir])
verbosity_flags = get_build_verbosity_extra_flags(build_options.build_verbosity)
extra_flags = split_config_settings(
build_options.config_settings, build_options.build_frontend
)
extra_flags = split_config_settings(build_options.config_settings, build_frontend)
if build_options.build_frontend == "pip":
if build_frontend == "pip":
extra_flags += verbosity_flags
container.call(
[
@@ -260,7 +260,7 @@ def build_in_container(
],
env=env,
)
elif build_options.build_frontend == "build":
elif build_frontend == "build":
verbosity_setting = " ".join(verbosity_flags)
extra_flags += (f"--config-setting={verbosity_setting}",)
container.call(
@@ -276,7 +276,7 @@ def build_in_container(
env=env,
)
else:
assert_never(build_options.build_frontend)
assert_never(build_frontend)
built_wheel = container.glob(built_wheel_dir, "*.whl")[0]