Apply native_bridge suffix to all cc_modules
This fixes the problem with cc_object not having this suffix and
as a result overriding non-bridged variants for modules using mk files.
Bug: http://b/77159578
Test: build 4arch product
Change-Id: Ie958f997c6f54f93d8b2987ca5ba605004e1eb70
diff --git a/android/androidmk.go b/android/androidmk.go
index 2bbd452..7d0aa3b 100644
--- a/android/androidmk.go
+++ b/android/androidmk.go
@@ -28,10 +28,6 @@
"github.com/google/blueprint/bootstrap"
)
-var (
- NativeBridgeSuffix = ".native_bridge"
-)
-
func init() {
RegisterSingletonType("androidmk", AndroidMkSingleton)
}
@@ -165,10 +161,6 @@
}
}
- if amod.Target().NativeBridge {
- a.SubName += NativeBridgeSuffix
- }
-
fmt.Fprintln(&a.header, "\ninclude $(CLEAR_VARS)")
// Collect make variable assignment entries.
diff --git a/cc/androidmk.go b/cc/androidmk.go
index c7883e2..a02549d 100644
--- a/cc/androidmk.go
+++ b/cc/androidmk.go
@@ -24,8 +24,9 @@
)
var (
- vendorSuffix = ".vendor"
- recoverySuffix = ".recovery"
+ nativeBridgeSuffix = ".native_bridge"
+ vendorSuffix = ".vendor"
+ recoverySuffix = ".recovery"
)
type AndroidMkContext interface {
@@ -105,6 +106,10 @@
}
c.subAndroidMk(&ret, c.installer)
+ if c.Target().NativeBridge == android.NativeBridgeEnabled {
+ ret.SubName += nativeBridgeSuffix
+ }
+
if c.useVndk() && c.hasVendorVariant() {
// .vendor suffix is added only when we will have two variants: core and vendor.
// The suffix is not added for vendor-only module.
diff --git a/cc/cc.go b/cc/cc.go
index 786e4fd..6c26b52 100644
--- a/cc/cc.go
+++ b/cc/cc.go
@@ -1826,7 +1826,7 @@
} else if ccDep.inRecovery() && !ccDep.onlyInRecovery() {
return libName + recoverySuffix
} else if ccDep.Target().NativeBridge == android.NativeBridgeEnabled {
- return libName + android.NativeBridgeSuffix
+ return libName + nativeBridgeSuffix
} else {
return libName
}