API txt files are dist artifacts

API txt files from a java_sdk_library are automatically registered as
dist artifacts for sdk and win_sdk targets.

They are installed under $(DIST_DIR)/apistubs/<apiscope>/api/<name>.txt
where <apiscope> can be public, system and test.

Bug: 77577799
Test: m -j
Change-Id: I38cd8ee000445ce843ac01ead38001e509228738
This commit is contained in:
Sundong Ahn
2018-07-24 11:19:26 +09:00
parent b13a015cee
commit 20e998b32c
2 changed files with 52 additions and 0 deletions

View File

@@ -304,6 +304,12 @@ type Droiddoc struct {
checkLastReleasedApiTimestamp android.WritablePath
annotationsZip android.WritablePath
apiFilePath android.Path
}
type ApiFilePath interface {
ApiFilePath() android.Path
}
func InitDroiddocModule(module android.DefaultableModule, hod android.HostOrDeviceSupported) {
@@ -813,6 +819,7 @@ func (d *Droiddoc) GenerateAndroidBuildActions(ctx android.ModuleContext) {
args = args + " -api " + d.apiFile.String()
metalavaArgs = metalavaArgs + " --api " + d.apiFile.String()
implicitOutputs = append(implicitOutputs, d.apiFile)
d.apiFilePath = d.apiFile
}
if d.checkCurrentApi() || d.checkLastReleasedApi() || String(d.properties.Removed_api_filename) != "" {
@@ -1091,6 +1098,10 @@ func (d *Droiddoc) GenerateAndroidBuildActions(ctx android.ModuleContext) {
}
}
func (d *Droiddoc) ApiFilePath() android.Path {
return d.apiFilePath
}
var droiddocTemplateTag = dependencyTag{name: "droiddoc-template"}
type DroiddocTemplateProperties struct {