Commit a33212df by Dan Committed by Wenzel Jakob

Wrap the main functionality of mkdoc in a function.

parent b46bb64d
...@@ -59,6 +59,11 @@ job_semaphore = Semaphore(job_count) ...@@ -59,6 +59,11 @@ job_semaphore = Semaphore(job_count)
output = [] output = []
class NoFilenamesError(ValueError):
pass
def d(s): def d(s):
return s if isinstance(s, str) else s.decode('utf8') return s if isinstance(s, str) else s.decode('utf8')
...@@ -224,7 +229,8 @@ class ExtractionThread(Thread): ...@@ -224,7 +229,8 @@ class ExtractionThread(Thread):
finally: finally:
job_semaphore.release() job_semaphore.release()
if __name__ == '__main__':
def mkdoc(args):
parameters = [] parameters = []
filenames = [] filenames = []
if "-x" not in args: if "-x" not in args:
...@@ -260,15 +266,14 @@ if __name__ == '__main__': ...@@ -260,15 +266,14 @@ if __name__ == '__main__':
if clang_include_dir: if clang_include_dir:
parameters.extend(['-isystem', clang_include_dir]) parameters.extend(['-isystem', clang_include_dir])
for item in sys.argv[1:]: for item in args:
if item.startswith('-'): if item.startswith('-'):
parameters.append(item) parameters.append(item)
else: else:
filenames.append(item) filenames.append(item)
if len(filenames) == 0: if len(filenames) == 0:
print('Syntax: %s [.. a list of header files ..]' % sys.argv[0]) raise NoFilenamesError("args parameter did not contain any filenames")
exit(-1)
print('''/* print('''/*
This file contains docstrings for the Python bindings. This file contains docstrings for the Python bindings.
...@@ -321,3 +326,11 @@ if __name__ == '__main__': ...@@ -321,3 +326,11 @@ if __name__ == '__main__':
#pragma GCC diagnostic pop #pragma GCC diagnostic pop
#endif #endif
''') ''')
if __name__ == '__main__':
try:
mkdoc(sys.argv[1:])
except NoFilenamesError:
print('Syntax: %s [.. a list of header files ..]' % sys.argv[0])
exit(-1)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment