extract components used (nw)

This commit is contained in:
Miodrag Milanovic 2015-06-20 13:41:55 +02:00
parent 654a5ca29b
commit 4ee9d896e5

View File

@ -11,6 +11,10 @@ files_included = ['src/emu/emu.h']
include_dirs = ['src/emu/', 'src/mame/', 'src/mess/']
mappings = dict()
components = []
def file_exists(srcfile, folder):
includes = [ folder ]
includes.extend(include_dirs)
@ -65,16 +69,42 @@ def parse_file(srcfile, folder):
if fullname in files_included:
continue
if fullname!='':
sys.stderr.write("Includes '%s'\n" % fullname)
if fullname in mappings.keys():
if not(mappings[fullname] in components):
components.append(mappings[fullname])
sys.stderr.write("%s\n" % mappings[fullname])
files_included.append(fullname)
newfolder = fullname.rsplit('/', 1)[0] + '/'
parse_file(fullname, newfolder)
continue
return 0
def parse_lua_file(srcfile):
try:
fp = open(srcfile, 'rb')
except IOError:
sys.stderr.write("Unable to open source file '%s'\n" % srcfile)
return 1
in_comment = 0
linenum = 0
for line in fp.readlines():
content = line.strip()
if len(content)>0:
if content.startswith('--@'):
name = content[3:]
mappings[name.rsplit(',', 1)[0]] = name.rsplit(',', 1)[1]
return 0
if len(sys.argv) < 2:
print('Usage:')
print(' makedep <source.c>')
sys.exit(0)
parse_lua_file('scripts/src/bus.lua')
parse_lua_file('scripts/src/cpu.lua')
parse_lua_file('scripts/src/machine.lua')
parse_lua_file('scripts/src/sound.lua')
parse_lua_file('scripts/src/video.lua')
parse_file(sys.argv[1],'')