aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--android/api_levels.go2
-rw-r--r--android/variable.go15
-rw-r--r--cc/config/arm64_device.go7
-rw-r--r--cc/config/global.go2
-rw-r--r--cc/sanitize.go10
-rw-r--r--java/config/config.go2
6 files changed, 29 insertions, 9 deletions
diff --git a/android/api_levels.go b/android/api_levels.go
index 64d3d5d9..1b56625b 100644
--- a/android/api_levels.go
+++ b/android/api_levels.go
@@ -67,6 +67,8 @@ func getApiLevelsMap(config Config) map[string]int {
"N": 24,
"N-MR1": 25,
"O": 26,
+ "O-MR1": 27,
+ "P": 28,
}
for i, codename := range config.PlatformVersionCombinedCodenames() {
apiLevelsMap[codename] = baseApiLevel + i
diff --git a/android/variable.go b/android/variable.go
index d97fc0b6..b4ed1b7a 100644
--- a/android/variable.go
+++ b/android/variable.go
@@ -104,6 +104,19 @@ type variableProperties struct {
Uml struct {
Cppflags []string
}
+
+ Use_lmkd_stats_log struct {
+ Cflags []string
+ }
+
+ Arc struct {
+ Cflags []string
+ Exclude_srcs []string
+ Include_dirs []string
+ Shared_libs []string
+ Static_libs []string
+ Srcs []string
+ }
} `android:"arch_variant"`
}
@@ -174,6 +187,8 @@ type productVariables struct {
Enforce_vintf_manifest *bool `json:",omitempty"`
Pdk *bool `json:",omitempty"`
Uml *bool `json:",omitempty"`
+ Use_lmkd_stats_log *bool `json:",omitempty"`
+ Arc *bool `json:",omitempty"`
MinimizeJavaDebugInfo *bool `json:",omitempty"`
IntegerOverflowExcludePaths *[]string `json:",omitempty"`
diff --git a/cc/config/arm64_device.go b/cc/config/arm64_device.go
index 172784a7..f4125838 100644
--- a/cc/config/arm64_device.go
+++ b/cc/config/arm64_device.go
@@ -174,7 +174,6 @@ type toolchainArm64 struct {
toolchain64Bit
ldflags string
- lldflags string
toolchainCflags string
toolchainClangCflags string
}
@@ -232,7 +231,7 @@ func (t *toolchainArm64) ClangLdflags() string {
}
func (t *toolchainArm64) ClangLldflags() string {
- return t.lldflags
+ return "${config.Arm64Lldflags}"
}
func (t *toolchainArm64) ToolchainClangCflags() string {
@@ -270,10 +269,6 @@ func arm64ToolchainFactory(arch android.Arch) Toolchain {
"${config.Arm64Ldflags}",
extraLdflags,
}, " "),
- lldflags: strings.Join([]string{
- "${config.Arm64Lldflags}",
- extraLdflags,
- }, " "),
toolchainCflags: variantOrDefault(arm64CpuVariantCflagsVar, arch.CpuVariant),
toolchainClangCflags: strings.Join(toolchainClangCflags, " "),
}
diff --git a/cc/config/global.go b/cc/config/global.go
index dee7640b..a49e5093 100644
--- a/cc/config/global.go
+++ b/cc/config/global.go
@@ -192,7 +192,7 @@ func init() {
// This is used by non-NDK modules to get jni.h. export_include_dirs doesn't help
// with this, since there is no associated library.
pctx.PrefixedExistentPathsForSourcesVariable("CommonNativehelperInclude", "-I",
- []string{"libnativehelper/include_deprecated"})
+ []string{"libnativehelper/include_jni"})
pctx.SourcePathVariable("ClangDefaultBase", ClangDefaultBase)
pctx.VariableFunc("ClangBase", func(ctx android.PackageVarContext) string {
diff --git a/cc/sanitize.go b/cc/sanitize.go
index 4c8a6114..1037181d 100644
--- a/cc/sanitize.go
+++ b/cc/sanitize.go
@@ -236,8 +236,8 @@ func (sanitize *sanitize) begin(ctx BaseModuleContext) {
}
}
- // Enable CFI for all components in the include paths
- if s.Cfi == nil && ctx.Config().CFIEnabledForPath(ctx.ModuleDir()) {
+ // 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 {
s.Cfi = boolPtr(true)
if inList("cfi", ctx.Config().SanitizeDeviceDiag()) {
s.Diag.Cfi = boolPtr(true)
@@ -272,6 +272,12 @@ func (sanitize *sanitize) begin(ctx BaseModuleContext) {
s.Integer_overflow = nil
}
+ // Also disable CFI for VNDK variants of components
+ if ctx.isVndk() && ctx.useVndk() {
+ s.Cfi = nil
+ s.Diag.Cfi = nil
+ }
+
if ctx.staticBinary() {
s.Address = nil
s.Coverage = nil
diff --git a/java/config/config.go b/java/config/config.go
index ae497a6b..4863fec3 100644
--- a/java/config/config.go
+++ b/java/config/config.go
@@ -41,6 +41,8 @@ var (
"services",
"android.car",
"android.car7",
+ "core-oj",
+ "core-libart",
}
ManifestMergerClasspath = []string{