mirror of
https://github.com/xemu-project/xemu.git
synced 2024-11-27 21:40:49 +00:00
docker: Add "cc" subcommand
Signed-off-by: Fam Zheng <famz@redhat.com> [AJB: add if args.paths check] Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
This commit is contained in:
parent
13a5abe2b8
commit
5e03c2d816
@ -412,6 +412,31 @@ class ProbeCommand(SubCommand):
|
||||
return
|
||||
|
||||
|
||||
class CcCommand(SubCommand):
|
||||
"""Compile sources with cc in images"""
|
||||
name = "cc"
|
||||
|
||||
def args(self, parser):
|
||||
parser.add_argument("--image", "-i", required=True,
|
||||
help="The docker image in which to run cc")
|
||||
parser.add_argument("--source-path", "-s", nargs="*", dest="paths",
|
||||
help="""Extra paths to (ro) mount into container for
|
||||
reading sources""")
|
||||
|
||||
def run(self, args, argv):
|
||||
if argv and argv[0] == "--":
|
||||
argv = argv[1:]
|
||||
cwd = os.getcwd()
|
||||
cmd = ["--rm", "-w", cwd,
|
||||
"-v", "%s:%s:rw" % (cwd, cwd)]
|
||||
if args.paths:
|
||||
for p in args.paths:
|
||||
cmd += ["-v", "%s:%s:ro,z" % (p, p)]
|
||||
cmd += [args.image, "cc"]
|
||||
cmd += argv
|
||||
return Docker().command("run", cmd, args.quiet)
|
||||
|
||||
|
||||
def main():
|
||||
parser = argparse.ArgumentParser(description="A Docker helper",
|
||||
usage="%s <subcommand> ..." % os.path.basename(sys.argv[0]))
|
||||
|
Loading…
Reference in New Issue
Block a user