Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
| 3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
| 4 | 4 |
| 5 import("//build/config/android/config.gni") | 5 import("//build/config/android/config.gni") |
| 6 import("//build/config/sanitizers/sanitizers.gni") | 6 import("//build/config/sanitizers/sanitizers.gni") |
| 7 | 7 |
| 8 assert(is_android) | 8 assert(is_android) |
| 9 | 9 |
| 10 # These identify targets that have .build_config files (except for android_apk, | 10 # These identify targets that have .build_config files (except for android_apk, |
| (...skipping 319 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 330 args += [ | 330 args += [ |
| 331 "--srcjar", | 331 "--srcjar", |
| 332 rebase_path(invoker.srcjar, root_build_dir), | 332 rebase_path(invoker.srcjar, root_build_dir), |
| 333 ] | 333 ] |
| 334 } | 334 } |
| 335 if (defined(invoker.bundled_srcjars)) { | 335 if (defined(invoker.bundled_srcjars)) { |
| 336 _rebased_bundled_srcjars = | 336 _rebased_bundled_srcjars = |
| 337 rebase_path(invoker.bundled_srcjars, root_build_dir) | 337 rebase_path(invoker.bundled_srcjars, root_build_dir) |
| 338 args += [ "--bundled-srcjars=$_rebased_bundled_srcjars" ] | 338 args += [ "--bundled-srcjars=$_rebased_bundled_srcjars" ] |
| 339 } | 339 } |
| 340 if (defined(invoker.input_jars_paths)) { | |
| 341 _rebased_input_jars_paths = | |
| 342 rebase_path(invoker.input_jars_paths, root_build_dir) | |
| 343 print(target_name, _rebased_input_jars_paths) | |
|
agrieve
2016/08/08 06:33:21
oops. I'll have to zap this tomorrow.
| |
| 344 args += [ "--extra-classpath-jars=$_rebased_input_jars_paths" ] | |
| 345 } | |
| 340 if (current_toolchain != default_toolchain) { | 346 if (current_toolchain != default_toolchain) { |
| 341 # This has to be a built-time error rather than a GN assert because many | 347 # This has to be a built-time error rather than a GN assert because many |
| 342 # packages have a mix of java and non-java targets. For example, the | 348 # packages have a mix of java and non-java targets. For example, the |
| 343 # following would fail even though nothing depends on :bar(//baz): | 349 # following would fail even though nothing depends on :bar(//baz): |
| 344 # | 350 # |
| 345 # shared_library("foo") { | 351 # shared_library("foo") { |
| 346 # } | 352 # } |
| 347 # | 353 # |
| 348 # android_library("bar") { | 354 # android_library("bar") { |
| 349 # deps = [ ":foo(//baz)" ] | 355 # deps = [ ":foo(//baz)" ] |
| (...skipping 378 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 728 "public_deps", | 734 "public_deps", |
| 729 "testonly", | 735 "testonly", |
| 730 ]) | 736 ]) |
| 731 script = "//build/android/gyp/proguard.py" | 737 script = "//build/android/gyp/proguard.py" |
| 732 if (defined(invoker.proguard_jar_path)) { | 738 if (defined(invoker.proguard_jar_path)) { |
| 733 _proguard_jar_path = invoker.proguard_jar_path | 739 _proguard_jar_path = invoker.proguard_jar_path |
| 734 } else { | 740 } else { |
| 735 _proguard_jar_path = "//third_party/proguard/lib/proguard.jar" | 741 _proguard_jar_path = "//third_party/proguard/lib/proguard.jar" |
| 736 } | 742 } |
| 737 _output_jar_path = invoker.output_jar_path | 743 _output_jar_path = invoker.output_jar_path |
| 738 _input_jars_paths = [] | 744 inputs = [ |
| 739 if (defined(invoker.input_jars_paths)) { | 745 _proguard_jar_path, |
| 740 _input_jars_paths += invoker.input_jars_paths | 746 ] |
| 741 } | |
| 742 inputs = _input_jars_paths + [ _proguard_jar_path ] | |
| 743 if (defined(invoker.alternative_android_sdk_jar)) { | 747 if (defined(invoker.alternative_android_sdk_jar)) { |
| 744 inputs += [ invoker.alternative_android_sdk_jar ] | 748 inputs += [ invoker.alternative_android_sdk_jar ] |
| 745 _rebased_android_sdk_jar = | 749 _rebased_android_sdk_jar = |
| 746 rebase_path(invoker.alternative_android_sdk_jar) | 750 rebase_path(invoker.alternative_android_sdk_jar) |
| 747 } else { | 751 } else { |
| 748 inputs += [ android_sdk_jar ] | 752 inputs += [ android_sdk_jar ] |
| 749 _rebased_android_sdk_jar = rebased_android_sdk_jar | 753 _rebased_android_sdk_jar = rebased_android_sdk_jar |
| 750 } | 754 } |
| 751 if (defined(invoker.inputs)) { | 755 if (defined(invoker.inputs)) { |
| 752 inputs += invoker.inputs | 756 inputs += invoker.inputs |
| (...skipping 10 matching lines...) Expand all Loading... | |
| 763 args = [ | 767 args = [ |
| 764 "--depfile", | 768 "--depfile", |
| 765 rebase_path(depfile, root_build_dir), | 769 rebase_path(depfile, root_build_dir), |
| 766 "--proguard-path", | 770 "--proguard-path", |
| 767 rebase_path(_proguard_jar_path, root_build_dir), | 771 rebase_path(_proguard_jar_path, root_build_dir), |
| 768 "--output-path", | 772 "--output-path", |
| 769 rebase_path(_output_jar_path, root_build_dir), | 773 rebase_path(_output_jar_path, root_build_dir), |
| 770 "--classpath", | 774 "--classpath", |
| 771 _rebased_android_sdk_jar, | 775 _rebased_android_sdk_jar, |
| 772 ] | 776 ] |
| 773 foreach(c, _input_jars_paths) { | |
| 774 args += [ "--classpath=" + rebase_path(c, root_build_dir) ] | |
| 775 } | |
| 776 if (proguard_verbose) { | 777 if (proguard_verbose) { |
| 777 args += [ "--verbose" ] | 778 args += [ "--verbose" ] |
| 778 } | 779 } |
| 779 if (defined(invoker.args)) { | 780 if (defined(invoker.args)) { |
| 780 args += invoker.args | 781 args += invoker.args |
| 781 } | 782 } |
| 782 if (defined(invoker.proguard_jar_path)) { | 783 if (defined(invoker.proguard_jar_path)) { |
| 783 # We assume that if we are using a different ProGuard, this new version | 784 # We assume that if we are using a different ProGuard, this new version |
| 784 # can handle the 'dangerous' optimizaions. | 785 # can handle the 'dangerous' optimizaions. |
| 785 args += [ "--enable-dangerous-optimizations" ] | 786 args += [ "--enable-dangerous-optimizations" ] |
| (...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 994 } | 995 } |
| 995 | 996 |
| 996 if (defined(invoker.sources)) { | 997 if (defined(invoker.sources)) { |
| 997 args += rebase_path(invoker.sources, root_build_dir) | 998 args += rebase_path(invoker.sources, root_build_dir) |
| 998 } | 999 } |
| 999 } | 1000 } |
| 1000 } | 1001 } |
| 1001 | 1002 |
| 1002 template("process_java_prebuilt") { | 1003 template("process_java_prebuilt") { |
| 1003 set_sources_assignment_filter([]) | 1004 set_sources_assignment_filter([]) |
| 1004 forward_variables_from(invoker, | 1005 forward_variables_from(invoker, [ "testonly" ]) |
| 1005 [ | |
| 1006 "testonly", | |
| 1007 "input_jars_paths", | |
| 1008 ]) | |
| 1009 assert(!defined(input_jars_paths) || input_jars_paths != [] || true) # Mark as used | |
| 1010 | 1006 |
| 1011 assert(invoker.build_config != "") | 1007 assert(invoker.build_config != "") |
| 1012 _build_config = invoker.build_config | 1008 _build_config = invoker.build_config |
| 1013 _rebased_build_config = rebase_path(_build_config, root_build_dir) | 1009 _rebased_build_config = rebase_path(_build_config, root_build_dir) |
| 1014 assert(_rebased_build_config != "" || true) # Mark used. | 1010 assert(_rebased_build_config != "" || true) # Mark used. |
| 1015 | 1011 |
| 1016 _proguard_preprocess = | 1012 _proguard_preprocess = |
| 1017 defined(invoker.proguard_preprocess) && invoker.proguard_preprocess | 1013 defined(invoker.proguard_preprocess) && invoker.proguard_preprocess |
| 1018 _input_jar_path = invoker.input_jar_path | 1014 _input_jar_path = invoker.input_jar_path |
| 1019 _output_jar_path = invoker.output_jar_path | 1015 _output_jar_path = invoker.output_jar_path |
| (...skipping 736 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1756 | 1752 |
| 1757 _build_config_target_name = "${_template_name}__build_config" | 1753 _build_config_target_name = "${_template_name}__build_config" |
| 1758 _process_jar_target_name = "${_template_name}__process_jar" | 1754 _process_jar_target_name = "${_template_name}__process_jar" |
| 1759 _ijar_target_name = "${_template_name}__ijar" | 1755 _ijar_target_name = "${_template_name}__ijar" |
| 1760 if (_supports_android) { | 1756 if (_supports_android) { |
| 1761 _dex_target_name = "${_template_name}__dex" | 1757 _dex_target_name = "${_template_name}__dex" |
| 1762 } | 1758 } |
| 1763 | 1759 |
| 1764 write_build_config(_build_config_target_name) { | 1760 write_build_config(_build_config_target_name) { |
| 1765 type = "java_prebuilt" | 1761 type = "java_prebuilt" |
| 1762 forward_variables_from(invoker, [ "input_jars_paths" ]) | |
| 1766 supports_android = _supports_android | 1763 supports_android = _supports_android |
| 1767 requires_android = | 1764 requires_android = |
| 1768 defined(invoker.requires_android) && invoker.requires_android | 1765 defined(invoker.requires_android) && invoker.requires_android |
| 1769 | 1766 |
| 1770 if (defined(invoker.deps)) { | 1767 if (defined(invoker.deps)) { |
| 1771 possible_config_deps = _deps | 1768 possible_config_deps = _deps |
| 1772 } | 1769 } |
| 1773 build_config = _build_config | 1770 build_config = _build_config |
| 1774 jar_path = _jar_path | 1771 jar_path = _jar_path |
| 1775 if (_supports_android) { | 1772 if (_supports_android) { |
| 1776 dex_path = _dex_path | 1773 dex_path = _dex_path |
| 1777 } | 1774 } |
| 1778 } | 1775 } |
| 1779 | 1776 |
| 1780 process_java_prebuilt(_process_jar_target_name) { | 1777 process_java_prebuilt(_process_jar_target_name) { |
| 1781 forward_variables_from(invoker, | 1778 forward_variables_from(invoker, |
| 1782 [ | 1779 [ |
| 1783 "jar_excluded_patterns", | 1780 "jar_excluded_patterns", |
| 1784 "strip_resource_classes", | 1781 "strip_resource_classes", |
| 1785 "input_jars_paths", | |
| 1786 ]) | 1782 ]) |
| 1787 assert(!defined(input_jars_paths) || input_jars_paths != [] || true) # Ma rk as used | |
| 1788 | 1783 |
| 1789 visibility = [ | 1784 visibility = [ |
| 1790 ":$_ijar_target_name", | 1785 ":$_ijar_target_name", |
| 1791 ":$_template_name", | 1786 ":$_template_name", |
| 1792 ] | 1787 ] |
| 1793 if (_supports_android) { | 1788 if (_supports_android) { |
| 1794 visibility += [ ":$_dex_target_name" ] | 1789 visibility += [ ":$_dex_target_name" ] |
| 1795 } | 1790 } |
| 1796 | 1791 |
| 1797 if (defined(invoker.proguard_preprocess) && invoker.proguard_preprocess) { | 1792 if (defined(invoker.proguard_preprocess) && invoker.proguard_preprocess) { |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1880 # "${target_gen_dir}/${target_name}.jar. | 1875 # "${target_gen_dir}/${target_name}.jar. |
| 1881 template("compile_java") { | 1876 template("compile_java") { |
| 1882 set_sources_assignment_filter([]) | 1877 set_sources_assignment_filter([]) |
| 1883 forward_variables_from(invoker, [ "testonly" ]) | 1878 forward_variables_from(invoker, [ "testonly" ]) |
| 1884 | 1879 |
| 1885 assert(defined(invoker.build_config)) | 1880 assert(defined(invoker.build_config)) |
| 1886 assert(defined(invoker.jar_path)) | 1881 assert(defined(invoker.jar_path)) |
| 1887 | 1882 |
| 1888 _build_config = invoker.build_config | 1883 _build_config = invoker.build_config |
| 1889 | 1884 |
| 1890 _input_jars_paths = [] | |
| 1891 if (defined(invoker.input_jars_paths)) { | |
| 1892 _input_jars_paths += invoker.input_jars_paths | |
| 1893 } | |
| 1894 | |
| 1895 _chromium_code = false | 1885 _chromium_code = false |
| 1896 if (defined(invoker.chromium_code)) { | 1886 if (defined(invoker.chromium_code)) { |
| 1897 _chromium_code = invoker.chromium_code | 1887 _chromium_code = invoker.chromium_code |
| 1898 } | 1888 } |
| 1899 | 1889 |
| 1900 _supports_android = true | 1890 _supports_android = true |
| 1901 if (defined(invoker.supports_android)) { | 1891 if (defined(invoker.supports_android)) { |
| 1902 _supports_android = invoker.supports_android | 1892 _supports_android = invoker.supports_android |
| 1903 } | 1893 } |
| 1904 | 1894 |
| (...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2031 _android_sdk_ijar = invoker.alternative_android_sdk_ijar | 2021 _android_sdk_ijar = invoker.alternative_android_sdk_ijar |
| 2032 } else { | 2022 } else { |
| 2033 deps += [ "//build/android:android_ijar" ] | 2023 deps += [ "//build/android:android_ijar" ] |
| 2034 _android_sdk_ijar = "$root_out_dir/lib.java/android.interface.jar" | 2024 _android_sdk_ijar = "$root_out_dir/lib.java/android.interface.jar" |
| 2035 } | 2025 } |
| 2036 inputs += [ _android_sdk_ijar ] | 2026 inputs += [ _android_sdk_ijar ] |
| 2037 _rebased_android_sdk_ijar = | 2027 _rebased_android_sdk_ijar = |
| 2038 rebase_path(_android_sdk_ijar, root_build_dir) | 2028 rebase_path(_android_sdk_ijar, root_build_dir) |
| 2039 args += [ "--bootclasspath=$_rebased_android_sdk_ijar" ] | 2029 args += [ "--bootclasspath=$_rebased_android_sdk_ijar" ] |
| 2040 } | 2030 } |
| 2041 foreach(c, _input_jars_paths) { | |
| 2042 args += [ "--classpath=" + c ] | |
| 2043 } | |
| 2044 foreach(e, _manifest_entries) { | 2031 foreach(e, _manifest_entries) { |
| 2045 args += [ "--manifest-entry=" + e ] | 2032 args += [ "--manifest-entry=" + e ] |
| 2046 } | 2033 } |
| 2047 if (_chromium_code) { | 2034 if (_chromium_code) { |
| 2048 args += [ "--chromium-code=1" ] | 2035 args += [ "--chromium-code=1" ] |
| 2049 } | 2036 } |
| 2050 if (_enable_errorprone) { | 2037 if (_enable_errorprone) { |
| 2051 deps += [ "//third_party/errorprone:chromium_errorprone" ] | 2038 deps += [ "//third_party/errorprone:chromium_errorprone" ] |
| 2052 args += [ | 2039 args += [ |
| 2053 "--use-errorprone-path", | 2040 "--use-errorprone-path", |
| (...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2225 | 2212 |
| 2226 # Define build_config_deps which will be a list of targets required to | 2213 # Define build_config_deps which will be a list of targets required to |
| 2227 # build the _build_config. | 2214 # build the _build_config. |
| 2228 if (defined(invoker.override_build_config)) { | 2215 if (defined(invoker.override_build_config)) { |
| 2229 _build_config = invoker.override_build_config | 2216 _build_config = invoker.override_build_config |
| 2230 } else { | 2217 } else { |
| 2231 _build_config = _base_path + ".build_config" | 2218 _build_config = _base_path + ".build_config" |
| 2232 build_config_target_name = "${_template_name}__build_config" | 2219 build_config_target_name = "${_template_name}__build_config" |
| 2233 | 2220 |
| 2234 write_build_config(build_config_target_name) { | 2221 write_build_config(build_config_target_name) { |
| 2222 forward_variables_from(invoker, [ "input_jars_paths" ]) | |
| 2235 if (defined(invoker.is_java_binary) && invoker.is_java_binary) { | 2223 if (defined(invoker.is_java_binary) && invoker.is_java_binary) { |
| 2236 type = "java_binary" | 2224 type = "java_binary" |
| 2237 } else { | 2225 } else { |
| 2238 type = "java_library" | 2226 type = "java_library" |
| 2239 } | 2227 } |
| 2240 if (defined(invoker.deps)) { | 2228 if (defined(invoker.deps)) { |
| 2241 possible_config_deps = invoker.deps | 2229 possible_config_deps = invoker.deps |
| 2242 } | 2230 } |
| 2243 supports_android = _supports_android | 2231 supports_android = _supports_android |
| 2244 requires_android = _requires_android | 2232 requires_android = _requires_android |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2282 _final_deps += [ ":$_compile_java_target" ] | 2270 _final_deps += [ ":$_compile_java_target" ] |
| 2283 compile_java(_compile_java_target) { | 2271 compile_java(_compile_java_target) { |
| 2284 forward_variables_from(invoker, | 2272 forward_variables_from(invoker, |
| 2285 [ | 2273 [ |
| 2286 "additional_jar_files", | 2274 "additional_jar_files", |
| 2287 "alternative_android_sdk_ijar", | 2275 "alternative_android_sdk_ijar", |
| 2288 "alternative_android_sdk_ijar_dep", | 2276 "alternative_android_sdk_ijar_dep", |
| 2289 "dist_jar_path", | 2277 "dist_jar_path", |
| 2290 "enable_errorprone", | 2278 "enable_errorprone", |
| 2291 "enable_incremental_javac_override", | 2279 "enable_incremental_javac_override", |
| 2292 "input_jars_paths", | |
| 2293 "jar_excluded_patterns", | 2280 "jar_excluded_patterns", |
| 2294 "manifest_entries", | 2281 "manifest_entries", |
| 2295 "processors_javac", | 2282 "processors_javac", |
| 2296 "processor_args_javac", | 2283 "processor_args_javac", |
| 2297 "proguard_config", | 2284 "proguard_config", |
| 2298 "proguard_preprocess", | 2285 "proguard_preprocess", |
| 2299 "provider_configurations", | 2286 "provider_configurations", |
| 2300 ]) | 2287 ]) |
| 2301 jar_path = _jar_path | 2288 jar_path = _jar_path |
| 2302 build_config = _build_config | 2289 build_config = _build_config |
| (...skipping 328 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 2631 outputs = [ | 2618 outputs = [ |
| 2632 depfile, | 2619 depfile, |
| 2633 invoker.out_manifest, | 2620 invoker.out_manifest, |
| 2634 ] | 2621 ] |
| 2635 inputs = [ | 2622 inputs = [ |
| 2636 invoker.main_manifest, | 2623 invoker.main_manifest, |
| 2637 ] | 2624 ] |
| 2638 } | 2625 } |
| 2639 } | 2626 } |
| 2640 } | 2627 } |
| OLD | NEW |