Support core library
To support core library, "Openjdk9", "No_standard_libs" and metalava
properties are added to java_sdk_library.
If core_lib is true, dist paths are changed to
apistubs/core/....
impl library name is changed to {module_name}.jar instead of
{module_name}.impl.jar
Bug: 110404779
Test: m -j
Change-Id: Ieb6248ea714b4260333d8bf61573d4f3413f7f24
Merged-In: Ieb6248ea714b4260333d8bf61573d4f3413f7f24
(cherry picked from commit af4907fed798aa736d3d20f5439ba87be7ab0f10)
diff --git a/java/java.go b/java/java.go
index a23835b..c89cb1a 100644
--- a/java/java.go
+++ b/java/java.go
@@ -336,8 +336,8 @@
}
type SdkLibraryDependency interface {
- HeaderJars(linkType linkType) android.Paths
- ImplementationJars(linkType linkType) android.Paths
+ HeaderJars(ctx android.BaseContext, sdkVersion string) android.Paths
+ ImplementationJars(ctx android.BaseContext, sdkVersion string) android.Paths
}
type SrcDependency interface {
@@ -729,8 +729,7 @@
case SdkLibraryDependency:
switch tag {
case libTag:
- linkType, _ := getLinkType(j, ctx.ModuleName())
- deps.classpath = append(deps.classpath, dep.HeaderJars(linkType)...)
+ deps.classpath = append(deps.classpath, dep.HeaderJars(ctx, j.sdkVersion())...)
// names of sdk libs that are directly depended are exported
j.exportedSdkLibs = append(j.exportedSdkLibs, otherName)
default:
@@ -748,6 +747,8 @@
deps.staticHeaderJars = append(deps.staticHeaderJars, dep.Srcs()...)
case android.DefaultsDepTag, android.SourceDepTag:
// Nothing to do
+ case publicApiFileTag, systemApiFileTag, testApiFileTag:
+ // Nothing to do
default:
ctx.ModuleErrorf("dependency on genrule %q may only be in srcs, libs, or static_libs", otherName)
}