Implement Bazel rule for cc_api_contribution and cc_api_headers

Create Bazel rules for cc_api_headers and cc_api_contribution. These
rules do not have any build actions, but provide "provider" objects

Some deatils
- cc_api_headers provides `CcApiHeaderInfo`. This includes metadata such
  as include_dir_path, system (i.e. -I or -isystem), arch. Since we need
  this metadata, something like a filegroup is not the best solution to
  declare headers
- cc_api_contribution provides `CcApiContributionInfo`. This includes
  path to the .map.txt and the headers metadata

Test: b test //build/bazel/rules/apis:cc_api_test_suite
Bug: 220938703

Change-Id: I609480eecc234ab583dcfb5294694f7527a6ccd3
4 files changed
tree: 6185e73b1c907565466fcf642194c7a977d163f1
  1. ci/
  2. docs/
  3. examples/
  4. json_module_graph/
  5. mk2rbc/
  6. platforms/
  7. product_variables/
  8. rules/
  9. rules_cc/
  10. scripts/
  11. tests/
  12. vendor/
  13. .gitignore
  14. bazel.BUILD
  15. bazel.sh
  16. bazel.WORKSPACE
  17. common.bazelrc
  18. darwin.bazelrc
  19. linux.bazelrc
  20. OWNERS
  21. README.md
README.md

Bazel

The code in this directory is experimental. Bazel support for Android Platform is undergoing active development and workflow stability is currently not guaranteed.