| Index: mojo/public/tools/bindings/format_typemap_generator_args.py
|
| diff --git a/mojo/public/tools/bindings/format_typemap_generator_args.py b/mojo/public/tools/bindings/format_typemap_generator_args.py
|
| new file mode 100755
|
| index 0000000000000000000000000000000000000000..5057d6cdacaf8411d059a9e456fecaf5df41531c
|
| --- /dev/null
|
| +++ b/mojo/public/tools/bindings/format_typemap_generator_args.py
|
| @@ -0,0 +1,34 @@
|
| +#!/usr/bin/env python
|
| +# Copyright 2016 The Chromium Authors. All rights reserved.
|
| +# Use of this source code is governed by a BSD-style license that can be
|
| +# found in the LICENSE file.
|
| +
|
| +import sys
|
| +
|
| +# This utility converts mojom dependencies into their corresponding typemap
|
| +# paths and formats them to be consumed by generate_type_mappings.py.
|
| +
|
| +
|
| +def FormatTypemap(typemap_filename):
|
| + # A simple typemap is valid Python with a minor alteration.
|
| + with open(typemap_filename) as f:
|
| + typemap_content = f.read().replace('=\n', '=')
|
| + typemap = {}
|
| + exec typemap_content in typemap
|
| +
|
| + for header in typemap.get('public_headers', []):
|
| + yield 'public_headers=%s' % header
|
| + for header in typemap.get('traits_headers', []):
|
| + yield 'traits_headers=%s' % header
|
| + for header in typemap.get('type_mappings', []):
|
| + yield 'type_mappings=%s' % header
|
| +
|
| +
|
| +def main():
|
| + typemaps = sys.argv[1:]
|
| + print ' '.join('--start-typemap %s' % ' '.join(FormatTypemap(typemap))
|
| + for typemap in typemaps)
|
| +
|
| +
|
| +if __name__ == '__main__':
|
| + sys.exit(main())
|
|
|