Merge pull request #252 from Jcw87/rels_msys2

makerel.py: Accept arguments from files, allowing rels to build with msys2
This commit is contained in:
TakaRikka 2023-01-24 00:34:51 -08:00 committed by GitHub
commit 49a8b2be0d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 25 additions and 2 deletions

View File

@ -162,7 +162,8 @@ docs:
rels: $(ELF) $(RELS) rels: $(ELF) $(RELS)
@echo generating RELs from .plf @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) $(ELF): $(LIBS) $(O_FILES)
@echo $(O_FILES) > build/o_files @echo $(O_FILES) > build/o_files

View File

@ -583,5 +583,27 @@ def load_elfs(str_paths):
return static, plfs 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__": if __name__ == "__main__":
makerel() args = _read_args_from_files(sys.argv[1:])
makerel(args)