From b3738ed1f40eea3f5f628193cd8109cd49aea64c Mon Sep 17 00:00:00 2001 From: Anton Hansson Date: Thu, 21 Sep 2023 16:23:20 +0000 Subject: [PATCH] Make the srcjar for bcp available in OutputFiles This makes it possible for Android.bp files to depends on the srcjar. Bug: 151360309 Test: m platform-bootclasspath.srcjar Change-Id: Id42cc3cff89c084b55c7fb0726ad84ecd4f50f58 --- java/platform_bootclasspath.go | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/java/platform_bootclasspath.go b/java/platform_bootclasspath.go index bab0bf614..02a2298cd 100644 --- a/java/platform_bootclasspath.go +++ b/java/platform_bootclasspath.go @@ -57,6 +57,9 @@ type platformBootclasspathModule struct { // Path to the monolithic hiddenapi-unsupported.csv file. hiddenAPIMetadataCSV android.OutputPath + + // Path to a srcjar containing all the transitive sources of the bootclasspath. + srcjar android.OutputPath } type platformBootclasspathProperties struct { @@ -95,6 +98,8 @@ func (b *platformBootclasspathModule) OutputFiles(tag string) (android.Paths, er return android.Paths{b.hiddenAPIIndexCSV}, nil case "hiddenapi-metadata.csv": return android.Paths{b.hiddenAPIMetadataCSV}, nil + case ".srcjar": + return android.Paths{b.srcjar}, nil } return nil, fmt.Errorf("unknown tag %s", tag) @@ -182,8 +187,8 @@ func (b *platformBootclasspathModule) GenerateAndroidBuildActions(ctx android.Mo } jarArgs := resourcePathsToJarArgs(transitiveSrcFiles) jarArgs = append(jarArgs, "-srcjar") // Move srcfiles to the right package - transitiveSrcJar := android.PathForModuleOut(ctx, ctx.ModuleName()+"-transitive.srcjar") - TransformResourcesToJar(ctx, transitiveSrcJar, jarArgs, transitiveSrcFiles) + b.srcjar = android.PathForModuleOut(ctx, ctx.ModuleName()+"-transitive.srcjar").OutputPath + TransformResourcesToJar(ctx, b.srcjar, jarArgs, transitiveSrcFiles) // Gather all the fragments dependencies. b.fragments = gatherApexModulePairDepsWithTag(ctx, bootclasspathFragmentDepTag)