diff options
| author | TakaRikka <38417346+TakaRikka@users.noreply.github.com> | 2023-01-24 00:34:51 -0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-01-24 00:34:51 -0800 |
| commit | 49a8b2be0dffdf83cfdc87bc94e33b7d2be44c16 (patch) | |
| tree | 4deb71495b98943db0022d3610ecd3524f3c3d91 | |
| parent | b3d3d71fcc1cf15d18323ba9f40e57900c1bf548 (diff) | |
| parent | 98db45807c609899841224aea0c1b69722139094 (diff) | |
Merge pull request #252 from Jcw87/rels_msys2
makerel.py: Accept arguments from files, allowing rels to build with msys2
| -rw-r--r-- | Makefile | 3 | ||||
| -rw-r--r-- | tools/makerel.py | 24 |
2 files changed, 25 insertions, 2 deletions
@@ -162,7 +162,8 @@ docs: rels: $(ELF) $(RELS) @echo generating RELs from .plf - @$(PYTHON) $(MAKEREL) build --string-table $(BUILD_DIR)/frameworkF.str $(RELS) $(ELF) + @echo $(RELS) > build/plf_files + $(PYTHON) $(MAKEREL) build --string-table $(BUILD_DIR)/frameworkF.str @build/plf_files $(ELF) $(ELF): $(LIBS) $(O_FILES) @echo $(O_FILES) > build/o_files diff --git a/tools/makerel.py b/tools/makerel.py index 763ce1726d..4ed4fb3050 100644 --- a/tools/makerel.py +++ b/tools/makerel.py @@ -583,5 +583,27 @@ def load_elfs(str_paths): return static, plfs +def convert_arg_line_to_args(arg_line: str): + return arg_line.split(' ') + + +def _read_args_from_files(args: List[str]): + new_args: List[str] = [] + for arg in args: + if not arg or arg[0] != '@': + new_args.append(arg) + else: + with open(arg[1:], 'r') as file: + file_args: List[str] = [] + for line in file: + for file_arg in convert_arg_line_to_args(line.strip()): + file_args.append(file_arg) + file_args = _read_args_from_files(file_args) + new_args.extend(file_args) + + return new_args + + if __name__ == "__main__": - makerel() + args = _read_args_from_files(sys.argv[1:]) + makerel(args) |
