build-all: --help to include default values

This commit is contained in:
Andrej730
2026-09-16 10:07:20 +05:00
parent 6d880a26c1
commit 2bfaa4a196
+9 -2
View File
@@ -198,6 +198,13 @@ xz = "xz" # Used implicitly for `tar -xf *.tar.xz`.
brew = "brew" brew = "brew"
class ArgFormatter(argparse.RawDescriptionHelpFormatter, argparse.ArgumentDefaultsHelpFormatter):
"""
`RawDescriptionHelpFormatter`needed to keep epilog's manual formatting.
Default formatter collapses whitespaces.
"""
class Args(NamedTuple): class Args(NamedTuple):
explicit_targets: list[str] explicit_targets: list[str]
build_examples: bool build_examples: bool
@@ -249,7 +256,7 @@ class DynamicArgs(NamedTuple):
def parse_args() -> tuple[Args, DynamicArgs]: def parse_args() -> tuple[Args, DynamicArgs]:
arg_parser = argparse.ArgumentParser( arg_parser = argparse.ArgumentParser(
formatter_class=argparse.RawDescriptionHelpFormatter, formatter_class=ArgFormatter,
epilog=textwrap.dedent("""\ epilog=textwrap.dedent("""\
Additional dynamic -flags (not declared above): Additional dynamic -flags (not declared above):
-py-313 build for specific Python version -py-313 build for specific Python version
@@ -257,7 +264,7 @@ def parse_args() -> tuple[Args, DynamicArgs]:
-occt-xxx use a specific OCCT version (e.g. -occt-7.8.1) instead of the default -occt-xxx use a specific OCCT version (e.g. -occt-7.8.1) instead of the default
-without-xxx do not build dependency `xxx` (e.g. --without-swig)"""), -without-xxx do not build dependency `xxx` (e.g. --without-swig)"""),
) )
arg_parser.add_argument("explicit_targets", nargs="*", help="Targets provided by CLI.") arg_parser.add_argument("explicit_targets", nargs="*", default=[], help="Targets provided by CLI.")
arg_parser.add_argument( arg_parser.add_argument(
"--build-examples", "--build-examples",
action="store_true", action="store_true",