exports LOCAL_SOONG_VNDK_VERSION for VNDK libs
For vndk_prebuilt_shared module, it is set by 'version' property.
For other vndk libs(e.g. cc_library with vndk.enabled), it is set as
PLATFORM_VNDK_VERSION.
Background:
To support "skip installing current VNDK".
You can get a system.img without current VNDK libs.
This may help when you want a smaller system.img given that the image
will be used with a specific version (not current) of vendor image.
Bug: 132140714
Test: m TARGET_SKIP_CURRENT_VNDK=true && see if current VNDK is not
installed
Change-Id: I1c603efc3e95fe8bdf870f2de91994077899fca7
diff --git a/cc/vndk.go b/cc/vndk.go
index a1d67af..60a3d78 100644
--- a/cc/vndk.go
+++ b/cc/vndk.go
@@ -49,6 +49,10 @@
// Extending another module
Extends *string
+
+ // for vndk_prebuilt_shared, this is set by "version" property.
+ // Otherwise, this is set as PLATFORM_VNDK_VERSION.
+ Version string `blueprint:"mutated"`
}
}
@@ -325,6 +329,14 @@
return
}
+ if m.isVndk() {
+ if lib, ok := m.linker.(*vndkPrebuiltLibraryDecorator); ok {
+ m.vndkdep.Properties.Vndk.Version = lib.version()
+ } else {
+ m.vndkdep.Properties.Vndk.Version = mctx.DeviceConfig().PlatformVndkVersion()
+ }
+ }
+
if _, ok := m.linker.(*llndkStubDecorator); ok {
processLlndkLibrary(mctx, m)
return