mirror of https://github.com/ARMmbed/mbed-os.git
Format and document options.py
parent
44efd92ca3
commit
33786130ae
|
@ -17,9 +17,16 @@ limitations under the License.
|
|||
from argparse import ArgumentParser
|
||||
from tools.toolchains import TOOLCHAINS
|
||||
from tools.targets import TARGET_NAMES
|
||||
from utils import argparse_force_uppercase_type, argparse_lowercase_hyphen_type, argparse_many
|
||||
from tools.utils import argparse_force_uppercase_type, \
|
||||
argparse_lowercase_hyphen_type, argparse_many
|
||||
|
||||
def get_default_options_parser(add_clean=True, add_options=True):
|
||||
"""Create a new options parser with the default compiler options added
|
||||
|
||||
Keyword arguments:
|
||||
add_clean - add the clean argument?
|
||||
add_options - add the options argument?
|
||||
"""
|
||||
parser = ArgumentParser()
|
||||
|
||||
targetnames = TARGET_NAMES
|
||||
|
@ -28,26 +35,47 @@ def get_default_options_parser(add_clean=True, add_options=True):
|
|||
toolchainlist.sort()
|
||||
|
||||
parser.add_argument("-m", "--mcu",
|
||||
help="build for the given MCU (%s)" % ', '.join(targetnames),
|
||||
metavar="MCU",
|
||||
type=argparse_many(argparse_force_uppercase_type(targetnames, "MCU")))
|
||||
help=("build for the given MCU (%s)" %
|
||||
', '.join(targetnames)),
|
||||
metavar="MCU",
|
||||
type=argparse_many(
|
||||
argparse_force_uppercase_type(
|
||||
targetnames, "MCU")))
|
||||
|
||||
parser.add_argument("-t", "--tool",
|
||||
help="build using the given TOOLCHAIN (%s)" % ', '.join(toolchainlist),
|
||||
metavar="TOOLCHAIN",
|
||||
type=argparse_many(argparse_force_uppercase_type(toolchainlist, "toolchain")))
|
||||
help=("build using the given TOOLCHAIN (%s)" %
|
||||
', '.join(toolchainlist)),
|
||||
metavar="TOOLCHAIN",
|
||||
type=argparse_many(
|
||||
argparse_force_uppercase_type(
|
||||
toolchainlist, "toolchain")))
|
||||
|
||||
parser.add_argument("--color",
|
||||
help="print Warnings, and Errors in color",
|
||||
action="store_true", default=False)
|
||||
|
||||
parser.add_argument("--cflags", default=[], action="append",
|
||||
help="Extra flags to provide to the C compiler")
|
||||
|
||||
parser.add_argument("--asmflags", default=[], action="append",
|
||||
help="Extra flags to provide to the assembler")
|
||||
|
||||
parser.add_argument("--ldflags", default=[], action="append",
|
||||
help="Extra flags to provide to the linker")
|
||||
|
||||
if add_clean:
|
||||
parser.add_argument("-c", "--clean", action="store_true", default=False,
|
||||
help="clean the build directory")
|
||||
help="clean the build directory")
|
||||
|
||||
if add_options:
|
||||
parser.add_argument("-o", "--options", action="append",
|
||||
help='Add a build argument ("save-asm": save the asm generated by the compiler, "debug-info": generate debugging information, "analyze": run Goanna static code analyzer")',
|
||||
type=argparse_lowercase_hyphen_type(['save-asm', 'debug-info', 'analyze'], "build option"))
|
||||
help=('Add a build argument ("save-asm": save the '
|
||||
'asm generated by the compiler, "debug-info":'
|
||||
' generate debugging information, "analyze": '
|
||||
'run Goanna static code analyzer")'),
|
||||
type=argparse_lowercase_hyphen_type(['save-asm',
|
||||
'debug-info',
|
||||
'analyze'],
|
||||
"build option"))
|
||||
|
||||
return parser
|
||||
|
|
Loading…
Reference in New Issue