Index: build/android/gyp/aidl.py |
diff --git a/build/android/gyp/aidl.py b/build/android/gyp/aidl.py |
new file mode 100755 |
index 0000000000000000000000000000000000000000..d5aa5467709fdd7d522f755f41f94b1e312578ab |
--- /dev/null |
+++ b/build/android/gyp/aidl.py |
@@ -0,0 +1,54 @@ |
+#!/usr/bin/env python |
+# |
+# Copyright 2014 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. |
+ |
+"""Invokes Android's aidl |
+""" |
+ |
+import optparse |
+import os |
+import sys |
+ |
+from util import build_utils |
+ |
+ |
+def main(argv): |
+ option_parser = optparse.OptionParser() |
+ build_utils.AddDepfileOption(option_parser) |
+ option_parser.add_option('--aidl-path', help='Path to the aidl binary.') |
+ option_parser.add_option('--imports', help='Files to import.') |
+ option_parser.add_option('--includes', |
+ help='Directories to add as import search paths.') |
+ option_parser.add_option('--srcjar', help='Path for srcjar output.') |
+ options, args = option_parser.parse_args(argv[1:]) |
+ |
+ with build_utils.TempDir() as temp_dir: |
+ for f in args: |
+ classname = os.path.splitext(os.path.basename(f))[0] |
+ output = os.path.join(temp_dir, classname + '.java') |
+ aidl_cmd = [options.aidl_path] |
+ aidl_cmd += [ |
+ '-p' + s for s in build_utils.ParseGypList(options.imports) |
+ ] |
+ if options.includes is not None: |
+ aidl_cmd += [ |
+ '-I' + s for s in build_utils.ParseGypList(options.includes) |
+ ] |
+ aidl_cmd += [ |
+ f, |
+ output |
+ ] |
+ build_utils.CheckOutput(aidl_cmd) |
+ |
+ build_utils.ZipDir(options.srcjar, temp_dir) |
+ |
+ if options.depfile: |
+ build_utils.WriteDepfile( |
+ options.depfile, |
+ build_utils.GetPythonDependencies()) |
+ |
+ |
+if __name__ == '__main__': |
+ sys.exit(main(sys.argv)) |