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.
26 lines
632 B
Python
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()
|