blob: b658f4307e33ac4c9f2951a75feb61611d6b6d4d [file] [log] [blame]
#!/usr/bin/env fuchsia-vendored-python
# Copyright 2022 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import argparse
import sys
import os
# Creates an empty C/C++/asm file with the given #includes.
def main():
parser = argparse.ArgumentParser()
parser.add_argument(
"--output",
help="Where to write the resulting main()-containing file",
required=True,
)
parser.add_argument(
"--comment",
help="The file-level comment of the generated file",
required=True,
)
parser.add_argument("includes", nargs="*", help="files to #include")
args = parser.parse_args()
contents = ["// %s" % args.comment]
# Include headers before .inc files, as the latter will likely refer to
# things defined in the former.
for include in args.includes:
if include.endswith(".h"):
contents.append("#include <%s>" % include)
for include in args.includes:
if not include.endswith(".h"):
contents.append("#include <%s>" % include)
contents.append("")
with open(args.output, "w") as output_file:
output_file.write("\n".join(contents))
return 0
if __name__ == "__main__":
sys.exit(main())