mirror of
https://github.com/holub/mame
synced 2025-04-23 00:39:36 +03:00

* Replaced hjingi hopper hack with a hopper device. * Improved DIP switch labels for mjembase and hooked up hopper. * Improved a few DIP switch labels for mjelctrn. -Fixed some more #include guards and added a CI task to check them in src/devices and src/mame.
48 lines
1.4 KiB
Python
Executable File
48 lines
1.4 KiB
Python
Executable File
#!/usr/bin/python3
|
|
##
|
|
## icense:BSD-3-Clause
|
|
## copyright-holders:Vas Crabb
|
|
|
|
import io
|
|
import os
|
|
import os.path
|
|
import re
|
|
import sys
|
|
|
|
|
|
def pathsplit(p):
|
|
result = [ ]
|
|
while p:
|
|
d, n = os.path.split(p)
|
|
if not n:
|
|
result.insert(0, d)
|
|
break
|
|
else:
|
|
result.insert(0, n)
|
|
p = d
|
|
return result
|
|
|
|
|
|
if __name__ == '__main__':
|
|
extpat = re.compile('.+\\.(h|hpp)$')
|
|
substpat = re.compile('[-.]')
|
|
guardpat = re.compile('^ *# *ifndef +([^\s]+)(\s+.*)?')
|
|
bad = False
|
|
for root in sys.argv[1:]:
|
|
for path, subdirs, files in os.walk(root):
|
|
prefix = 'MAME_' + '_'.join([n.upper() for n in pathsplit(os.path.relpath(path, root))]) + '_'
|
|
for f in files:
|
|
if extpat.match(f):
|
|
expected = prefix + substpat.sub('_', f.upper())
|
|
fp = os.path.join(path, f)
|
|
with io.open(fp, 'r', encoding='utf-8') as fd:
|
|
for l in fd:
|
|
m = guardpat.match(l)
|
|
if m:
|
|
if m.group(1) != expected:
|
|
sys.stderr.write('%s: #include guard does not appear to match expected %s\n' % (fp, expected))
|
|
bad = True
|
|
break
|
|
if bad:
|
|
sys.exit(1)
|