diff --git a/bytebeat_compiler.py b/bytebeat_compiler.py index c975430..af9056a 100644 --- a/bytebeat_compiler.py +++ b/bytebeat_compiler.py @@ -89,6 +89,11 @@ def substitute_vars(replacements: Dict[str, Union[bool, str]], text: str, print() return text +def run_command(*command: list[str]) -> None: + print(" ".join(command), flush=True) + if subprocess.run(command).returncode != EXIT_SUCCESS: + exit(EXIT_FAILURE) + preprocessor_bool = lambda value: "1" if value else "0" C_str_repr = lambda s: '"' + s.replace("\\", "\\\\").replace(r'"', r'\"') + '"' @@ -376,23 +381,14 @@ if __name__ == "__main__": # Compile print("Compiling") - command = [ + run_command( CC, *command_line_split(CFLAGS), INPUT_FILE, PATHS["fwrite_le"], "-o", OUTPUT_FILE, "-I" + PATHS["include_directory"] - ] - print(" ".join(command), flush=True) - - if subprocess.run(command).returncode != EXIT_SUCCESS: - exit(EXIT_FAILURE) - - command = [OUTPUT_FILE] - print(" ".join(command), flush=True) - - if subprocess.run(command).returncode != EXIT_SUCCESS: - exit(EXIT_FAILURE) + ) + run_command(OUTPUT_FILE) exit(EXIT_SUCCESS)