diff options
Diffstat (limited to 'scripts/py/gen_default_input_cpp.py')
-rw-r--r-- | scripts/py/gen_default_input_cpp.py | 49 |
1 files changed, 36 insertions, 13 deletions
diff --git a/scripts/py/gen_default_input_cpp.py b/scripts/py/gen_default_input_cpp.py index 093a606..6056dc1 100644 --- a/scripts/py/gen_default_input_cpp.py +++ b/scripts/py/gen_default_input_cpp.py @@ -1,4 +1,4 @@ -# SPDX-FileCopyrightText: Copyright 2021 Arm Limited and/or its affiliates <open-source-office@arm.com> +# SPDX-FileCopyrightText: Copyright 2021, 2023 Arm Limited and/or its affiliates <open-source-office@arm.com> # SPDX-License-Identifier: Apache-2.0 # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -16,38 +16,61 @@ """ Utility script to generate the minimum InputFiles.hpp and cpp files required by an application. """ -import datetime -from pathlib import Path from argparse import ArgumentParser +from pathlib import Path from jinja2 import Environment, FileSystemLoader +from gen_utils import GenUtils + parser = ArgumentParser() -parser.add_argument("--header_folder_path", type=str, help="path to header folder to be generated.") -parser.add_argument("--license_template", type=str, help="Header template file", - default="header_template.txt") -args = parser.parse_args() + +# pylint: disable=duplicate-code +parser.add_argument( + "--header_folder_path", + type=str, + help="path to header folder to be generated." +) + +parser.add_argument( + "--license_template", + type=str, + help="Header template file", + default="header_template.txt" + +) + +parsed_args = parser.parse_args() env = Environment(loader=FileSystemLoader(Path(__file__).parent / 'templates'), trim_blocks=True, lstrip_blocks=True) +# pylint: enable=duplicate-code def write_hpp_file(header_file_path, header_template_file): + """ + Write .hpp file + @param header_file_path: Header file path + @param header_template_file: Header template file + """ print(f"++ Generating {header_file_path}") - header_template = env.get_template(header_template_file) - hdr = header_template.render(script_name=Path(__file__).name, - gen_time=datetime.datetime.now(), - year=datetime.datetime.now().year) - env.get_template('default.hpp.template').stream(common_template_header=hdr) \ + hdr = GenUtils.gen_header(env, header_template_file) + env \ + .get_template('default.hpp.template') \ + .stream(common_template_header=hdr) \ .dump(str(header_file_path)) def main(args): + """ + Generate InputFiles.hpp + .cpp + @param args: Parsed args + """ header_filename = "InputFiles.hpp" header_filepath = Path(args.header_folder_path) / header_filename write_hpp_file(header_filepath, args.license_template) if __name__ == '__main__': - main(args) + main(parsed_args) |