Add built-in KAPT support for all components

This change adds a new plugin, "com.android.legacy-kapt".

If that plugin is applied (or if we're in a kotlin-enabled testFixtures
component or a screenshotTest component and the existing kotlin-kapt
plugin is applied), AGP will register and wire KAPT tasks using the
KotlinBaseApiPlugin.

The new plugin has "legacy" in its name to indicate that users should
migrate to KSP instead of using it.

This change is based on patchset #45 of I35d20ba04d

Bug: 341765853
Test: BuiltInKaptTest, etc.
Change-Id: I627ccbaf0cdd1387a02af850b8f406e103e463c4
43 files changed
tree: fedb632835744f97adcb2a5b138a53c66f28953c
  1. .idea/
  2. adb-proxy/
  3. adblib/
  4. adblib-ddmlibcompatibility/
  5. adblib-tools/
  6. annotations/
  7. apkparser/
  8. app-inspection/
  9. apps/
  10. aspects_agent/
  11. backup/
  12. bazel/
  13. build-analyzer/
  14. build-system/
  15. chunkio/
  16. chunkio-processor/
  17. common/
  18. ddmlib/
  19. debugger-tests/
  20. debuggers/
  21. deploy/
  22. device-provisioner/
  23. device_validator/
  24. draw9patch/
  25. dynamic-layout-inspector/
  26. echo-sample/
  27. emulator/
  28. environment-services/
  29. external-annotations/
  30. fakeadbserver/
  31. fakeandroid/
  32. firebase/
  33. flags/
  34. game-tools/
  35. gmaven/
  36. intellij-bazel/
  37. intellij-native/
  38. jaxb-inheritance-plugin/
  39. jdwp-packet/
  40. jdwp-scache/
  41. jdwp-tracer/
  42. jobb/
  43. kexter/
  44. kotlin-multiplatform-models/
  45. layoutlib-api/
  46. layoutlib-extensions/
  47. leakcanarylib/
  48. legacy/
  49. lint/
  50. manifest-parser/
  51. misc/
  52. mlkit-common/
  53. multipreview-asm/
  54. ninepatch/
  55. owners/
  56. perf-logger/
  57. perflib/
  58. pixelprobe/
  59. preview/
  60. process-monitor/
  61. profgen/
  62. profiler/
  63. repository/
  64. resource-repository/
  65. sdk-common/
  66. sdklib/
  67. signflinger/
  68. standalone-render/
  69. studio-grpc-testutils/
  70. testing-infrastructure/
  71. testutils/
  72. third_party/
  73. threading-agent/
  74. threading-agent-callback/
  75. tracer/
  76. transport/
  77. usb-devices/
  78. utp/
  79. vector-drawable-tool/
  80. wizard/
  81. yourkit-controller/
  82. zipflinger/
  83. .editorconfig
  84. .gitignore
  85. adt.iml
  86. BUILD.bazel
  87. contributing.md
  88. navbar.md
  89. PREUPLOAD.cfg
  90. README.md
  91. source.md
  92. studio.md
README.md

tools/base

This project contains:

  • Common libraries that are shared between any of the IDE (Android Studio), the build system (The Android Gradle Plugin) and SDK components that will be released from studio-main (e.g. the standalone SDK manager). This includes:
    • Instant-run-libraries
    • SDK management libraries
    • The manifest merger
    • Common libraries
    • Common test utilites
  • The build system
  • The new profiler