Revert "java_sdk_library: Add redirection to module-lib stubs"
This reverts commit fe82172afb
.
Reason for revert: Broke presubmit: b/157231582
Change-Id: Ifec2d2cf58d00ed320db65069a49290e31f8bda4
This commit is contained in:
@@ -1261,45 +1261,6 @@ func TestJavaSdkLibrary_SdkVersion_ForScope(t *testing.T) {
|
|||||||
`)
|
`)
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestJavaSdkLibrary_MissingScope(t *testing.T) {
|
|
||||||
testJavaError(t, `requires api scope module-lib from foo but it only has \[\] available`, `
|
|
||||||
java_sdk_library {
|
|
||||||
name: "foo",
|
|
||||||
srcs: ["a.java"],
|
|
||||||
public: {
|
|
||||||
enabled: false,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
java_library {
|
|
||||||
name: "baz",
|
|
||||||
srcs: ["a.java"],
|
|
||||||
libs: ["foo"],
|
|
||||||
sdk_version: "module_current",
|
|
||||||
}
|
|
||||||
`)
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestJavaSdkLibrary_FallbackScope(t *testing.T) {
|
|
||||||
testJava(t, `
|
|
||||||
java_sdk_library {
|
|
||||||
name: "foo",
|
|
||||||
srcs: ["a.java"],
|
|
||||||
system: {
|
|
||||||
enabled: true,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
java_library {
|
|
||||||
name: "baz",
|
|
||||||
srcs: ["a.java"],
|
|
||||||
libs: ["foo"],
|
|
||||||
// foo does not have module-lib scope so it should fallback to system
|
|
||||||
sdk_version: "module_current",
|
|
||||||
}
|
|
||||||
`)
|
|
||||||
}
|
|
||||||
|
|
||||||
var compilerFlagsTestCases = []struct {
|
var compilerFlagsTestCases = []struct {
|
||||||
in string
|
in string
|
||||||
out bool
|
out bool
|
||||||
|
@@ -551,7 +551,7 @@ func (c *commonToSdkLibraryAndImport) apiModuleName(apiScope *apiScope) string {
|
|||||||
return c.namingScheme.apiModuleName(apiScope, c.moduleBase.BaseModuleName())
|
return c.namingScheme.apiModuleName(apiScope, c.moduleBase.BaseModuleName())
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *commonToSdkLibraryAndImport) getScopePathsCreateIfNeeded(scope *apiScope) *scopePaths {
|
func (c *commonToSdkLibraryAndImport) getScopePaths(scope *apiScope) *scopePaths {
|
||||||
if c.scopePaths == nil {
|
if c.scopePaths == nil {
|
||||||
c.scopePaths = make(map[*apiScope]*scopePaths)
|
c.scopePaths = make(map[*apiScope]*scopePaths)
|
||||||
}
|
}
|
||||||
@@ -564,28 +564,6 @@ func (c *commonToSdkLibraryAndImport) getScopePathsCreateIfNeeded(scope *apiScop
|
|||||||
return paths
|
return paths
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *commonToSdkLibraryAndImport) findScopePaths(scope *apiScope) *scopePaths {
|
|
||||||
if c.scopePaths == nil {
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
return c.scopePaths[scope]
|
|
||||||
}
|
|
||||||
|
|
||||||
// If this does not support the requested api scope then find the closest available
|
|
||||||
// scope it does support. Returns nil if no such scope is available.
|
|
||||||
func (c *commonToSdkLibraryAndImport) findClosestScopePath(scope *apiScope) *scopePaths {
|
|
||||||
for s := scope; s != nil; s = s.extends {
|
|
||||||
if paths := c.findScopePaths(s); paths != nil {
|
|
||||||
return paths
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// This should never happen outside tests as public should be the base scope for every
|
|
||||||
// scope and is enabled by default.
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (c *commonToSdkLibraryAndImport) sdkJarsCommon(ctx android.BaseModuleContext, sdkVersion sdkSpec, headerJars bool) android.Paths {
|
func (c *commonToSdkLibraryAndImport) sdkJarsCommon(ctx android.BaseModuleContext, sdkVersion sdkSpec, headerJars bool) android.Paths {
|
||||||
|
|
||||||
// If a specific numeric version has been requested then use prebuilt versions of the sdk.
|
// If a specific numeric version has been requested then use prebuilt versions of the sdk.
|
||||||
@@ -597,26 +575,13 @@ func (c *commonToSdkLibraryAndImport) sdkJarsCommon(ctx android.BaseModuleContex
|
|||||||
switch sdkVersion.kind {
|
switch sdkVersion.kind {
|
||||||
case sdkSystem:
|
case sdkSystem:
|
||||||
apiScope = apiScopeSystem
|
apiScope = apiScopeSystem
|
||||||
case sdkModule:
|
|
||||||
apiScope = apiScopeModuleLib
|
|
||||||
case sdkTest:
|
case sdkTest:
|
||||||
apiScope = apiScopeTest
|
apiScope = apiScopeTest
|
||||||
default:
|
default:
|
||||||
apiScope = apiScopePublic
|
apiScope = apiScopePublic
|
||||||
}
|
}
|
||||||
|
|
||||||
paths := c.findClosestScopePath(apiScope)
|
paths := c.getScopePaths(apiScope)
|
||||||
if paths == nil {
|
|
||||||
var scopes []string
|
|
||||||
for _, s := range allApiScopes {
|
|
||||||
if c.findScopePaths(s) != nil {
|
|
||||||
scopes = append(scopes, s.name)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
ctx.ModuleErrorf("requires api scope %s from %s but it only has %q available", apiScope.name, c.moduleBase.BaseModuleName(), scopes)
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
if headerJars {
|
if headerJars {
|
||||||
return paths.stubsHeaderPath
|
return paths.stubsHeaderPath
|
||||||
} else {
|
} else {
|
||||||
@@ -739,7 +704,7 @@ func (module *SdkLibrary) GenerateAndroidBuildActions(ctx android.ModuleContext)
|
|||||||
// Extract information from any of the scope specific dependencies.
|
// Extract information from any of the scope specific dependencies.
|
||||||
if scopeTag, ok := tag.(scopeDependencyTag); ok {
|
if scopeTag, ok := tag.(scopeDependencyTag); ok {
|
||||||
apiScope := scopeTag.apiScope
|
apiScope := scopeTag.apiScope
|
||||||
scopePaths := module.getScopePathsCreateIfNeeded(apiScope)
|
scopePaths := module.getScopePaths(apiScope)
|
||||||
|
|
||||||
// Extract information from the dependency. The exact information extracted
|
// Extract information from the dependency. The exact information extracted
|
||||||
// is determined by the nature of the dependency which is determined by the tag.
|
// is determined by the nature of the dependency which is determined by the tag.
|
||||||
@@ -1490,7 +1455,7 @@ func (module *sdkLibraryImport) GenerateAndroidBuildActions(ctx android.ModuleCo
|
|||||||
if lib, ok := to.(Dependency); ok {
|
if lib, ok := to.(Dependency); ok {
|
||||||
if scopeTag, ok := tag.(scopeDependencyTag); ok {
|
if scopeTag, ok := tag.(scopeDependencyTag); ok {
|
||||||
apiScope := scopeTag.apiScope
|
apiScope := scopeTag.apiScope
|
||||||
scopePaths := module.getScopePathsCreateIfNeeded(apiScope)
|
scopePaths := module.getScopePaths(apiScope)
|
||||||
scopePaths.stubsHeaderPath = lib.HeaderJars()
|
scopePaths.stubsHeaderPath = lib.HeaderJars()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1675,11 +1640,7 @@ func (s *sdkLibrarySdkMemberProperties) PopulateFromVariant(ctx android.SdkMembe
|
|||||||
|
|
||||||
s.Scopes = make(map[*apiScope]scopeProperties)
|
s.Scopes = make(map[*apiScope]scopeProperties)
|
||||||
for _, apiScope := range allApiScopes {
|
for _, apiScope := range allApiScopes {
|
||||||
paths := sdk.findScopePaths(apiScope)
|
paths := sdk.getScopePaths(apiScope)
|
||||||
if paths == nil {
|
|
||||||
continue
|
|
||||||
}
|
|
||||||
|
|
||||||
jars := paths.stubsImplPath
|
jars := paths.stubsImplPath
|
||||||
if len(jars) > 0 {
|
if len(jars) > 0 {
|
||||||
properties := scopeProperties{}
|
properties := scopeProperties{}
|
||||||
|
Reference in New Issue
Block a user