TRX/tools/tr2/generate_init
2024-10-03 10:36:35 +02:00

37 lines
823 B
Python
Executable file

#!/usr/bin/env python3
import argparse
from pathlib import Path
from shared.versioning import generate_version
TEMPLATE = """
const char *g_TR2XVersion = "TR2X {version}";
""".lstrip()
def parse_args() -> argparse.Namespace:
parser = argparse.ArgumentParser()
parser.add_argument("-o", "--output", type=Path)
return parser.parse_args()
def get_init_c() -> str:
return TEMPLATE.format(version=generate_version(2))
def update_init_c(output_path: Path) -> None:
new_text = get_init_c()
if not output_path.exists() or output_path.read_text() != new_text:
output_path.write_text(new_text)
def main() -> None:
args = parse_args()
if args.output:
update_init_c(output_path=args.output)
else:
print(get_init_c(), end="")
if __name__ == "__main__":
main()