diff options
| author | 2019-06-14 06:26:02 +0000 | |
|---|---|---|
| committer | 2019-06-14 06:26:02 +0000 | |
| commit | 60b393ce851f04eb749f8e1fc1d030c4991288ca (patch) | |
| tree | 215de069599aad48d252245cda87db357e4cb38d /java/java.go | |
| parent | 49cd4954a03f7ed488d766333d52f5b0f79cb7e1 (diff) | |
| parent | 250e6198d45d7d29bea4c121d42afc8cb6a672d9 (diff) | |
Merge "Make sdkDep/decodeSdkDep the source of truth about the sdk"
Diffstat (limited to 'java/java.go')
| -rw-r--r-- | java/java.go | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/java/java.go b/java/java.go index a1addb38c..82f799e83 100644 --- a/java/java.go +++ b/java/java.go @@ -440,6 +440,16 @@ type sdkDep struct { jars android.Paths aidl android.OptionalPath + + noStandardLibs, noFrameworksLibs bool +} + +func (s sdkDep) hasStandardLibs() bool { + return !s.noStandardLibs +} + +func (s sdkDep) hasFrameworkLibs() bool { + return !s.noStandardLibs && !s.noFrameworksLibs } type jniLib struct { @@ -476,14 +486,22 @@ func (j *Module) targetSdkVersion() string { return j.sdkVersion() } +func (j *Module) noFrameworkLibs() bool { + return Bool(j.properties.No_framework_libs) +} + +func (j *Module) noStandardLibs() bool { + return Bool(j.properties.No_standard_libs) +} + func (j *Module) deps(ctx android.BottomUpMutatorContext) { if ctx.Device() { - if !Bool(j.properties.No_standard_libs) { - sdkDep := decodeSdkDep(ctx, sdkContext(j)) + sdkDep := decodeSdkDep(ctx, sdkContext(j)) + if sdkDep.hasStandardLibs() { if sdkDep.useDefaultLibs { ctx.AddVariationDependencies(nil, bootClasspathTag, config.DefaultBootclasspathLibraries...) ctx.AddVariationDependencies(nil, systemModulesTag, config.DefaultSystemModules) - if !Bool(j.properties.No_framework_libs) { + if sdkDep.hasFrameworkLibs() { ctx.AddVariationDependencies(nil, libTag, config.DefaultLibraries...) } } else if sdkDep.useModule { @@ -913,7 +931,7 @@ func (j *Module) collectBuilderFlags(ctx android.ModuleContext, deps deps) javaB flags.processor = strings.Join(deps.processorClasses, ",") if len(flags.bootClasspath) == 0 && ctx.Host() && flags.javaVersion != "1.9" && - !Bool(j.properties.No_standard_libs) && + decodeSdkDep(ctx, sdkContext(j)).hasStandardLibs() && inList(flags.javaVersion, []string{"1.6", "1.7", "1.8"}) { // Give host-side tools a version of OpenJDK's standard libraries // close to what they're targeting. As of Dec 2017, AOSP is only |