Allow imported interface to specify its version

The version is used regardless it is ToT, and it is used for only
generated module's dependency as is.

Bug: 146436251
Test: m nothing
Change-Id: I6d28c43182cca92aadb7b8093e0d34d8783d418f
diff --git a/build/aidl_api.go b/build/aidl_api.go
index 23c3c8d..3ce72ae 100644
--- a/build/aidl_api.go
+++ b/build/aidl_api.go
@@ -50,13 +50,13 @@
 )
 
 type aidlApiProperties struct {
-	BaseName  string
-	Srcs      []string `android:"path"`
-	AidlRoot  string   // base directory for the input aidl file
-	Stability *string
-	Imports   []string
-	Versions  []string
-	Dumpapi   DumpApiProperties
+	BaseName              string
+	Srcs                  []string `android:"path"`
+	AidlRoot              string   // base directory for the input aidl file
+	Stability             *string
+	ImportsWithoutVersion []string
+	Versions              []string
+	Dumpapi               DumpApiProperties
 }
 
 type aidlApi struct {
@@ -351,7 +351,7 @@
 }
 
 func (m *aidlApi) DepsMutator(ctx android.BottomUpMutatorContext) {
-	ctx.AddDependency(ctx.Module(), nil, wrap("", m.properties.Imports, aidlInterfaceSuffix)...)
+	ctx.AddDependency(ctx.Module(), nil, wrap("", m.properties.ImportsWithoutVersion, aidlInterfaceSuffix)...)
 }
 
 func aidlApiFactory() android.Module {
@@ -367,13 +367,13 @@
 	mctx.CreateModule(aidlApiFactory, &nameProperties{
 		Name: proptools.StringPtr(apiModule),
 	}, &aidlApiProperties{
-		BaseName:  i.ModuleBase.Name(),
-		Srcs:      srcs,
-		AidlRoot:  aidlRoot,
-		Stability: i.properties.Stability,
-		Imports:   concat(i.properties.Imports, []string{i.ModuleBase.Name()}),
-		Versions:  i.properties.Versions,
-		Dumpapi:   i.properties.Dumpapi,
+		BaseName:              i.ModuleBase.Name(),
+		Srcs:                  srcs,
+		AidlRoot:              aidlRoot,
+		Stability:             i.properties.Stability,
+		ImportsWithoutVersion: concat(i.properties.ImportsWithoutVersion, []string{i.ModuleBase.Name()}),
+		Versions:              i.properties.Versions,
+		Dumpapi:               i.properties.Dumpapi,
 	})
 	return apiModule
 }