mirror of
https://github.com/open-goal/jak-project.git
synced 2024-10-20 21:27:52 -04:00
b3eb05e37f
* fix gpr fpr bug * remove unused variable
35 lines
1.1 KiB
Python
35 lines
1.1 KiB
Python
import os
|
|
import glob
|
|
import argparse
|
|
import shutil
|
|
|
|
## Script to update failing _REF.gc files
|
|
## Instructions:
|
|
## run offline-test with the `--dump-mode` flag set. This generates a "failures" folder.
|
|
## update reference like this
|
|
## python3 ../scripts/update_decomp_reference.py ./failures ../test/decompiler/reference
|
|
|
|
def get_goal_files(root_dir):
|
|
return [f for file in os.walk(root_dir) for f in glob.glob(os.path.join(file[0], '*.gc'))]
|
|
|
|
def main():
|
|
parser = argparse.ArgumentParser()
|
|
parser.add_argument(dest='diff', help='the failures folder')
|
|
parser.add_argument(dest='reference', help='the test/decompiler/reference folder')
|
|
args = parser.parse_args()
|
|
|
|
location_map = {os.path.basename(x) : x for x in get_goal_files(args.reference)}
|
|
|
|
for replacement in get_goal_files(args.diff):
|
|
base = os.path.basename(replacement)
|
|
if base not in location_map:
|
|
print("Could not find file {}".format(base))
|
|
exit(-1)
|
|
print("replace {} with {}".format(location_map[base], replacement))
|
|
shutil.copyfile(replacement, location_map[base])
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|