Remove annotation_processors property

Now that there are no uses left of annotation_processors remove
the property.

If there are no annotation processor classes for javac for a module,
due to an empty "plugins" property or using kapt for annotation
processors, pass -proc:none to javac to ensure it does not try
to run any annotation processors found in the classpath.

Bug: 77284273
Test: plugin_test.go, kotlin_test.go
Change-Id: I3823d9fec8d3d07d2e49b1d97839f7fcbdd35647
This commit is contained in:
Colin Cross 2019-01-23 16:14:02 -08:00
parent 11ecdd6979
commit 7788c1283f
4 changed files with 6 additions and 18 deletions

View File

@ -255,8 +255,7 @@ func transformJavaToClasses(ctx android.ModuleContext, outputFile android.Writab
deps = append(deps, flags.classpath...)
deps = append(deps, flags.processorPath...)
// TODO(b/77284273): pass -processor:none if no plugins are listed
processor := ""
processor := "-proc:none"
if flags.processor != "" {
processor = "-processor " + flags.processor
}

View File

@ -114,9 +114,6 @@ type CompilerProperties struct {
// If set to true, include sources used to compile the module in to the final jar
Include_srcs *bool
// List of modules to use as annotation processors. Deprecated, use plugins instead.
Annotation_processors []string
// List of modules to use as annotation processors
Plugins []string
@ -376,7 +373,6 @@ type jniDependencyTag struct {
var (
staticLibTag = dependencyTag{name: "staticlib"}
libTag = dependencyTag{name: "javalib"}
annoTag = dependencyTag{name: "annotation processor"}
pluginTag = dependencyTag{name: "plugin"}
bootClasspathTag = dependencyTag{name: "bootclasspath"}
systemModulesTag = dependencyTag{name: "system modules"}
@ -471,9 +467,6 @@ func (j *Module) deps(ctx android.BottomUpMutatorContext) {
ctx.AddVariationDependencies(nil, libTag, j.properties.Libs...)
ctx.AddVariationDependencies(nil, staticLibTag, j.properties.Static_libs...)
ctx.AddFarVariationDependencies([]blueprint.Variation{
{Mutator: "arch", Variation: ctx.Config().BuildOsCommonVariant},
}, annoTag, j.properties.Annotation_processors...)
ctx.AddFarVariationDependencies([]blueprint.Variation{
{Mutator: "arch", Variation: ctx.Config().BuildOsCommonVariant},
@ -493,7 +486,7 @@ func (j *Module) deps(ctx android.BottomUpMutatorContext) {
// TODO(ccross): move this to a mutator pass that can tell if generated sources contain
// Kotlin files
ctx.AddVariationDependencies(nil, kotlinStdlibTag, "kotlin-stdlib")
if len(j.properties.Annotation_processors) > 0 || len(j.properties.Plugins) > 0 {
if len(j.properties.Plugins) > 0 {
ctx.AddVariationDependencies(nil, kotlinAnnotationsTag, "kotlin-annotations")
}
}
@ -718,8 +711,6 @@ func (j *Module) collectDeps(ctx android.ModuleContext) deps {
deps.staticResourceJars = append(deps.staticResourceJars, dep.ResourceJars()...)
// sdk lib names from dependencies are re-exported
j.exportedSdkLibs = append(j.exportedSdkLibs, dep.ExportedSdkLibs()...)
case annoTag:
deps.processorPath = append(deps.processorPath, dep.ImplementationAndResourcesJars()...)
case pluginTag:
if plugin, ok := dep.(*Plugin); ok {
deps.processorPath = append(deps.processorPath, dep.ImplementationAndResourcesJars()...)

View File

@ -149,9 +149,8 @@ func TestKapt(t *testing.T) {
if javac.Args["processorPath"] != "" {
t.Errorf("expected processorPath '', got %q", javac.Args["processorPath"])
}
// TODO(b/77284273): test for -processor:none
if javac.Args["processor"] != "" {
t.Errorf("expected processor '', got %q", javac.Args["processor"])
if javac.Args["processor"] != "-proc:none" {
t.Errorf("expected processor '-proc:none', got %q", javac.Args["processor"])
}
}

View File

@ -38,9 +38,8 @@ func TestNoPlugin(t *testing.T) {
t.Errorf("want empty processorpath, got %q", javac.Args["processorpath"])
}
// TODO(b/77284273): test for -processor:none if no plugins are enabled
if javac.Args["processor"] != "" {
t.Errorf("want no -processor argument, got %q", javac.Args["processor"])
if javac.Args["processor"] != "-proc:none" {
t.Errorf("want '-proc:none' argument, got %q", javac.Args["processor"])
}
}