Use importlib instead of imp in mojo_bindings_gen am: cf86eeff81 am: 12a14e874b
am: 758a893e69
Change-Id: Ie647b0ab597bd85e089a0c70b8bce02fb2114eb4
diff --git a/mojo/public/tools/bindings/generators/__init__.py b/mojo/public/tools/bindings/generators/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/mojo/public/tools/bindings/generators/__init__.py
diff --git a/mojo/public/tools/bindings/mojom_bindings_generator.py b/mojo/public/tools/bindings/mojom_bindings_generator.py
index 3a0b6fc..a5fb51b 100755
--- a/mojo/public/tools/bindings/mojom_bindings_generator.py
+++ b/mojo/public/tools/bindings/mojom_bindings_generator.py
@@ -7,7 +7,7 @@
import argparse
-import imp
+import importlib
import json
import os
import pprint
@@ -43,9 +43,9 @@
_BUILTIN_GENERATORS = {
- "c++": "mojom_cpp_generator.py",
- "javascript": "mojom_js_generator.py",
- "java": "mojom_java_generator.py",
+ "c++": "mojom_cpp_generator",
+ "javascript": "mojom_js_generator",
+ "java": "mojom_java_generator",
}
@@ -57,14 +57,11 @@
generators = {}
for generator_name in [s.strip() for s in generators_string.split(",")]:
language = generator_name.lower()
- if language in _BUILTIN_GENERATORS:
- generator_name = os.path.join(script_dir, "generators",
- _BUILTIN_GENERATORS[language])
- else:
+ if language not in _BUILTIN_GENERATORS:
print "Unknown generator name %s" % generator_name
sys.exit(1)
- generator_module = imp.load_source(os.path.basename(generator_name)[:-3],
- generator_name)
+ generator_module = importlib.import_module(
+ "generators.%s" % _BUILTIN_GENERATORS[language])
generators[language] = generator_module
return generators