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("//base/android/linker/config.gni") | 5 import("//base/android/linker/config.gni") |
6 import("//build/config/android/config.gni") | 6 import("//build/config/android/config.gni") |
7 import("//build/config/android/internal_rules.gni") | 7 import("//build/config/android/internal_rules.gni") |
8 import("//build/toolchain/toolchain.gni") | 8 import("//build/toolchain/toolchain.gni") |
9 import("//third_party/android_platform/config.gni") | 9 import("//third_party/android_platform/config.gni") |
10 import("//tools/grit/grit_rule.gni") | 10 import("//tools/grit/grit_rule.gni") |
(...skipping 379 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
390 } | 390 } |
391 | 391 |
392 group(final_target_name) { | 392 group(final_target_name) { |
393 forward_variables_from(invoker, [ "visibility" ]) | 393 forward_variables_from(invoker, [ "visibility" ]) |
394 public_deps = [ | 394 public_deps = [ |
395 ":$zip_srcjar_target_name", | 395 ":$zip_srcjar_target_name", |
396 ] | 396 ] |
397 } | 397 } |
398 } | 398 } |
399 | 399 |
| 400 # Declare a target for generating Java constants from Google API Keys. |
| 401 # |
| 402 # This target will create a single .srcjar. Adding this target to an |
| 403 # android_library target's srcjar_deps will make the generated java files be |
| 404 # included in that library's final outputs. |
| 405 # |
| 406 # Example |
| 407 # java_google_api_keys("foo_generated_keys") { |
| 408 # } |
| 409 template("java_google_api_keys") { |
| 410 set_sources_assignment_filter([]) |
| 411 forward_variables_from(invoker, [ "testonly" ]) |
| 412 |
| 413 generate_google_api_keys_target_name = |
| 414 "${target_name}__generate_google_api_keys" |
| 415 zip_srcjar_target_name = "${target_name}__zip_srcjar" |
| 416 final_target_name = target_name |
| 417 |
| 418 action(generate_google_api_keys_target_name) { |
| 419 visibility = [ ":$zip_srcjar_target_name" ] |
| 420 |
| 421 # The sources aren't compiled so don't check their dependencies. |
| 422 check_includes = false |
| 423 |
| 424 script = "//build/android/gyp/java_google_api_keys.py" |
| 425 gen_dir = "${target_gen_dir}/${target_name}/java_google_api_keys" |
| 426 outputs = [ |
| 427 get_path_info(rebase_path("GoogleAPIKeys.java", ".", gen_dir), "abspath"), |
| 428 ] |
| 429 |
| 430 args = [ rebase_path(gen_dir, root_build_dir) ] |
| 431 } |
| 432 |
| 433 generate_google_api_keys_outputs = |
| 434 get_target_outputs(":$generate_google_api_keys_target_name") |
| 435 base_gen_dir = |
| 436 get_label_info(":$generate_google_api_keys_target_name", "target_gen_dir") |
| 437 |
| 438 srcjar_path = "${target_gen_dir}/${target_name}.srcjar" |
| 439 zip(zip_srcjar_target_name) { |
| 440 visibility = [ ":$final_target_name" ] |
| 441 inputs = generate_google_api_keys_outputs |
| 442 output = srcjar_path |
| 443 base_dir = base_gen_dir |
| 444 deps = [ |
| 445 ":$generate_google_api_keys_target_name", |
| 446 ] |
| 447 } |
| 448 |
| 449 group(final_target_name) { |
| 450 forward_variables_from(invoker, [ "visibility" ]) |
| 451 public_deps = [ |
| 452 ":$zip_srcjar_target_name", |
| 453 ] |
| 454 } |
| 455 } |
| 456 |
400 # Declare a target for processing a Jinja template. | 457 # Declare a target for processing a Jinja template. |
401 # | 458 # |
402 # Variables | 459 # Variables |
403 # input: The template file to be processed. | 460 # input: The template file to be processed. |
404 # output: Where to save the result. | 461 # output: Where to save the result. |
405 # variables: (Optional) A list of variables to make available to the template | 462 # variables: (Optional) A list of variables to make available to the template |
406 # processing environment, e.g. ["name=foo", "color=red"]. | 463 # processing environment, e.g. ["name=foo", "color=red"]. |
407 # | 464 # |
408 # Example | 465 # Example |
409 # jinja_template("chrome_public_manifest") { | 466 # jinja_template("chrome_public_manifest") { |
(...skipping 1618 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2028 } | 2085 } |
2029 | 2086 |
2030 android_library(target_name) { | 2087 android_library(target_name) { |
2031 java_files = [] | 2088 java_files = [] |
2032 srcjar_deps = [ ":${_template_name}__protoc_java" ] | 2089 srcjar_deps = [ ":${_template_name}__protoc_java" ] |
2033 deps = [ | 2090 deps = [ |
2034 "//third_party/android_protobuf:protobuf_nano_javalib", | 2091 "//third_party/android_protobuf:protobuf_nano_javalib", |
2035 ] | 2092 ] |
2036 } | 2093 } |
2037 } | 2094 } |
OLD | NEW |