Index: build/android/gyp/create_java_binary_script.py |
diff --git a/build/android/gyp/create_java_binary_script.py b/build/android/gyp/create_java_binary_script.py |
index 2b6553d0bdaa8e16bee0da4aac746df805240218..3fec6b852da9cc08e20d080b3e9405baa07db90e 100755 |
--- a/build/android/gyp/create_java_binary_script.py |
+++ b/build/android/gyp/create_java_binary_script.py |
@@ -25,6 +25,7 @@ script_template = """\ |
# |
# This file was generated by build/android/gyp/create_java_binary_script.py |
+import argparse |
import os |
import sys |
@@ -37,13 +38,22 @@ if os.getcwd() != self_dir: |
classpath = [os.path.join(offset, p) for p in classpath] |
bootclasspath = [os.path.join(offset, p) for p in bootclasspath] |
java_cmd = ["java"] |
+# This is a simple argparser for jvm and jar arguments. |
+parser = argparse.ArgumentParser() |
+parser.add_argument('--jar-args') |
+parser.add_argument('--jvm-args') |
+args = parser.parse_args(sys.argv[1:]) |
+if args.jvm_args: |
+ jvm_arguments = args.jvm_args.strip('"').split() |
+ java_cmd.extend(jvm_arguments) |
{noverify_flag} |
if bootclasspath: |
java_cmd.append("-Xbootclasspath/p:" + ":".join(bootclasspath)) |
java_cmd.extend( |
["-classpath", ":".join(classpath), "-enableassertions", \"{main_class}\"]) |
java_cmd.extend(extra_program_args) |
-java_cmd.extend(sys.argv[1:]) |
+jar_arguments = args.jar_args.strip('"').split() |
+java_cmd.extend(jar_arguments) |
os.execvp("java", java_cmd) |
""" |