Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fb536627 authored by Spandan Das's avatar Spandan Das Committed by Automerger Merge Worker
Browse files

Merge changes I5b4e5570,I1de4b322 am: d53878e2

parents 612a0e28 d53878e2
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -148,8 +148,9 @@ func (d *apiLibraryDecorator) link(ctx ModuleContext, flags Flags, deps PathDeps

	var in android.Path

	// src might not exist during the beginning of soong analysis in Multi-tree
	if src := String(d.properties.Src); src != "" {
		in = android.PathForModuleSrc(ctx, src)
		in = android.MaybeExistentPathForSource(ctx, ctx.ModuleDir(), src)
	}

	// LLNDK variant
+13 −0
Original line number Diff line number Diff line
@@ -1567,8 +1567,14 @@ type JavaApiLibraryProperties struct {
	Api_surface *string

	// list of Java API contribution modules that consists this API surface
	// This is a list of Soong modules
	Api_contributions []string

	// list of api.txt files relative to this directory that contribute to the
	// API surface.
	// This is a list of relative paths
	Api_files []string

	// List of flags to be passed to the javac compiler to generate jar file
	Javacflags []string
}
@@ -1665,6 +1671,13 @@ func (al *ApiLibrary) GenerateAndroidBuildActions(ctx android.ModuleContext) {
		srcFiles = append(srcFiles, android.PathForSource(ctx, provider.ApiFile.String()))
	})

	// Add the api_files inputs
	for _, api := range al.properties.Api_files {
		// Use MaybeExistentPathForSource since the api file might not exist during analysis.
		// This will be provided by the orchestrator in the combined execution.
		srcFiles = append(srcFiles, android.MaybeExistentPathForSource(ctx, ctx.ModuleDir(), api))
	}

	cmd := metalavaStubCmd(ctx, rule, srcFiles, homeDir)

	al.stubsFlags(ctx, cmd, stubsDir)
+2 −1
Original line number Diff line number Diff line
@@ -1863,6 +1863,7 @@ func TestJavaApiLibraryAndProviderLink(t *testing.T) {
			name: "bar2",
			api_surface: "system",
			api_contributions: ["foo1", "foo2"],
			api_files: ["api1/current.txt", "api2/current.txt"]
		}
		`,
		map[string][]byte{
@@ -1880,7 +1881,7 @@ func TestJavaApiLibraryAndProviderLink(t *testing.T) {
		},
		{
			moduleName:         "bar2",
			sourceTextFileDirs: []string{"a/foo1.txt", "b/foo2.txt"},
			sourceTextFileDirs: []string{"a/foo1.txt", "b/foo2.txt", "api1/current.txt", "api2/current.txt"},
		},
	}
	for _, c := range testcases {