Merge "Handle arch-specific/not properties the same."
diff --git a/apex/apex.go b/apex/apex.go
index add506f..b47f36b 100644
--- a/apex/apex.go
+++ b/apex/apex.go
@@ -1100,13 +1100,6 @@
mctx.ModuleErrorf("base property is not set")
return
}
- // Workaround the issue reported in b/191269918 by using the unprefixed module name of this
- // module as the default variation to use if dependencies of this module do not have the correct
- // apex variant name. This name matches the name used to create the variations of modules for
- // which apexModuleTypeRequiresVariant return true.
- // TODO(b/191269918): Remove this workaround.
- unprefixedModuleName := android.RemoveOptionalPrebuiltPrefix(mctx.ModuleName())
- mctx.SetDefaultDependencyVariation(&unprefixedModuleName)
mctx.CreateVariations(apexBundleName)
if strings.HasPrefix(apexBundleName, "com.android.art") {
// TODO(b/183882457): See note for CreateAliasVariation above.
diff --git a/cc/library.go b/cc/library.go
index b2360e9..84cd0d7 100644
--- a/cc/library.go
+++ b/cc/library.go
@@ -1754,7 +1754,7 @@
mayUseCoreVariant = false
}
- if ctx.Config().CFIEnabledForPath(ctx.ModuleDir()) && ctx.Arch().ArchType == android.Arm64 {
+ if ctx.Config().CFIEnabledForPath(ctx.ModuleDir()) {
mayUseCoreVariant = false
}
diff --git a/cc/sanitize.go b/cc/sanitize.go
index b244394..dd15ae1 100644
--- a/cc/sanitize.go
+++ b/cc/sanitize.go
@@ -437,8 +437,8 @@
}
}
- // Enable CFI for all components in the include paths (for Aarch64 only)
- if s.Cfi == nil && ctx.Config().CFIEnabledForPath(ctx.ModuleDir()) && ctx.Arch().ArchType == android.Arm64 {
+ // Enable CFI for non-host components in the include paths
+ if s.Cfi == nil && ctx.Config().CFIEnabledForPath(ctx.ModuleDir()) && !ctx.Host() {
s.Cfi = proptools.BoolPtr(true)
if inList("cfi", ctx.Config().SanitizeDeviceDiag()) {
s.Diag.Cfi = proptools.BoolPtr(true)
diff --git a/cc/symbolfile/__init__.py b/cc/symbolfile/__init__.py
index 31c4443..f8d1841 100644
--- a/cc/symbolfile/__init__.py
+++ b/cc/symbolfile/__init__.py
@@ -329,7 +329,7 @@
def parse(self) -> List[Version]:
"""Parses the symbol file and returns a list of Version objects."""
versions = []
- while self.next_line() != '':
+ while self.next_line():
assert self.current_line is not None
if '{' in self.current_line:
versions.append(self.parse_version())
@@ -376,7 +376,7 @@
symbols: List[Symbol] = []
global_scope = True
cpp_symbols = False
- while self.next_line() != '':
+ while self.next_line():
if '}' in self.current_line:
# Line is something like '} BASE; # tags'. Both base and tags
# are optional here.
@@ -428,11 +428,11 @@
A return value of '' indicates EOF.
"""
line = self.input_file.readline()
- while line.strip() == '' or line.strip().startswith('#'):
+ while not line.strip() or line.strip().startswith('#'):
line = self.input_file.readline()
# We want to skip empty lines, but '' indicates EOF.
- if line == '':
+ if not line:
break
self.current_line = line
return self.current_line
diff --git a/java/aar.go b/java/aar.go
index 04727e4..afbaea2 100644
--- a/java/aar.go
+++ b/java/aar.go
@@ -502,11 +502,12 @@
if sdkDep.hasFrameworkLibs() {
a.aapt.deps(ctx, sdkDep)
}
+ a.usesLibrary.deps(ctx, sdkDep.hasFrameworkLibs())
}
func (a *AndroidLibrary) GenerateAndroidBuildActions(ctx android.ModuleContext) {
a.aapt.isLibrary = true
- a.classLoaderContexts = make(dexpreopt.ClassLoaderContextMap)
+ a.classLoaderContexts = a.usesLibrary.classLoaderContextForUsesLibDeps(ctx)
a.aapt.buildActions(ctx, android.SdkContext(a), a.classLoaderContexts)
a.hideApexVariantFromMake = !ctx.Provider(android.ApexInfoProvider).(android.ApexInfo).IsForPlatform()