From 0c4ce21615a7e7515c92ae91ac9fef7fc1397839 Mon Sep 17 00:00:00 2001 From: Colin Cross Date: Fri, 3 May 2019 15:28:19 -0700 Subject: Track sources for srcjars across modules Robolectric coverage needs a srcjar that sometimes needs to include sources of dependencies. Track the arguments and dependencies necessary to jar the sources. Test: TestIncludeSrcs Change-Id: I9979d2b8350923a2237e743c232e6e548f54ba3b --- java/device_host_converter.go | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'java/device_host_converter.go') diff --git a/java/device_host_converter.go b/java/device_host_converter.go index 9c883e50a..b92f4d73e 100644 --- a/java/device_host_converter.go +++ b/java/device_host_converter.go @@ -34,6 +34,9 @@ type DeviceHostConverter struct { implementationAndResourceJars android.Paths resourceJars android.Paths + srcJarArgs []string + srcJarDeps android.Paths + combinedHeaderJar android.Path combinedImplementationJar android.Path } @@ -100,6 +103,10 @@ func (d *DeviceHostConverter) GenerateAndroidBuildActions(ctx android.ModuleCont d.implementationJars = append(d.implementationJars, dep.ImplementationJars()...) d.implementationAndResourceJars = append(d.implementationAndResourceJars, dep.ImplementationAndResourcesJars()...) d.resourceJars = append(d.resourceJars, dep.ResourceJars()...) + + srcJarArgs, srcJarDeps := dep.SrcJarArgs() + d.srcJarArgs = append(d.srcJarArgs, srcJarArgs...) + d.srcJarDeps = append(d.srcJarDeps, srcJarDeps...) } else { ctx.PropertyErrorf("libs", "module %q cannot be used as a dependency", ctx.OtherModuleName(m)) } @@ -157,6 +164,10 @@ func (d *DeviceHostConverter) ExportedSdkLibs() []string { return nil } +func (d *DeviceHostConverter) SrcJarArgs() ([]string, android.Paths) { + return d.srcJarArgs, d.srcJarDeps +} + func (d *DeviceHostConverter) AndroidMk() android.AndroidMkData { return android.AndroidMkData{ Class: "JAVA_LIBRARIES", -- cgit v1.2.3-59-g8ed1b