From bd930bc6c4ff8539da60d6cda69f484a817a31ed Mon Sep 17 00:00:00 2001 From: Colin Cross Date: Mon, 3 Feb 2025 12:17:42 -0800 Subject: Add explicitlyImpl to shared library dependency tags Instead of testing that explicit implementation libraries are not incorrectly used in an apex after the fact add the explicitlyImpl flag to dependency tags and use it in cc.DepIsInSameApex and rust.DepIsInSameApex to require that explicit implementation dependencies are in the same apex. Bug: 372543712 Test: go test ./... Change-Id: Ia968e06b578d5ab886a965c3981565d4895dddcd --- rust/rust.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'rust/rust.go') diff --git a/rust/rust.go b/rust/rust.go index c0df9f3da..88918cf82 100644 --- a/rust/rust.go +++ b/rust/rust.go @@ -2085,7 +2085,7 @@ func (mod *Module) IncomingDepIsInSameApex(depTag blueprint.DependencyTag) bool } if mod.HasStubsVariants() { - if cc.IsSharedDepTag(depTag) { + if cc.IsSharedDepTag(depTag) && !cc.IsExplicitImplSharedDepTag(depTag) { // dynamic dep to a stubs lib crosses APEX boundary return false } -- cgit v1.2.3-59-g8ed1b