mirror of
https://gitlab.com/xCrystal/pokecrystal-board.git
synced 2024-11-16 11:27:33 -08:00
Add a custom scan_includes.py.
This commit is contained in:
parent
d257188282
commit
05cffac744
3
Makefile
3
Makefile
@ -6,9 +6,8 @@ MD5 := md5sum -c --quiet
|
||||
.SECONDEXPANSION:
|
||||
.PRECIOUS: %.2bpp %.1bpp
|
||||
|
||||
poketools := extras/pokemontools
|
||||
gfx := $(PYTHON) gfx.py
|
||||
includes := $(PYTHON) $(poketools)/scan_includes.py
|
||||
includes := $(PYTHON) scan_includes.py
|
||||
|
||||
|
||||
crystal_obj := \
|
||||
|
35
scan_includes.py
Normal file
35
scan_includes.py
Normal file
@ -0,0 +1,35 @@
|
||||
#!/bin/python
|
||||
# coding: utf-8
|
||||
|
||||
"""
|
||||
Recursively scan an asm file for dependencies.
|
||||
"""
|
||||
|
||||
import sys
|
||||
import argparse
|
||||
|
||||
includes = set()
|
||||
|
||||
def scan_file(filename):
|
||||
for line in open(filename):
|
||||
if 'INC' not in line:
|
||||
continue
|
||||
line = line.split(';')[0]
|
||||
if 'INCLUDE' in line:
|
||||
include = line.split('"')[1]
|
||||
includes.add(include)
|
||||
scan_file(include)
|
||||
elif 'INCBIN' in line:
|
||||
include = line.split('"')[1]
|
||||
includes.add(include)
|
||||
|
||||
def main():
|
||||
ap = argparse.ArgumentParser()
|
||||
ap.add_argument('filenames', nargs='*')
|
||||
args = ap.parse_args()
|
||||
for filename in set(args.filenames):
|
||||
scan_file(filename)
|
||||
sys.stdout.write(' '.join(includes))
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
Loading…
Reference in New Issue
Block a user