You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
microwatt/scripts/dependencies.py

26 lines
632 B
Python

#!/usr/bin/python3
# Create makefile dependencies for VHDL files, looking for "use work" and
# "entity work" declarations
import sys
import re
work = re.compile('use work\.([^.]+)\.')
entity = re.compile('entity work\.(.*)')
for filename in sys.argv[1:]:
with open(filename, 'r') as f:
(basename, suffix) = filename.split('.')
print('%s.o:' % basename, end='')
for line in f:
m = work.search(line)
if m:
print(' %s.o' % m.group(1), end='')
m = entity.search(line)
if m:
print(' %s.o' % m.group(1), end='')
print()