summaryrefslogtreecommitdiff
path: root/scripts/py/gen_default_input_cpp.py
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/py/gen_default_input_cpp.py')
-rw-r--r--scripts/py/gen_default_input_cpp.py49
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)