in build-script.py [0:0]
def parse_args():
parser = argparse.ArgumentParser(
formatter_class=argparse.RawDescriptionHelpFormatter, description=_DESCRIPTION
)
# -------------------------------------------------------------------------
parser.add_argument(
"-v", "--verbose", action="store_true", help="Enable verbose logging."
)
# -------------------------------------------------------------------------
xcode_project_group = parser.add_argument_group("Xcode Project")
xcode_project_group.add_argument(
"--generate-xcodeproj",
action="store_true",
help="Generate an Xcode project for SwiftSyntax.",
)
xcode_project_group.add_argument(
"--xcconfig-path",
help="The path to an xcconfig file for generating Xcode projct.",
)
# -------------------------------------------------------------------------
build_group = parser.add_argument_group("Build")
build_group.add_argument(
"-r", "--release", action="store_true", help="Build in release mode."
)
build_group.add_argument(
"--build-dir",
default=None,
help="The directory in which build products shall be put. If omitted "
'a directory named ".build" will be put in the swift-syntax '
"directory.",
)
build_group.add_argument(
"--add-source-locations",
action="store_true",
help="Insert ###sourceLocation comments in generated code for "
"line-directive.",
)
build_group.add_argument(
"--degyb-only",
action="store_true",
help="The script only generates swift files from gyb and skips the "
"rest of the build",
)
build_group.add_argument(
"--disable-sandbox",
action="store_true",
help="Disable sandboxes when building with SwiftPM",
)
build_group.add_argument(
"--multiroot-data-file",
help="Path to an Xcode workspace to create a unified build of "
"SwiftSyntax with other projects.",
)
build_group.add_argument(
"--toolchain",
required=True,
help="The path to the toolchain that shall be used to build " "SwiftSyntax.",
)
# -------------------------------------------------------------------------
test_group = parser.add_argument_group("Test")
test_group.add_argument("-t", "--test", action="store_true", help="Run tests")
test_group.add_argument("--skip-lit-tests", action="store_true",
help="Don't run lit-based tests"
)
test_group.add_argument(
"--filecheck-exec",
default=None,
help="Path to the FileCheck executable that was built as part of the "
"LLVM repository. If not specified, it will be looked up from "
"PATH.",
)
test_group.add_argument(
"--gyb-exec",
default=GYB_EXEC,
help="Path to the gyb tool (default: %(default)s).",
)
test_group.add_argument(
"--verify-generated-files",
action="store_true",
help="Instead of generating files using gyb, verify that the files "
"which already exist match the ones that would be generated by "
"this script.",
)
return parser.parse_args()