summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTakaRikka <38417346+TakaRikka@users.noreply.github.com>2023-01-24 00:34:51 -0800
committerGitHub <noreply@github.com>2023-01-24 00:34:51 -0800
commit49a8b2be0dffdf83cfdc87bc94e33b7d2be44c16 (patch)
tree4deb71495b98943db0022d3610ecd3524f3c3d91
parentb3d3d71fcc1cf15d18323ba9f40e57900c1bf548 (diff)
parent98db45807c609899841224aea0c1b69722139094 (diff)
Merge pull request #252 from Jcw87/rels_msys2
makerel.py: Accept arguments from files, allowing rels to build with msys2
-rw-r--r--Makefile3
-rw-r--r--tools/makerel.py24
2 files changed, 25 insertions, 2 deletions
diff --git a/Makefile b/Makefile
index 0089153949..dbf54f56b5 100644
--- a/Makefile
+++ b/Makefile
@@ -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)