apk_test.gypi 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  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
  3. # found in the LICENSE file.
  4. # This file is meant to be included into a target to provide a rule
  5. # to build APK based test suites.
  6. #
  7. # To use this, create a gyp target with the following form:
  8. # {
  9. # 'target_name': 'test_suite_name_apk',
  10. # 'type': 'none',
  11. # 'variables': {
  12. # 'test_suite_name': 'test_suite_name', # string
  13. # 'input_shlib_path' : '/path/to/test_suite.so', # string
  14. # 'input_jars_paths': ['/path/to/test_suite.jar', ... ], # list
  15. # },
  16. # 'includes': ['path/to/this/gypi/file'],
  17. # }
  18. #
  19. {
  20. 'variables': {
  21. 'input_jars_paths': [
  22. # Needed by ChromeNativeTestActivity.java.
  23. '<(PRODUCT_DIR)/lib.java/chromium_base.jar',
  24. ],
  25. },
  26. 'target_conditions': [
  27. ['_toolset == "target"', {
  28. 'conditions': [
  29. ['OS == "android" and gtest_target_type == "shared_library"', {
  30. 'actions': [{
  31. 'action_name': 'apk_<(test_suite_name)',
  32. 'message': 'Building <(test_suite_name) test apk.',
  33. 'inputs': [
  34. '<(DEPTH)/testing/android/AndroidManifest.xml',
  35. '<(DEPTH)/testing/android/generate_native_test.py',
  36. '<(input_shlib_path)',
  37. '>@(input_jars_paths)',
  38. ],
  39. 'outputs': [
  40. '<(PRODUCT_DIR)/<(test_suite_name)_apk/<(test_suite_name)-debug.apk',
  41. ],
  42. 'action': [
  43. '<(DEPTH)/testing/android/generate_native_test.py',
  44. '--native_library',
  45. '<(input_shlib_path)',
  46. '--jars',
  47. '">@(input_jars_paths)"',
  48. '--output',
  49. '<(PRODUCT_DIR)/<(test_suite_name)_apk',
  50. '--strip-binary=<(android_strip)',
  51. '--app_abi',
  52. '<(android_app_abi)',
  53. '--ant-args',
  54. '-DPRODUCT_DIR=<(ant_build_out)',
  55. '--ant-args',
  56. '-DANDROID_SDK=<(android_sdk)',
  57. '--ant-args',
  58. '-DANDROID_SDK_ROOT=<(android_sdk_root)',
  59. '--ant-args',
  60. '-DANDROID_SDK_TOOLS=<(android_sdk_tools)',
  61. '--ant-args',
  62. '-DANDROID_SDK_VERSION=<(android_sdk_version)',
  63. '--ant-args',
  64. '-DANDROID_GDBSERVER=<(android_gdbserver)',
  65. '--ant-args',
  66. '-DCHROMIUM_SRC=<(ant_build_out)/../..',
  67. ],
  68. }],
  69. }], # 'OS == "android" and gtest_target_type == "shared_library"
  70. ], # conditions
  71. }],
  72. ], # target_conditions
  73. }