Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / build / config / android / internal_rules.gni
index 42d3b3a..de29cce 100644 (file)
@@ -85,11 +85,6 @@ template("write_build_config") {
       deps += invoker.deps
     }
 
-    outputs = [
-      depfile,
-      build_config
-    ]
-
     possible_deps_configs = []
     foreach(d, deps) {
       dep_gen_dir = get_label_info(d, "target_gen_dir")
@@ -98,6 +93,11 @@ template("write_build_config") {
     }
     rebase_possible_deps_configs = rebase_path(possible_deps_configs)
 
+    outputs = [
+      depfile,
+      build_config
+    ]
+
     args = [
       "--type", type,
       "--depfile", rebase_path(depfile, root_build_dir),
@@ -236,6 +236,7 @@ template("create_apk") {
   _keystore_path = invoker.keystore_path
   _keystore_name = invoker.keystore_name
   _keystore_password = invoker.keystore_password
+  _load_library_from_apk = invoker.load_library_from_apk
 
   _deps = []
   if (defined(invoker.deps)) {
@@ -252,8 +253,8 @@ template("create_apk") {
     _asset_location = invoker.asset_location
   }
 
-  _version_code = "0"
-  _version_name = "Developer Build"
+  _version_code = invoker.version_code
+  _version_name = invoker.version_name
 
   _base_apk_path = _base_path + ".apk_intermediates"
 
@@ -271,7 +272,7 @@ template("create_apk") {
 
     script = "//build/android/gyp/package_resources.py"
     depfile = "${target_gen_dir}/${target_name}.d"
-    source_prereqs = [
+    inputs = [
       _android_manifest,
       _resources_zip,
     ]
@@ -302,7 +303,7 @@ template("create_apk") {
 
     depfile = "$target_gen_dir/$target_name.d"
 
-    source_prereqs = [
+    inputs = [
       _dex_path,
       _resource_packaged_apk_path,
       _ant_script
@@ -344,7 +345,7 @@ template("create_apk") {
     depfile = "$target_gen_dir/$target_name.d"
 
     sources = [_packaged_apk_path]
-    source_prereqs = [_keystore_path]
+    inputs = [_keystore_path]
     outputs = [depfile, _final_apk_path]
 
     args = [
@@ -356,6 +357,16 @@ template("create_apk") {
       "--key-name", _keystore_name,
       "--key-passwd", _keystore_password,
     ]
+    if (_load_library_from_apk) {
+      _rezip_jar_path = "$root_build_dir/lib.java/rezip_apk.jar"
+      inputs += [
+        _rezip_jar_path
+      ]
+      args += [
+        "--load-library-from-zip-file=1",
+        "--rezip-apk-jar-path", rebase_path(_rezip_jar_path, root_build_dir)
+      ]
+    }
   }
 
   group(target_name) {
@@ -446,7 +457,7 @@ template("java_prebuilt") {
 #     dependencies srcjar outputs will be compiled and added to the output jar.
 #   jar_path: Use this to explicitly set the output jar path. Defaults to
 #     "${target_gen_dir}/${target_name}.jar.
-template("java_library") {
+template("compile_java") {
   if (defined(invoker.testonly)) { testonly = invoker.testonly }
 
   assert(defined(invoker.java_files))
@@ -475,6 +486,9 @@ template("java_library") {
   }
 
   _java_srcjars = []
+  if (defined(invoker.srcjars)) {
+    _java_srcjars = invoker.srcjars
+  }
   foreach(dep, _srcjar_deps) {
     _dep_gen_dir = get_label_info(dep, "target_gen_dir")
     _dep_name = get_label_info(dep, "name")
@@ -542,7 +556,8 @@ template("java_library") {
 template("android_java_library") {
   if (defined(invoker.testonly)) { testonly = invoker.testonly }
 
-  assert(defined(invoker.java_files) || defined(invoker.DEPRECATED_java_in_dir))
+  assert(defined(invoker.java_files) || defined(invoker.DEPRECATED_java_in_dir)
+      || defined(invoker.srcjars) || defined(invoker.srcjar_deps))
   assert(defined(invoker.build_config))
   assert(defined(invoker.jar_path))
   assert(defined(invoker.dex_path))
@@ -552,10 +567,23 @@ template("android_java_library") {
     _srcjar_deps = invoker.srcjar_deps
   }
 
+  _srcjars = []
+  if (defined(invoker.srcjars)) {
+    _srcjars = invoker.srcjars
+  }
+
   _java_files = []
   if (defined(invoker.java_files)) {
     _java_files = invoker.java_files
-  } else {
+  } else if (defined(invoker.DEPRECATED_java_in_dir)) {
+    _src_dir = invoker.DEPRECATED_java_in_dir + "/src"
+    _src_dir_exists = exec_script("//build/dir_exists.py",
+          [ rebase_path(_src_dir, root_build_dir) ],
+          "string")
+    assert(_src_dir_exists == "False",
+        "In GN, java_in_dir should be the fully specified java directory " +
+        "(i.e. including the trailing \"/src\")")
+
     _java_files_build_rel = exec_script(
         "//build/android/gyp/find.py",
         [
@@ -567,7 +595,7 @@ template("android_java_library") {
         )
     _java_files = rebase_path(_java_files_build_rel, ".", root_build_dir)
   }
-  assert(_java_files != [] || _srcjar_deps != [])
+  assert(_java_files != [] || _srcjar_deps != [] || _srcjars != [])
 
   _jar_path = invoker.jar_path
   _dex_path = invoker.dex_path
@@ -581,7 +609,7 @@ template("android_java_library") {
   _final_deps = []
   _final_datadeps = []
 
-  java_library("${target_name}__java_library") {
+  compile_java("${target_name}__compile_java") {
     jar_path = _jar_path
     if (defined(invoker.jar_excluded_patterns)) {
       jar_excluded_patterns = invoker.jar_excluded_patterns
@@ -589,6 +617,7 @@ template("android_java_library") {
     build_config = invoker.build_config
     java_files = _java_files
     srcjar_deps = _srcjar_deps
+    srcjars = _srcjars
 
     if (defined(invoker.proguard_preprocess) && invoker.proguard_preprocess) {
       proguard_preprocess = invoker.proguard_preprocess
@@ -616,7 +645,7 @@ template("android_java_library") {
 
   group(target_name) {
     deps = [
-      ":${target_name}__java_library",
+      ":${target_name}__compile_java",
       ":${target_name}__dex",
     ] + _final_deps + _final_datadeps
   }
@@ -654,7 +683,7 @@ template("process_resources") {
         )
     sources = rebase_path(sources_build_rel, ".", root_build_dir)
 
-    source_prereqs = [
+    inputs = [
       build_config,
       android_manifest,
     ]
@@ -708,10 +737,9 @@ template("copy_ex") {
 
   action(target_name) {
     script = "//build/android/gyp/copy_ex.py"
-    depfile = "$target_gen_dir/$target_name.d"
-    outputs = [
-      depfile,
-    ]
+
+    if (defined(invoker.deps)) { deps = invoker.deps }
+
     sources = []
     if (defined(invoker.sources)) {
       sources += invoker.sources
@@ -722,18 +750,24 @@ template("copy_ex") {
       inputs += invoker.inputs
     }
 
+    depfile = "$target_gen_dir/$target_name.d"
+    outputs = [
+      depfile,
+    ]
+
     args = [
       "--depfile", rebase_path(depfile, root_build_dir),
       "--dest", rebase_path(invoker.dest, root_build_dir),
     ]
-    if (defined(invoker.args)) {
-      args += invoker.args
-    }
     rebased_sources = rebase_path(sources, root_build_dir)
     args += [ "--files=$rebased_sources" ]
 
     if (defined(invoker.clear_dir) && invoker.clear_dir) {
       args += ["--clear"]
     }
+
+    if (defined(invoker.args)) {
+      args += invoker.args
+    }
   }
 }