OLD | NEW |
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 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 # This file is meant to be included into a target to provide a rule | 5 # This file is meant to be included into a target to provide a rule |
6 # to build Android APKs in a consistent manner. | 6 # to build Android APKs in a consistent manner. |
7 # | 7 # |
8 # To use this, create a gyp target with the following form: | 8 # To use this, create a gyp target with the following form: |
9 # { | 9 # { |
10 # 'target_name': 'my_package_apk', | 10 # 'target_name': 'my_package_apk', |
(...skipping 248 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
259 'action': [ | 259 'action': [ |
260 'python', '<(DEPTH)/build/android/gyp/create_device_library_link
s.py', | 260 'python', '<(DEPTH)/build/android/gyp/create_device_library_link
s.py', |
261 '--apk=<(final_apk_path)', | 261 '--apk=<(final_apk_path)', |
262 '--libraries-json=<(ordered_libraries_file)', | 262 '--libraries-json=<(ordered_libraries_file)', |
263 '--target-dir=<(device_library_dir)', | 263 '--target-dir=<(device_library_dir)', |
264 '--stamp=<(link_stamp)', | 264 '--stamp=<(link_stamp)', |
265 ], | 265 ], |
266 }, | 266 }, |
267 ], | 267 ], |
268 }, { | 268 }, { |
| 269 # gyp_managed_install != 1 |
269 'variables': { | 270 'variables': { |
270 'apk_libraries_dir': '<(intermediate_dir)/libs/<(android_app_abi)', | 271 'apk_libraries_dir': '<(intermediate_dir)/libs/<(android_app_abi)', |
271 'package_input_paths': [ '<(strip_stamp)' ], | 272 'package_input_paths': [ '<(strip_stamp)' ], |
272 }, | 273 }, |
273 }], | 274 }], |
274 ], | 275 ], |
275 }], # native_libs_paths != [] | 276 }], # native_libs_paths != [] |
276 ['java_strings_grd != ""', { | 277 ['java_strings_grd != ""', { |
277 'variables': { | 278 'variables': { |
278 'res_grit_dir': '<(SHARED_INTERMEDIATE_DIR)/<(package_name)_apk/res_grit
', | 279 'res_grit_dir': '<(SHARED_INTERMEDIATE_DIR)/<(package_name)_apk/res_grit
', |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
326 'conditions': [ | 327 'conditions': [ |
327 ['is_test_apk == 1', { | 328 ['is_test_apk == 1', { |
328 'variables': { | 329 'variables': { |
329 'additional_res_dirs=': [], | 330 'additional_res_dirs=': [], |
330 'additional_res_packages=': [], | 331 'additional_res_packages=': [], |
331 } | 332 } |
332 }], | 333 }], |
333 ], | 334 ], |
334 'inputs': [ | 335 'inputs': [ |
335 '<(DEPTH)/build/android/ant/apk-codegen.xml', | 336 '<(DEPTH)/build/android/ant/apk-codegen.xml', |
| 337 '<(DEPTH)/build/android/gyp/util/build_utils.py', |
| 338 '<(DEPTH)/build/android/gyp/ant.py', |
336 '<(android_manifest)', | 339 '<(android_manifest)', |
337 '>@(library_manifest_paths)' | 340 '>@(library_manifest_paths)' |
338 '>@(codegen_input_paths)', | 341 '>@(codegen_input_paths)', |
339 '>@(additional_input_paths)', | 342 '>@(additional_input_paths)', |
340 ], | 343 ], |
341 'outputs': [ | 344 'outputs': [ |
342 '<(codegen_stamp)', | 345 '<(codegen_stamp)', |
343 ], | 346 ], |
344 'action': [ | 347 'action': [ |
345 'ant', '-quiet', | 348 'python', '<(DEPTH)/build/android/gyp/ant.py', |
| 349 '-quiet', |
346 '-DADDITIONAL_RES_DIRS=>(additional_res_dirs)', | 350 '-DADDITIONAL_RES_DIRS=>(additional_res_dirs)', |
347 '-DADDITIONAL_RES_PACKAGES=>(additional_res_packages)', | 351 '-DADDITIONAL_RES_PACKAGES=>(additional_res_packages)', |
348 '-DADDITIONAL_R_TEXT_FILES=>(additional_R_text_files)', | 352 '-DADDITIONAL_R_TEXT_FILES=>(additional_R_text_files)', |
349 '-DANDROID_MANIFEST=<(android_manifest)', | 353 '-DANDROID_MANIFEST=<(android_manifest)', |
350 '-DANDROID_SDK_JAR=<(android_sdk_jar)', | 354 '-DANDROID_SDK_JAR=<(android_sdk_jar)', |
351 '-DANDROID_SDK_ROOT=<(android_sdk_root)', | 355 '-DANDROID_SDK_ROOT=<(android_sdk_root)', |
352 '-DANDROID_SDK_VERSION=<(android_sdk_version)', | 356 '-DANDROID_SDK_VERSION=<(android_sdk_version)', |
353 '-DLIBRARY_MANIFEST_PATHS=>(library_manifest_paths)', | 357 '-DLIBRARY_MANIFEST_PATHS=>(library_manifest_paths)', |
354 '-DOUT_DIR=<(intermediate_dir)', | 358 '-DOUT_DIR=<(intermediate_dir)', |
355 '-DRESOURCE_DIR=<(resource_dir)', | 359 '-DRESOURCE_DIR=<(resource_dir)', |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
424 # TODO(newt): remove this once http://crbug.com/177552 is fixed in ninja
. | 428 # TODO(newt): remove this once http://crbug.com/177552 is fixed in ninja
. |
425 '--ignore=>!(echo \'>(_inputs)\' | md5sum)', | 429 '--ignore=>!(echo \'>(_inputs)\' | md5sum)', |
426 ] | 430 ] |
427 }, | 431 }, |
428 { | 432 { |
429 'action_name': 'ant_obfuscate_<(_target_name)', | 433 'action_name': 'ant_obfuscate_<(_target_name)', |
430 'message': 'Obfuscating <(_target_name)', | 434 'message': 'Obfuscating <(_target_name)', |
431 'inputs': [ | 435 'inputs': [ |
432 '<(DEPTH)/build/android/ant/apk-obfuscate.xml', | 436 '<(DEPTH)/build/android/ant/apk-obfuscate.xml', |
433 '<(DEPTH)/build/android/ant/create-test-jar.js', | 437 '<(DEPTH)/build/android/ant/create-test-jar.js', |
| 438 '<(DEPTH)/build/android/gyp/util/build_utils.py', |
| 439 '<(DEPTH)/build/android/gyp/ant.py', |
434 '<(compile_stamp)', | 440 '<(compile_stamp)', |
435 '>@(proguard_flags_paths)', | 441 '>@(proguard_flags_paths)', |
436 ], | 442 ], |
437 'outputs': [ | 443 'outputs': [ |
438 '<(obfuscate_stamp)', | 444 '<(obfuscate_stamp)', |
439 ], | 445 ], |
440 'action': [ | 446 'action': [ |
441 'ant', '-quiet', | 447 'python', '<(DEPTH)/build/android/gyp/ant.py', |
| 448 '-quiet', |
442 '-DADDITIONAL_SRC_DIRS=>(additional_src_dirs)', | 449 '-DADDITIONAL_SRC_DIRS=>(additional_src_dirs)', |
443 '-DANDROID_SDK_JAR=<(android_sdk_jar)', | 450 '-DANDROID_SDK_JAR=<(android_sdk_jar)', |
444 '-DANDROID_SDK_ROOT=<(android_sdk_root)', | 451 '-DANDROID_SDK_ROOT=<(android_sdk_root)', |
445 '-DANDROID_SDK_VERSION=<(android_sdk_version)', | 452 '-DANDROID_SDK_VERSION=<(android_sdk_version)', |
446 '-DAPK_NAME=<(apk_name)', | 453 '-DAPK_NAME=<(apk_name)', |
447 '-DCREATE_TEST_JAR_PATH=<(DEPTH)/build/android/ant/create-test-jar.js', | 454 '-DCREATE_TEST_JAR_PATH=<(DEPTH)/build/android/ant/create-test-jar.js', |
448 '-DCONFIGURATION_NAME=<(CONFIGURATION_NAME)', | 455 '-DCONFIGURATION_NAME=<(CONFIGURATION_NAME)', |
449 '-DGENERATED_SRC_DIRS=>(generated_src_dirs)', | 456 '-DGENERATED_SRC_DIRS=>(generated_src_dirs)', |
450 '-DINPUT_JARS_PATHS=>(input_jars_paths)', | 457 '-DINPUT_JARS_PATHS=>(input_jars_paths)', |
451 '-DIS_TEST_APK=<(is_test_apk)', | 458 '-DIS_TEST_APK=<(is_test_apk)', |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
505 | 512 |
506 '>@(dex_inputs)', | 513 '>@(dex_inputs)', |
507 '>@(dex_generated_inputs)', | 514 '>@(dex_generated_inputs)', |
508 ] | 515 ] |
509 }, | 516 }, |
510 { | 517 { |
511 'action_name': 'ant_package_<(_target_name)', | 518 'action_name': 'ant_package_<(_target_name)', |
512 'message': 'Packaging <(_target_name).', | 519 'message': 'Packaging <(_target_name).', |
513 'inputs': [ | 520 'inputs': [ |
514 '<(DEPTH)/build/android/ant/apk-package.xml', | 521 '<(DEPTH)/build/android/ant/apk-package.xml', |
| 522 '<(DEPTH)/build/android/gyp/util/build_utils.py', |
| 523 '<(DEPTH)/build/android/gyp/ant.py', |
515 '<(dex_path)', | 524 '<(dex_path)', |
516 '<(codegen_stamp)', | 525 '<(codegen_stamp)', |
517 '<(obfuscate_stamp)', | 526 '<(obfuscate_stamp)', |
518 '>@(package_input_paths)', | 527 '>@(package_input_paths)', |
519 ], | 528 ], |
520 'conditions': [ | 529 'conditions': [ |
521 ['is_test_apk == 1', { | 530 ['is_test_apk == 1', { |
522 'variables': { | 531 'variables': { |
523 'additional_res_dirs=': [], | 532 'additional_res_dirs=': [], |
524 'additional_res_packages=': [], | 533 'additional_res_packages=': [], |
525 } | 534 } |
526 }], | 535 }], |
527 ], | 536 ], |
528 'outputs': [ | 537 'outputs': [ |
529 '<(final_apk_path)', | 538 '<(final_apk_path)', |
530 ], | 539 ], |
531 'action': [ | 540 'action': [ |
532 'ant', '-quiet', | 541 'python', '<(DEPTH)/build/android/gyp/ant.py', |
| 542 '-quiet', |
533 '-DADDITIONAL_RES_DIRS=>(additional_res_dirs)', | 543 '-DADDITIONAL_RES_DIRS=>(additional_res_dirs)', |
534 '-DADDITIONAL_RES_PACKAGES=>(additional_res_packages)', | 544 '-DADDITIONAL_RES_PACKAGES=>(additional_res_packages)', |
535 '-DADDITIONAL_R_TEXT_FILES=>(additional_R_text_files)', | 545 '-DADDITIONAL_R_TEXT_FILES=>(additional_R_text_files)', |
536 '-DANDROID_SDK_JAR=<(android_sdk_jar)', | 546 '-DANDROID_SDK_JAR=<(android_sdk_jar)', |
537 '-DANDROID_SDK_ROOT=<(android_sdk_root)', | 547 '-DANDROID_SDK_ROOT=<(android_sdk_root)', |
538 '-DANDROID_SDK_VERSION=<(android_sdk_version)', | 548 '-DANDROID_SDK_VERSION=<(android_sdk_version)', |
539 '-DAPKS_DIR=<(PRODUCT_DIR)/apks', | 549 '-DAPKS_DIR=<(PRODUCT_DIR)/apks', |
540 '-DAPK_NAME=<(apk_name)', | 550 '-DAPK_NAME=<(apk_name)', |
541 '-DAPP_MANIFEST_VERSION_CODE=<(app_manifest_version_code)', | 551 '-DAPP_MANIFEST_VERSION_CODE=<(app_manifest_version_code)', |
542 '-DAPP_MANIFEST_VERSION_NAME=<(app_manifest_version_name)', | 552 '-DAPP_MANIFEST_VERSION_NAME=<(app_manifest_version_name)', |
543 '-DASSET_DIR=<(asset_location)', | 553 '-DASSET_DIR=<(asset_location)', |
544 '-DCONFIGURATION_NAME=<(CONFIGURATION_NAME)', | 554 '-DCONFIGURATION_NAME=<(CONFIGURATION_NAME)', |
545 '-DKEYSTORE_PATH=<(DEPTH)/build/android/ant/chromium-debug.keystore', | 555 '-DKEYSTORE_PATH=<(DEPTH)/build/android/ant/chromium-debug.keystore', |
546 '-DOUT_DIR=<(intermediate_dir)', | 556 '-DOUT_DIR=<(intermediate_dir)', |
547 '-DRESOURCE_DIR=<(resource_dir)', | 557 '-DRESOURCE_DIR=<(resource_dir)', |
548 '-DSOURCE_DIR=<(java_in_dir)/src', | 558 '-DSOURCE_DIR=<(java_in_dir)/src', |
549 | 559 |
550 '-Dbasedir=.', | 560 '-Dbasedir=.', |
551 '-buildfile', | 561 '-buildfile', |
552 '<(DEPTH)/build/android/ant/apk-package.xml', | 562 '<(DEPTH)/build/android/ant/apk-package.xml', |
553 | 563 |
554 # Add list of inputs to the command line, so if inputs change | 564 # Add list of inputs to the command line, so if inputs change |
555 # (e.g. if a Java file is removed), the command will be re-run. | 565 # (e.g. if a Java file is removed), the command will be re-run. |
556 # TODO(newt): remove this once crbug.com/177552 is fixed in ninja. | 566 # TODO(newt): remove this once crbug.com/177552 is fixed in ninja. |
557 '-DTHIS_IS_IGNORED=>!(echo \'>(_inputs)\' | md5sum)', | 567 '-DTHIS_IS_IGNORED=>!(echo \'>(_inputs)\' | md5sum)', |
558 | |
559 ] | 568 ] |
560 }, | 569 }, |
561 ], | 570 ], |
562 } | 571 } |
OLD | NEW |