Make art module public stubs include nullability annotations

Passes --include-annotation flag to metalava to cause it to generate androidx
nullability annotations in the output stubs.

Creates a special set of system modules that includes a minimal set of self
consistent classes that can be used in a system module (i.e. must include
java.lang classes) as well as android/androidx nullability annotations. The set
of classes was constructed by starting with the classes in java.lang and then
adding all of their transitive dependencies.

That is needed to build the art module public stubs + annotations. Without it
the compiler cannot see the annotations when targeting language level >= 1.9.

Uses the stub-annotations which is a copy of android and androidx annotations
provided by metalava that are used by the public SDK stubs.

Bug: 142546485
Test: m checkbuild
Change-Id: I77443b29a06d55631764e3447b2b81315527a59e
1 file changed