def _add_configuration_arguments()

in shim/shim.py [0:0]


def _add_configuration_arguments(parser: argparse.ArgumentParser) -> None:
    configuration_arguments = parser.add_argument_group("Configuration arguments")
    configuration_arguments.add_argument(
        "--system-jar-configuration-path",
        type=_system_jar_configuration_path,
        default=os.fspath(configuration.get_path("default_system_jar_paths.json")),
        help="A JSON configuration file with a list of paths to the system jars "
        + "or a `;` separated list of jars.",
    )
    configuration_arguments.add_argument(
        "--rules-paths",
        type=str,
        default=os.fspath(configuration.get_path("rules.json")),
        help="A `;`-separated list of rules files and directories containing rules files.",
    )
    configuration_arguments.add_argument(
        "--repository-root-directory",
        type=_directory_exists,
        default=".",
        help="The root of the repository. Resulting paths will be relative to this.",
    )
    configuration_arguments.add_argument(
        "--source-root-directory",
        type=_directory_exists,
        default=".",
        help="The root where source files for the APK can be found.",
    )
    configuration_arguments.add_argument(
        "--source-exclude-directories",
        type=str,
        default=None,
        help="A `;`-separated list of directories that should be excluded from indexed source files.",
    )
    configuration_arguments.add_argument(
        "--proguard-configuration-paths",
        type=_separated_paths_exist,
        default=None,
        help="A `;`-separated list of ProGuard configurations, which can be used for global inference and to ignore unreachable objects.",
    )
    configuration_arguments.add_argument(
        "--remove-unreachable-code",
        action="store_true",
        help="Prune unreachable code based on entry points specified in proguard configuration.",
    )
    configuration_arguments.add_argument(
        "--lifecycles-paths",
        type=_separated_paths_exist,
        default=None,
        help="A `;`-separated list of files and directories containing lifecycle definitions.",
    )
    configuration_arguments.add_argument(
        "--model-generator-configuration-paths",
        type=_separated_paths_exist,
        default=os.fspath(configuration.get_path("default_generator_config.json")),
        help="""A `;`-separated list of paths specifying JSON configuration files. Each file is a list of paths