Chromium Code Reviews| Index: components/cronet/android/BUILD.gn |
| diff --git a/components/cronet/android/BUILD.gn b/components/cronet/android/BUILD.gn |
| index 22d46bc4b758d45a0c7bf3561d699ff8adaaaca0..125e6c67f0c21df186aa483d1e264142a023d6fa 100644 |
| --- a/components/cronet/android/BUILD.gn |
| +++ b/components/cronet/android/BUILD.gn |
| @@ -2,6 +2,7 @@ |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| +import("//build/config/android/config.gni") |
| import("//build/config/android/rules.gni") |
| import("//build/util/version.gni") |
| import("//chrome/version.gni") |
| @@ -451,3 +452,173 @@ test("cronet_unittests") { |
| "//testing/gtest", |
| ] |
| } |
| + |
| +_package_dir = "$root_out_dir/cronet" |
| +_extract_cronet_jars_dir = "$root_gen_dir/cronet_jar_extract" |
|
agrieve
2015/12/02 15:03:13
nit: since this one is temporary, can you use targ
pkotwicz
2015/12/10 22:16:07
Done.
|
| + |
| +action("extract_cronet_jars") { |
| + script = "//components/cronet/tools/extract_from_jars.py" |
| + depfile = "$root_gen_dir/$target_name.d" |
| + |
| + sources = [ |
| + "$root_out_dir/lib.java/base/base_java.jar", |
| + "$root_out_dir/lib.java/components/cronet/android/cronet_java.jar", |
| + "$root_out_dir/lib.java/net/android/net_java.jar", |
| + "$root_out_dir/lib.java/url/url_java.jar", |
| + ] |
| + outputs = [ |
| + depfile, |
|
agrieve
2015/12/02 15:03:13
unfortunate that it can't list any of its outputs
|
| + ] |
| + |
| + _rebased_sources = rebase_path(sources, root_build_dir) |
| + |
| + args = [ |
| + "--classes-dir", |
| + rebase_path(_extract_cronet_jars_dir, root_build_dir), |
| + "--jars=${_rebased_sources}", |
| + "--depfile", |
| + rebase_path(depfile, root_build_dir), |
| + ] |
| + |
| + deps = [ |
| + ":cronet_java", |
| + "//base:base_java", |
| + "//net/android:net_java", |
| + "//url:url_java", |
| + ] |
| +} |
| + |
| +action("repackage_extracted_jars") { |
| + _output_jar = "$_package_dir/cronet.jar" |
| + |
| + script = "//build/android/gyp/jar.py" |
| + outputs = [ |
| + _output_jar, |
| + ] |
| + |
| + args = [ |
| + "--classes-dir", |
| + rebase_path(_extract_cronet_jars_dir, root_build_dir), |
| + "--jar-path", |
| + rebase_path(_output_jar, root_build_dir), |
| + ] |
| + |
| + deps = [ |
| + ":extract_cronet_jars", |
| + ] |
| +} |
| + |
| +template("jar_src") { |
| + action(target_name) { |
| + _rebased_src_dirs = rebase_path(invoker.src_dirs, root_build_dir) |
| + |
| + script = "//components/cronet/tools/jar_src.py" |
| + depfile = "$target_gen_dir/$target_name.d" |
| + outputs = [ |
| + depfile, |
| + invoker.jar_path, |
| + ] |
| + args = [ |
| + "--src-dir=${_rebased_src_dirs}", |
| + "--jar-path", |
| + rebase_path(invoker.jar_path, root_build_dir), |
| + "--depfile", |
| + rebase_path(depfile, root_build_dir), |
| + ] |
| + } |
| +} |
| + |
| +jar_src("jar_cronet_api_source") { |
| + src_dirs = [ "api/src" ] |
| + jar_path = "$_package_dir/cronet_api-src.jar" |
| +} |
| + |
| +jar_src("jar_cronet_sample_source") { |
| + src_dirs = [ "sample" ] |
| + jar_path = "$_package_dir/cronet-sample-src.jar" |
| +} |
| + |
| +jar_src("jar_cronet_other_source") { |
| + src_dirs = [ |
| + "//base/android/java/src", |
| + "//components/cronet/android/java/src", |
| + "//net/android/java/src", |
| + "//url/android/java/src", |
| + ] |
| + jar_path = "$_package_dir/cronet-src.jar" |
| +} |
| + |
| +action("generate_licenses") { |
| + _license_path = "$_package_dir/LICENSE" |
| + |
| + script = "//components/cronet/tools/cronet_licenses.py" |
| + outputs = [ |
| + _license_path, |
| + ] |
| + args = [ |
| + "license", |
| + rebase_path(_license_path, root_build_dir), |
| + ] |
| +} |
| + |
| +action("generate_javadoc") { |
| + script = "//components/cronet/tools/generate_javadoc.py" |
| + depfile = "$target_gen_dir/$target_name.d" |
| + outputs = [ |
| + depfile, |
| + ] |
| + |
| + args = [ |
| + "--output-dir", |
| + rebase_path(_package_dir, root_build_dir), |
| + "--input-dir", |
| + rebase_path("//components/cronet", root_build_dir), |
| + "--overview-file", |
| + rebase_path("$_package_dir/README.md.html", root_build_dir), |
| + "--readme-file", |
| + rebase_path("//components/cronet/README.md", root_build_dir), |
| + "--depfile", |
| + rebase_path(depfile, root_build_dir), |
| + ] |
| +} |
| + |
| +copy("cronet_package_copy") { |
| + sources = [ |
| + "$root_out_dir/lib.java/components/cronet/android/cronet_api.jar", |
| + "//AUTHORS", |
| + "//chrome/VERSION", |
| + "//components/cronet/android/proguard.cfg", |
| + ] |
| + outputs = [ |
| + "$_package_dir/{{source_file_part}}", |
| + ] |
| + |
| + deps = [ |
| + ":cronet_api", |
| + ] |
| +} |
| + |
| +copy("cronet_package_copy_native_lib") { |
| + sources = [ |
| + "$root_shlib_dir/libcronet.so", |
| + ] |
| + outputs = [ |
| + "$_package_dir/symbols/${android_app_abi}/libcronet.so", |
| + ] |
| + deps = [ |
| + ":cronet", |
| + ] |
| +} |
| + |
| +group("cronet_package") { |
| + deps = [ |
| + ":cronet_package_copy", |
| + ":cronet_package_copy_native_lib", |
| + ":generate_javadoc", |
| + ":generate_licenses", |
| + ":jar_cronet_api_source", |
| + ":jar_cronet_other_source", |
| + ":jar_cronet_sample_source", |
| + ":repackage_extracted_jars", |
| + ] |
| +} |